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

New release 2.5: Constantinople, StateManager, Consensus #391

Closed
holgerd77 opened this issue Nov 16, 2018 · 8 comments
Closed

New release 2.5: Constantinople, StateManager, Consensus #391

holgerd77 opened this issue Nov 16, 2018 · 8 comments

Comments

@holgerd77
Copy link
Member

//cc @mattdean-digicatapult, @axic, @rmeissner

Since we are making good progress on both Constantinople EXTCODEHASH and the StateManager changes, I would now target a v2.5.0 release for the VM next Wednesday, November 21st, will open this issue here if there is some need for discussion around this.


EXTCODEHASH

@rmeissner: let me know if you have reservations regarding the EXTCODEHASH implementation, but this should be more-or-less ready, or am I wrong?


StateManager

@mattdean-digicatapult (and everyone reading):
Regarding the StateManager I would take the following approach: for at least this release and probably 2-3 more I would keep the StateManager within the VM, I think we should expose the API and move the status from experimental to beta. If people are already integrating with/do manipulations on the current/previous state manager, I would encourage them very much in the release notes to update to the changed-here API and follow-up on further changes. In the coming 2-3 releases of the VM I would do separate StateMangager changes release notes and at some point we should shift to a release candidate version.

My idea for documentation of the API for this release would be, that we keep this separate, maybe simply do a doc build by manual command, e.g.

documentation build ./lib/stateManger.js --format md --shallow > ./docs/stateManager.md

(not tested, just for inspiration), and link from a separate paragraph within the API section of the README doing some explanations along. Does this make sense?

After these stabelizing releases, I do think we should target to extract the StateManager from the VM, with the main benefit that this will largely help internally to keep a stable API on this and from a user perspective helps to switch state managers and also increases confidence in the stability of the API. There are also some other benefits like code size on exchange and reusability for other purposes.

On top note: this might also trigger more dedicated work on the state manager itself, like people working on different cache backends or the like.

A StateManager extracting release should then be labelled v3.0.0.


So far to the StateManger, everyone having suggestions or questions on the release or the notes above please comment!

@holgerd77
Copy link
Member Author

Ah, and @mattdean-digicatapult, do you think you can do an API doc PR (eventually with some API tweaks discussed) until Monday or latest Tuesday morning?

@rmeissner
Copy link
Contributor

@holgerd77 from my side EXTCODEHASH is ready. The last failing constantinople test should not be related to this. If I have time later today, I will check why it is failing and submit a fix if possible.

@axic
Copy link
Member

axic commented Nov 16, 2018

I will try to get #172 fixed today, but don't want to block the release on it. Hopefully it makes it into master by Monday.

@mattdean-digicatapult
Copy link
Contributor

@holgerd77, I don't think I'll get the API docs finished today (other work commitments) but I should be able to get this in on Monday.

@holgerd77
Copy link
Member Author

@axic Cool!

@mattdean-digicatapult: ok, thanks!

@holgerd77
Copy link
Member Author

#394 😄

(most insane release notes I have ever written! 🐓 😎)

@holgerd77
Copy link
Member Author

Would do a release tomorrow on this if there is no objection or need for further discussion or changes.

@holgerd77
Copy link
Member Author

Closed by #394.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants