Release Process ==================== - [x] **Ensure future Release Process issues are created from [the template](https://github.com/dashpay/dash/blob/develop/doc/release-process.md)** * [x] Update translations, see [translation_process.md](https://github.com/dashpay/dash/blob/master/doc/translation_process.md#synchronising-translations). * [x] Update manpages, see [gen-manpages.sh](https://github.com/dashpay/dash/blob/master/contrib/devtools/README.md#gen-manpagessh). (https://github.com/dashpay/dash/pull/6554/files) Before every minor and major release: * [x] Update [Security.md](SECURITY.md) (@kwvg) * [x] Update DIPs with any changes introduced by this release (see [this pull request](https://github.com/dashpay/dips/pull/142) for an example) (@kwvg) * [x] Update version in `configure.ac` (don't forget to set `CLIENT_VERSION_IS_RELEASE` to `true`) (@PastaPastaPasta) * [x] Write release notes (@PastaPastaPasta) * [x] Update `src/chainparams.cpp` `nMinimumChainWork` with information from the `getblockchaininfo` rpc. (@PastaPastaPasta) (#6411) * [x] Update `src/chainparams.cpp` `defaultAssumeValid` with information from the `getblockhash` rpc. (@PastaPastaPasta) (#6411) - This update should be reviewed with a `reindex-chainstate` with `assumevalid=0` to catch any defect that causes rejection of blocks in the past history. * [ ] Verify Insight works (@ktechmidas/infra) (https://insight.testnet.networks.dash.org:3002/insight/status working) * [ ] Ensure that governance is functional (@knst) * [ ] Verify p2pool works (unmaintained; no responsible party) * [x] Tag version and push (@PastaPastaPasta ) * [x] Validate that CI passes * [x] Notify mobile team of new protocol version, if applicable ### After 3 or more people have guix-built and their results match: - [ ] Create windows / macOS detached signatures and commit * [ ] Combine the `all.SHA256SUMS.asc` file from all signers into `SHA256SUMS.asc`: * [ ] GPG sign each download / binary * [ ] Upload zips and installers, as well as `SHA256SUMS.asc` from last step, to GitHub as GitHub draft release. * [ ] Validate `SHA256SUMS.asc` and all binaries attached to GitHub draft release are correct * [ ] Notarize macOS binaries * [ ] Publish release on GitHub * [ ] Fast-forward `master` branch on GitHub * [ ] Update the dash.org download links * [ ] Ensure that docker hub images are up to date * [ ] Update Flatpak version - [ ] Test Docker build runs without errors in Dashmate ### Announce the release: * [ ] Release on Dash forum: https://www.dash.org/forum/topic/official-announcements.54/ (necessary so we have a permalink to use on twitter, reddit, etc.) * [ ] Prepare product brief (major versions only) * [ ] Prepare a release announcement tweet * [ ] Follow-up tweets with any important block heights for consensus changes * [ ] Post on Reddit * [ ] Celebrate ### After the release: * [ ] Submit patches to BTCPay to ensure they use latest / compatible version see https://github.com/dashpay/dash/issues/4211#issuecomment-966608207 * [ ] Update Core and User docs (docs.dash.org) * [ ] Test Docker build runs without error in Dashmate * [ ] Add new Release Process items to repo [Release Process](release-process.md) document * [ ] Merge `master` branch back into `develop` so that `master` could be fast-forwarded on next release again
Release Process
Before every minor and major release:
configure.ac(don't forget to setCLIENT_VERSION_IS_RELEASEtotrue) (@PastaPastaPasta)src/chainparams.cppnMinimumChainWorkwith information from thegetblockchaininforpc. (@PastaPastaPasta) (chore: update nMinimumChainWork, defaultAssumeValid, checkpointData, chainTxData for mainnet and testnet #6411)src/chainparams.cppdefaultAssumeValidwith information from thegetblockhashrpc. (@PastaPastaPasta) (chore: update nMinimumChainWork, defaultAssumeValid, checkpointData, chainTxData for mainnet and testnet #6411)reindex-chainstatewithassumevalid=0to catch any defectthat causes rejection of blocks in the past history.
After 3 or more people have guix-built and their results match:
all.SHA256SUMS.ascfile from all signers intoSHA256SUMS.asc:SHA256SUMS.ascfrom last step, to GitHub as GitHub draft release.SHA256SUMS.ascand all binaries attached to GitHub draft release are correctmasterbranch on GitHubAnnounce the release:
After the release:
masterbranch back intodevelopso thatmastercould be fast-forwarded on next release again