Skip to content

Releases

Version 0.7.0

Choose a tag to compare

@MrNaif2018 MrNaif2018 released this 06 Nov 00:08
Immutable release. Only release title and notes can be modified.
ac11b54

Breaking: Drop support for python 3.9 and 3.10

Breaking: Remove PrivateKey.from_passphrase and get_address_from_passphrase. They used a single SHA-256 of the passphrase as the private key, which is crackable offline, and existed for compatibility with wallet/createaddress, removed from java-tron in 4.7.1.1. Use generate_address or a mnemonic instead

Breaking: Remove the sha256 helper from tronpy.keys, use hashlib.sha256 instead

PrivateKey.fromhex and PublicKey.fromhex are now typed to return their own class instead of BaseKey

Fix encoding and decoding of the trcToken ABI type

Add support for python 3.15

Use cryptography instead of coincurve for secp256k1 operations

Allow eth-abi 6 and pycryptodome 4

Upgrade the mnemonic extra to 0.21

Add raw_data_hex to transactions and their to_json output, including offline-built ones, so they can be signed by tools that require it, like TronWeb

If you pass to_json output to trontxsize, upgrade it to 1.5.0 or newer

Fix wrong txID of offline-built transactions with a memo or permission_id

Fix Transaction.from_json and AsyncTransaction.from_json failing on JSON strings

Fix from tronpy.providers import *

Move docs to Zensical and CI to GitHub Actions

Version 0.6.2

Choose a tag to compare

@MrNaif2018 MrNaif2018 released this 08 Jan 01:55
a0731f7

Add support for python 3.14

Version 0.6.1

Choose a tag to compare

@MrNaif2018 MrNaif2018 released this 16 Jul 22:04
fd8b0df

Allow to parse not fully valid ABI data with strict=False in trx_abi.decode_abi

Version 0.6.0

Choose a tag to compare

@MrNaif2018 MrNaif2018 released this 16 Jul 19:26
6c663b2

Drop support for Python 3.8, add support for Python 3.13

Experimental offline transaction creation: install tronpy with offline extra, and then pass offline=True and ref_block_id to .build() method

New get_energy method added

Use ruff for linting and formatting

Switch to hatching instead of poetry for package building

Make Signature class tronweb-compatible: it can now correctly parse those signatures, and there's a method tronweb_hash on signature to return signature exactly like tronweb. Note that e.g. sign_msg etc that receive non-hash data now uses keccak256 (with the tron message header) instead of sha256 as it should be in tron. Both keccak256 and sha256 are now exported, as well as hash_message

Add getcandelegatedmaxsize

Fix infinite recursion in handling of api keys for trongrid
Port trongrid logic to async http client

Version 0.5.0

Choose a tag to compare

@MrNaif2018 MrNaif2018 released this 15 Mar 17:58
8552012

Python 3.12 support, drop python 3.7 support

Use cryptographically secure generator for PrivateKeys
Upgrade dependencies
A few new methods related to stake V2 API

Version 0.4.0

Choose a tag to compare

@MrNaif2018 MrNaif2018 released this 21 Mar 17:06
d1d5fe9

Breaking: Support stake V2 APIs (note: old APIs won't work anymore)
Add optional ability to derive addresses from seed
Use correct version in User-Agent
Trongrid JWT support
Separate trigger_constant_contract from trigger_const_smart_contract_function method

Version 0.3.0

Choose a tag to compare

@MrNaif2018 MrNaif2018 released this 02 Feb 18:10
a007126

Update dependencies, remove upper version pins
Switch to native cryptography for secp256k1 curves via coincurve library, no longer use pure-python ecdsa library
Use poetry-core in pyproject.toml for lighter builds
Fix padding bytes issues
Make latest block id parsing more reliable
New get_function_by_selector function
Fixes for lowercase constructor type
Add expiration method to TransactionBuilder
Add code_hash to Contract constructor
Added set_signature method to Transaction
Add new withdraw_rewards method
Add event logs parser
And many more...

Internal changes:
Setup CI testing and reformat code with black, isort and flake8