You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
The key has expired.
[2.0.0] - 2023-02-04
New Features
Function application_local_state to read the local state of an account relating to a deployed application
Function group_transaction to send group transactions
Removed ProgramStore class and replaced it with deploy_smart_contract which the user would call directly in a user-defined fixture to retrieve the smart contract app ID for testing
Implemented support for group transactions to hold both Transaction and LogicSigTransaction
Support ASA operations with the following transaction operations create_asset, destroy_asset, update_asset, freeze_asset, transfer_asset, opt_in_asset and close_out_asset.
Implemented asset related utility functions asset_balance and asset_info.
Support multi-signature transaction with the multisig_transaction transaction operation.
Implemented a SmartContractAccount entity to hold the address of a smart contract as an AlgoUser.
Utilize the KMD to access account private keys of the sandbox.
AlgoPytest user entities implement a name field for a more human-friendly debugging and logging experience
Implemented a TxnElemsContext context manager which alters all transaction operations to return an unsent transaction object rather than send the transaction.
Implemented a TxnIDContext context manager which alters all transaction operations to return the txn_id associated with the sent transaction.
Functions create_app and create_compiled_app are int sub-classed context managers that may be used in a with clause or cleaned up manually with delete_app.
Function create_asset returns an int sub-classed context manager that can handle clean up within a with clause.
Bug Fixes
Removed typing subscripts to be compatible with Python 3.8
The application_local_state no longer fails when attempting to read a deleted local field.
Other Changes
Inputs which accept PyTEAL directly take the pyteal.Expr and not a function which generates a pyteal.Expr
Renamed the group_elem function to a more generic txn_name since this function applies also to smart signatures and multi-signature transactions, not solely group transactions.
All transaction operations take all possible parameters, even the less commonly used ones.
The AlgoPytest API accepts AlgoUser as a user input anywhere whenever an address is requested.
Sped up the AlgoPytest test suite runtime by caching the _initial_funds_account.
Altered arguments of smart_signature_transaction to accept transaction tuple
Replaced simply print with a proper logging.logger in the transaction_boilerplate decorator.
Migrated code to support py-algorand-sdk v2.0.0
Documentation Changes
Completed the docstrings for every exported function and class.
Introduced the type alias SignerTxnPairT to make the output of transaction operations less confusing.
Divided the API documentation into subsections for easier referencing.
Expanded list of demo projects in the demos.rst documentation page.
Replaced mdash html code in README.md with UTF8 mdash so that sphinx displays it correctly
Organize subsection in documentation linking to key Pytest topics essential to AlgoPytest.
Removed non-working search and index links at the bottom of the sphinx index page.