ethers-rs/ethers-contract/ethers-contract-abigen
Nick 9e559aefeb
fix(abigen): ensure correct ABI in `From` impl (#2036)
* fix(abigen): ensure correct ABI in `From` impl

`new` creates a `Contract` with the correct ABI, but the `From` impl
simply wraps the source `Contract`, which could have a completely
different ABI. In effect this was an unsafe cast, and indeed was
observed to trigger a "method not found (this should never happen)"
panic for subsequent method lookups. Implementing `From` in terms of
`new` fixes this, at the cost of an extra `Arc::clone()` (which I can't
see how to eliminate without piercing the `ethers::contract::Contract`
public API).

* Remove unnecessary `async` from test

Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>

Co-authored-by: DaniPopes <57450786+DaniPopes@users.noreply.github.com>
2023-01-13 10:18:17 -08:00
..
src fix(abigen): ensure correct ABI in `From` impl (#2036) 2023-01-13 10:18:17 -08:00
Cargo.toml feat(abigen): use prettyplease (#2027) 2023-01-09 07:17:22 +02:00
README.md docs: add missing attribution to Gnosis for codegen & macros 2020-06-20 17:02:57 +03:00

README.md

This code generator was adapted from the original ethcontract-rs repository by Gnosis.