This repository has been archived by the owner on Oct 19, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 795
feat(solc): compiler pipeline improvements #866
Merged
gakonst
merged 3 commits into
gakonst:master
from
mattsse:matt/some-compiler-pipeline-improvements
Feb 5, 2022
Merged
feat(solc): compiler pipeline improvements #866
gakonst
merged 3 commits into
gakonst:master
from
mattsse:matt/some-compiler-pipeline-improvements
Feb 5, 2022
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
mattsse
force-pushed
the
matt/some-compiler-pipeline-improvements
branch
from
February 5, 2022 12:13
b4e9e82
to
f2fb044
Compare
gakonst
approved these changes
Feb 5, 2022
@@ -384,6 +397,8 @@ fn compile_parallel( | |||
.collect::<Result<Vec<_>>>() | |||
})?; | |||
|
|||
// TODO need to do post filtering as the output can contain more files than provided in the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wdym post filtering?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oh this should have been removed...no longer relevant
@@ -14,6 +14,26 @@ | |||
//! Finding all dependencies is fairly simple, we're simply doing a DFS, starting the source | |||
//! contracts | |||
//! | |||
//! ## Solc version auto-detection |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Excellent doc
gakonst
added a commit
to foundry-rs/foundry
that referenced
this pull request
Feb 9, 2022
bumps svm-rs. fixes #525 fixes #684 driveby: re-enable geb integration test (fixed in gakonst/ethers-rs#866) fixes #561
gakonst
added a commit
to foundry-rs/foundry
that referenced
this pull request
Feb 9, 2022
bumps svm-rs. fixes #525 fixes #684 driveby: re-enable geb integration test (fixed in gakonst/ethers-rs#866) fixes #561
gakonst
added a commit
to foundry-rs/foundry
that referenced
this pull request
Feb 9, 2022
bumps svm-rs. fixes #525 fixes #684 driveby: re-enable geb integration test (fixed in gakonst/ethers-rs#866) fixes #561
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation
improve how versions are autodetected. The old algorithm simply picked the highest compatible version, without considering other source files. So that
A (=0.8.10)
andB(>0.8.0)
would result in two versions (0.8.10 and 0.8.11). Now we're trying to find a single versions that satisfies all sets, see resolver.rs docs.limit the
CompilerOutput
's contracts: solc may include additional contracts in theCompilerOutput
than were provided in theCompilerInput
which is not desired in theProjectCompiler
since that already provides all contracts, so we simply restrict theCompilerOutput
to those files provided in theCompilerInput
Solc::compile_exact
Solution
PR Checklist