[ANNOUNCE] GHC 9.8.1-alpha4 is now available

The GHC developers are very pleased to announce the availability of the third alpha prerelease of GHC 9.8.1. Binary distributions, source distributions, and documentation are available at https://downloads.haskell.org/ghc/9.8.1-alpha4 GHC 9.8 will bring a number of new features and improvements, including: * Preliminary support the `TypeAbstractions` language extension, allowing types to be bound in type declarations [TypeAbstractions]. * Support for the `ExtendedLiterals` extension, providing syntax for non-word-sized numeric literals in the surface language [extended-literals] * Improved rewrite rule matching behavior, allowing limited matching of higher-order patterns * Better support for user-defined warnings by way of the `WARNING` pragma [warnings] * The introduction of the new `GHC.TypeError.Unsatisfiable` constraint, allowing more predictable user-defined type errors [unsatisfiable] * Implementation of the export deprecation proposal, allowing module exports to be marked with `DEPRECATE` pragmas [deprecated-exports] * The addition of build semaphore support for parallel compilation; with coming support in `cabal-install` this will allow better use of parallelism in multi-package builds [jsem] * More efficient representation of info table provenance information, reducing binary sizes by over 50% in some cases when `-finfo-table-map` is in use A full accounting of changes can be found in the [release notes]. This alpha includes roughly 40 new commits relative to alpha 3, including what we believe should be nearly the last changes to GHC's boot libraries. We would like to thank GitHub, IOG, the Zw3rk stake pool, Well-Typed, Tweag I/O, Serokell, Equinix, SimSpace, the 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, ~ Ben [TypeAbstractions]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0425-de... [extended-literals]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0451-si... [unsatisfiable]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0433-un... [warnings]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0541-wa... [deprecated-exports]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0134-de... [jsem]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0540-js... [release notes]: https://downloads.haskell.org/ghc/9.8.1-alpha4/docs/users_guide/9.8.1-notes....

-
#21570, Linker broken on M1 Mac, occurs on 9.8.1-alpha4. I have updated
the bug. My guess is that it was never addressed as the info needed tag was
never removed after the required info was supplied. It might be good to
have a test for this. https://gitlab.haskell.org/ghc/ghc/-/issues/21570
-
https://gitlab.haskell.org/ghc/ghc/-/issues/21570
On Wed, Sep 20, 2023 at 1:54 AM Ben Gamari
The GHC developers are very pleased to announce the availability of the third alpha prerelease of GHC 9.8.1. Binary distributions, source distributions, and documentation are available at
https://downloads.haskell.org/ghc/9.8.1-alpha4
GHC 9.8 will bring a number of new features and improvements, including:
* Preliminary support the `TypeAbstractions` language extension, allowing types to be bound in type declarations [TypeAbstractions].
* Support for the `ExtendedLiterals` extension, providing syntax for non-word-sized numeric literals in the surface language [extended-literals]
* Improved rewrite rule matching behavior, allowing limited matching of higher-order patterns
* Better support for user-defined warnings by way of the `WARNING` pragma [warnings]
* The introduction of the new `GHC.TypeError.Unsatisfiable` constraint, allowing more predictable user-defined type errors [unsatisfiable]
* Implementation of the export deprecation proposal, allowing module exports to be marked with `DEPRECATE` pragmas [deprecated-exports]
* The addition of build semaphore support for parallel compilation; with coming support in `cabal-install` this will allow better use of parallelism in multi-package builds [jsem]
* More efficient representation of info table provenance information, reducing binary sizes by over 50% in some cases when `-finfo-table-map` is in use
A full accounting of changes can be found in the [release notes]. This alpha includes roughly 40 new commits relative to alpha 3, including what we believe should be nearly the last changes to GHC's boot libraries.
We would like to thank GitHub, IOG, the Zw3rk stake pool, Well-Typed, Tweag I/O, Serokell, Equinix, SimSpace, the 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,
~ Ben
[TypeAbstractions]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0425-de... [extended-literals https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0425-de...]:
https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0451-si... [unsatisfiable]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0433-un... [warnings]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0541-wa... [deprecated-exports https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0541-wa...]:
https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0134-de... [jsem]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0540-js... [release notes]: https://downloads.haskell.org/ghc/9.8.1-alpha4/docs/users_guide/9.8.1-notes.... _______________________________________________ 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.

