Commit Graph

66 Commits

Author SHA1 Message Date
Matthias Seitz 0707270a05
fix(solc): consider case sensitive conflicting artifact paths (#1625)
* fix(solc): consider case sensitive conflicting artifact paths

* chore: fmt

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-08-20 15:35:56 -07:00
Matthias Seitz ff754263a3
fix(solc): use cache context when determining artifact files (#1621)
* fix(solc): use cache context when determining artifact files

* update  changelog
2022-08-19 14:33:28 -07:00
Matthias Seitz 2c33acb3ad
feat(solc): resolve absolute imports in libraries (#1590)
* feat(solc): resolve absolute imports in libraries

* feat(solc): support --include-path

* update test

* only add base path if not empty

* simplify solc config

* include root in include paths

* test: add test for absolute imports

* fix: bad predicate

* cleanup

* fix: use base-path directly

* fix: exclude root from include set
2022-08-12 12:11:08 -07:00
Matthias Seitz 0bf9665d98
chore: update max solc version 0.8.16 (#1578) 2022-08-08 13:01:29 -07:00
Matthias Seitz e62c84d650
fix(solc): convert source paths on windows (#1540)
* fix(solc): convert source paths on windows

* refactor: slash all paths

* fix: use correct import

* feat: slash compiler output

* add util function

* slash by default

* slash artifact id

* typo

* updat cfg

* unify cfg

* update changelog
2022-08-01 09:47:41 -07:00
Matthias Seitz fb8ebd8231
feat(solc): handle conflicting artifacts properly (#1491)
* feat(solc): handle conflicting artifacts properly

* refactor(solc): update write extras function

* chore: update CHANGELOG
2022-07-24 14:39:37 -07:00
Paul Razvan Berg d7f656c73a
nit(ethers-solc): set URL to binaries.soliditylang.org (#1490)
* nit(ethers-solc): set URL to binaries.soliditylang.org

* Use hyperlink in ethers-solc/src/compile/mod.rs

Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>

Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2022-07-22 22:26:39 +02:00
Matthias Seitz 3c1de64240
refactor(solc): unify find/remove api (#1449)
* refactor(solc): unify find/remove api

* fix: update docs
2022-07-04 11:53:49 -07:00
Matthias Seitz 13e67aaa4a
feat(solc): add remove_contract utility function (#1436) 2022-06-30 09:19:55 -07:00
0xYYY ca34d0c049
feat(solc): add more contract iter helper functions (#1438) 2022-06-30 09:17:56 -07:00
Matthias Seitz 3d77f44066
feat(solc): add Contract Info structs (#1407) 2022-06-22 22:37:39 -04:00
Matthias Seitz 2ebdef68d2
feat!(solc): add additional remove functions (#1406) 2022-06-22 13:14:02 -04:00
Matthias Seitz d09845e0c5
chore(solc): improve checksum error message (#1394) 2022-06-20 10:52:16 -07:00
Matthias Seitz cced79f22b
chore: update latest solc release test (#1384) 2022-06-16 09:09:24 -07:00
Matthias Seitz e3389f336a
feat(solc): emit build info files if configured (#1338)
* feat(solc): emit build info files if configured

* feat: add content hashing
2022-06-15 12:44:20 -07:00
Matthias Seitz 86e5af29e5
fix(solc): remove compile_exact restriction (#1329) 2022-05-31 13:28:27 -07:00
Matthias Seitz 299329d8f7
chore: remove redundant call (#1320) 2022-05-28 12:01:28 -04:00
Matthias Seitz 54f1b9dee8
feat(solc): use relative paths and --base-path option (#1317)
* feat(solc): use relative paths and --base-path option

* chore: update CHANGELOG

* strip lib paths
2022-05-27 13:31:11 -07:00
Matthias Seitz 75835a9280
feat(solc): emit artifacts for standalone source files (#1296)
* feat(solc): emit artifact files for sources with no contracts

* test(solc): add tests for emitting standalone sources

* chore: update CHANGELOG

* style: check ast is some
2022-05-22 15:19:59 -07:00
Matthias Seitz cffcc7bbec
chore(clippy): fix newest nightly lints (#1298) 2022-05-22 15:18:57 -07:00
Matthias Seitz 809ccbc9ad
feat(solc): include id in artifact (#1284) 2022-05-19 11:02:31 -07:00
Matthias Seitz d77f92519c
chore: bump latest solc release (#1282) 2022-05-18 07:49:08 -07:00
Matthias Seitz 1271308e06
fix(solc): purge obsolete cached artifacts (#1273)
* fix(solc): purge obsolete cached artifacts

* fix add cfg
2022-05-16 16:48:47 -07:00
Roman Krasiuk f3699d08bf
fix(solc): add `RuntimeOrHandle` & fix solc blocking installation (#1260)
* rt wrapper for solc install

* fix

* uncomment feat flag

* feature deps & comment

* async it tests

* use svm::block_install for wasm

* hide rt or handle for wasm

* hide import for wasm
2022-05-14 16:29:45 -07:00
Matthias Seitz f5efbbb86a
feat(solc): add strip and join functions to sources and contracts (#1252) 2022-05-12 14:48:16 -07:00
Matthias Seitz 44cbbc769a
feat(solc): store source files with their solc version (#1231)
* feat(solc): add versioned sources

* feat(solc): support versioned sources
2022-05-06 11:42:01 -07:00
Matthias Seitz 2304ed53ad
fix(solc): make scoped reporter work in parallel (#1214)
* fix(solc): make scoped reporter work in parallel

* typo
2022-05-03 16:39:36 -07:00
Matthias Seitz c81254a8b6
test(solc): add another link with remapping test (#1191) 2022-04-28 07:07:08 -07:00
Matthias Seitz a978bc98af
fix(solc): remapping aware libraries (#1190)
* feat(solc): add Libraries type

* feat: add lib applied remappings

* test: add lib linking tests

* Update ethers-solc/src/artifacts/mod.rs

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>

* Update ethers-solc/src/artifacts/mod.rs

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>

* Update ethers-solc/src/artifacts/mod.rs

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>

* Update ethers-solc/src/artifacts/mod.rs

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>

* chore: rustfmt

Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-04-28 05:18:24 -07:00
Matthias Seitz 8afd670a65
chore(solc): remove async feature requirement (#1181) 2022-04-27 15:37:40 +03:00
Matthias Seitz 86908bc533
fix(solc): only write cache file if build was successful (#1177) 2022-04-27 15:29:09 +03:00
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