-
Notifications
You must be signed in to change notification settings - Fork 5.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
Add "EVM Improvements" section in Istanbul for account versioning #2156
Conversation
So Istanbul is last call for any "version 0" semantic changes? |
@shemnon If we reached the decision to freeze version 0, then yeah, that will be the case. |
What do you think about making Istanbul's version I can imagine that this could make the clients using EVMC API simpler, as they could use account's version directly to tell EVMC which EVM revision to run (with the only special case to run version 0 with EVMC_PETERSBURG) For any other clients that similarly decouple the rules inside EVM from forks of the blockchain, the similar motivation could apply - there are already 7 rule sets for EVM, and further versions will extend this line. |
@gumb0 Sounds like a good idea to me. :) A small nit -- maybe we want to consider setting it to version |
Maybe we should go the marketing route and set the version to "0x10", since this work is being done under the "Ethereum 1.x" banner. That gives us 16 updates to get serenity locked in. |
I'm ok with using ordering from EVMC's EVM revision: https://github.com/ethereum/evmc/blob/master/include/evmc/evmc.h#L708-L790, so |
EIPS/eip-1679.md
Outdated
@@ -71,6 +71,30 @@ This meta-EIP specifies the changes included in the Ethereum hardfork named Ista | |||
- [EIP-2045](https://eips.ethereum.org/EIPS/eip-2045): Particle gas costs for EVM opcodes | |||
- [EIP-2046](https://eips.ethereum.org/EIPS/eip-2046): Reduced gas cost for static calls made to precompiles | |||
|
|||
### EVM Improvements | |||
|
|||
Below we list all EVM improvement EIPs, where they're rleated to account versioning (EIP-1702). |
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.
*related
Now I think that if the plan is not to increment version with each fork, but only sometimes for really breaking changes of EVM, then each version will be active in several forks / several revisions in EVMC, and then starting with 7 will be just more confusing, it's better to start with 1. |
I think the only thing that mandates a version increment at this point is adding new validation steps/rules. We can't go back and invalidate previously deployed contracts. I mean we could but we shouldn't. |
Option here is to go fully along with EVMC by skipping EVM revision number that were not connected with account version bump. E.g. |
@sorpaas I'd argue we should close this since account versioning wasn't included in istanbul |
This adds a section called "EVM Improvements" in Istanbul hard fork meta EIP. This defines a template to specify the technical details for how EIP-1702 is applied in relation with other EIPs: