- Remove v1 algod API (
algosdk/algod.py
) due to API end-of-life (2022-12-01). Instead, use v2 algod API (algosdk/v2client/algod.py
). - Remove
algosdk.future
package. Move package contents toalgosdk
. - Remove
encoding.future_msgpack_decode
method in favor ofencoding.msgpack_decode
method. - Remove
cost
field inDryrunTxnResult
in favor of 2 fields:budget-added
andbudget-consumed
.cost
can be derived bybudget-consumed - budget-added
. - Remove
mnemonic.to_public_key
in favor ofaccount.address_from_private_key
. - Remove logicsig templates,
algosdk/data/langspec.json
and all methods inlogic
depending on it.
- Bug-Fix: encode ABI string with non-ASCII characters by @ahangsu in algorand#402
- Tests: Migrate v1 algod dependencies to v2 in cucumber tests by @algochoi in algorand#400
- Enhancement: allowing zero length static array by @ahangsu in algorand#401
- README: Delete Travis CI Badge by @algochoi in algorand#404
- examples: Migrate v1 algod usage to v2 algod by @algochoi in algorand#403
Full Changelog: https://github.com/algorand/py-algorand-sdk/compare/v1.20.1...v1.20.2
- Bug-fix: Implement
TransactionRejectedError
by @jdtzmn in algorand#396 - Decoding: Fix roundtrip encode/decode tests for transactions by @algochoi in algorand#398
Full Changelog: https://github.com/algorand/py-algorand-sdk/compare/v1.20.0...v1.20.1
- Boxes: Add support for Boxes by @algochoi in algorand#348
class StateSchema
's methodundictify()
now returns aStateSchema
object instead of a pythondict
Full Changelog: https://github.com/algorand/py-algorand-sdk/compare/v1.19.0...v1.20.0
- REST API: Add algod block hash endpoint, add indexer block header-only param. by @winder in algorand#390
Full Changelog: https://github.com/algorand/py-algorand-sdk/compare/v1.18.0...v1.19.0
- Deprecation: Add deprecation warnings on v1 algod API and old transaction format by @algochoi in algorand#381
- enhancement: add unit test for ParticipationUpdates field by @shiqizng in algorand#386
- Bug-fix: Pass verbosity through to testing harness by @tzaffi in algorand#373
- Enhancement: Trim the indexer images and use the sandbox instead of custom dockers by @tzaffi in algorand#367
- Enhancement: Add State Proof support by @shiqizng in algorand#370
- Enhancement: Deprecating use of langspec by @ahangsu in algorand#371
- @ahangsu made their first contribution in algorand#371
Full Changelog: https://github.com/algorand/py-algorand-sdk/compare/v1.16.1...v1.17.0
- Bug-fix: Pass verbosity through to testing harness by @tzaffi in algorand#373
- Enhancement: Trim the indexer images and use the sandbox instead of custom dockers by @tzaffi in algorand#367
- Enhancement: Add State Proof support by @shiqizng in algorand#370
- Enhancement: Deprecating use of langspec by @ahangsu in algorand#371
- @ahangsu made their first contribution in algorand#371
Full Changelog: https://github.com/algorand/py-algorand-sdk/compare/v1.16.1...v1.17.0b1
- bug-fix: add check to desc so we dont output null if undefined by @barnjamin in algorand#368
- AVM: Consolidate TEAL and AVM versions by @michaeldiamant in algorand#361
- Testing: Modify cucumber steps to use dev mode network by @algochoi in algorand#360
- Dev Tools: Source map decoder by @barnjamin in algorand#353
- Github-Actions: Adding pr title and label checks by @algojack in algorand#358
- Implement new step asserting that AtomicTransactionComposer's attempt to add a method can fail with a particular error by @tzaffi in algorand#347
- Split up unit test files and rename tests directory to test by @algochoi in algorand#351
- App page const by @barnjamin in algorand#357
Full Changelog: https://github.com/algorand/py-algorand-sdk/compare/v1.15.0...v1.16.0
- Break v2_step.py into account_, application_, and other_ by @tzaffi in algorand#341
- Add method to ABIResult by @barnjamin in algorand#342
- Add method to get Method by name by @barnjamin in algorand#345
Full Changelog: https://github.com/algorand/py-algorand-sdk/compare/v1.14.0...v1.15.0
- Update client API to support new cost fields in dryrun result by @algoidurovic in algorand#336
- @algoidurovic made their first contribution in algorand#336
- Fix readthedocs by providing root requirements.txt (#332)
- Adding condition for allowing rcv to be none if close to is set (#317)
- Adding foreign-app-addr to dryrun creator (#321)
- Matrix test python versions integration tests (#327)
- Matrix test across Python versions for unit tests (#325)
- Bump minimum Python version to 3.8 (#323)
- Add minimum Python version policy to README (#322)
- Consistently reference
pip3
in README (#319)
- Fixed typo in lsig trace (#320)
- Catch TypeError and ValueError in verify functions (#309)
- Dryrun response (#283)
- Support unlimited assets REST API changes. (#295)
- Fix the cucumber test wording around block rounds in indexer asset balance lookup (#301)
- Support unlimited assets REST API changes. (#295)
- Fix the cucumber test wording around block rounds in indexer asset balance lookup (#301)
- New keyreg txn field (#244)
- C2C Feature and Testing (#268)
- Add App creator to account balances (#277)
- Add ABI and ATC to Sphinx (#289)
- Change init.py to include v2client import (#243)
- Updates to pipeline (#279)
- Add CircleCI build step to generate docsets (#285)
- revert to point testing harness to sdk testing's master branch (#288)
- Partially fix types for atomic transaction composer (#290)
- Update
langspec.json
for Teal6 (#292)
- Create dryrun (#259)
- Support Foreign objects as ABI arguments and address ARC-4 changes (#251)
- Add requirement to fetch behave source code and update readme (#262)
- Fix wait for confirmation function (#263)
- Add a default User-Agent header to the v2 algod client (#260)
- ABI Interaction Support for Python SDK (#247)
- ABI Type encoding support (#238)
- Add type hints and clean up ABI code (#253)
- Add CircleCI configs to the Python SDK repo (#246)
- Re-format local and global state to work with correct msgpack encoding (#274)
- Support Foreign objects as ABI arguments and address ARC-4 changes (#251)
- Add requirement to fetch behave source code and update readme (#262)
- Fix wait for confirmation function (#263)
- Add a default User-Agent header to the v2 algod client (#260)
- ABI Interaction Support for Python SDK (#247)
- ABI Type encoding support (#238)
- Add type hints and clean up ABI code (#253)
- Add CircleCI configs to the Python SDK repo (#246)
- Add wait_for_confirmation() to AlgodClient (#214)
- Support AVM 1.0 (#236)
- Support for < python 3.7 (#221)
- Fix JSON decoding in AlgodHTTPError (#223)
- Add OnlineyKeyregTxn and OfflineKeyregTxn class and additional tests.
- Signing support for rekeying to LogicSig/MultiSig account
- Deprecate to_public_key and remove internal usage of to_public_key
- Modified constants.py to match python.org PEP 8 style guidelines
- Bugfix for newer Sphinx versions - m2r replaced with maintained m2r2
- Fix typo in min/max balance indexer & make clearer
- Merge Request headers in
algod.py
- Support for dynamic opcode accounting, backward jumps, loops, callsub, retsub
- Ability to pay for more app space
- Ability to pool fees
- Raise JSONDecodeError instead of None (#193)
- Support new features for indexer 2.3.2
- Support for offline and nonparticipating key registration transactions.
- Add TEAL 3 support
- Detects the sending of unsigned transactions
- Add asset_info() and application_info() methods to the v2 AlgodClient class.
- Dependency on missing constant removed
- Logic multisig signing fixed
- kmd.sign_transaction now works with application txn
- Added check for empty result in list_wallets
- Now zero receiver is handled in transactions
- Added init file for testing
- Moved examples out of README into examples folder
- Added optional 'round_num' arguments to standardize 'round_num', 'round', and 'block'
- Support for Applications
- Now content-type is set when sending transactions
- indexer client now allows no token for local development environment
- Support for indexer and algod 2.0
- Added support for Algorand Smart Contracts (ASC)
- Dynamic fee contract
- Limit order contract
- Periodic payment contract
- Added SuggestedParams, which contains fee, first valid round, last valid round, genesis hash, and genesis ID; transactions and templates from 'future' take SuggestedParams as an argument.
- Added suggested_params_as_object() in algod
- Added asset decimals field.
- Added support for Algorand Standardized Assets (ASA)
- Added support for Algorand Smart Contracts (ASC)
- Added support for Hashed Time Lock Contract (HTLC)
- Added support for Split contract
- Added support for Group Transactions
- Added support for leases
- custom headers and example
- more flexibility in transactions_by_address()
- documentation changes
- signing and verifying signatures for arbitrary bytes
- option for flat fee when creating transactions
- functions for converting from microalgos to algos and from algos to microalgos
- algod.send_transaction(): sends SignedTransaction
- algod.send_raw_transaction(): sends base64 encoded transaction
- Multisig.get_account_from_sig() is now Multisig.get_multisig_account
- SDK released