haskell-language-server: Fix build
This commit is contained in:
parent
38b125a59d
commit
77b623d5a2
|
@ -1458,7 +1458,33 @@ self: super: {
|
|||
# 2020-11-19: Checks nearly fixed, but still disabled because of flaky tests:
|
||||
# https://github.com/haskell/haskell-language-server/issues/610
|
||||
# https://github.com/haskell/haskell-language-server/issues/611
|
||||
haskell-language-server = dontCheck super.haskell-language-server;
|
||||
haskell-language-server = pkgs.lib.pipe super.haskell-language-server [
|
||||
dontCheck
|
||||
(appendConfigureFlags ["-ftactics"])
|
||||
(overrideCabal (old: {
|
||||
libraryHaskellDepends = old.libraryHaskellDepends ++ [
|
||||
super.hls-tactics-plugin
|
||||
];
|
||||
}))
|
||||
];
|
||||
|
||||
lsp = assert super.lsp.version == "1.4.0.0"; dontCheck super.lsp;
|
||||
|
||||
hls-test-utils = assert super.hls-test-utils.version == "1.2.0.0"; appendPatches [
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/haskell/haskell-language-server/commit/074593987e9086e308b89ecde336de2c64861dc0.patch";
|
||||
sha256 = "sha256-uTlIbGQKulP3963UPL2V9cqMoIvPscK+s2W/HtBmMWc=";
|
||||
stripLen = 2;
|
||||
extraPrefix = "";
|
||||
includes = [ "*/Util.hs" ];
|
||||
})
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/haskell/haskell-language-server/commit/78305f21783807b04baebca4860c255bfe84d4ab.patch";
|
||||
sha256 = "sha256-oe8Q8kBJBkel+pR5imFj43NVpm4afcyLgAUCWhrIoPk=";
|
||||
stripLen = 2;
|
||||
extraPrefix = "";
|
||||
})
|
||||
] super.hls-test-utils;
|
||||
|
||||
# 2021-05-08: Tests fail: https://github.com/haskell/haskell-language-server/issues/1809
|
||||
hls-eval-plugin = dontCheck super.hls-eval-plugin;
|
||||
|
@ -2212,15 +2238,6 @@ self: super: {
|
|||
# https://github.com/kuribas/mfsolve/issues/8
|
||||
mfsolve = dontCheck super.mfsolve;
|
||||
|
||||
hie-bios = appendPatches [
|
||||
# Accounts for a breaking change in GHC 9.0.2 via CPP
|
||||
(pkgs.fetchpatch {
|
||||
name = "hie-bios-ghc-9.0.2-compat.patch";
|
||||
url = "https://github.com/haskell/hie-bios/commit/da0cb23384cc6e9b393792f8f25a3c174a4edafa.patch";
|
||||
sha256 = "1qj67s93h6pxvdapw1sxy6izwp5y8vjaw67gw3lsnj8gs14fqq4h";
|
||||
})
|
||||
] super.hie-bios;
|
||||
|
||||
# Ships a custom cabal-doctest Setup.hs in the release tarball, but the actual
|
||||
# test suite is commented out, so the required dependency is missing naturally.
|
||||
# We need to use a default Setup.hs instead. Current master doesn't exhibit
|
||||
|
|
|
@ -51,9 +51,10 @@ self: super: {
|
|||
|
||||
# Pick right versions for GHC-specific packages
|
||||
ghc-api-compat = doDistribute self.ghc-api-compat_8_10_7;
|
||||
ghc-lib = doDistribute self.ghc-lib_8_10_7_20210828;
|
||||
ghc-lib-parser = doDistribute self.ghc-lib-parser_8_10_7_20210828;
|
||||
ghc-lib-parser-ex = doDistribute self.ghc-lib-parser-ex_8_10_0_23;
|
||||
|
||||
# ghc versions which don‘t match the ghc-lib-parser-ex version need the
|
||||
# additional dependency to compile successfully.
|
||||
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
||||
|
||||
# Jailbreak to fix the build.
|
||||
base-noprelude = doJailbreak super.base-noprelude;
|
||||
|
@ -86,4 +87,19 @@ self: super: {
|
|||
|
||||
mime-string = disableOptimization super.mime-string;
|
||||
|
||||
# Older compilers need the latest ghc-lib to build this package.
|
||||
hls-hlint-plugin = addBuildDepend self.ghc-lib super.hls-hlint-plugin;
|
||||
|
||||
haskell-language-server = appendConfigureFlags [
|
||||
"-f-fourmolu"
|
||||
"-f-stylishhaskell"
|
||||
"-f-brittany"
|
||||
]
|
||||
(super.haskell-language-server.override {
|
||||
# Not buildable on 8.10
|
||||
hls-fourmolu-plugin = null;
|
||||
});
|
||||
|
||||
# ormolu 0.3 requires Cabal == 3.4
|
||||
ormolu = super.ormolu_0_2_0_0;
|
||||
}
|
||||
|
|
|
@ -121,8 +121,7 @@ self: super: {
|
|||
# additional dependency to compile successfully.
|
||||
ghc-lib-parser-ex = addBuildDepend self.ghc-lib-parser super.ghc-lib-parser-ex;
|
||||
|
||||
# Older compilers need the latest ghc-lib to build this package.
|
||||
hls-hlint-plugin = addBuildDepend self.ghc-lib super.hls-hlint-plugin;
|
||||
ormolu = super.ormolu_0_2_0_0;
|
||||
|
||||
# vector 0.12.2 indroduced doctest checks that don‘t work on older compilers
|
||||
vector = dontCheck super.vector;
|
||||
|
@ -130,4 +129,17 @@ self: super: {
|
|||
ghc-api-compat = doDistribute super.ghc-api-compat_8_6;
|
||||
|
||||
mime-string = disableOptimization super.mime-string;
|
||||
|
||||
haskell-language-server = appendConfigureFlags [
|
||||
"-f-fourmolu"
|
||||
"-f-stylishhaskell"
|
||||
"-f-brittany"
|
||||
"-f-hlint"
|
||||
]
|
||||
(super.haskell-language-server.override {
|
||||
# Not buildable on 8.8
|
||||
hls-fourmolu-plugin = null;
|
||||
# https://github.com/haskell/haskell-language-server/issues/2728
|
||||
hls-hlint-plugin = null;
|
||||
});
|
||||
}
|
||||
|
|
|
@ -47,13 +47,6 @@ self: super: {
|
|||
doHaddock = !pkgs.stdenv.isAarch64;
|
||||
} super.tf-random;
|
||||
|
||||
aeson = appendPatch (pkgs.fetchpatch {
|
||||
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/aeson-1.5.6.0.patch";
|
||||
sha256 = "07rk7f0lhgilxvbg2grpl1p5x25wjf9m7a0wqmi2jr0q61p9a0nl";
|
||||
# The revision information is newer than that included in the patch
|
||||
excludes = ["*.cabal"];
|
||||
}) (doJailbreak super.aeson);
|
||||
|
||||
basement = overrideCabal (drv: {
|
||||
# This is inside a conditional block so `doJailbreak` doesn't work
|
||||
postPatch = "sed -i -e 's,<4.16,<4.17,' basement.cabal";
|
||||
|
@ -236,7 +229,8 @@ self: super: {
|
|||
|
||||
# 2022-02-05: The following plugins don‘t work yet on ghc9.2.
|
||||
# Compare: https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html
|
||||
haskell-language-server = appendConfigureFlags [
|
||||
haskell-language-server = overrideCabal (old: {libraryHaskellDepends = builtins.filter (x: x != super.hls-tactics-plugin) old.libraryHaskellDepends;})
|
||||
(appendConfigureFlags [
|
||||
"-f-alternateNumberFormat"
|
||||
"-f-class"
|
||||
"-f-eval"
|
||||
|
@ -244,6 +238,7 @@ self: super: {
|
|||
"-f-hlint"
|
||||
"-f-retrie"
|
||||
"-f-splice"
|
||||
"-f-tactics"
|
||||
] (super.haskell-language-server.override {
|
||||
hls-alternate-number-format-plugin = null;
|
||||
hls-class-plugin = null;
|
||||
|
@ -252,5 +247,5 @@ self: super: {
|
|||
hls-hlint-plugin = null;
|
||||
hls-retrie-plugin = null;
|
||||
hls-splice-plugin = null;
|
||||
});
|
||||
}));
|
||||
}
|
||||
|
|
|
@ -117,7 +117,7 @@ extra-packages:
|
|||
- doctest == 0.18.* # 2021-11-19: closest to stackage version for GHC 9.*
|
||||
- brick == 0.64.* # 2021-12-03: matterhorn depends on brick < 0.65
|
||||
- path == 0.9.0 # 2021-12-03: path version building with stackage genvalidity and GHC 9.0.2
|
||||
- ormolu == 0.2.* # 2022-02-21: For ghc 8.8
|
||||
- ormolu == 0.2.* # 2022-02-21: For ghc 8.8 and 8.10
|
||||
- ghc-exactprint == 1.4.* # 2022-02-07: preserve for now, 1.5.0 has a breaking change without type changes
|
||||
- ShellCheck == 0.7.2 # 2022-02-20: haskell-ci 0.14 needs this
|
||||
|
||||
|
|
|
@ -994,4 +994,5 @@ self: super: builtins.intersectAttrs super {
|
|||
hls-alternate-number-format-plugin = dontCheck super.hls-alternate-number-format-plugin;
|
||||
hls-qualify-imported-names-plugin = dontCheck super.hls-qualify-imported-names-plugin;
|
||||
hls-haddock-comments-plugin = dontCheck super.hls-haddock-comments-plugin;
|
||||
hls-tactics-plugin = dontCheck super.hls-tactics-plugin;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue