Add caching to flattened file compilation #3
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.
The flattening on the current implementation seems wrong unless I'm missing something. It groups all solidity files in a directory and flattens them together, instead of getting a specific contract and flattening all of the dependencies with it.
This is a rough draft and still needs to be cleaned, but this PR:
I still need to add a cache invalidator if the artifacts don't exist, in scenarios where compilation fails or is cancelled.
PS: the tests require a zk-solc binary in the path and
matter-labs/compiler-llvm-context
repo still needs to be open sourced in order to build it