This repository has been archived by the owner on Oct 19, 2024. It is now read-only.
chore: make abigen
offline by default, fix ethers-solc
features
#2416
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
ethers-contract-abigen
is online by default inethers-contract
andethers
. If there are bothethers-contract-abigen
as a build script, andethers{-contract}
with theabigen
feature, then it will be built twice: once withoutonline
for the build script, and once withonline
. I'm not 100% sure about this, but that's what I've gathered from building Foundry a ton of times the past few days. This meant it also built its entire dependency tree, which includesethers-etherscan
->ethers-solc
(feature) ->solang-parser
... etc, so insane amount of work, duplicated.Multicall
and other stuff gated by#[cfg(feature = "abigen")]
inethers-contract
are not accessible withabigen-offline
forward
ethers-solc
features fromethers-etherscan
Solution
PR Checklist