Skip to content
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

Merged
merged 2 commits into from
May 15, 2023

Conversation

DaniPopes
Copy link
Collaborator

@DaniPopes DaniPopes commented May 13, 2023

Motivation

  • ethers-contract-abigen is online by default in ethers-contract and ethers. If there are both ethers-contract-abigen as a build script, and ethers{-contract} with the abigen feature, then it will be built twice: once without online for the build script, and once with online. 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 includes ethers-etherscan -> ethers-solc (feature) -> solang-parser ... etc, so insane amount of work, duplicated.

  • Multicall and other stuff gated by #[cfg(feature = "abigen")] in ethers-contract are not accessible with abigen-offline

  • forward ethers-solc features from ethers-etherscan

Solution

PR Checklist

  • Added Tests
  • Added Documentation
  • Breaking changes

Copy link
Collaborator

@mattsse mattsse left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is reasonable.
this should discourage http abigen links which aren't very stable anyway due flaky etherscan API

ci failing, likely feature snafu
it's new solc version check: #2417

@DaniPopes DaniPopes merged commit 7bc20db into gakonst:master May 15, 2023
@DaniPopes DaniPopes deleted the chore/features branch May 15, 2023 13:21
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants