From 8c0548a43f63076eaaec2356453fadad80370930 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Sun, 25 Oct 2026 18:36:41 +0100 Subject: [PATCH 1/2] haskellPackages.cabal-install-parsers: default to 0.6.3 Every package set uses the Cabal-syntax bundled with its GHC. None of our versions bundles 3.18 yet, so cabal-install-parsers 0.7 fails as the default. Assisted-by: Claude Code (Claude Opus 5.5) --- .../configuration-hackage2nix/main.yaml | 2 + .../haskell-modules/hackage-packages.nix | 87 +++++++++++++++++++ 2 files changed, 89 insertions(+) diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml index 30eb36c295d5..3197f6ce5f6b 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix/main.yaml @@ -25,6 +25,8 @@ # not work. # keep-sorted start skip_lines=1 case=no numeric=yes default-package-overrides: + # 2026-10-25: 0.7 needs Cabal-syntax 3.18, expected with GHC 10.0 + - cabal-install-parsers < 0.7 - clash-lib-hedgehog < 1.9 # needs to match clash-lib from Stackage # 2025-12-26: Needs to match egison-pattern-src from Stackage - egison-pattern-src-th-mode < 0.2.2 diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index d0e491381d09..c2b7ebe0b6bc 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -129014,6 +129014,92 @@ self: { ) { }; cabal-install-parsers = callPackage ( + { + mkDerivation, + aeson, + ansi-terminal, + base, + base16-bytestring, + binary, + binary-instances, + bytestring, + Cabal-syntax, + containers, + criterion, + cryptohash-sha256, + deepseq, + directory, + filepath, + lukko, + network-uri, + parsec, + pretty, + tar, + tasty, + tasty-golden, + tasty-hunit, + text, + time, + transformers, + tree-diff, + }: + mkDerivation { + pname = "cabal-install-parsers"; + version = "0.6.3"; + sha256 = "1vcy6y1p750g4v9zqmsakrcvw78p43n2b745fl02xq7xyr5lpfij"; + libraryHaskellDepends = [ + aeson + base + base16-bytestring + binary + binary-instances + bytestring + Cabal-syntax + containers + cryptohash-sha256 + deepseq + directory + filepath + lukko + network-uri + parsec + pretty + tar + text + time + transformers + ]; + testHaskellDepends = [ + ansi-terminal + base + base16-bytestring + bytestring + Cabal-syntax + containers + directory + filepath + pretty + tar + tasty + tasty-golden + tasty-hunit + tree-diff + ]; + benchmarkHaskellDepends = [ + base + bytestring + Cabal-syntax + containers + criterion + directory + filepath + ]; + description = "Utilities to work with cabal-install files"; + license = "GPL-2.0-or-later AND BSD-3-Clause"; + } + ) { }; + + cabal-install-parsers_0_7 = callPackage ( { mkDerivation, aeson, @@ -129089,6 +129175,7 @@ self: { ]; description = "Utilities to work with cabal-install files"; license = "GPL-2.0-or-later AND BSD-3-Clause"; + hydraPlatforms = lib.platforms.none; } ) { }; From 4ff96c2a5ddfd18d2bc8ffea196f374349a7a756 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Mon, 26 Oct 2026 09:21:08 +0100 Subject: [PATCH 2/2] haskellPackages.changelog-d: 1.0.2 -> 1.0.2-unstable-2026-10-25 Takes upstream's unreleased Cabal-syntax 3.18 support, so changelog-d does not need patching once the set moves to cabal-install-parsers 0.7. Also brings PR/MR ref support and a fix for missing-PR detection across packages. Assisted-by: Claude Code (Claude Opus 5.5) --- pkgs/development/misc/haskell/changelog-d/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/misc/haskell/changelog-d/default.nix b/pkgs/development/misc/haskell/changelog-d/default.nix index c13a69bcdb19..aa2910385013 100644 --- a/pkgs/development/misc/haskell/changelog-d/default.nix +++ b/pkgs/development/misc/haskell/changelog-d/default.nix @@ -17,14 +17,14 @@ regex-applicative, frontmatter, }: -mkDerivation rec { +mkDerivation { pname = "changelog-d"; - version = "1.0.2"; + version = "1.0.2-unstable-2026-10-25"; src = fetchFromCodeberg { owner = "fgaz"; repo = "changelog-d"; - rev = "v${version}"; - hash = "sha256-nPvuAkcFfK/NKXNBv8D2ePnB88WnjvmAIbzQHVvEXtk="; + rev = "99905fe1603a518300ac9b61e58ead8ba183c0cd"; + hash = "sha256-XWM3hgjvW7zP3wfgZGxnUjflDwdh+fpKYlJ8j7L7o84="; }; isLibrary = false; isExecutable = true;