Release Notes

eth-account v0.8.0 (2022-12-15)

Features

  • update all references to deprecated eth_abi.encode_abi to eth_abi.encode (#200)

Performance improvements

  • Reduce the number of pbkdf2 iterations to speed up tests (#77)

Deprecations and Removals

  • remove deprecated methods that were noted to go in v0.5 (#195)

Internal Changes - for eth-account Contributors

  • add coverage reporting to pytest (#192)
  • Use updated circleci Python images, fix Sphinx warning (#194)

Miscellaneous changes

eth-account v0.7.0 (2022-08-17)

Bugfixes

  • bump ansi-regex to 5.0.1 to fix minor ReDos vulnerability (#129)
  • Enable lint runs again on CI (#166)
  • fix DoS-able regex pattern (#178)
  • Allow towncrier to build the release notes again (#185)

Improved Documentation

  • Add example to generate multiple accounts from a mnemonic (#153)
  • Pin Jinja2 at >=3.0.0,<3.1.0; pin towncrier==18.5.0; open up Sphinx requirement to allow >=1.6.5,<5. (#156)
  • added missing quotes to readme dev environment setup example (#172)

Miscellaneous changes

Breaking changes

  • Change bitarray dependency requirement to be >=2.4,<3 since 2.4 has wheels for all platform types. (#154)
  • Fix errors in EIP-712 signing (#175)

eth-account v0.6.1 (2022-02-24)

Bugfixes

  • Allow encoding of structured data containing bytes (#91)

Miscellaneous changes

eth-account v0.6.0 (2022-01-20)

Features

  • Update dependencies: - eth-abi - eth-keyfile - eth-keys - eth-rlp - pyrlp - eth-utils (#138)
  • Add support for Python 3.9 and 3.10 (#139)

Deprecations and Removals

  • Drop support for Python 3.6 (#139)

eth-account v0.5.9 (2022-08-04)

Bugfixes

  • fix DoS-able regex pattern (#178)

Miscellaneous changes

eth-account v0.5.8 (2022-06-06)

Miscellaneous changes

eth-account v0.5.7 (2022-01-27)

Features

  • Add support for Python 3.9 and 3.10 (#139)

Bugfixes

  • recover_message now raises an eth_keys.exceptions.BadSignature error if the v, r, and s points are invalid (#142)

eth-account v0.5.6 (2021-09-22)

Features

  • An explicit transaction type is no longer required for signing a transaction if we can implicitly determine the transaction type from the transaction parameters (#125)

Bugfixes

  • When signing a transaction, the regular JSON-RPC structure is now expected as input and is converted to the appropriate rlp transaction structure when signing (#125)
  • Fix string interpolation in ValidationError message of _hash_eip_191_message (#128)

Improved Documentation

  • Updated docs for sign_transaction to show that transaction type can be implicitly determined based on transaction parameters if one is not provided (#126)
  • Add encode_defunct to list of example message encoders (#127)

eth-account v0.5.5 (2021-07-21)

Features

  • Added support for EIP-2718 (Typed Transaction) and EIP-2939 (Access List Transaction) (#115)
  • Added support for EIP-1559 (Dynamic Fee Transaction) (#117)

Bugfixes

  • Structured messages (EIP-712) new permit leaving some (but not all) domain fields undefined. (#72)

Internal Changes - for eth-account Contributors

  • Upgrade project template, of note: a new mypy & pydocstyle, and types being exported correctly. (#121)

Miscellaneous changes

v0.5.3 (2020-08-31)

Performance improvements

  • RLP encoding/decoding speedup by using rlp v2alpha1, which has a rust implementation. (#104)

v0.5.2 (2020-04-30)

Bugfixes

  • Makes sure that the raw txt files needed for Mnemonics get packaged with the release. (#99)

v0.5.1

Released 2020-04-23

  • Fix a crash in signing typed messages with arrays #97
  • Replace attrdict with NamedTuple to silence a deprecation warning #76
  • Run more doctests & improve docs #94

v0.5.0

Released 2020-03-30

  • Add Python 3.8 support #86
  • Add opt-in support for Mnemonic seed phrases #87 (NOTE: This API is unaudited and likely to change)
  • Dependency change: support eth-keys v0.3.* #69

v0.4.0

Released 2019-05-06

v0.3.0

Released July 24, 2018

  • Support eth_keys.datatypes.PrivateKey in params that accept a private key.
  • New docs for Signers
  • Under the hood: add a new BaseAccount abstract class, so that upcoming signing classes can implement it (be on the lookout for upcoming hardware wallet support)

v0.2.3

Released May 27, 2018

  • Implement __eq__ and __hash__ for LocalAccount, so that accounts can be used in set, or as keys in dict, etc.

v0.2.2

Released Apr 25, 2018

  • Compatibility with pyrlp v0 and v1

v0.2.1

Released Apr 23, 2018

  • Accept ‘from’ in signTransaction, if it matches the sending private key’s address

v0.2.0 (stable)

Released Apr 19, 2018

  • Audit cleanup is complete
  • Stopped requiring chainId, until tooling to automatically derive it gets better (Not that transactions without chainId are potentially replayable on fork chains)

v0.2.0-alpha.0

Released Apr 6, 2018

  • Ability to sign an already-hashed message
  • Moved eth_sign-style message hashing to eth_account.messages.defunct_hash_message()
  • Stricter transaction input validation, and better error messages. Including: to field must be checksummed.
  • PyPy3 support & tests
  • Upgrade dependencies
  • Moved non-public interfaces to internal module
  • Documentation

v0.1.0-alpha.2

  • Imported the local signing code from web3.py’s w3.eth.account
  • Imported documentation and added more
  • Imported tests and pass them

v0.1.0-alpha.1

  • Launched repository, claimed names for pip, RTD, github, etc