-
Notifications
You must be signed in to change notification settings - Fork 20.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
common/compiler, cmd/abigen: remove solc/vyper compiler integration #24936
Conversation
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.
SGTM
It makes no sense to remove it. Having it along with abigen makes easier for Go Developers that are starting to work with Ethereum to handle the Smart Contracts. Please revert it. |
Why not just show up some alerts about those integration usage? Many Go Developers uses the compilers integration specially solc integration in their pipelines, it helps Go community to adopt the language for handling Smart Contracts. Please revert it. |
This is a very useful feature please review this decision as many pipelines currently rely on this feature. Pls revert it. |
@jeffprestes @danielmbirochi @alexjavabraz But isn't it fairly simple to issue a compile command before the abigen command and have it work again? I do understand that it's "one more command", but is that really that much? Could you give us some example of before and after usage so we might better understand what we've missed? |
common/compiler, cmd/abigen: remove solc/vyper compiler integration
Replaces #24935
This PR removes the integration with external compilers (solc, vyper).
The vyper-support in go-ethereum is flaky at best, considering that the vyper compiler itself has been a moving target in the latest years, so I don't believe that our integration works.
The solc compiler might "work", but would probably need some updates (#24925) in order to be more useful.
An alternative path, which this PR does, is remove the support, making it so that we only consume the ABI artefacts, which the compiler spits out. This makes geth more of a component in the pipeline rather than an orchestrator of the pipeline, and lessens the maintenance surface.R