It seems unlikely that the current tests wouldn't find this bug. Is it the
case that the tests are never run on aarch64-darwin Macs?
On Fri, Sep 22, 2023 at 7:34 PM George Colpitts
- #21570, Linker broken on M1 Mac, occurs on 9.8.1-alpha4. I have updated the bug. My guess is that it was never addressed as the info needed tag was never removed after the required info was supplied. It might be good to have a test for this. https://gitlab.haskell.org/ghc/ghc/-/issues/21570 - https://gitlab.haskell.org/ghc/ghc/-/issues/21570
On Wed, Sep 20, 2023 at 1:54 AM Ben Gamari
wrote: The GHC developers are very pleased to announce the availability of the third alpha prerelease of GHC 9.8.1. Binary distributions, source distributions, and documentation are available at
https://downloads.haskell.org/ghc/9.8.1-alpha4
GHC 9.8 will bring a number of new features and improvements, including:
* Preliminary support the `TypeAbstractions` language extension, allowing types to be bound in type declarations [TypeAbstractions].
* Support for the `ExtendedLiterals` extension, providing syntax for non-word-sized numeric literals in the surface language [extended-literals]
* Improved rewrite rule matching behavior, allowing limited matching of higher-order patterns
* Better support for user-defined warnings by way of the `WARNING` pragma [warnings]
* The introduction of the new `GHC.TypeError.Unsatisfiable` constraint, allowing more predictable user-defined type errors [unsatisfiable]
* Implementation of the export deprecation proposal, allowing module exports to be marked with `DEPRECATE` pragmas [deprecated-exports]
* The addition of build semaphore support for parallel compilation; with coming support in `cabal-install` this will allow better use of parallelism in multi-package builds [jsem]
* More efficient representation of info table provenance information, reducing binary sizes by over 50% in some cases when `-finfo-table-map` is in use
A full accounting of changes can be found in the [release notes]. This alpha includes roughly 40 new commits relative to alpha 3, including what we believe should be nearly the last changes to GHC's boot libraries.
We would like to thank GitHub, IOG, the Zw3rk stake pool, Well-Typed, Tweag I/O, Serokell, Equinix, SimSpace, the 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,
~ Ben
[TypeAbstractions]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0425-de... [extended-literals https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0425-de...]:
https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0451-si... [unsatisfiable]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0433-un... [warnings]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0541-wa... [deprecated-exports https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0541-wa...]:
https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0134-de... [jsem]: https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0540-js... [release notes]: https://downloads.haskell.org/ghc/9.8.1-alpha4/docs/users_guide/9.8.1-notes.... _______________________________________________ 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.

George Colpitts
It seems unlikely that the current tests wouldn't find this bug. Is it the case that the tests are never run on aarch64-darwin Macs?
The tests are certainly run; see, for instance, the 9.8.1-alpha4 release pipeline [1]. The problem is that #21570 requires very particular (mis)configuration of the host toolchain (e.g. Richard had multiple, incompatible toolchains in PATH). We can usually side-step this sort of misconfiguration by disabling the `configure` script's ld-override logic, since we using anything but Apple's linker is generally a bad idea on Darwin. This measure (!8437) is present in the 9.8 branch so I can only guess that something else is wrong. Perhaps you could open a ticket and attach config.log? Cheers, - Ben [1]: https://gitlab.haskell.org/ghc/ghc/-/jobs/1668689

George can you share the generated settings file?
On Fri, Sep 22, 2023 at 8:34 PM Ben Gamari
George Colpitts
writes: It seems unlikely that the current tests wouldn't find this bug. Is it the case that the tests are never run on aarch64-darwin Macs?
The tests are certainly run; see, for instance, the 9.8.1-alpha4 release pipeline [1].
The problem is that #21570 requires very particular (mis)configuration of the host toolchain (e.g. Richard had multiple, incompatible toolchains in PATH). We can usually side-step this sort of misconfiguration by disabling the `configure` script's ld-override logic, since we using anything but Apple's linker is generally a bad idea on Darwin. This measure (!8437) is present in the 9.8 branch so I can only guess that something else is wrong.
Perhaps you could open a ticket and attach config.log?
Cheers,
- Ben
[1]: https://gitlab.haskell.org/ghc/ghc/-/jobs/1668689 _______________________________________________ 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.
participants (3)
-
Ben Gamari
-
Carter Schonwald
-
George Colpitts