tri-joe
eb3945097d
make abigen-ed modules pub ( #1332 )
2022-05-31 13:29:02 -07:00
Clifton King
a41ae901e5
fix(abigen): non-snake-case modules out of order ( #1331 )
...
eg: `console` and `shared_types` were out of order and would fail
rustfmt check
2022-05-31 09:44:24 -07:00
Matthias Seitz
d2c46867c1
chore(deps): make tokio required dependency ( #1322 )
...
* chore(deps): make tokio non optional
* chore(deps): bump tokio 0.18
* Update ethers-providers/Cargo.toml
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-05-28 17:54:45 -07:00
Clifton King
7b9503c8b0
fix(abigen): clippy warnings on solidity bindings ( #1319 )
...
eg the `console` contract throws a clippy warning
2022-05-27 13:32:57 -07:00
dependabot[bot]
37f3df5234
chore(deps): bump once_cell from 1.11.0 to 1.12.0 ( #1306 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.11.0 to 1.12.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.11.0...v1.12.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-24 00:31:40 -07:00
rakita
4301447155
relax thiserror minor version constraint ( #1294 )
2022-05-23 11:41:30 -07:00
Meet Mangukiya
2f34fc9705
feat(ethers-contract-abigen): opt out of checking cargo.toml for consistency ( #1301 )
2022-05-23 11:41:05 -07:00
Matthias Seitz
cffcc7bbec
chore(clippy): fix newest nightly lints ( #1298 )
2022-05-22 15:18:57 -07:00
dependabot[bot]
2883ed7e2d
chore(deps): bump once_cell from 1.10.0 to 1.11.0 ( #1288 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.10.0 to 1.11.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.10.0...v1.11.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-21 17:50:00 -07:00
Meet Mangukiya
5d604edd5c
feat(ContractDeployer): add tx builder methods ( #1289 )
2022-05-21 17:48:41 -07:00
Meet Mangukiya
6d5bebd860
Release process and CI ( #1240 )
...
* Fix the crate versions
* release.toml: add cargo-release config
* CONTRIBUTING.md: Update Releasing section
* feat: add release github workflow
* feat: generate CHANGELOGs and create github releases in CI
2022-05-13 13:10:05 -07:00
Matthias Seitz
847110a3fe
fix: filter out empty bytecode ( #1248 )
2022-05-11 07:34:41 -07:00
Matthias Seitz
4b462e6ef2
test(abigen): ensure structs in events work ( #1235 )
...
* test(abigen): ensure structs in events work
* chore: rename vars
* chore: use ganache chain id
* chore: disable ganache test on celo
2022-05-09 09:26:36 -07:00
Matthias Seitz
fd994d7fde
feat(abigen): support overloaded events ( #1233 )
...
* feat(abigen): support overloaded events
* chore: update CHANGELOG
2022-05-07 09:31:53 -07:00
Matthias Seitz
ce3ebaefa0
chore(clippy): make clippy happy ( #1230 )
2022-05-06 08:15:49 -07:00
dependabot[bot]
c44872f62e
chore(deps): bump thiserror from 1.0.30 to 1.0.31 ( #1206 )
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.30 to 1.0.31.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.30...1.0.31 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-02 11:54:22 -07:00
oblique
6faceb20d7
feat: Relax `Clone` requirements when `Arc<M>` is used ( #1183 )
...
`#[derive(Clone)]` was implementing `Clone` only if `M` was `Clone`,
however because of `Arc<M>` this can be relaxed.
2022-04-27 15:33:22 +03:00
Nicolas Gailly
9d53c73af0
Update event.rs ( #1173 )
2022-04-24 16:10:21 +02:00
Matthias Seitz
77bd9d49c8
test: add ethcall derive test for vec tuples ( #1144 )
2022-04-23 03:09:29 -07:00
Matthias Seitz
9047f96d95
feat: make stream mod public ( #1160 )
2022-04-21 19:29:40 +02:00
Matthias Seitz
969d4e01c0
feat: accept different middlewares for contract connect ( #1159 )
2022-04-21 17:05:23 +02:00
inconspicuous99
5f1f967ec1
ContractDeployer: pub deployer can modify defaults ( #1156 )
2022-04-19 13:20:59 -07:00
Matthias Seitz
a99dd1328b
fix: support display for bytes ( #1148 )
2022-04-16 13:08:31 -07:00
Dan Cline
1d14f9d26e
Ensure a consistent chain ID between a signer and provider in SignerMiddleware ( #1095 )
...
* feat(middleware): fetch chainid from middleware
Require SignerMiddleware to fetch the inner middleware's to set for the
signer. SignerMiddleware now requires an instantiated middleware with
an accessible get_chainid method.
* ci: update ganache
newer ganache version is needed to specify the ganache provider chain id
in tests
* set SignerMiddleware constructor return to result
* create new method for pulling chainid
* add consistent chainid CHANGELOG entry
* remove awaits
* switch test_derive_eip712 to use consistent signer
* remove gas estimation equality assert in deploy_and_call_contract -
updated version of ganache no longer returns the same value for gas
estimation and gas_used
* revert with_signer to non-async non-result
* cargo fmt
* expand SignerMiddleware::new comment
* remove doc indent
2022-04-10 10:55:30 -07:00
Matthias Seitz
a43a9b8806
fix(abi): change abiarraytype trait bounds for tuple ( #1079 )
2022-03-24 17:40:34 -07:00
Matthias Seitz
916e9a7334
chore(clippy): add some deny lints ( #1064 )
...
* feat: add deny lints
* trim ethers core
* trim ethers eip712
* deny ethers contract derive
* deny ethers contract abigen
* deny ethers contract
* deny ethers providers
* chore: add denies and fix unused deps
* doc: fix links
* fix: wasm build
* doc: fix links
* doc: fix links
* doc: fix inline doc links
* docs: fix intra doc links
2022-03-19 10:05:39 -07:00
Matthias Seitz
b6b5b09f4a
feat(abigen): add abi object deserializer and generate deploy function ( #1030 )
...
* feat(abigen): add abi object deserializer
* chore: rustfmt
* refactor: use enum type for deser abi
* refactor: use enum types for deser
* chore: rustfmt
* feat: add bytecode field
* feat: generate bytecode static
* feat: generate deployment function
* refactor: deploy function
* feat: add contract deployer type
* feat: make 0x prefix optional
* feat: add deploy function
* feat: add deploy example
* chore: update CHANGELOG
* chore(clippy): make clippy happy
2022-03-18 21:23:33 -07:00
Matthias Seitz
3d4feccabf
fix(core): check against ethers internal crate names ( #1060 )
...
* fix(core): check against ethers internal crate names
* fix: add import back
2022-03-17 15:14:53 -07:00
Georgios Konstantopoulos
3244364060
chore: do not pin eyre patch version
2022-03-17 14:10:31 +02:00
Matthias Seitz
22bc981fd5
chore(abigen): improve error message when bindings out of sync ( #1025 )
2022-03-14 13:29:23 +02:00
oblique
46d7afd65b
fix(abigen): safe ident field names ( #989 )
2022-03-05 20:25:03 +02:00
dependabot[bot]
010217c407
chore(deps): bump once_cell from 1.9.0 to 1.10.0 ( #987 )
...
Bumps [once_cell](https://github.com/matklad/once_cell ) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/matklad/once_cell/releases )
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md )
- [Commits](https://github.com/matklad/once_cell/compare/v1.9.0...v1.10.0 )
---
updated-dependencies:
- dependency-name: once_cell
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-04 05:29:34 -08:00
Georgios Konstantopoulos
9626cc1335
feat: add contract interface helpers ( #982 )
...
* feat(contract): add helpers for decoding as raw Token
This allows decoding Events and Function data without knowing the return type
* feat(contract): add helpers for decoding function outputs
* chore(contract): remove redundant generic param
2022-03-02 15:58:18 +02:00
Georgios Konstantopoulos
94e2d1b122
feat(abigen): add helper for getting number of abigen'd contracts
2022-03-01 14:44:34 +02:00
Matthias Seitz
960b873b00
fix(abigen): safe ident underscore followed by numeric ( #970 )
2022-02-28 00:04:43 +02:00
Matthias Seitz
d6d66b37dd
chore: add rate limit message ( #971 )
2022-02-27 17:41:26 +02:00
Matthias Seitz
10fcf60791
fix(abigen): support functions with different casing ( #972 )
2022-02-27 17:40:57 +02:00
Matthias Seitz
b6c22e9bcc
fix(abigen): dont generate empty shared_types module ( #965 )
2022-02-25 00:13:06 +02:00
Matthias Seitz
f5ef8149e5
feat(abigen): support shared type during multiabigen ( #959 )
...
* refactor: move type deduplication to abigen crate
* refactor: separate expansion process
* feat: support shared type during multiabigen
* test: add type deduplication test
* chore: rustfmt
* typos
* chore(clippy): make clippy happy
* chore: add anonymous field
2022-02-24 22:09:08 +02:00
Matthias Seitz
72da5913d2
test(abigen): add etherscan test case ( #964 )
2022-02-24 22:07:58 +02:00
Matthias Seitz
f1eaee52ef
feat: add contract code not verified check ( #962 )
2022-02-24 14:07:34 +02:00
Matthias Seitz
184cffaca3
fix(abigen/solc): make abigen work with ethers-solc and abiencoderv2 ( #952 )
...
* feat(solc): add lossless abi
* fix(abigen): make abigen work with ethers-solc and abiencoderv2
* chore: update CHANGELOG
2022-02-23 12:46:52 +02:00
Matthias Seitz
9876b49e6c
docs(abigen): improve abigen type docs ( #953 )
...
* docs(abigen): improve abigen type docs
* Update ethers-contract/ethers-contract-abigen/src/lib.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-23 12:36:14 +02:00
Matthias Seitz
45a37faa3d
fix(abigen): handle lossy ethabi generated abi structs ( #950 )
...
* fix(abigen): handle lossy ethabi generated abi structs
* chore: rustfmt
2022-02-22 20:26:21 +02:00
georgewhewell
ce8c671218
Add Ftm multicall addresses ( #927 )
...
* add multicall addresses for fantom
* update changelog
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-18 16:05:08 +02:00
Georgios Konstantopoulos
16b9de5134
fix(abigen): add serde json to created crate
2022-02-18 00:17:22 +02:00
Matthias Seitz
19d2fd1155
feat(solc): add configurable Artifact type ( #907 )
...
* refactor: make artifacts a sub mod
* feat: more options for output selection
* feat(solc): make ArtifactOutput struct functions
* fix: migrate all features
* feat: add configurable artifacts type
* refactor: move configurable to separate file
* feat: impl ArtifactOutput
* refactor: write extras
* simplify write extra
* feat: more helper functions
* feat: implement delegate
* fix: failing doc test
* fix: rustfmt
* chore: update CHANGELOG
* feat: add helper functions
* refactor: remove flatten
* feat: add link function
* feat: replace default type
* fix: doc tests
* feat: more utility functions
* fix: failing tests
* chore: rename types
* chore: bump ethers-solc 0.3.0
* fix: set metadata file extension properly
2022-02-17 17:31:35 +02:00
Jim
e3f0621d43
Expose New `call_raw` API that permits MultiCalls without Detokenization ( #915 )
...
* Add `call_raw` method that forgoes detokenization for MultiCall. Have `call` wrap around `call_raw` permitting user to handle detokenization themselves if they wish
* Improve documentation: Add details to the documentation example that informs the user of their responsibility to detokenize results
2022-02-15 22:38:01 +02:00
Mark Tyneway
100f121202
feat(ethers-contract): add `send_with_receipt` to `Deployer` ( #865 )
...
* feat(ethers-contract): add `send_with_receipt` to `Deployer`
The `Deployer` is used to deploy contracts and its `send`
function returns an attached instance of a `Contract`.
There is no way to know the transaction hash of the
deployment transaction, so this commit adds another
method `send_with_receipt` that returns an attached
`Contract` as well as a `TransactionReceipt`.
* changelog: update
* tests: call `send_with_receipt` in tests
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-05 16:37:09 +02:00
Matthias Seitz
b295d73c4a
refactor(solc): rewrite compiler passes and cache change detection ( #802 )
...
* chore: clippy
* refactor: rewrite compiler passes and cache
* feat: more work on compile pipeline
* feat: add cache constructor
* add artifact filtering
* fine tune api
* feat: prepare version integration
* docs: more docs
* feat: add cacheentry2
* replace cacheentry types
* integrate new api
* docs: more docs
* feat: implement new output handler
* feat: integrate cached files in new compile pipeline
* refactor: more cache refactor
* docs: more docs
* feat: add source name mapping
* feat: implement new parallel solc
* refactor: do a little cleanup
* refactor: even more cleanup
* even more cleanup
* chore: make it compile
* chore: make it compile with all features
* chore: clippy fix
* feat: integrate new compiler pipeline
* docs: more docs
* refactor: move stuff around
* refactor: start deprecating output type
* chore: make it compile again
* chore(deps): bump solc version 0.2.0
* feat: unify output types
* cargo fix
* refactor: add contracts wrapper
* chore: replace ProjectCompileOutput
* docs: add more docs
* feat: add offline mode
* feat: more artifact helpers
* chore: cleanup cache
* chore: streamline types
* fix: better artifacts mapping
* chore: some cleanup
* chore: change artifact
* chore: add configure solc fn
* feat: add artifact reading
* feat: implement retain and extend
* feat: add cache extending
* feat: write to disk
* chore: make clippy happy
* feat: implement path mapping
* chore: nits
* feat: introduce states
* feat: add compiler state machine
* chore: move cache types to cache mod
* chore: make clippy happy
* feat: add debug derives
* fix: use resolved import source unit names
* fix: failing tests
* test: test multiple libs properly
* chore: make clippy happy
* chore: update CHANGELOG
* fix: doc tests
* fix: set offline mode correctly
* chore: make it compile again
* Update ethers-solc/src/artifacts.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* feat: find remappings by default
* typos
* add eth_syncing RPC (#848 )
* add eth_syncing RPC
* Changelo updated
* small comments
* Intermediate SyncingStatus
* fix(core): adjust Ganache for new cli output (#851 )
* fix: review comments
* fix: cache relative path bug
* chore: add cache example
* chore: use absolute paths
* fix: remove overwritten files from cache
* fix: rustfmt
* chore: more helper functions
* chore: export AggregatedOutput
* feat: implement helper functions
* feat: even more helpers
* fix: failing doc tests
* refactor: remove source name map tracking
* fix: determine artifacts in ephemeral mode
* refactor: allowed paths should not fail
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
Co-authored-by: rakita <rakita@users.noreply.github.com>
Co-authored-by: wolflo <33909953+wolflo@users.noreply.github.com>
2022-02-04 18:20:24 +02:00