Matthias Seitz
5fefb2b721
fix(solc): can parse secondary source locations ( #849 )
2022-01-31 23:54:49 +02:00
joshieDo
dd915c99f6
write outputs to file, if selected ( #847 )
2022-01-31 18:19:57 +02:00
Roman Krasiuk
a48496000a
fix(solc): flatten replacement target location ( #846 )
...
* adjust the end location
* upd changelog
2022-01-31 10:08:04 +02:00
Georgios Konstantopoulos
0c949f65bb
chore: lints
2022-01-29 21:19:49 +02:00
odyslam.eth
8b9a18ce01
chore: add info messages to solc install/compile ( #838 )
...
* chore: add info messages to solc install/compile
* chore: update changelog
* fix: remove added ';'
* Update ethers-solc/src/compile.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-01-29 10:32:38 +02:00
brockelmore
24c39bd32a
write `CompactContractBytecode` instead of `CompactContract` ( #833 )
...
* write `CompactContractBytecode` instead of `CompactContract`
* chore: fix doctest
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-01-28 09:23:28 +02:00
ChainsightAnalytics
ec2b51539d
fix(solc): use already instantiated tokio runtime if exists ( #811 )
...
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-01-28 09:17:54 +02:00
Matthias Seitz
5da2eb1eb9
fix(solc): duplicate contracts segments ( #832 )
...
* chore: simplify touch
* forge install: ds-test
* fix: fix duplicate contracts segments
* fix: typos
2022-01-27 12:04:14 +02:00
Matthias Seitz
f9fadf06c4
chore(solc): also rm cache dir if empty ( #822 )
2022-01-21 03:51:41 +02:00
Matthias Seitz
6d7875a44c
chore(solc): add more convenience functions ( #810 )
...
* chore(solc): simplify solcconfig
* chore: more helper functions
* chore: copy all
* fix: add trailing slash
* chore: make clippy happy
2022-01-20 21:41:19 +02:00
Georgios Konstantopoulos
141e2f1807
Revert "Remove entire cache folder, not just contents ( #820 )"
...
This reverts commit 2945104d39
.
2022-01-20 15:49:59 +02:00
Bjerg
2945104d39
Remove entire cache folder, not just contents ( #820 )
2022-01-20 11:01:35 +02:00
Roman Krasiuk
f9b0360d90
fix(solc): flatten duplicates ( #813 )
...
* fix solc flatten duplicates
* upd changelog
* sample eof newlines
* fix test name
* linter
2022-01-19 18:11:37 +02:00
Matthias Seitz
eb555c28cc
chore(solc): add ord derive ( #807 )
2022-01-18 14:23:10 +02:00
Matthias Seitz
e0ee033283
fix(solc): take installer lock before installing ( #801 )
2022-01-17 15:51:15 +02:00
Roman Krasiuk
afcba9567f
feat(solc): flatten ( #774 )
...
* solc flatten implementation
* upd changelog
* upd docs
* revamp flattening
* clippy
* use resolve_import method
* extract recursive flatenning into a separate func
* change content iteration for flatten
* remove redundant result
* clean up solimport
* add comment to project.flatten
* add support for ver pragma loc
* address pr comments
* uncomment the test
* improve test cov
* add handling of sdpx license identifiers
* change arg name
* match license only at the beginning of the file
* add comments
* lint
* morrre comments
2022-01-17 14:27:40 +02:00
Matthias Seitz
579311bfdd
fix(solc): traverse nodes iteratively ( #800 )
2022-01-17 14:05:52 +02:00
Matthias Seitz
d2318d285d
chore(deps): bump solang ( #796 )
...
* chore(deps): bump solang
* fix: breaking test
2022-01-15 17:53:46 +02:00
Matthias Seitz
b619a5522f
feat(solc): relative remappings ( #786 )
2022-01-13 02:59:53 +02:00
Matthias Seitz
4d2cd83698
fix(solc): invalid cached artifacts ( #783 )
...
* add some docs
* ignore malformed cache file
* more artifacts fixes
* fix(solc): remove quotation marks from tests
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-01-11 12:02:57 +02:00
Matthias Seitz
e0b6f65359
refactor(solc): more temp project features ( #778 )
...
* chore: replace tempdir with tempfile crate
* update tempproject constructors
* make clippy happy
* add default impl
2022-01-10 21:43:34 +02:00
brockelmore
1287614e53
Implement `is_empty` for `AllowedLibPaths` ( #777 )
...
* pub svm_compile
* empty allowed paths
2022-01-09 00:20:28 +02:00
Georgios Konstantopoulos
270fe46d37
feat(solc): expose svm_compile
2022-01-08 22:51:18 +02:00
Bjerg
48bd3f13e2
Ignore SPDX and contract size for tests ( #775 )
...
* Filter for unignored warnings
* Pass compiler output to diagnostics
* Ignore SPDX and contract size warnings for tests
* Fix lint
* Skip lookups if error is not a warning
2022-01-08 22:26:23 +02:00
Eugene
ba99bc1bca
make it work with latest solang ( #776 )
...
* make it work with latest solang
* rustfmt
* rm uneeded import
2022-01-08 22:16:54 +02:00
Bjerg
86044bc0c3
Add `ProjectCompileOutput::has_compiler_warnings` ( #773 )
...
* Add `ProjectCompileOutput::has_compiler_warnings`
* Nits
2022-01-07 17:29:19 +02:00
Bjerg
21a4adea3e
Check for warnings after compilation ( #772 )
...
* Check for warnings after compilation
* Always catch errors first
2022-01-07 16:53:36 +02:00
Matthias Seitz
d54d381b74
feat(solc): add more contract utility types and functions ( #765 )
...
* feat(solc): add more contract utility functions
* Update ethers-solc/src/artifacts.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* docs: deindent docs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-01-07 14:10:33 +02:00
Matthias Seitz
eeb2a84df4
fix(solc): allow cyclic imports ( #766 )
2022-01-07 02:12:33 +02:00
Matthias Seitz
88b342287a
feat(solc): add source map parser ( #658 )
...
* feat(solc): add source map parser
* merge branch master
* make some types private
* chore: make id an option
* fix: support negative field values
* check parsed element
2022-01-06 13:54:46 +02:00
Matthias Seitz
fc9f66c916
feat(solc): add dependency graph implementation ( #750 )
...
* docs: document public functions
* add mod
* feat(solc): add dependency graph
* detect version
* add into sources
* fix: canonicalize temp paths
* test: add graph tests
* chore(clippy): make clippy happy
* more wasm compat
* chore: update changelog
* wasm compat
* unused
* fix get source fill function
* Update ethers-solc/src/resolver.rs
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
* perf: use solang_parser to trim down deps
* resolve graph in compile
* refactor add node function
* docs: clear up comment
* docs: typos
* fix: make all versions unique based on their major minor path version
* prepare test
* docs: add more resolve docs
* test: add lib change detection test
* test: update tests
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com>
2022-01-05 23:46:57 +02:00
Matthias Seitz
3da5a419fe
fix(solc): add timeout and error detection for releases lookup ( #759 )
...
* fix(solc): add timeout and error detection for releases lookup
* bump tokio cargo update
* fix: move timeout in async block
2022-01-05 20:42:07 +02:00
Matthias Seitz
2ca8f99e87
feat(solc): add path auto detection ( #761 )
2022-01-05 19:33:56 +02:00
Matthias Seitz
bd03bda878
fix(solc): methods is object ( #734 )
2021-12-25 18:20:24 +02:00
Matthias Seitz
47e188793b
chore(solc): more verbose traces ( #738 )
2021-12-25 18:18:57 +02:00
Matthias Seitz
918063db9e
refactor(solc): remappings detection rewrite ( #732 )
...
* refactor(solc): remappings detection rewrite
* chore: follow symlinks
2021-12-25 06:52:26 +02:00
Matthias Seitz
4b4ebd74ba
fix: make evm bytecode optional ( #735 )
2021-12-25 06:45:53 +02:00
joshieDo
ade8cd9553
add fn settings on CompilerInput ( #729 )
2021-12-23 17:03:37 +02:00
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
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
Matthias Seitz
4bb2636b77
fix: remove assert to check cache format ( #689 )
...
* fix: remove assert
* rustmft
2021-12-13 16:37:35 -07: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