From Fedora Project Wiki
 
(8 intermediate revisions by 2 users not shown)
Line 13: Line 13:


== Current status ==
== Current status ==
[[Category:ChangeReadyForWrangler]]
[[Category:ChangeAcceptedF35]]
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- When your change proposal page is completed and ready for review and announcement -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
Line 29: Line 29:
ON_QA -> change is fully code complete
ON_QA -> change is fully code complete
-->
-->
* FESCo issue: <will be assigned by the Wrangler>
* FESCo issue: [https://pagure.io/fesco/issue/2648 #2648]
* Tracker bug: <will be assigned by the Wrangler>
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1984080 #1984080]
* Release notes tracker: <will be assigned by the Wrangler>
* Release notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/723 #723]


== Detailed Description ==
== Detailed Description ==
Line 37: Line 37:
Along with this, Haskell packages in [https://www.stackage.org Stackage] (the stable Haskell source package distribution) will be updated from the versions in LTS 16 to latest LTS 18 release.
Along with this, Haskell packages in [https://www.stackage.org Stackage] (the stable Haskell source package distribution) will be updated from the versions in LTS 16 to latest LTS 18 release.
Haskell packages not in Stackage will be updated to the latest appropriate version in the upstream [https://hackage.haskell.org Hackage] package repository.
Haskell packages not in Stackage will be updated to the latest appropriate version in the upstream [https://hackage.haskell.org Hackage] package repository.
On the s390x architecture, ghc-8.10 now supports the llvm backend, which should improve s390x performance significantly.


== Feedback ==
== Feedback ==
Line 46: Line 44:
Fedora users will benefit from access to the latest stable Haskell compiler release, package tools, and current stable Haskell packages from Stackage LTS.
Fedora users will benefit from access to the latest stable Haskell compiler release, package tools, and current stable Haskell packages from Stackage LTS.


GHC 8.10 features performance improvements, new language extension features, and bugfixes (see the Documentation links for more details).
GHC 8.10 features performance improvements, new language extension features, and bugfixes (see the release notes linked in the Documentation section for more details).


== Scope ==
== Scope ==
* Proposal owners:
* Proposal owners:
** rebase ghc to 8.10.5
** rebase ghc to 8.10.5 [done]
** update ghc-rpm-macros to the final version for F35 [done]
** update ghc-rpm-macros to the final version for F35 [done]
** refresh packagings with the latest cabal-rpm release
** refresh packagings with the latest cabal-rpm release [done]
** update packages to latest [https://www.stackage.org/lts-18.1 Stackage LTS 18.1] versions using cabal-rpm
** update packages to latest [https://www.stackage.org/lts-18.5 Stackage LTS 18.5] versions using cabal-rpm [done]
** build all the packages in a Koji sidetag repo in dependency order
** build all the packages in a Koji sidetag repo in dependency order [done]
** When finished push all builds through Bodhi to Rawhide before the mass rebuild
** When finished push all builds through Bodhi to Rawhide before the mass rebuild [https://bodhi.fedoraproject.org/updates/FEDORA-2021-d91fc0c3c1 done]


* Release engineering: N/A
* Release engineering: N/A

Latest revision as of 01:36, 10 August 2021

GHC 8.10 and Stackage lts-18

Summary

The GHC Haskell compiler will be updated from major version 8.8 to 8.10, and Haskell packages will be updated from Stackage LTS 16 to LTS 18 versions.

Owner

Current status

Detailed Description

For Fedora 35, the GHC Haskell compiler will be updated from version 8.8.4 to the latest stable 8.10.5 release (rebasing from the ghc:8.10 module stream). Along with this, Haskell packages in Stackage (the stable Haskell source package distribution) will be updated from the versions in LTS 16 to latest LTS 18 release. Haskell packages not in Stackage will be updated to the latest appropriate version in the upstream Hackage package repository.

Feedback

Benefit to Fedora

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

GHC 8.10 features performance improvements, new language extension features, and bugfixes (see the release notes linked in the Documentation section for more details).

Scope

  • Proposal owners:
    • rebase ghc to 8.10.5 [done]
    • update ghc-rpm-macros to the final version for F35 [done]
    • refresh packagings with the latest cabal-rpm release [done]
    • update packages to latest Stackage LTS 18.5 versions using cabal-rpm [done]
    • build all the packages in a Koji sidetag repo in dependency order [done]
    • When finished push all builds through Bodhi to Rawhide before the mass rebuild done
  • Release engineering: N/A
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

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

Users' Haskell projects will get rebuilt with ghc-8.10 when they next build them and might need small tweaks.

How To Test

  • install ghc and cabal-install
  • install pandoc, ShellCheck, git-annex
  • install ghc-*-devel or ghc-*-prof or ghc-*-doc
  • cabal-rpm builddep <favouritepackage>; cabal install <favouritepackage>
  • test upgrades of F34 Haskell packages to F35

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 be updated from 3.0 to 3.2 and stack from 2.3 to 2.7.

Dependencies

Contingency Plan

  • Contingency mechanism: (What to do? Who will do it?)
    • Change owner will drop the new builds and revert back to the versions in F34.
  • Contingency deadline: Beta Freeze

Documentation

https://downloads.haskell.org/~ghc/8.10.5/docs/html/users_guide/8.10.1-notes.html


Release Notes