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_holdings
for setting asset holding balances and frozen states (d777ca0
) -
expand accepted types when interacting with accounts, applications and assets (
f448a97
)wip
-
replaced
account_exists
withaccount_is_funded
as the later is more useful (4d08690
)
Fix
-
use correct type for Globals.caller_application_id (
a30d85a
) -
do not allow specifying
address
for 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
NotImplemented
when a comparison is not possible (b055fa6
) -
arc4_prefix
annotated to also acceptalgopy.Bytes
(40328ca
)
Documentation
- include usage of
algopy_testing_context
in 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-testing
package.
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_fields
toactive_txn_overrides
for 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 <[email protected]>
- 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 <[email protected]> (57a8f13
)