Matthias Seitz
8db70cead9
fix(solc): handle more remapping edge cases ( #719 )
...
* feat: ancestor finding
* feat: better remapping scanning
* fix(solc): handle more remapping edge cases
* fix: handle deeply nested libs
* chore: cleanup
2021-12-20 22:16:59 +02:00
Matthias Seitz
debd1dd153
chore(solc): bump latest solc version ( #720 )
2021-12-20 22:15:56 +02:00
Matthias Seitz
0d2fc53541
fix(solc): prefere dapptools style remappings ( #713 )
2021-12-19 22:34:06 +02:00
Georgios Konstantopoulos
8d95f3bf33
fix: use lib for parsing paths correctly in windows ( #712 )
2021-12-19 22:03:16 +02:00
Georgios Konstantopoulos
9c11f6cb7b
fix(ethers): auto-enable asm when supported (x86/x64 and not msvc) ( #710 )
2021-12-19 18:02:22 +02:00
Georgios Konstantopoulos
d7c29cc615
fix: configure rustls & openssl via feature flag ( #703 )
...
* chore(etherscan): allow specifying openssl or rustls
* chore(contract): allow specifying openssl or rustls
* chore(solc): allow specifying openssl or rustls
* chore: expose new rustls/openssl features at top level crate
* chore: bump tokio-tungstenite / remove dup rustls version
* chore: bump svm-rs
* fix: feature gate sha2-asm
* ci: remove --all-features from windows tests
* chore: do not enable sha2-asm by default
* fix: do not pull in svm-rs in wasm builds
* chore: use upstream svm again
2021-12-19 16:56:54 +02:00
Matthias Seitz
12334443eb
chore(solc): use svm global_version if it exists and no SOLC_PATH is set ( #709 )
...
* chore(solc): use svm global_version if it exists and no SOLC_PATH is set
* rustfmt
* fix: resolve global svm version
2021-12-19 16:30:54 +02:00
Matthias Seitz
e0ac32a68f
chore(solc): add display impl for PathsConfig ( #708 )
2021-12-19 14:35:11 +02:00
Matthias Seitz
8f8a813181
chore: use new remapping detection ( #707 )
...
* chore: use newe remapping detection
* chore: update changelog
* Update ethers-solc/src/remappings.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2021-12-19 14:30:31 +02:00
Matthias Seitz
9096f4e170
feat(solc): revamped remapping auto detect ( #706 )
2021-12-19 06:32:14 +02:00
Matthias Seitz
e24117a1e1
chore(clippy): make clippy happy ( #705 )
2021-12-19 06:28:38 +02:00
Alex Xiong
6cbdc89187
fix: avoid futures-util yanked err ( #693 )
2021-12-15 03:32:36 +01:00
Matthias Seitz
4bb2636b77
fix: remove assert to check cache format ( #689 )
...
* fix: remove assert
* rustmft
2021-12-13 16:37:35 -07:00
Georgios Konstantopoulos
8a7252fe58
fix: bump svm-rs for windows support ( #685 )
2021-12-13 18:20:38 +02:00
Matthias Seitz
4c677933ce
feat(solc): add workspace utils ( #678 )
...
* feat(solc): add workspace mocking
* test: add more tests
* test: update tests
* rename to project-utils
* add fs extra error
* clean up functions
* simplify path construction
2021-12-13 01:39:28 +02:00
Matthias Seitz
5dec757493
refactor(solc): add new io error with path info ( #680 )
...
* refactor(solc): add new io error with path info
* chore: rustfmt
2021-12-12 10:10:40 -07:00
Matthias Seitz
ab8b5233d2
fix: exclude asm for msvc ( #679 )
2021-12-12 15:09:15 +02:00
Matthias Seitz
275f7179bf
feat(solc): add hardhat artifact support ( #677 )
...
* feat: add hardhat artifact support
* test: add hh test
* feat: add hh fallback artifact handler
* add format detection
* chore: update changelog
* chore: typos
2021-12-11 19:39:39 +02:00
Matthias Seitz
38e18463dc
feat(solc): extend Artifact trait ( #673 )
...
* feat(solc): extend Artifact trait
* chore: update changelog
* chore: rustfmt
2021-12-10 12:38:44 -07:00
Matthias Seitz
f48fd88a97
fix(solc): skip 0x prefix for deserialize bytes decoding ( #671 )
2021-12-10 11:20:30 -07:00
Rohit Narurkar
991cda3f33
fix: naming and default impl ( #665 )
2021-12-10 10:22:25 -07:00
Matthias Seitz
ab949f7858
fix: add allow paths ( #667 )
2021-12-10 08:50:15 -07:00
Matthias Seitz
59cf991828
feat(abigen): use structs for outputs ( #664 )
...
* feat(abigen): use structs for outputs
* update CHANGELOG
* make clippy happy
* fix lints
2021-12-09 16:00:59 -07:00
dependabot[bot]
f0a8f01465
chore(deps): bump md-5 from 0.9.1 to 0.10.0 ( #660 )
...
Bumps [md-5](https://github.com/RustCrypto/hashes ) from 0.9.1 to 0.10.0.
- [Release notes](https://github.com/RustCrypto/hashes/releases )
- [Commits](https://github.com/RustCrypto/hashes/compare/md5-v0.9.1...md2-v0.10.0 )
---
updated-dependencies:
- dependency-name: md-5
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>
2021-12-09 10:45:34 -07:00
laizy
eeaab21049
add buffer for file reading ( #662 )
2021-12-09 10:45:13 -07:00
Matthias Seitz
0b1f3b1dcf
feat(solc): add support for library linking ( #656 )
...
* feat(solc): add support for library linking
* chore: update changelog
* fixbreaking compactref api
* rm check
* return Bytes instead
* revert changes
* simplify resolve
* test: add lost tests
2021-12-08 02:38:29 +02:00
Matthias Seitz
a9a47a4cd6
feat(solc): add support for compiling solc in parallel ( #652 )
...
* docs: more docs and tracing
* feat: add compile many
* feat: add compile many
* fix: make fields optional
* chore: add num_cpus and criterion
* add compile benchmark
* feat: add job option
* feat: add parallel compilation support
* use ful utilization
* chore: move pathmap to cache
* fix: async write all
* chore: clean up
2021-12-07 01:02:13 +02:00
Matthias Seitz
f10b47e600
docs: more docs and tracing ( #651 )
2021-12-05 15:27:37 +02:00
Matthias Seitz
23c356ce38
feat(solc): add clean up function ( #649 )
2021-12-04 19:27:30 +02:00
Matthias Seitz
0464ac9d46
feat(solc): improve solc detection and reduce install effort ( #648 )
2021-12-04 09:13:58 -08:00
James Prestwich
437f9de92f
fix: specify home-dep as non-wasm instead of x86-only ( #645 )
2021-12-03 22:03:26 +02:00
Matthias Seitz
ad68337113
fix: make ethers-wasm workspace member ( #642 )
...
* fix: make ethers-wasm workspace member
* rustfmt
* chore: allow clippy all
* chore: make ethers-wasm non default member
* ci: only clippy default members
2021-12-03 19:27:55 +02:00
Matthias Seitz
133382d034
fix: check all import styles ( #634 )
2021-11-29 23:45:07 +02:00
Georgios Konstantopoulos
d06bfdc15c
solc: add tracing ( #628 )
...
* feat(solc): add tracing
* chore: apply suggestions from code review
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
* chore: fix compilation error
* chore: adjust log
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2021-11-28 19:14:34 +02:00
korboismoe
41f8e295a0
fix: remove changed artifacts from the cache ( #630 )
...
Duplicate artifacts will be returned if there is a
changed artifact that was already present in the
cache
2021-11-28 14:33:24 +02:00
Georgios Konstantopoulos
7bb90935ed
fix(solc): do not overwrite existing cache ( #629 )
...
previously if 1 file changed, it'd overwrite the existing cache on disk with just
that 1 changed file. this change reads the cache from disk and merges it with the new checksums
2021-11-26 21:16:09 +02:00
Georgios Konstantopoulos
e1476a1156
fix: remove redundant cache read ( #627 )
2021-11-26 19:02:18 +02:00
korboismoe
d77068e26a
fix: pass partial artifact cache to project compiler output ( #623 )
...
* fix: pass partial artifact cache to project compiler output
If the cache contains some artifacts but not all, the
project compiler output now contains the cached artifacts
in addition to the newly compiled artifacts.
* chore: update changelog
* fix: remove missing cache files before getting changed files
* fix: propagate error if reading cached artifacts fails
2021-11-26 18:49:19 +02:00
Georgios Konstantopoulos
ca558b08d6
fix(solc): enable sha2 asm for checksum speed ( #626 )
2021-11-26 17:29:19 +02:00
Rohit Narurkar
86522e2b9e
feat: verify checksum before project compilation ( #614 )
...
* feat: verify checksum before project compilation
* fix: in case of a corrupt binary, avoid calling it to check version
* fix: cache releases in the global lazy
* chore: fix linting
* fix: replace a loop with straightforward if
* chore: latest svm
* fix: changes based on review comments
* chore: use published version of svm-rs
* chore: use published version of svm-rs
2021-11-26 12:30:14 +02:00
Georgios Konstantopoulos
bb3a2fd27c
release: 0.6.0 ( #611 )
...
* release(core): 0.6.0
* release(providers): 0.6.0
* release(contract-abigen): 0.6.0
* release(contract-derive): 0.6.0
* release(derive-eip712): 0.2.0
* release(ethers-solc): 0.1.0
* release(contract): 0.6.0
* release(etherscan): 0.2.0
* release(signers): 0.6.0
* release(middleware): 0.6.0
* chore: update dev deps
* refactor(core): move docs to readme
* refactor(contract): move docs to readme
* refactor(providers): move docs to readme
* chore: bump ethers cargo toml
* refactor(signers): move docs to readme
* refactor(middleware): move docs to readme
* fix(ethers): adjust re-exports to allow searching internal packages
* docs: fix broken links
we cannot use relative crate imports because the readmes
are also imported by the parent crate
* alias readmes to be accessible to ethers crate
2021-11-23 21:23:12 +02:00
dependabot[bot]
fb42f043a2
chore(deps): bump futures-util from 0.3.17 to 0.3.18 ( #609 )
...
Bumps [futures-util](https://github.com/rust-lang/futures-rs ) from 0.3.17 to 0.3.18.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.17...0.3.18 )
---
updated-dependencies:
- dependency-name: futures-util
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>
2021-11-23 13:23:53 +02:00
Matthias Seitz
cd2c9f6dd1
feat: add cargo change detection support ( #599 )
...
* feat: add cargo change detection support
* chore: allow clippy main
* chore: remove doctest main
2021-11-20 16:47:36 +02:00
Georgios Konstantopoulos
8a3ee415b7
feat(solc): allow specifying solc version even if auto-detect enabled ( #594 )
2021-11-18 15:10:41 +02:00
Georgios Konstantopoulos
b3fed152a4
fix(solc): do not unnecessarily query for solc version ( #586 )
...
The parameter is not used in any useful way currently, and it prevents us from using clean installations of SVM
which do not have an instantiated /Users/gakonst/.svm directory
2021-11-17 01:25:39 +02:00
Matthias Seitz
a50ee2ed46
chore: don't look for remappings on hardhat ( #585 )
2021-11-16 20:43:38 +02:00
Matthias Seitz
1da62d65d2
refactor!: make artifactoutput a trait ( #579 )
...
* feat: add artifacts trait
* add artifactsoutput trait
* deprecated old artifactoutput
* feat: better artifacts handling
* force update
* feat: update metadata artifacts
* feat: add default to types
* feat: make useliteralcontent optional
* feat: replace ProjectCompilerOutput with struct
* docs
* add output function
* feat: add Artifact trait for reading Abi/Bytes from an artifact
* feat(solc): replace () for empty artifacts with a conditional check
As discussed with @mattsse the abstraction here might not be super clean, so we should revisit this if we do not like it
* chore: fix doctest
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2021-11-16 01:29:06 +02:00
Georgios Konstantopoulos
8870aff4b5
feat: add from_str for Remapping ( #583 )
2021-11-14 19:34:32 +01:00
Georgios Konstantopoulos
8f9c47dbdb
feat: auto-detect solc remappings ( #574 )
...
* feat: add remappings detection
* feat: add remappings to compiler settings
* fix: check for error if no contract was compiled
* feat: configure remappings and provide them to compiler settings
* test: check remappings
* chore: clippy lints
* fix: tests (#578 )
* Update ethers-solc/src/remappings.rs
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2021-11-13 21:31:55 +02:00
Alexey Shekhirin
16c5d33716
bump `ethereum-types`' `impl-serde` to 0.3.2 ( #569 )
...
* bump etherum-types' impl-serde to 0.3.2
* update max solc version
2021-11-10 14:42:50 +02:00