Skip to content

Releases: algorandfoundation/algokit-utils-py

v3.0.1-beta.1

19 Feb 10:05
bb096bb

Choose a tag to compare

v3.0.1-beta.1 Pre-release
Pre-release

Fix

  • Minor deploy behaviour and logger instantiation patches (#143) (bb096bb)

Documentation

v3.0.0

18 Feb 13:56

Choose a tag to compare

⚠ BREAKING CHANGES

While we aim to minimize breaking changes through deprecation notices, some changes were necessary to improve the architecture and usability of the library.

NOTE: We highly recommend reviewing the migration guide for detailed migration paths.

Key changes:

  • The core client interface has changed from individual functions to a unified AlgorandClient class
  • ApplicationClient has been replaced by the more powerful AppClient and AppFactory classes
  • Transaction composition has moved to a new TransactionComposer class with more specific method names
  • Introducing dedicated AlgoAmount type for dealing with values representing Algo amount.
  • Asset management has moved to dedicated methods under AlgorandClient.asset

Features

The new version introduces several improvements to make Algorand development more intuitive and aligned with the equivalent SDKs in other languages:

Enhanced Application Management

  • New ARC-56 support for modern application specifications
  • Improved app deployment with better control over updates and schema changes
  • Enhanced box space management and ABI integration
  • Simplified app state management with typed returns

Improved Transaction Handling

  • More granular control over transaction composition
  • Better fee management with static and maximum fee controls
  • Enhanced ABI method call support
  • Improved transaction grouping capabilities

Simplified Client Interface

# New unified client interface
algorand = AlgorandClient.testnet()  # or .mainnet() or .localnet()

# Asset operations
algorand.asset.create(...)
algorand.asset.opt_in(...)
algorand.asset.transfer(...)

# Application operations
algorand.app.create(...)
algorand.app.call(...)
algorand.app.update(...)

# Account operations
algorand.account.fund(...)
algorand.account.get_information(...)

Better Type Safety and Error Handling

  • More consistent return types across operations
  • Better error messages with detailed failure information
  • Enhanced debugging support with source maps
  • Improved transaction simulation capabilities

Deprecated Features

Many standalone functions have been deprecated in favor of the new AlgorandClient interface:

  • Standalone asset operations (create_asset, asset_opt_in, etc.).
  • Individual app management functions (create_app, update_app, etc.).
  • Direct transaction manipulation functions
  • Legacy app deployment methods

Please note, these functions will continue to work but will show deprecation warnings. We recommend migrating to the new interfaces for better maintainability and features (see dedicated migration guide). If you spot any inconsistencies, please report them as an issue on repo.

This new version represents a step forward in making Algorand development more intuitive and maintainable while providing better tooling, type safety and feature parity with the equivalent AlgoKit Utils SDKs in other languages.

CHANGELOG

Feature

Fix

  • Remove deprecation decorator causing side effects (#141) (a10720e)
  • Name normalization in arc56 contract; extra test for more verbose validation (#140) (a38843a)
  • Addressing internal feedback (batch 6) (#139) (4c661c0)
  • Expose algosdk lsig, multisig object instances in account wrappers (#138) (24b2d19)
  • Feedback batch #4 (#136) (7a2559f)
  • Detect changes in extra program pages as a schema break (#135) (43aa41f)
  • Addressing internal feedback (3) (#134) (b8071a8)
  • Second batch of minor improvements based on internal feedback (#133) (0693abc)
  • Addressing feedback and minor tweaks (#132) (007bb8e)

Breaking

  • Major restructuring and new app client interfaces (428dab1)

Documentation

  • Refining docstrings, adding more examples (#137) (636c897)

v3.0.0-beta.12

18 Feb 09:54
a10720e

Choose a tag to compare

v3.0.0-beta.12 Pre-release
Pre-release

Fix

  • Remove deprecation decorator causing side effects (#141) (a10720e)

v3.0.0-beta.11

15 Feb 19:58
636c897

Choose a tag to compare

v3.0.0-beta.11 Pre-release
Pre-release

Documentation

  • Refining docstrings, adding more examples (#137) (636c897)

v3.0.0-beta.9

14 Feb 10:16
4c661c0

Choose a tag to compare

v3.0.0-beta.9 Pre-release
Pre-release

Fix

  • Addressing internal feedback (batch 6) (#139) (4c661c0)

v3.0.0-beta.10

14 Feb 17:54
a38843a

Choose a tag to compare

v3.0.0-beta.10 Pre-release
Pre-release

Fix

  • Name normalization in arc56 contract; extra test for more verbose validation (#140) (a38843a)

v3.0.0-beta.8

12 Feb 16:42
24b2d19

Choose a tag to compare

v3.0.0-beta.8 Pre-release
Pre-release

Fix

  • Expose algosdk lsig, multisig object instances in account wrappers (#138) (24b2d19)

v3.0.0-beta.7

10 Feb 16:46
7a2559f

Choose a tag to compare

v3.0.0-beta.7 Pre-release
Pre-release

Fix

v3.0.0-beta.6

07 Feb 15:49
43aa41f

Choose a tag to compare

v3.0.0-beta.6 Pre-release
Pre-release

Fix

  • Detect changes in extra program pages as a schema break (#135) (43aa41f)

v3.0.0-beta.5

05 Feb 20:24
b8071a8

Choose a tag to compare

v3.0.0-beta.5 Pre-release
Pre-release

Fix