Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
GHC
GHC
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 4,264
    • Issues 4,264
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Merge Requests 419
    • Merge Requests 419
  • Requirements
    • Requirements
    • List
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Security & Compliance
    • Security & Compliance
    • Dependency List
    • License Compliance
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Code Review
    • Insights
    • Issue
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Glasgow Haskell Compiler
  • GHCGHC
  • Issues
  • #16816

Closed
Open
Opened Jun 13, 2019 by Ben Gamari@bgamari🐢Maintainer0 of 87 tasks completed0/87 tasks

Release tracking ticket template

This is the template to be used to create release tracking tickets. Copy this into a new issue and fill in the TODOs. Those items marked with major-only can be ignored for minor releases.

This is the release checklist for the TODO milestone. See #16816 (closed) for the template that this was derived from.

Pre-fork checklist (major-only)

When forking a new release branch for a new major release series (e.g. ghc-9.0), please check the following:

  • Verify that haddock's development branch (namely the branch corresponding to GHC's previous major release, e.g. ghc-8.10) has been merged into ghc-head.
  • Create the new branch: git branch ghc-9.0
  • In the new branch bump the version number in configure.ac to, e.g., 9.0
  • In master bump the version number to that of the next development series, e.g., 9.1
  • Tag this master commit as, e.g., ghc-9.1-start
  • Push all of the above tags and branches

Pre-release checklist

  • (major-only) Remove the release notes for the previous release (e.g. docs/users_guide/8.6.*-notes.rst)
  • (major-only) Make release branch (e.g. ghc-8.8)
  • (major-only) Make post-release branch (e.g. ghc-8.9-start)
  • Ensure that submodules are on released tags (the below is produced using this script):
    • libraries/Cabal: version todo
    • libraries/Win32: version todo
    • libraries/binary: version todo
    • libraries/bytestring: version todo
    • libraries/containers: version todo
    • libraries/deepseq: version todo
    • libraries/directory: version todo
    • libraries/filepath: version todo
    • libraries/haskeline: version todo
    • libraries/mtl: version todo
    • libraries/parsec: version todo
    • libraries/pretty: version todo
    • libraries/process: version todo
    • libraries/terminfo: version todo
    • libraries/text: version todo
    • libraries/time: version todo
    • libraries/transformers: version todo
    • libraries/unix: version todo
    • libraries/xhtml: version todo
    • utils/haddock: version todo
    • utils/hsc2hs: version todo
  • Non-released submodules up-to-date:
    • nofib
    • libffi-tarballs
    • libraries/integer-gmp/gmp/gmp-tarballs
  • Release notes (docs/users_guide/x.y.z-notes.rst) written
  • Release notes linked in docs/users_guide/index.rst
  • autoconf scripts updated
  • Check that Unicode database in base (libraries/base/cbits/README.Unicode) reflects current standard release (http://www.unicode.org/versions/latest/)
  • LlvmVersion in configure.ac is targetting intended LLVM version
  • Release notes mentions LLVM version requirement
  • llvm-targets file updated
  • Changelogs updated (these can be checked using .gitlab/linters/check-changelogs.sh):
    • libraries/ghc-prim
    • libraries/integer-gmp
    • libraries/integer-simple
    • libraries/hpc
    • libraries/base
  • Verify that the ~"backport needed" label has no more issues/merge requests needing backport
  • Verify that all CI builds are green before moving to release checklist

Release checklist

  • Push a provision provisional release commit to trigger the release builds using git push -o ci.variable="RELEASE_JOB=yes"
  • Wait until builds finish; verify that they finished successfully
  • Fetch release artifacts TODO: documentation
  • Sign and push release artifacts to downloads.haskell.org [TODO: documentation]
  • Make a release tag
  • Release/revise GHC-maintained libraries on Hackage [TODO: documentation]
    • libraries/base
    • libraries/ghc-prim
    • libraries/array
    • libraries/stm
    • libraries/ghc-heap
    • libraries/ghc-compact
    • libraries/ghc-boot
    • libraries/ghc-boot-th
    • libraries/hpc
    • libraries/libiserv
    • libraries/template-haskell
    • libraries/integer-gmp
    • libraries/integer-simple
  • Update ghc/homepage>:
    • Write download page (see ghc/homepage>)
    • Add news item to index.html
    • Add link to download.shtml
    • Look over changes locally
    • Add release announcement to GHC blog
    • Push changes to master
  • Announce on: GHC developers <ghc-devs@haskell.org>, GHC Users <glasgow-haskell-users@haskell.org>, Haskell Cafe <haskell-cafe@haskell.org>
  • Announce on: Haskell Discourse, /r/haskell, Twitter
  • Update latest symlink on downloads.haskell.org
  • Ensure that the Migration page is up-to-date

Post-release checklist

  • Update the Wiki status page
  • Update the language pragma history
  • Mark milestone as closed
  • Update /topic in #ghc
  • Update the VersionHistory wiki page
  • Set RELEASE=NO
  • Create a release tracking ticket for the next release using the template in #16816 (closed)
Edited Jan 04, 2021 by Ben Gamari
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: ghc/ghc#16816