Skip to content

Releases: ExWeb3/elixir_ethers

0.1.3

27 Dec 03:18
8586869
Compare
Choose a tag to compare

What's Changed

Bug fixes

  • unsized integer encoding to hex will now raise if given negative numbers.
  • Utils.date_to_block_number/3 going to negative block numbers issue fixed.

Pull Requests in Release

Full Changelog: v0.1.2...v0.1.3

0.1.2

12 Dec 06:15
e5d7e44
Compare
Choose a tag to compare

Breaking Changes

  • TxData.to_map/2 now returns hex values for all integers.
  • Utils.maybe_add_gas_limit/2 now adds hex gas limit value instead of integer.

Pull Requests in Release

  • Convert integer override values to hexadecimal as per Ethereum JSON RPC spec by @alisinabh in #64
  • Bump ex_doc from 0.30.9 to 0.31.0 by @dependabot in #63

Full Changelog: v0.1.1...v0.1.2

0.1.1

22 Nov 05:47
c94ca89
Compare
Choose a tag to compare

Bug fixes

  • Multicall: aggregate_3 decoder returns nil in case of failure
  • Multicall: Feed decoded results through Utils.human_arg/2

Pull Requests in Release

New Contributors

Full Changelog: v0.1.0...v0.1.1

0.1.0

19 Nov 05:41
7178db2
Compare
Choose a tag to compare

New Features

  • Checksum address utility functions

Enhancements

  • Use zip_reduce for event generators
  • Move documentation generators to ContractHelpers
  • Display message for empty parameters or return types
  • Ethers.call/2 and Ethers.get_logs/2 now automatically convert integer block numbers to hex values
  • Return structs as a result in generated functions and event filter with Inspection protocols implemented for better development experience
  • Support dynamically sized indexed event filters (bytes, strings, arrays and structs)
  • Ethers.call/2 now only returns as a list if the return type is either a solidity array or tuple
  • Add return names in documentations and TxData inspection
  • Added an interface for Multicall3 through Ethers.Contracts.Multicall3
  • Added Ethers.Multicall as an abstraction for Ethers.Contracts.Multicall3
  • Added batching functionality using Ethers.batch/2

Breaking Changes

  • The generated contract functions no longer call or send transactions, They will only prepare parameters
    To execute an explicit call to Ethers.send/2 or Ethers.call/2 is required
  • Events no longer accept address overrides. Overriding now happens at Ethers.get_logs/2
  • Function Ethers.get_logs/3 is now changed to Ethers.get_logs/2
  • Generated contract modules and EventFilter modules default_address/0 function is now renamed to __default_adress__/0 to prevent collision
  • Removal of Ethers.RPC module
  • Remove Ethers.Types.dynamically_sized_types/0 function
  • Ethers.call/2 response is not always a list
  • Ethers.deploy/4 is now removed and replaced with Ethers.deploy/2

Bug fixes

  • Fix event filters with mixed indexed and non-indexed arguments

Pull Requests in Release

New Contributors

Full Changelog: v0.0.6...v0.1.0

0.0.6

07 Sep 01:54
fd1ddc0
Compare
Choose a tag to compare

What's Changed

Enhancements

  • Update dialyxir dependency to 1.4.0
  • Update ex_doc to 0.30.6
  • Add more function to Utils module
  • Improve failure return values of deployment functions

Bug fixes

  • Fix RPC options and client override issue
  • Do not add nil to address when address is not present

Full Changelog: v0.0.5...v0.0.6

0.0.5

29 Aug 20:47
e8b9c12
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.0.4...v0.0.5

0.0.4

29 Aug 20:47
9bf2220
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.0.3...v0.0.4

v0.0.3

29 May 06:11
18f9319
Compare
Choose a tag to compare

Added

  • Better Gas Estimation API.
  • Configurable default gas drift calculation.

Fixed

  • Type.[min/max] functions bitsize check guard.
  • Generated documentation typos and general writing.

Full Changelog: v0.0.2...v0.0.3

0.0.2

24 Apr 15:56
86bb145
Compare
Choose a tag to compare

Changes

  • Include priv dir in hex package.

Full Changelog: v0.0.1...v0.0.2

v0.0.1

24 Apr 00:29
a9bbed3
Compare
Choose a tag to compare

Initial Beta release of Ethers for Elixir. This release includes the following features:

  • Contract function generation during compile time from ABIs.
  • Ability to deploy a contract with its byte-code and constructor.
  • Common contract interfaces like ERC20, ERC721, ERC777 and ERC1155. (built-ins)
  • ENS and other name services resolve functionality and contracts.
  • Implicit type conversion and common type utility functions.