[Haskell] [ANNOUNCE] GHC 9.2.4 released

Zubin Duggal <[email protected]> Thu, 28 Jul 2022 16:47:13 +0530
Newsgroups gmane.comp.lang.haskell.cafe,gmane.comp.lang.haskell.ghc.devel,gmane.comp.lang.haskell.glasgow.user
Message-ID <20220728111713.owpnsu43zwq2klhn@zubin-msi>
The GHC developers are very happy to at announce the availability of GHC
9.2.4. Binary distributions, source distributions, and documentation are
available at [`downloads.haskell.org`](https://downloads.haskell.org/ghc/9.2.4).

Download Page: https://www.haskell.org/ghc/download_ghc_9_2_4.html
Blog Post: https://www.haskell.org/ghc/blog/20220728-ghc-9.2.4-released.html

This release will include:

  - The new `DeepSubsumption` language extension which reverses the
    effects of the [Simplified Subsumption Proposal] introduced in GHC 9.0. This
    is an attempt to make GHC 9.2.4 more backwards compatible with GHC 8.10 and
    eases migration for users who depended on this feature.

    This extension is enabled by default with the `Haskell2010`
    and `Haskell98` languages but disabled with the `GHC2021`
    language originally introduced in GHC 9.2.1.

    See the [Deep Subsumption Proposal] for more details.

  - Fixes for segfaults that may arise due to a bug in the implementation of the
    `keepAlive#` primop. This may regress performance for certain programs which
    use this primop or functions which use the primop, such as `withForeignPtr`.
    These regressions are mostly small, but can be larger in certain edge cases.
    Judicious use of `unsafeWithForeignPtr` when its argument is known not to
    statically diverge can mitigate these in many cases. It is our judgment that
    the critical correctness issues justify the regression in performance and that
    it is important to get a release out with the fix while we work on a better
    approach which will improve performance for future releases (#21708).

    We have a [wiki page](https://gitlab.haskell.org/ghc/ghc/-/wikis/proposal/with-combinator)
    that tracks possible solutions to this problem, and Ben wrote a
    [blog post](https://www.haskell.org/ghc/blog/20210607-the-keepAlive-story.html)
    detailing the introduction of the `keepAlive#` primop and its history.

  - Fixes for a number of miscompilations on AArch64 and other platforms (#21624,
    #21773, #20735, #21685).

  - Fixes for segfaults due to bugs in the RTS and GC (#21708, #21880, #21885).

  - Fixing the behaviour of Ctrl-C with GHCi on Windows (#21889).

   - ... and much more. See the [release notes] for a full accounting.

As some of the fixed issues do affect correctness users are encouraged to
upgrade promptly.

We would like to thank Microsoft Azure, GitHub, IOG, the Zw3rk
stake pool, Tweag I/O, Serokell, Equinix, SimSpace, Haskell Foundation, and other anonymous
contributors whose on-going financial and in-kind support has
facilitated GHC maintenance and release management over the years.
Finally, this release would not have been possible without the hundreds
of open-source contributors whose work comprise this release.

As always, do give this release a try and open a [ticket] if you see
anything amiss.

Happy compiling,

- Zubin

[ticket]: https://gitlab.haskell.org/ghc/ghc/-/issues/new
[release notes]: https://downloads.haskell.org/~ghc/9.2.4/docs/users_guide/9.2.4-notes.html
[Simplified Subsumption Proposal]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0287-simplify-subsumption.rst
[Deep Subsumption Proposal]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0511-deep-subsumption.rst

_______________________________________________
Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Only members subscribed via the mailman list are allowed to post.
signature.asc (application/pgp-signature, 488 B)
-----BEGIN PGP SIGNATURE-----

iQEzBAABCAAdFiEEAZROpSIRC5DIH2KdfM/Cd6FMl6cFAmLicDkACgkQfM/Cd6FM
l6fdEwf/UKVuAWdB+CXBU7mZgUPh5hqaTxkZcYxMnSXbj+AIn1aopoBG0CMXwKlL
Bp/PLfiu53tunzDbpLN0NfmOQPNNSQ77sazUv4lp7HT88QM87IdP5ZepUiAwEweF
eQJBJdwqBT/fWyrOWkXAvJHAWUq9QvvVTDZly8/WF8dCsfBk4DLmY2GIBC32SItb
s/gK2eTr3SMh+YmK5p8G+36hhfT6igZeOywrdqjulw+k+0iCSrEVQ7D5NrMexnl4
fPIcfB+P67pNkA4JiDXHUOrN7RkcLG4vfeAYSQ9OIH0Yikf5KQMkzYop+TFptRn8
nsPPyjv0bdtyCVQSh2Brn06gA90IsA==
=B6LM
-----END PGP SIGNATURE-----