Skip to content

Algo Builder v5.0.0

Compare
Choose a tag to compare
@robert-zaremba robert-zaremba released this 08 Jul 13:53
· 143 commits to master since this release
f5c48a5

Highlights

This is a stability release with few small improvements and API unification. Currently we focus on bringing SigmaDAO: a dapp for our DAO template smart contract. We developed an indexer for SigmaDAO and will be improving the flows. Soon we will start tests and looking for community members who will like to test it and give us more feedback. Please contact us if you would like to engage.

Few community members reached out to us with questions about multisig support in Algo Builder. Currently we have a basic CLI support. Alternative is to use the goal tool. Unfortunately, both are not are friendly for an average internet user with a web wallet. We see a big need for a web based multisig tool integrated with web wallets.
Here we go: SigmaWallet: a webapp to facilitate generic transaction signing, creating multisig objects, merging signatures into a multisig, and broadcasting signed transactions (eg: use case when you sign transaction using a cold wallet, but don't have a running node to broadcast the transaction). It's still work in progress. Stay tuned - this will finally enable a user friendly flow for multisig usage and broadcasting signed transactions using the web wallet!

We are continuing working on making the executeTx more powerful especially when combined with runtime package for testing and simulations with updates coming in the next release.

Finally, we partnered with CMTA to certifying our Permissioned Token template as a smart contract complaint with Swiss Regulations. Few updates are coming to the template.

Algob

  • algob.balanceOf(deployer, accountAddr, assetID): if assetID is undefined then the function will return ALGO account balance.

  • deployer.executeTx returns list of TxnReceipt, which extends ConfirmedTxInfo. This is to add a useful txID attribute, needed in various scripts.

    export interface TxnReceipt extends ConfirmedTxInfo {
    	txID: string;
    }

Runtime

  • Add Runtime.getAppByName(appName): gets app info based on the name declared in appDefinition.
  • Better warning/error when deploying ASA. Throws an error when ASA definition is wrong or when ASA is not found in asa.yaml, eg when Runtime needs to query ASA.
  • Add Runtime.getAppByName(appName). We can get application in Runtime now.
  • Teal v6 support:
    • Add Txn LastLog opcode.
    • Add Txn StateProofPK opcode.

Examples

Bug Fixes

  • Fix: missing schebang to run algob as an app directly. BTW, we recommend running algob through yarn algob in your project.
  • Fix: max number of transactions in one call should be 256 (include inner and atomic transaction).
  • Fix: Web mode (algo-builder/web) cannot sign by fromAccount when fromAccountAddr appear in execParams.
  • Receipt confirmed txn have inner-txns and txn field.

Breaking Changes

  • Renamed optIntoAsa to optInToAsa bringing naming convention consistency across the project.
  • Renamed sendTransaction to sendAndWait in WebMode and parameter is updated to accept string to bring consistency with other wallets class.

Template Updates

DAO template:

  • [breaking] moved template parameter (gov_token_id) to the global state. This is to assure constant bytecode fir each deployment. We need it to build an efficient indexer and UI.
    • Subsequently, gov_token_id is required when deploying new DAO approval program.
  • various cosmetic updates in templates (non api breaking).

Full Changelog: v4.0.0...v5.0.0