-
Notifications
You must be signed in to change notification settings - Fork 638
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
feat(chain): Upgradability functionality #2701
Conversation
…r of epochs active protocol versoins match
… first backward compatible one
I've started with trying to make this backward compatible, but mid way realized that because previous version doesn't have upgradability voting on consensus level - even if it's backward compatible there is no consensus way to understand when supermajority should move to next version. Hence, this update will still require a hard fork. |
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.
Is the Cargo.lock change intended?
@bowenwang1996 reset Cargo.lock back to master. |
Is this ok for nightly? @bowenwang1996 @SkidanovAlex Also why are they not sorted the same? |
@ilblackdragon I cannot open that link. |
@bowenwang1996 Opens fine for me - just wait 30-40 seconds. |
It is unlikely that we will change the What is the plan once they change? If we change |
The versioning is done on the level of protocol messages, e.g. what is sent around in the network in |
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.
LGTM for genesis tools.
Implemented next functionality:
To simplify reviewing, specific places:
Test plan
Future plan
backward_compatible.py
test as mandatory starting now and they pass.upgradable.py
nightly test passes, after first release of this tobeta
.state_migration.py
test, as it's superseded byupgradable.py