Matthias Seitz
8dd72723d1
feat: add minimal ast bindings ( #1167 )
...
* feat: add minimal ast bindings
* feat: add recursive nodes
2022-04-23 02:20:46 -07:00
Matthias Seitz
f4eb4029b4
chore(solc): include error code in diagnostic ( #1171 )
2022-04-23 01:41:13 -07:00
Matthias Seitz
19a2ecd58d
fix(solc): compute content hashes first ( #1142 )
...
* chore: add tracing for missing content hash
* fix: compute content hashes first
2022-04-13 12:59:43 -07:00
Matthias Seitz
23e45e8531
fix: sanitize compilerinput based on version ( #1111 )
...
* fix: sanitize compilerinput based on version
* test: add compiler test
* chore: remove unused warnings
* style: make once lazy
2022-04-05 12:00:04 -07:00
Matthias Seitz
38b984c353
fix(solc): extend sparse mode to linked references ( #1107 )
...
* refactor: move sol parsing to separate mod
* refactor: make parse a struct function
* feat: add inline function
* chore: rename sparse filter
* feat: move data to edges type
* refactor: supply graph in compile function
* feat: resolve link references
* test: add sparse mode test
2022-04-04 15:50:10 -07:00
Connor Mendenhall
18dda9aa83
feat(solc): pass compile time to reporter ( #1098 )
...
* Pass compile time to solc_success/on_solc_success
* Update changelog
2022-04-02 14:37:38 -07:00
Matthias Seitz
110d1beeed
chore: add some solc checksum traces ( #1088 )
...
* chore: add some solc checksum traces
* chore: use qualified path
2022-03-28 16:08:45 -07:00
Matthias Seitz
2689981782
feat(solc): include source file ast in artifact ( #1081 )
...
* refactor: extend artifactsoutput interface
* add source file to trait
* fix: make it compile again
2022-03-27 09:56:33 -07:00
Bjerg
919a570237
feat: ability to get artifacts + sources ( #1080 )
2022-03-27 07:44:23 -07:00
Matthias Seitz
95a384b121
fix(solc): bundle new svm-solc feature ( #1071 )
...
* fix(solc): bundle new svm-solc feature
* chore: update CHANGELOG
* fix: enabled new feature in full
2022-03-21 01:58:56 -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
1788f05ab0
feat(solc): use svm-builds instead of fetching http releases list ( #1063 )
...
* feat(solc): use svm-builds instead of fetching http releases list
* use correct features
2022-03-19 07:52:09 -07:00
Matthias Seitz
65b1751cf8
style: split artifacts mod and create contract and bytecode mods ( #1052 )
...
* style: split artifacts mod and create contract and bytecode mods
* chore: rustfmt
2022-03-17 07:51:43 -07:00
Matthias Seitz
5314c4e618
fix(solc): use lowercase when comparing paths ( #1041 )
...
* fix(solc): use lowercase when comparing paths
* trace keys
* test: add lowercase contract test
2022-03-17 01:27:03 -07:00
Matthias Seitz
a2960a847d
chore(solc): new 0.8.13 release ( #1045 )
2022-03-17 01:26:44 -07:00
Matthias Seitz
2d75f9f1e7
feat(solc): support customized output selection pruning ( #1039 )
...
* feat(solc): support customized output selection pruning
* chore(clippy): make clippy happy
2022-03-16 07:36:35 -07:00
Matthias Seitz
ff29e96380
feat(solc): optimize output selection in cache mode ( #1029 )
...
* feat(solc): add mock project generator
* feat: mock project
* refactor: rename to mock
* feat(solc): mock project support
* refactor: move output selection to new type
* refactor: revert filter implementation
* feat: filter sources
* feat: support filtering
* refactor: update function signatures
* feat: optimize output
* chore: export helper macros
* fix(deps): add required features
* style: allow unused
* feat: also generate artifactless files
* feat: add create function
* chore(clippy): make clippy happy
* feat: add helper function
* test: add state machine test
* test: add more mock tests
2022-03-15 08:58:33 -07:00
Matthias Seitz
24236997a9
refactor(solc): bump svm-rs and use returned install path ( #1034 )
...
* chore(deps): bump svm-rs
* refactor: use solc install path directly
* style: use if elese over option
2022-03-15 02:16:22 -07:00
Matthias Seitz
f6d123241e
feat: add solc install error report ( #1027 )
2022-03-14 04:47:11 -07:00
Matthias Seitz
e5dbeb6b28
revert: use simple change filter again ( #1008 )
...
* chore: rollback dirty detection
* docs: caching docs
2022-03-11 08:43:48 -08:00
AlexK
e1d66b8cd3
feat(solc): yul compilation ( #994 )
...
* added yul compilation
* fix doctest
* fixes
* changelog
* cleanup
* fmt
* test update
* lint
* ci fix
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-03-10 10:42:02 -08:00
Matthias Seitz
0c42c23746
fix(solc): fix cache and allowed paths bug ( #998 )
...
* fix: don't emit on error
* fix: allowed-paths condition
* fix(solc): cache and allowed paths bug
2022-03-09 10:52:40 -08:00
Matthias Seitz
28df48b530
fix(solc): off by one error finding version intersection ( #930 )
...
* fix: off by one error while finding intersection
* test: enable test
2022-02-18 19:24:02 +02:00
Matthew Wiriyathananon-Smith
d8e5e536cc
Artifact ids ( #882 )
...
* Added ArtifactId
* Added ArtifactId impl and updated into_artifacts to return id
* Formatting
* Fixed warning
* Added versioned slug method to ArtifactId
* Added Ord/Eq derives to ArtifactId
* Fixed broken tests and doc tests
* Added failing test for versioned link references
* chore: ignore linkrefs test - to be fixed in followup
* test(solc): remove artifact json
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-18 17:48:56 +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
Georgios Konstantopoulos
f97a8ca541
fix(abigen): do not panic when run on non-cargo projects ( #918 )
...
* fix(abigen): do not panic when run on non-cargo projects
* chore: bump solidity test to 0.8.12
2022-02-16 17:46:25 +02:00
Mark Tyneway
faba6e014d
feat: add getter to `ProjectCompileOutput` ( #908 )
...
* feat: add getter to `ProjectCompileOutput`
Add a function `compiled_contracts_by_compiler_version`
to the `ProjectCompileOutput` that returns a `BTreeMap`
that maps the compiler version to a vector of the contract
names and contract structs.
* changelog: update
* chore(solc): remove &mut
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-13 21:47:00 +02:00
Matthias Seitz
27a4454ac0
feat(solc): report on unresolved imports ( #905 )
...
* chore: fix unused import warning
* feat: add additional report message
2022-02-13 01:05:43 +02:00
Matthias Seitz
c8d8b66d0a
feat(solc): use svm blocking feature ( #904 )
...
* feat(solc): use svm blocking feature
* chore: bump ethers
* fix: enable svm blocking feature
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-02-12 18:40:09 +02:00
Matthias Seitz
8aeeaa83b0
feat(solc): better metadata support ( #894 )
2022-02-10 19:53:26 +02:00
Matthias Seitz
cc5c67ed0a
chore: fix all warnings ( #890 )
2022-02-10 08:54:39 +02:00
Matthias Seitz
36c3adeec9
feat(solc): add Reporter type ( #883 )
...
* feat(solc): add Reporter type
* chore(clippy): make clippy happy
2022-02-09 01:14:57 +02:00
Matthias Seitz
ede6570567
chore: rm no longer valid todo ( #870 )
2022-02-05 16:30:18 +02:00
Matthias Seitz
7463e2da11
feat(solc): compiler pipeline improvements ( #866 )
...
* feat(solc): try to unify solc versions
* chore: some tracing
* feat: add compile exact
2022-02-05 16:07:37 +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