Skip to content

v18.2.0 Release Process #5123

@PastaPastaPasta

Description

@PastaPastaPasta

v18.2.0 Release Process

  • Update translations, see translation_process.md.
  • Update manpages, see gen-manpages.sh.

Before every minor and major release:

  • Update bips.md to account for changes since the last release (@thephez).
  • Update version in configure.ac (don't forget to set CLIENT_VERSION_IS_RELEASE to true)
  • Write Release Notes
  • Update src/chainparams.cpp nMinimumChainWork with information from the getblockchaininfo rpc.
  • Update src/chainparams.cpp defaultAssumeValid with information from the getblockhash rpc.
  • 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.
  • Ensure that sentinel is not affected by any changes, and no changes to sentinel are required.

Tag the Release

  • Tag v18.2.0 and push

Check CI

  • Validate that CI passes

Do Gitian Build (for unsigned binaries) and create PRs

  • Pasta Gitian Build
  • Udjin Gitian Build
  • Thephez Gitian Build
  • Kittywhiskers Gitian Build
  • Knst Gitian Build

Create Windows/OS X detached signatures (note: it might be decided skip signed binaries for RCs)
Only once the Windows/OS X builds each have 3 matching signatures may they be signed with their respective release keys.

  • Pasta creates windows detached signature and commits
  • pasta/quantum creates OS X detached signature

Update Gitian Builds with signed binaries (note: it might be decided skip signed binaries for RCs)

  • Pasta Gitian Build
  • Udjin Gitian Build
  • Thephez Gitian Build
  • Kittywhiskers Gitian Build
  • Knst Gitian Build

After 3 or more people have gitian-built and their results match:

  • Create SHA256SUMS.asc for the builds
  • 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 OS X binaries
  • Release on github
  • Update website
  • Ensure that docker files are up to date

Announce the release:

After the release

Additional Items

  • Prepare release blog post (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
  • Update website download links
  • Post on reddit
  • Update docs (readme and RTD)
  • Update sigs on website and verify
  • Test Docker build runs without errors in Dashmate
  • Verify sentinel works
  • Verify insight works
  • Verify p2pool works

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions