Skip to content

Prepare release 1.0 #2247

@avdv

Description

@avdv
  • Read through this process in its entirety so you understand it.
  • Create and checkout a new release preparation branch, named
    release-<major>.<minor>.
  • If the minimal Bazel version has changed:
    • update it in [the start script][start], in [haskell/private/versions.bzl][versions], in [the README][readme] and in presubmit.yml files from the .bcr folder
    • add a note about this change to the [CHANGELOG][changelog]
  • Remove any feature that is still too experimental to go into a
    release, by cherry-picking reverts (or by manually deleting the
    feature).
    • Check the list here
      for PRs that have been explicitly marked for removal, if any.
  • Amend the [CHANGELOG][changelog] by summarising all significant
    pull requests since the last release (see
    here). Specifically:
    • Add a "Highlights" section for major improvements/changes.
    • Create "Added", "Removed", "Changed" and "Fixed" sections, as
      necessary.
    • If relevant, add links to the corresponding PRs to the entries.
  • Update the version of the modules in MODULE.bazel files
  • Push the release-<major>.<minor> branch and open a PR; go through review and merge upon success.
  • Trigger the Prepare Release workflow
    • either via the Github UI or
    • run gh workflow run -f version=<major>.<minor> 'Prepare Release' using the Github CLI
  • Go to the [releases], open the draft release which was created to inspect it
    • Do the code snippets look valid?
    • Is there a release artifact attached to it?
    • If you're happy, publish the release... 🚀
  • After the "Publish" workflow is finished check whether https://haskell.build/start
    is now the latest [start script][start] (Netlify sometimes has problems).
  • Look at the BCR pull request that should have been created by the publish-to-bcr app;
    ensure CI is green, approve it and have it merged.
  • Announce the new version on Twitter by asking someone with access.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions