Tracking ticket for GHC %9.6.1
This is the release checklist for the %9.6.1 milestone. See #16816 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:
* [x] 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`.
* [x] Remove the release notes for the previous release (e.g. `docs/users_guide/8.6.*-notes.rst`)
* [x] In `configure.ac` update `MinBootGhcVersion` to be the major version of the last supported bootstrap compiler. We currently guarantee bootstrapping with the last two major releases; therefore, when preparing, e.g., GHC 9.4 you should set `MinBootGhcVersion` to `9.0`.
* [x] Create the new branch: `git branch ghc-9.0`
* [x] In the new branch bump the version number in `configure.ac` to, e.g., `9.0`
* [ ] In `master` bump the version number in `configure.ac` to that of the next development series, e.g., `9.1` and ensure that `MinBootGhcVersion` is set correctly
* [ ] Tag this `master` commit as, e.g., `ghc-9.1-start`
* [ ] Push all of the above tags and branches
* [ ] After forking remove release notes from `master` and start a new set of release notes for the next release
# Bump `base`
Bump bounds of core libraries when bumping `base` version number:
* [x] `libraries/directory`: https://github.com/haskell/directory/pull/151
* [x] `libraries/array`
* [x] `libraries/deepseq`: https://github.com/haskell/deepseq/pull/91/
* [x] `libraries/filepath`: https://github.com/haskell/filepath/pull/175
* [x] `libraries/haskeline`: https://github.com/judah/haskeline/pull/174
* [x] `libraries/hpc`:
* [x] `libraries/parsec`: https://github.com/haskell/parsec/pull/161
* [x] `libraries/process`: https://github.com/haskell/process/pull/269
* [x] `libraries/stm`
* [x] `libraries/terminfo`: https://github.com/judah/terminfo/pull/51
* [x] `libraries/unix`: https://github.com/haskell/unix/pull/267
* [x] `utils/haddock`
* [x] `utils/hsc2hs`: https://github.com/haskell/hsc2hs/pull/74
# Pre-release checklist
* [x] Ensure that submodules are on released tags (the below is produced using [this script](https://gitlab.haskell.org/bgamari/ghc-utils/blob/master/rel-eng/submod-release-summary.py)):
* [x] `libraries/Cabal`: *todo* (on 3.10.0.0)
* [x] `libraries/Win32`: version 2.13.3.0
* [x] `libraries/array`: 0.5.5.0 (on `v0.5.5.0`)
* [x] `libraries/binary`: 0.8.9.1 (on `0.8.9.1`)
* [x] `libraries/bytestring`: version 0.11.4.0
* [x] `libraries/containers`: version 0.6.7
* [x] `libraries/deepseq`: 1.4.8.1 (on `1.8.0-6-g7e77698`, https://github.com/haskell/deepseq/issues/96)
* [x] `libraries/directory`: 1.3.8.1 (on `v1.3.8.0-5-g7f90661`, https://github.com/haskell/directory/issues/152)
* [x] `libraries/exceptions`: 0.10.7 (on `v0.10.7`)
* [x] `libraries/filepath`: *todo* (on `v1.4.2.2-97-g7139cd3`, https://github.com/haskell/filepath/issues/180)
* [x] `libraries/haskeline`: 0.8.2.1 (on `0.8.2-9-gad40faf`, https://github.com/judah/haskeline/issues/175)
* [x] `libraries/mtl`: version 2.3.1
* [x] `libraries/parsec`: version 3.1.16.1
* [x] `libraries/pretty`: version 1.1.3.6
* [x] `libraries/process`: version 1.6.17.0 (on `v1.6.16.0-14-gd9a8e6e`, https://github.com/haskell/process/issues/276)
* [x] `libraries/stm`: version 2.5.1.0r1 (on `v2.5.1.0-1-g4ac6ead`)
* [x] `libraries/terminfo`: 0.4.1.6 (on `0.4.1.5-5-g0a05f06`, https://github.com/judah/terminfo/issues/53, needs revision)
* [x] `libraries/text`: 2.0.2 (on `2.0.1-26-g197bbcb`, https://github.com/haskell/text/issues/505)
* [x] `libraries/time`: version 1.12.2
* [x] `libraries/transformers`: 0.6.1.0 (on `0.6.0.4-11-gef4fa18`, #22898)
* [x] `libraries/unix`: 2.8.1.0
* [x] `libraries/xhtml`: version 3000.2.2.1
* [x] `utils/haddock`: *todo* (on `haddock-2.26.0-release-153-g37e3c368`)
* [x] `utils/hsc2hs`: version 0.68.9 (on `v0.68.9`)
* [ ] Notify stakeholders of release progress: `Julian Ospald <hasufell@posteo.de>, ghc-devs@haskell.org`
* [ ] Non-released submodules up-to-date:
* [ ] `nofib` (upstream: ghc/nofib>)
* [ ] `libffi-tarballs` (upstream: ghc/libffi-tarballs>)
* [ ] `libraries/ghc-bignum/gmp/gmp-tarballs` (upstream: ghc/gmp-tarballs>)
* [x] Release notes (`docs/users_guide/x.y.z-notes.rst`) written
* [x] Release notes linked in `docs/users_guide/release-notes.rst`
* [x] `autoconf` scripts [updated](https://gitlab.haskell.org/ghc/ghc/wikis/making-releases#updating-the-tree)
* [ ] [Update](https://gitlab.haskell.org/ghc/ghc/-/blob/master/hadrian/bootstrap/README.md) the Hadrian bootstrap metadata
* [x] Check that Unicode database in `base` (`libraries/base/cbits/README.Unicode`) reflects current standard release (http://www.unicode.org/versions/latest/).
* [x] `LlvmVersion` in `configure.ac` is targetting intended LLVM version
* [x] Release notes mentions LLVM version requirement
* [x] `llvm-targets` file [updated](https://gitlab.haskell.org/ghc/ghc/wikis/making-releases#updating-the-tree)
* [x] Changelogs updated (these can be checked using `.gitlab/linters/check-changelogs.sh`):
* [x] `libraries/ghc-prim`
* [x] `libraries/ghc-bignum`
* [x] `libraries/hpc` (upstream: ghc/hpc>)
* [x] `libraries/base`
* [x] Verify that the ~"backport needed" label has no more issues/merge requests needing backport
* [x] Verify that all CI builds are green before moving to *release checklist*
* [ ] Update hadrian bootstrap plans for the latest compiler releases
# Release checklist
* [x] Ensure that the [Migration](https://gitlab.haskell.org/ghc/ghc/wikis/migration/) page is up-to-date
* [x] Push a provision provisional release commit to trigger the release builds using `git push -o ci.variable="RELEASE_JOB=yes"`
* [x] Wait until builds finish; verify that they finished successfully
* [x] Fetch release artifacts TODO: documentation
* [x] Sign and push release artifacts to `downloads.haskell.org` [TODO: documentation]
* [x] [Make a release tag](https://gitlab.haskell.org/ghc/ghc/wikis/making-releases#tagging-the-release)
* [x] Release/revise GHC-maintained libraries on Hackage using [this script](https://gitlab.haskell.org/ghc/ghc/-/blob/master/.gitlab/upload_ghc_libs.py):
* [ ] `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/ghc-bignum`
* [x] Update ghc/homepage>:
* [x] Write download page (see ghc/homepage>)
* [x] Add news item to [`index.html`](https://gitlab.haskell.org/ghc/homepage/blob/master/index.shtml)
* [x] Add link to [`download.shtml`](https://gitlab.haskell.org/ghc/homepage/blob/master/download.shtml). Be sure to link to the Migration guide.
* [x] Look over changes locally
* [x] Add release announcement to [GHC blog](https://gitlab.haskell.org/ghc/homepage/tree/master/blog). Be sure to link to the Migration guide.
* [x] Push changes to `master`
* [x] Announce on: `GHC developers <ghc-devs@haskell.org>, GHC Users <glasgow-haskell-users@haskell.org>, Haskell Cafe <haskell-cafe@haskell.org>`
* [x] Announce on: [Haskell Discourse](https://discourse.haskell.org/), [/r/haskell](https://reddit.com/r/haskell), [Twitter](https://twitter.com/)
* [x] Update `latest` symlink on `downloads.haskell.org`
# Post-release checklist
* [ ] Update the Wiki [status page](https://gitlab.haskell.org/ghc/ghc/wikis/status)
* [ ] Update the [language pragma history](https://gitlab.haskell.org/ghc/ghc/wikis/language-pragma-history)
* [ ] Mark milestone as *closed*
* [ ] Update `/topic` in `#ghc`
* [ ] Update the [VersionHistory](https://gitlab.haskell.org/ghc/ghc/wikis/commentary/libraries/version-history) wiki page
* [ ] Set `RELEASE=NO`
* [ ] Create a release tracking ticket for the next release using the template in #16816
issue