Subject: [PATCH 00/31] Haskell upgrade to Stackage 20.5
From: Lars-Dominik Braun <[email-masked]>
To: [email-masked]
Date: Sat, 11 Feb 2023 10:59:17 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hi,

these patches (also found in the wip-haskell branch) lift Haskell to
the Stackage release 20.5, which is based on GHC 9.2.

Apart from the upgrade, I also made a few fixes to haskell-build-system
and the importer such as

- Support for multiple Haskell libraries in one package (see #54729).
- Add an upstream-name property to all packages and use it in the updater.
- Use hackage-uri instead of string-append to build URLs.
- Build binaries statically by default and remove extra static output
  from haskell-build-system (this reduces pandoc’s size even further
  by ~100MB without the need to resort to weird input rewriting hacks).

I’m not including the big, automated changes here – please check the branch.

Cheers,
Lars

Lars-Dominik Braun (29):
  import: hackage: Allow version at the beginning of cabal file.
  gnu: Switch default to GHC 9.2.
  import: stackage: Update to release 20.5.
  import: hackage: Add upstream-name property.
  gnu: Add upstream-name property to Haskell packages.
  import: hackage: Use upstream-name property.
  gnu: Use HACKAGE-URI for packages from Hackage.
  import: haskell: Add new internal library for GHC 9.2.
  build: haskell-build-system: Process all transitive dependencies.
  build: haskell-build-system: Remove unused linker flags.
  Upgrade Haskell packages.
  gnu: ghc-9.2: Increase make verbosity.
  gnu: Remove unused Haskell packages.
  gnu: ghc-parsec: Update to 3.1.15.0.
  gnu: idris: Fix overly zealous regular expression.
  gnu: elm: Support GHC 9.2.
  build-system: haskell: Drop default "static" output.
  gnu: ghc-9.2: Support static linking with glibc < 2.34.
  gnu: ghc-lua: Disable symbol export.
  build: haskell-build-system: Build static executables by default.
  gnu: ngless: Drop Haskell libraries and documentation.
  gnu: hledger: Drop Haskell libraries and documentation.
  gnu: darcs: Drop Haskell libraries and documentation.
  gnu: git-annex: Drop Haskell documentation.
  gnu: shellcheck: Drop Haskell libraries.
  gnu: pandoc: Drop Haskell libraries and documentation.
  gnu: purescript: Drop Haskell libraries and documentation.
  gnu: xmobar: Drop Haskell libraries and documentation.
  gnu: idris: Adapt to changed haskell-build-system.

Philip Munksgaard (1):
  build: haskell-build-system: Support multiple libraries.

zimoun (1):
  build: haskell-build-system: Remove trailing #t.

 gnu/local.mk                                  |     8 +-
 gnu/packages/agda.scm                         |     5 +-
 gnu/packages/bioinformatics.scm               |   215 +-
 gnu/packages/dhall.scm                        |   168 +-
 gnu/packages/elm.scm                          |     5 +-
 gnu/packages/finance.scm                      |   213 +-
 gnu/packages/haskell-apps.scm                 |   613 +-
 gnu/packages/haskell-check.scm                |   782 +-
 gnu/packages/haskell-crypto.scm               |   352 +-
 gnu/packages/haskell-web.scm                  |  1453 +-
 gnu/packages/haskell-xyz.scm                  | 11569 ++++++++--------
 gnu/packages/haskell.scm                      |    25 +-
 gnu/packages/idris.scm                        |    14 +-
 gnu/packages/lisp.scm                         |   127 +-
 .../cabal-install-base16-bytestring1.0.patch  |    29 -
 .../patches/cabal-install-ghc8.10.patch       |   393 -
 gnu/packages/patches/elm-ghc9.2.patch         |   187 +
 .../ghc-9.2-glibc-2.33-link-order.patch       |    35 +
 .../patches/ghc-bloomfilter-ghc9.2.patch      |   303 +
 .../patches/ghc-bytestring-handle-ghc9.patch  |    67 +
 gnu/packages/patches/ngless-unliftio.patch    |    66 -
 .../patches/xmonad-dynamic-linking.patch      |    24 +-
 .../patches/xmonad-next-dynamic-linking.patch |    16 -
 gnu/packages/purescript.scm                   |   172 +-
 gnu/packages/wm.scm                           |   136 +-
 guix/build-system/haskell.scm                 |     5 +-
 guix/build/haskell-build-system.scm           |   136 +-
 guix/import/hackage.scm                       |    21 +-
 guix/import/stackage.scm                      |     6 +-
 tests/hackage.scm                             |     5 +
 30 files changed, 8449 insertions(+), 8701 deletions(-)
 delete mode 100644 gnu/packages/patches/cabal-install-base16-bytestring1.0.patch
 delete mode 100644 gnu/packages/patches/cabal-install-ghc8.10.patch
 create mode 100644 gnu/packages/patches/elm-ghc9.2.patch
 create mode 100644 gnu/packages/patches/ghc-9.2-glibc-2.33-link-order.patch
 create mode 100644 gnu/packages/patches/ghc-bloomfilter-ghc9.2.patch
 create mode 100644 gnu/packages/patches/ghc-bytestring-handle-ghc9.patch
 delete mode 100644 gnu/packages/patches/ngless-unliftio.patch
 delete mode 100644 gnu/packages/patches/xmonad-next-dynamic-linking.patch

base-commit: 900d33527c9286a811f064d4bb8f4a9b18d1db0b
-- 
2.38.2