From 2676ce5a9a4f073f724887059022a278aa9fff76 Mon Sep 17 00:00:00 2001 From: sternenseemann Date: Sun, 7 Jan 2024 01:42:06 +0100 Subject: haskell.packages.ghc98.haskell-language-server: allow build Sorry, this is a bit of a draw the rest of the owl commit. Upgraded where sensible/possible, all jailbreaks note the bounds issues which are luckily relatively boring (base and friends). Removed overrides are mostly stale overrides from configuration-head.nix that don't work anymore and make little sense with the current package set anyways. --- .../haskell-modules/configuration-common.nix | 16 ++++- .../haskell-modules/configuration-ghc-9.8.x.nix | 83 ++++++++++++++++------ 2 files changed, 75 insertions(+), 24 deletions(-) (limited to 'pkgs/development/haskell-modules') diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix index 15498c52d32b..96e70b7efc77 100644 --- a/pkgs/development/haskell-modules/configuration-common.nix +++ b/pkgs/development/haskell-modules/configuration-common.nix @@ -2786,9 +2786,19 @@ self: super: { # 2023-03-05: restrictive bounds on base https://github.com/diagrams/diagrams-gtk/issues/11 diagrams-gtk = doJailbreak super.diagrams-gtk; - # 2023-03-13: restrictive bounds on validation-selective (>=0.1.0 && <0.2). - # Get rid of this in the next release: https://github.com/kowainik/tomland/commit/37f16460a6dfe4606d48b8b86c13635d409442cd - tomland = doJailbreak super.tomland; + tomland = overrideCabal (drv: { + # 2023-03-13: restrictive bounds on validation-selective (>=0.1.0 && <0.2). + # Get rid of this in the next release: https://github.com/kowainik/tomland/commit/37f16460a6dfe4606d48b8b86c13635d409442cd + jailbreak = true; + # Fix compilation of test suite with GHC >= 9.8 + patches = drv.patches or [ ] ++ [ + (pkgs.fetchpatch { + name = "tomland-disambiguate-string-type-for-ghc-9.8.patch"; + url = "https://github.com/kowainik/tomland/commit/0f107269b8835a8253f618b75930b11d3a3f1337.patch"; + sha256 = "13ndlfw32xh8jz5g6lpxzn2ks8zchb3y4j1jbbm2x279pdyvvars"; + }) + ]; + }) super.tomland; # libfuse3 fails to mount fuse file systems within the build environment libfuse3 = dontCheck super.libfuse3; diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix index c2718537a283..d6672c22a203 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.8.x.nix @@ -49,30 +49,71 @@ self: super: { unix = null; xhtml = null; - # https://github.com/tibbe/unordered-containers/issues/214 - unordered-containers = dontCheck super.unordered-containers; + # HLS + # https://haskell-language-server.readthedocs.io/en/latest/support/plugin-support.html + haskell-language-server = super.haskell-language-server.override { + hls-class-plugin = null; + hls-floskell-plugin = null; + hls-fourmolu-plugin = null; + hls-gadt-plugin = null; + hls-hlint-plugin = null; + hls-ormolu-plugin = null; + hls-refactor-plugin = null; + hls-rename-plugin = null; + hls-retrie-plugin = null; + hls-splice-plugin = null; + hls-stylish-haskell-plugin = null; + }; - # Test suite does not compile. - data-clist = doJailbreak super.data-clist; # won't cope with QuickCheck 2.12.x - dates = doJailbreak super.dates; # base >=4.9 && <4.12 - Diff = dontCheck super.Diff; - HaTeX = doJailbreak super.HaTeX; # containers >=0.4 && <0.6 is too tight; https://github.com/Daniel-Diaz/HaTeX/issues/126 - hpc-coveralls = doJailbreak super.hpc-coveralls; # https://github.com/guillaume-nargeot/hpc-coveralls/issues/82 - http-api-data = doJailbreak super.http-api-data; - persistent-sqlite = dontCheck super.persistent-sqlite; - system-fileio = dontCheck super.system-fileio; # avoid dependency on broken "patience" - unicode-transforms = dontCheck super.unicode-transforms; - wl-pprint-extras = doJailbreak super.wl-pprint-extras; # containers >=0.4 && <0.6 is too tight; https://github.com/ekmett/wl-pprint-extras/issues/17 - RSA = dontCheck super.RSA; # https://github.com/GaloisInc/RSA/issues/14 - github = dontCheck super.github; # hspec upper bound exceeded; https://github.com/phadej/github/pull/341 - binary-orphans = dontCheck super.binary-orphans; # tasty upper bound exceeded; https://github.com/phadej/binary-orphans/commit/8ce857226595dd520236ff4c51fa1a45d8387b33 + # Version upgrades + alex = doDistribute self.alex_3_4_0_1; + some = doDistribute self.some_1_0_6; + tagged = doDistribute self.tagged_0_8_8; + th-abstraction = doDistribute self.th-abstraction_0_6_0_0; + hspec-core = doDistribute self.hspec-core_2_11_7; + hspec-meta = doDistribute self.hspec-meta_2_11_7; + hspec-discover = doDistribute self.hspec-discover_2_11_7; + hspec = doDistribute self.hspec_2_11_7; + hspec-expectations = doDistribute self.hspec-expectations_0_8_4; + bifunctors = doDistribute self.bifunctors_5_6_1; + free = doDistribute self.free_5_2; + semigroupoids = doDistribute self.semigroupoids_6_0_0_1; + doctest = doDistribute self.doctest_0_22_2; + ghc-lib-parser = doDistribute self.ghc-lib-parser_9_8_1_20231121; + ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_9_8_0_0; + ghc-lib = doDistribute self.ghc-lib_9_8_1_20231121; + megaparsec = doDistribute self.megaparsec_9_6_1; + tasty-hspec = doDistribute self.tasty-hspec_1_2_0_4; + hedgehog = doDistribute self.hedgehog_1_4; + rebase = doDistribute self.rebase_1_20_2; + rerebase = doDistribute self.rerebase_1_20_2; + aeson = doDistribute self.aeson_2_2_1_0; + aeson-pretty = doDistribute self.aeson-pretty_0_8_10; + attoparsec-aeson = doDistribute self.attoparsec-aeson_2_2_0_1; + ormolu = doDistribute self.ormolu_0_7_3_0; + fourmolu = doDistribute (dontCheck self.fourmolu_0_14_1_0); - # https://github.com/jgm/skylighting/issues/55 - skylighting-core = dontCheck super.skylighting-core; - - # Break out of "yaml >=0.10.4.0 && <0.11": https://github.com/commercialhaskell/stack/issues/4485 - stack = doJailbreak super.stack; + # Jailbreaks + commutative-semigroups = doJailbreak super.commutative-semigroups; # base < 4.19 + ghc-trace-events = doJailbreak super.ghc-trace-events; # text < 2.1, bytestring < 0.12, base < 4.19 + primitive-unlifted = doJailbreak super.primitive-unlifted; # bytestring < 0.12 + newtype-generics = doJailbreak super.newtype-generics; # base < 4.19 + hw-prim = doJailbreak super.hw-prim; # doctest < 0.22, ghc-prim < 0.11, hedgehog < 1.4 + hw-fingertree = doJailbreak super.hw-fingertree; # deepseq <1.5, doctest < 0.22, hedgehog < 1.4 # Too strict bound on base, believe it or not. # https://github.com/judah/terminfo/pull/55#issuecomment-1876894232 terminfo_0_4_1_6 = doJailbreak super.terminfo_0_4_1_6; + + # Test suite issues + unordered-containers = dontCheck super.unordered-containers; # ChasingBottoms doesn't support base 4.20 + lifted-base = dontCheck super.lifted-base; # doesn't compile with transformers == 0.6.* + # https://github.com/wz1000/HieDb/issues/64 + hiedb = overrideCabal (drv: { + testFlags = drv.testFlags or [ ] ++ [ + "--match" "!/hiedb/Command line/point-info/correctly prints type signatures/" + ]; + }) super.hiedb; + + # Unbroken due to hspec* upgrades + hspec-api = doDistribute (unmarkBroken super.hspec-api); } -- cgit 1.4.1