mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-11-06 10:16:44 +01:00
haskellPackages.haskell-language-server: Fix dependencies and refactor overrides
This commit is contained in:
parent
7ef2b7a350
commit
11895db491
|
@ -2038,13 +2038,13 @@ self: super: {
|
|||
# 2021-08-18: streamly-posix was released with hspec 2.8.2, but it works with older versions too.
|
||||
streamly-posix = doJailbreak super.streamly-posix;
|
||||
|
||||
# 2021-09-13: hls 1.3 needs a newer lsp than stackage-lts. (lsp >= 1.2.0.1)
|
||||
# 2021-09-13: hls 1.6 needs a newer lsp than stackage-lts. (lsp >= 1.2.0.1)
|
||||
# (hls is nearly the only consumer, but consists of 18 packages, so we bump lsp globally.)
|
||||
lsp = doDistribute self.lsp_1_2_0_1;
|
||||
lsp-types = doDistribute self.lsp-types_1_3_0_1;
|
||||
lsp = doDistribute self.lsp_1_4_0_0;
|
||||
lsp-types = doDistribute self.lsp-types_1_4_0_1;
|
||||
# Not running the "example" test because it requires a binary from lsps test
|
||||
# suite which is not part of the output of lsp.
|
||||
lsp-test = doDistribute (overrideCabal (old: { testTarget = "tests func-test"; }) self.lsp-test_0_14_0_1);
|
||||
lsp-test = doDistribute (overrideCabal (old: { testTarget = "tests func-test"; }) self.lsp-test_0_14_0_2);
|
||||
|
||||
# 2021-09-14: Tests are flaky.
|
||||
hls-splice-plugin = dontCheck super.hls-splice-plugin;
|
||||
|
|
|
@ -82,8 +82,6 @@ default-package-overrides:
|
|||
- reflex-dom-pandoc < 1.0.0.0
|
||||
# 2021-09-07: pin to our current GHC version
|
||||
- ghc-api-compat == 8.10.7
|
||||
# 2021-09-14: Pin hiedb to version needed by ghcide
|
||||
- hiedb == 0.4.0.*
|
||||
# 2021-10-13: weeder 2.3.0 require GHC == 9.0.*; remove pin when GHC version changes
|
||||
- weeder < 2.3.0
|
||||
# 2021-10-10: taskwarrior 0.4 requires aeson > 2.0.1.0
|
||||
|
@ -169,10 +167,6 @@ extra-packages:
|
|||
- 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.3.* # 2021-12-03: for HLS with GHC 9.0.2
|
||||
# 2022-01-08 hls-plugin-api 1.2.0.2 needs lsp < 1.3, but newer than stackage
|
||||
- lsp < 1.3
|
||||
- lsp-types < 1.4
|
||||
- lsp-test < 0.14.0.2
|
||||
|
||||
package-maintainers:
|
||||
abbradar:
|
||||
|
|
|
@ -804,90 +804,11 @@ self: super: builtins.intersectAttrs super {
|
|||
'' + drv.postInstall or "";
|
||||
}) super.hlint;
|
||||
|
||||
hls-brittany-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-brittany-plugin;
|
||||
hls-class-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-class-plugin;
|
||||
hls-ormolu-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-ormolu-plugin;
|
||||
hls-fourmolu-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-fourmolu-plugin;
|
||||
hls-module-name-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-module-name-plugin;
|
||||
hls-rename-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'' + (drv.preCheck or "");
|
||||
}) super.hls-rename-plugin;
|
||||
hls-splice-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-splice-plugin;
|
||||
hls-floskell-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-floskell-plugin;
|
||||
hls-pragmas-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-pragmas-plugin;
|
||||
hls-hlint-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-hlint-plugin;
|
||||
hiedb = overrideCabal (drv: {
|
||||
preCheck = ''
|
||||
export PATH=$PWD/dist/build/hiedb:$PATH
|
||||
'';
|
||||
}) super.hiedb;
|
||||
hls-call-hierarchy-plugin = overrideCabal (drv: {
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-call-hierarchy-plugin;
|
||||
# Tests have file permissions expections that don‘t work with the nix store.
|
||||
hls-stylish-haskell-plugin = dontCheck super.hls-stylish-haskell-plugin;
|
||||
hls-haddock-comments-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-haddock-comments-plugin;
|
||||
hls-eval-plugin = overrideCabal (drv: {
|
||||
testToolDepends = [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'';
|
||||
}) super.hls-eval-plugin;
|
||||
|
||||
taglib = overrideCabal (drv: {
|
||||
librarySystemDepends = [
|
||||
|
@ -1052,4 +973,33 @@ self: super: builtins.intersectAttrs super {
|
|||
install -Dm644 test/examples/*.jac -t "$docDir/examples"
|
||||
'';
|
||||
}) super.jacinda;
|
||||
|
||||
# haskell-language-server plugins all use the same test harness so we give them what we want in this loop.
|
||||
} // pkgs.lib.mapAttrs
|
||||
(_: overrideCabal (drv: {
|
||||
testToolDepends = (drv.testToolDepends or [ ]) ++ [ pkgs.git ];
|
||||
preCheck = ''
|
||||
export HOME=$TMPDIR/home
|
||||
'' + (drv.preCheck or "");
|
||||
}))
|
||||
{
|
||||
inherit (super)
|
||||
hls-alternate-number-format-plugin
|
||||
hls-brittany-plugin
|
||||
hls-call-hierarchy-plugin
|
||||
hls-class-plugin
|
||||
hls-eval-plugin
|
||||
hls-floskell-plugin
|
||||
hls-fourmolu-plugin
|
||||
hls-haddock-comments-plugin
|
||||
hls-module-name-plugin
|
||||
hls-ormolu-plugin
|
||||
hls-pragmas-plugin
|
||||
hls-qualify-imported-names-plugin
|
||||
hls-rename-plugin
|
||||
hls-selection-range-plugin
|
||||
hls-splice-plugin;
|
||||
# Tests have file permissions expections that don‘t work with the nix store.
|
||||
hls-stylish-haskell-plugin = dontCheck super.hls-stylish-haskell-plugin;
|
||||
hls-hlint-plugin = dontCheck super.hls-hlint-plugin;
|
||||
}
|
||||
|
|
111
pkgs/development/haskell-modules/hackage-packages.nix
generated
111
pkgs/development/haskell-modules/hackage-packages.nix
generated
|
@ -134292,31 +134292,6 @@ self: {
|
|||
}) {};
|
||||
|
||||
"hiedb" = callPackage
|
||||
({ mkDerivation, algebraic-graphs, ansi-terminal, array, base
|
||||
, bytestring, containers, directory, extra, filepath, ghc
|
||||
, ghc-paths, hie-compat, hspec, lucid, mtl, optparse-applicative
|
||||
, process, sqlite-simple, temporary, terminal-size, text
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "hiedb";
|
||||
version = "0.4.0.0";
|
||||
sha256 = "1frcl9mxmn97qc97l3kw21ksapyndn6jq7yfxxrr0fvzn7jji7wv";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
algebraic-graphs ansi-terminal array base bytestring containers
|
||||
directory extra filepath ghc hie-compat lucid mtl
|
||||
optparse-applicative sqlite-simple terminal-size text
|
||||
];
|
||||
executableHaskellDepends = [ base ghc-paths ];
|
||||
testHaskellDepends = [
|
||||
base directory filepath ghc ghc-paths hspec process temporary
|
||||
];
|
||||
description = "Generates a references DB from .hie files";
|
||||
license = lib.licenses.bsd3;
|
||||
}) {};
|
||||
|
||||
"hiedb_0_4_1_0" = callPackage
|
||||
({ mkDerivation, algebraic-graphs, ansi-terminal, array, base
|
||||
, bytestring, containers, directory, extra, filepath, ghc
|
||||
, ghc-paths, hie-compat, hspec, lucid, mtl, optparse-applicative
|
||||
|
@ -134339,7 +134314,6 @@ self: {
|
|||
];
|
||||
description = "Generates a references DB from .hie files";
|
||||
license = lib.licenses.bsd3;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}) {};
|
||||
|
||||
"hieraclus" = callPackage
|
||||
|
@ -176741,39 +176715,6 @@ self: {
|
|||
license = lib.licenses.mit;
|
||||
}) {};
|
||||
|
||||
"lsp_1_2_0_1" = callPackage
|
||||
({ mkDerivation, aeson, async, attoparsec, base, bytestring
|
||||
, containers, data-default, dependent-map, exceptions, filepath
|
||||
, hashable, hslogger, hspec, hspec-discover, lens, lsp-types, mtl
|
||||
, network-uri, QuickCheck, quickcheck-instances, random
|
||||
, rope-utf16-splay, scientific, sorted-list, stm, text, time
|
||||
, transformers, unliftio-core, unordered-containers, uuid
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "lsp";
|
||||
version = "1.2.0.1";
|
||||
sha256 = "1bdgbxakdyhkrddj58f0al2wrx1mckp6hia7hk2wqjix20my8v49";
|
||||
revision = "1";
|
||||
editedCabalFile = "193y4b3l6agm83ng2c0ngvd0j9a71q237g9i5v57p502lhzfaag2";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
libraryHaskellDepends = [
|
||||
aeson async attoparsec base bytestring containers data-default
|
||||
dependent-map exceptions hashable hslogger lens lsp-types mtl
|
||||
network-uri random scientific sorted-list stm text time
|
||||
transformers unliftio-core unordered-containers uuid
|
||||
];
|
||||
testHaskellDepends = [
|
||||
aeson base containers filepath hspec lens network-uri QuickCheck
|
||||
quickcheck-instances rope-utf16-splay sorted-list text
|
||||
unordered-containers
|
||||
];
|
||||
testToolDepends = [ hspec-discover ];
|
||||
description = "Haskell library for the Microsoft Language Server Protocol";
|
||||
license = lib.licenses.mit;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}) {};
|
||||
|
||||
"lsp_1_4_0_0" = callPackage
|
||||
({ mkDerivation, aeson, async, attoparsec, base, bytestring
|
||||
, containers, data-default, exceptions, filepath, hashable
|
||||
|
@ -176832,34 +176773,6 @@ self: {
|
|||
license = lib.licenses.bsd3;
|
||||
}) {};
|
||||
|
||||
"lsp-test_0_14_0_1" = callPackage
|
||||
({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
|
||||
, bytestring, conduit, conduit-parse, containers, data-default
|
||||
, Diff, directory, extra, filepath, Glob, hspec, lens, lsp
|
||||
, lsp-types, mtl, parser-combinators, process, some, text, time
|
||||
, transformers, unix, unliftio, unordered-containers
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "lsp-test";
|
||||
version = "0.14.0.1";
|
||||
sha256 = "0fr1812dnzv9hljb77khspaz666wqr6m1gj963v0z2j6xgvw2ipy";
|
||||
libraryHaskellDepends = [
|
||||
aeson aeson-pretty ansi-terminal async base bytestring conduit
|
||||
conduit-parse containers data-default Diff directory filepath Glob
|
||||
lens lsp-types mtl parser-combinators process some text time
|
||||
transformers unix unordered-containers
|
||||
];
|
||||
testHaskellDepends = [
|
||||
aeson async base data-default directory filepath hspec lens lsp mtl
|
||||
parser-combinators process text unliftio unordered-containers
|
||||
];
|
||||
testToolDepends = [ lsp ];
|
||||
benchmarkHaskellDepends = [ base extra lsp process ];
|
||||
description = "Functional test framework for LSP servers";
|
||||
license = lib.licenses.bsd3;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}) {};
|
||||
|
||||
"lsp-test_0_14_0_2" = callPackage
|
||||
({ mkDerivation, aeson, aeson-pretty, ansi-terminal, async, base
|
||||
, bytestring, conduit, conduit-parse, containers, data-default
|
||||
|
@ -176911,30 +176824,6 @@ self: {
|
|||
license = lib.licenses.mit;
|
||||
}) {};
|
||||
|
||||
"lsp-types_1_3_0_1" = callPackage
|
||||
({ mkDerivation, aeson, base, binary, bytestring, containers
|
||||
, data-default, deepseq, dependent-sum, dependent-sum-template
|
||||
, Diff, directory, dlist, filepath, hashable, hslogger, lens, mtl
|
||||
, network-uri, rope-utf16-splay, scientific, some, template-haskell
|
||||
, temporary, text, unordered-containers
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "lsp-types";
|
||||
version = "1.3.0.1";
|
||||
sha256 = "05zgd99y7xnxnydisq5x24n1af2isar172p247hb5q0mp12hdd3z";
|
||||
revision = "1";
|
||||
editedCabalFile = "031b69fxi8m4fcwwgqb7cf4k806ikkmjqnn3wv6bn3sny1hn5gg7";
|
||||
libraryHaskellDepends = [
|
||||
aeson base binary bytestring containers data-default deepseq
|
||||
dependent-sum dependent-sum-template Diff directory dlist filepath
|
||||
hashable hslogger lens mtl network-uri rope-utf16-splay scientific
|
||||
some template-haskell temporary text unordered-containers
|
||||
];
|
||||
description = "Haskell library for the Microsoft Language Server Protocol, data types";
|
||||
license = lib.licenses.mit;
|
||||
hydraPlatforms = lib.platforms.none;
|
||||
}) {};
|
||||
|
||||
"lsp-types_1_4_0_1" = callPackage
|
||||
({ mkDerivation, aeson, base, binary, bytestring, containers
|
||||
, data-default, deepseq, Diff, directory, dlist, filepath, hashable
|
||||
|
|
Loading…
Reference in a new issue