Releases: algorandfoundation/algorand-python-testing
v0.4.0-beta.1
v0.4.0-beta.1 (2024-08-27)
Feature
-
add support for frozen on asset holdings, including a new ledger function
update_asset_holdingsfor setting asset holding balances and frozen states (d777ca0) -
expand accepted types when interacting with accounts, applications and assets (
f448a97)wip
-
replaced
account_existswithaccount_is_fundedas the later is more useful (4d08690)
Fix
-
use correct type for Globals.caller_application_id (
a30d85a) -
do not allow specifying
addressfor applications, it is derived from the app_id (00fe1bc) -
do not treat asset and application ids as possible foreign array indexes (
94a989f) -
removed incorrect deduction in
algopy.op.balance(76e67c5) -
ensure all comparable types return
NotImplementedwhen a comparison is not possible (b055fa6) -
arc4_prefixannotated to also acceptalgopy.Bytes(40328ca)
Documentation
- include usage of
algopy_testing_contextin README.md quick start (4702f60)
v0.3.0
v0.3.0 (2024-08-22)
Introducing initial stable release of algorand-python-testing π
- The context manager now interface exposes three main properties:
ledger: An instance of LedgerContext for interacting with and querying the emulated Algorand ledger state.txn: An instance of TransactionContext for creating and managing transaction groups, submitting transactions, and accessing transaction results.any: An instance of AlgopyValueGenerator for generating randomized test data.
- Introducing a mechanism for deferred execution of an application call to control transaction ordering for any abi/baremethod prefixed methods in contract instances.
- Adding explicit context for setting the scope for execution of a specific transaction group and active transaction within it.
- Revamped and detailed documentation, refer here to catch up with latest capabilities of
algorand-python-testingpackage.
Release notes
New Features
- Introduced ARC4 results in logs, with support for more than 15 ARC4 arguments (#18)
- Added ARC4 factory for easier creation of ARC4 types
- Implemented deferred app calls and modular test context
- Refined access to value generators
- Added support for ARC4 structs
Improvements
- Renamed
txn_op_fieldstoactive_txn_overridesfor clarity - Enhanced handling of mutable types (ARC4 tuple, array, and structs)
- Improved equality implementation for Account
- Refined handling of application and asset-related state operations
- Simplified transaction and inner transaction implementations
Bug Fixes
- Fixed propagation of changes in mutable types back to container-like types
- Ensured new Account instances have field defaults populated
- Corrected behavior of Global.current_application* properties to match AVM
- Fixed generation of app/asset IDs to avoid conflicts
Documentation
- Added comprehensive documentation for the initial stable release
- Integrated pydoclint and improved overall documentation formatting
v0.3.0-beta.9
v0.3.0-beta.9 (2024-08-22)
v0.3.0-beta.8
v0.3.0-beta.10
v0.3.0-beta.10 (2024-08-22)
v0.3.0-beta.7
v0.3.0-beta.7 (2024-08-21)
v0.3.0-beta.6
v0.3.0-beta.6 (2024-08-21)
Documentation
-
documentation for initial stable release of
algorand-python-testing(#8) (9d97d0d)-
docs: wip
-
chore: refresh pyproject
-
docs: refining docs (wip)
-
chore: integrating doctests
-
docs: revamping docs with latest features
-
docs: minor consistency with main readme; patching doctests
-
docs: removing the box from examples
-
docs: refine op codes section
-
chore: merge conflicts
-
chore: apply suggestions from code review
Co-authored-by: Daniel McGregor <daniel.mcgregor@makerx.com.au>
- docs: addressing docs pr comments
-
v0.3.0-beta.5
v0.3.0-beta.5 (2024-08-21)
Fix
-
ensure mutable types (ARC4 tuple, array and structs) have their changes propagated back to container-like types (global/local state, boxes, ARC4 mutable types) (#14) (
1f1f2ea)-
fix: add default eq implementation for ARC4 types
-
fix: ensure mutable types (ARC4 tuple, array and structs) have their changes propagated back to container-like types (global/local state, boxes, ARC4 mutable types)
-
feat: add str and repr implementations for ARC4 types
-
refactor: make ARC4 type_info private
-
refactor: make ARC4 struct inherit _ABIEncoded
-
refactor: removing get_app_for_contract; expanding get_app; parsing on_complete
-
v0.3.0-beta.4
v0.3.0-beta.4 (2024-08-21)
Feature
- rename txn_op_fields to active_txn_overrides to better reflect purpose, add additional checks to ensure crate_group parameters are used correctly (
973fc28)
Fix
-
fix equality implementation for Account, to allow comparison with arc4.Address (
6ec2dd4) -
ensure new Account's have field defaults populated (
54432b0) -
ensure Global.current_application* properties match AVM (
ae84ae2) -
when generating app/asset id's skip any that might already be reserved (
0bb5eba)
Documentation
- integrating pydoclint; formatting docs; removing docs from stub implementation (
d729bf9)
v0.3.0-beta.3
v0.3.0-beta.3 (2024-08-16)
Refactor
-
refactor: move box storage onto ApplicationContextData (#12)
-
refactor: move box storage onto ApplicationContextData
Require app reference when interacting with boxes
-
refactor: moving getters setters of global local state to ledger context
-
refactor: more laconic names for methods/vars referencing application -> app
Co-authored-by: Altynbek Orumbayev <altynbek.orumbayev@makerx.com.au> (57a8f13)