-
Notifications
You must be signed in to change notification settings - Fork 781
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
Support pre-/post reentrency Constantinople #423
Comments
@holgerd77 I feel like I am missing something. It seems that the changes done in #367, along with your #367 placed the It seems to me that the only changes needed are:
I can do this over the next 36 hours. Do let me know if I am missing or misunderstanding something related to actual code changes needed. |
Hi Dan, maybe I described this as a bit more complicated in my first post/analysis than it actually is. No, I don't think that your missing something and your description of the changes/updates needed seems to be very much accurate to me. Nevertheless we should handle this task with the necessary care, at the end this is still some fork update. Some notes:
Can you prepare the PR with the changes necessary to the VM and including the fork switching logic you described? For now this can temporary point to the Regarding the tests: the test file For the time of transition (Byzantium (-> Constantinople) -> Petersburg) I would suggest the following here:
If you go along you can directly include these testing updates in your VM fork logic PR. Cheers |
Some update: also don't take the reviewer choice e.g. on ethereumjs/ethereumjs-common#44 for granted, I normally just choose someone where I hope that the person has some time. You are of course also very much invited (and it is super helpful) to do reviews on PR where there is no direct request. |
Hi Dan @danjm, ok, have done a new Note that the fork in the tests are (currently) named There are also changes needed on the |
Thanks @holgerd77, I'll get started on this now. |
Hi Dan, once you got something here can you open a PR? Doesn't need to be ready (then just mark as "WIP", "DO NOT MERGE"), just to have some common ground for further work or discussion. |
@holgerd77 Yes, will do. I just put up two PRs ethereumjs/ethereumjs-common#46 and #432 that will be needed before a Constantinople-Petersburg PR can work. They address some breaking changes introduced with
|
#433 is the PR that will resolve this issue in There are a few PRs up across multiple repos that need to be merged for #433 to work. When I put them altogether in one local ethereumjs-vm repo, including your recent changes to I believe we should proceed in the following order:
Update: PRs linked in 1, 3, 5 have been approved by Whymarrh |
Hi @danjm, thanks for the clear summary of the process, super helpful! 😄 I am on it to work down the stuff, see comments on the associated repos. |
Ok, all necessary releases (common, block, blockchain) are out 😄! Can you tie everything together? Would be cool if we can get a VM release out until Thursday! Let me know if anything is still missing or unclear. Cheers |
@holgerd77 The updates to the three library versions (common, block and blockchain) as well as all vm changes are now in #433 Is anything else needed? |
Closed by #436. |
Context is described in the issue on the
ethereumjs-common
library this issue depends on.For full support we have to change
SSTORE
functionality added by @vpulim in the PR here #367 to activate onconstantinopleTmp
and beyond and deactivate again onconstantinople
and beyond.Since the PR above also came along with some heavy (local) refactoring changes, we should apply this not by just reverting but by taking these into account and making this actually more elegant than it was before. 😄
Depends on ethereumjs/ethereumjs-common#41.
The text was updated successfully, but these errors were encountered: