doc/release-checklist.md
Ensure that Parity DevOps has run the new release on Westend, Kusama, and Polkadot validators for at least 12 hours prior to publishing the release.
Add any necessary assets to the release. They should include:
The release notes should list:
The release notes may also list:
A runtime upgrade must bump the spec number. This may follow a pattern with the client release (e.g. runtime v12 corresponds to v0.8.12, even if the current runtime is not v11).
Any previous on_runtime_upgrade functions from old upgrades must be removed
to prevent them from executing a second time. The on_runtime_upgrade function
can be found in runtime/<runtime>/src/lib.rs.
Ensure that any migrations that are required due to storage or logic changes
are included in the on_runtime_upgrade function of the appropriate pallets.
Offline signing libraries depend on a consistent ordering of call indices and
functions. Compare the metadata of the current and new runtimes and ensure that
the module index, call index tuples map to the same set of functions. In case
of a breaking change, increase transaction_version.
To verify the order has not changed, you may manually start the following Github Action. It takes around a minute to run and will produce the report as artifact you need to manually check.
The things to look for in the output are lines like:
[Identity] idx 28 -> 25 (calls 15) - indicates the index for Identity has changed[+] Society, Recovery - indicates the new version includes 2 additional modules/pallets.[Identity] idx 25 (calls 15)Note: Adding new functions to the runtime does not constitute a breaking change as long as the indexes did not change.
The runtime contains proxy filters that map proxy types to allowable calls. If the new runtime contains any new calls, verify that the proxy filters are up to date to include them.
There are three benchmarking machines reserved for updating the weights at release-time. To initialise a benchmark run for each production runtime (westend, kusama, polkadot):
git patch patchfile.patchEnsure that a release of Polkadot JS API contains any new types or interfaces necessary to interact with the new runtime.