https://fedoraproject.org/wiki/Changes/Haskell_GHC_9.4_and_Stackage_21

This document represents a proposed Change. As part of the Changes
process, proposals are publicly announced in order to receive
community feedback. This proposal will only be implemented if approved
by the Fedora Engineering Steering Committee.

== Summary ==
Update the GHC Haskell compiler from major version 9.2 to 9.4, and
Haskell packages will be updated from Stackage LTS 20 to LTS 21
versions.

== Owner ==
* Name: [[User:Petersen| Jens Petersen]]

* Email: <peter...@redhat.com>


== Detailed Description ==
For Fedora 39, the [https://www.haskell.org/ghc/ GHC] Haskell compiler
will be updated from version
[https://www.haskell.org/ghc/download_ghc_9_2_6.html 9.2.6] to the
latest stable [https://www.haskell.org/ghc/download_ghc_9_4_5.html
9.4.5] release (rebasing from the
[https://www.haskell.org/ghc/download_ghc_9_4_5.html ghc9.4] package).
Along with this, Haskell packages in [https://www.stackage.org
Stackage] (the stable Haskell source package distribution) will be
updated from the versions in [https://www.stackage.org/lts-20 LTS 20]
to latest [https://www.stackage.org/lts-21 LTS 21] release.
Haskell packages not in Stackage will be updated to the latest
appropriate version in the upstream [https://hackage.haskell.org
Hackage] package repository.

== Feedback ==


== Benefit to Fedora ==
Fedora users will have the latest stable Haskell compiler release,
package tools, and current Haskell packages from Stackage LTS.

GHC 9.4.5 is the current recommended version of GHC with various
enhancements and fixes (see the release notes linked in the
Documentation section for more details).

== Scope ==
* Proposal owners:
** update ghc9.2 is build against itself
** rebase ghc to 9.4.5
** finalize ghc-rpm-macros for F39
** (refresh packagings with the latest cabal-rpm release if needed)
** update packages to latest [https://www.stackage.org/lts-21 Stackage
LTS 21] versions using cabal-rpm
** build all the packages in a Koji sidetag repo in dependency order
using fbrnch
** push the sidetag through Bodhi

* Other developers: no actions should be needed

* Release engineering: [https://pagure.io/releng/issues #Releng issue number]

* Policies and guidelines: N/A (not needed for this Change)

* Trademark approval: N/A (not needed for this Change)


* Alignment with Community Initiatives:


== Upgrade/compatibility impact ==
Any dropped packages will have obsoletes added.
Otherwise there should not be any direct upgrade impact.

Users' Haskell projects will get built with ghc-9.4 when they next
build them and might need some minor code tweaks
(see the release notes linked below).



== How To Test ==
* install ghc and cabal-install
* install pandoc, ShellCheck, ghcid, git-annex, hadolint, stack, xmonad, Agda
* install ghc-*-devel or ghc-*-prof or ghc-*-doc
* cabal-rpm builddep <favouritepackage>; cabal install <favouritepackage>
* install ghc8.10, ghc9.0, ghc9.2, ghc9.6
* test upgrades of F38 Haskell packages to F39



== User Experience ==
Users will have the most recent stable major version of `ghc` and
Haskell libraries and tools available to them.
This makes it easier to build the latest versions of Haskell projects.

In particular `cabal-install` will also be updated from 3.6 to 3.8.

== Dependencies ==


== Contingency Plan ==
* Contingency mechanism:
** Change owner will drop the new builds and revert back to the versions in F38
* Contingency deadline: Beta Freeze

* Blocks release? N/A (not a System Wide Change)

== Documentation ==
* 
https://downloads.haskell.org/~ghc/9.4.5/docs/html/users_guide/9.4.1-notes.html
* https://www.stackage.org/blog/2023/06/announce-lts-21-nightly-ghc9.6



== Release Notes ==
The Haskell GHC compiler has been updated from 9.2.6 to 9.4.5 with
many improvements
and Haskell package versions are updated from Stackage LTS 20 to 21.






-- 
Aoife Moloney

Product Owner

Community Platform Engineering Team

Red Hat EMEA

Communications House

Cork Road

Waterford
_______________________________________________
devel-announce mailing list -- devel-announce@lists.fedoraproject.org
To unsubscribe send an email to devel-announce-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel-announce@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to