Merge pull request #157583 from NixOS/haskell-updates

haskellPackages: update stackage and hackage
This commit is contained in:
maralorn 2022-02-06 23:56:08 +01:00 committed by GitHub
commit 85c69cb188
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 1195 additions and 627 deletions

View File

@ -1,6 +1,6 @@
{
"commit": "b233c8c0ee187788a69d929293a953cf89ffc012",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/b233c8c0ee187788a69d929293a953cf89ffc012.tar.gz",
"sha256": "00mi9jxjbd9mk2pghj1ks9mjy9i0x50kcgi28iajq0kvxc97c9sp",
"msg": "Update from Hackage at 2022-01-27T16:52:24Z"
"commit": "72a59574747346b3f9aa2cd91cb7469d4e168b53",
"url": "https://github.com/commercialhaskell/all-cabal-hashes/archive/72a59574747346b3f9aa2cd91cb7469d4e168b53.tar.gz",
"sha256": "0nspncjgh8lgr15zx8ss3fp289jl7gg21wchj0k821y3cz057ry3",
"msg": "Update from Hackage at 2022-01-31T19:23:21Z"
}

View File

@ -96,6 +96,9 @@ self: super: {
hls-call-hierarchy-plugin = dontCheck super.hls-call-hierarchy-plugin;
hls-module-name-plugin = dontCheck super.hls-module-name-plugin;
hls-brittany-plugin = dontCheck super.hls-brittany-plugin;
hls-qualify-imported-names-plugin = dontCheck super.hls-qualify-imported-names-plugin;
hls-class-plugin = dontCheck super.hls-class-plugin;
hls-selection-range-plugin = dontCheck super.hls-selection-range-plugin;
# Similar RTS issue in test suite:
# rts/linker/elf_reloc_aarch64.c:98: encodeAddendAarch64: Assertion `isInt64(21+12, addend)' failed.

View File

@ -77,7 +77,7 @@ self: super: {
name = "git-annex-${super.git-annex.version}-src";
url = "git://git-annex.branchable.com/";
rev = "refs/tags/" + super.git-annex.version;
sha256 = "14zzs4j9dpc6rdnna80m0vi7s1awlz0mrmwfh8l4zvglx75avpw5";
sha256 = "11idvicisp4wnw15lk7f9fs0kqpssngs1j8f98050f3jrqsccj0j";
# delete android and Android directories which cause issues on
# darwin (case insensitive directory). Since we don't need them
# during the build process, we can delete it to prevent a hash
@ -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;
@ -2101,7 +2101,7 @@ self: super: {
# Needs brick > 0.64
nix-tree = super.nix-tree.override {
brick = self.brick_0_66_1;
brick = self.brick_0_67;
};
# build newer version for `pkgs.shellcheck`

View File

@ -60,6 +60,7 @@ self: super: {
lukko = doJailbreak super.lukko;
parallel = doJailbreak super.parallel;
primitive = doJailbreak (dontCheck super.primitive);
primitive-extras = doDistribute (self.primitive-extras_0_10_1_4);
regex-posix = doJailbreak super.regex-posix;
resolv = doJailbreak super.resolv;
singleton-bool = doJailbreak super.singleton-bool;
@ -71,8 +72,8 @@ self: super: {
vector-th-unbox = doJailbreak super.vector-th-unbox;
zlib = doJailbreak super.zlib;
weeder = self.weeder_2_3_0;
generic-lens-core = self.generic-lens-core_2_2_0_0;
generic-lens = self.generic-lens_2_2_0_0;
generic-lens-core = self.generic-lens-core_2_2_1_0;
generic-lens = self.generic-lens_2_2_1_0;
th-desugar = self.th-desugar_1_13;
# 2021-11-08: Fixed in autoapply-0.4.2
autoapply = doJailbreak self.autoapply_0_4_1_1;
@ -83,7 +84,7 @@ self: super: {
});
# Upstream also disables test for GHC 9: https://github.com/kcsongor/generic-lens/pull/130
generic-lens_2_2_0_0 = dontCheck super.generic-lens_2_2_0_0;
generic-lens_2_2_1_0 = dontCheck super.generic-lens_2_2_1_0;
# Apply patches from head.hackage.
alex = appendPatch (pkgs.fetchpatch {
@ -149,23 +150,14 @@ self: super: {
# Fixes a bug triggered on GHC 9.0.1
text-short = self.text-short_0_1_5;
# 2021-09-18: The following plugins dont work yet on ghc9.
haskell-language-server = appendConfigureFlags [
"-f-tactic"
"-f-splice"
"-f-refineimports"
"-f-class"
fourmolu = doJailbreak self.fourmolu_0_4_0_0;
"-f-fourmolu"
# 2022-02-05: The following plugins dont work yet on ghc9.
# Compare: https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html
haskell-language-server = appendConfigureFlags [
"-f-brittany"
"-f-stylishhaskell"
] (super.haskell-language-server.override {
hls-tactics-plugin = null; # No upstream support, generic-lens-core fail
hls-splice-plugin = null; # No upstream support in hls 1.4.0, should be fixed in 1.5
hls-refine-imports-plugin = null; # same issue es splice-plugin
hls-class-plugin = null; # No upstream support
hls-fourmolu-plugin = null; # No upstream support, needs new fourmolu release
hls-stylish-haskell-plugin = null; # No upstream support
hls-brittany-plugin = null; # Dependencies don't build with 9.0.1
});

View File

@ -112,6 +112,7 @@ self: super: {
libraryHaskellDepends = [
self.fail
self.ordered-containers
self.data-default
] ++ drv.libraryHaskellDepends or [];
}) super.ghc-exactprint;
ghc-lib = self.ghc-lib_9_2_1_20220109;
@ -137,7 +138,7 @@ self: super: {
quickcheck-instances = super.quickcheck-instances_0_3_27;
regex-posix = doJailbreak super.regex-posix;
resolv = doJailbreak super.resolv;
retrie = doDistribute self.retrie_1_2_0_1;
retrie = doDistribute (dontCheck self.retrie_1_2_0_1);
semialign = super.semialign_1_2_0_1;
singleton-bool = doJailbreak super.singleton-bool;
scientific = doJailbreak super.scientific;
@ -188,11 +189,6 @@ self: super: {
sha256 = "0w4y3v69nd3yafpml4gr23l94bdhbmx8xky48a59lckmz5x9fgxv";
}) (doJailbreak super.language-haskell-extract);
haskell-src-meta = appendPatch (pkgs.fetchpatch {
url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/dfd024c9a336c752288ec35879017a43bd7e85a0/patches/haskell-src-meta-0.8.7.patch";
sha256 = "013k8hpxac226j47cdzgdf9a1j91kmm0cvv7n8zwlajbj3y9bzjp";
}) (doJailbreak super.haskell-src-meta);
# Tests depend on `parseTime` which is no longer available
hourglass = dontCheck super.hourglass;
@ -245,4 +241,37 @@ self: super: {
# need bytestring >= 0.11 which is only bundled with GHC >= 9.2
regex-rure = doDistribute (markUnbroken super.regex-rure);
jacinda = doDistribute super.jacinda;
some = doJailbreak super.some;
fourmolu = super.fourmolu_0_5_0_1;
implicit-hie-cradle = doJailbreak super.implicit-hie-cradle;
lucid = doJailbreak super.lucid;
hashtables = doJailbreak super.hashtables;
primitive-extras = super.primitive-extras_0_10_1_4;
hiedb = doJailbreak super.hiedb;
# 2022-02-05: The following plugins dont work yet on ghc9.2.
# Compare: https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html
haskell-language-server = appendConfigureFlags [
"-f-alternateNumberFormat"
"-f-class"
"-f-eval"
"-f-haddockComments"
"-f-hlint"
"-f-retrie"
"-f-splice"
"-f-tactics"
"-f-brittany"
"-f-stylish-haskell"
] (super.haskell-language-server.override {
hls-alternate-number-format-plugin = null;
hls-class-plugin = null;
hls-eval-plugin = null;
hls-haddock-comments-plugin = null;
hls-hlint-plugin = null;
hls-retrie-plugin = null;
hls-splice-plugin = null;
hls-tactics-plugin = null;
hls-brittany-plugin = null;
hls-stylish-haskell-plugin = null;
});
}

View File

@ -830,8 +830,8 @@ broken-packages:
- ContextAlgebra
- context-free-grammar
- context-stack
- contiguous
- contiguous-checked
- contiguous-fft
- continue
- Contract
- control-iso
@ -1133,6 +1133,7 @@ broken-packages:
- doctest-discover-configurator
- doctest-parallel
- doctest-prop
- docusign-base
- docusign-example
- docvim
- doi
@ -2378,6 +2379,7 @@ broken-packages:
- hsns
- hsnsq
- hsntp
- hs-opentelemetry-instrumentation-persistent
- hsoptions
- hsoz
- hsparql
@ -2727,6 +2729,7 @@ broken-packages:
- katydid
- kawaii
- kawhi
- kazura-queue
- kdesrc-build-extra
- kd-tree
- keccak
@ -2999,6 +3002,7 @@ broken-packages:
- lye
- lz4-frame-conduit
- lzip
- lzlib
- lzma-streams
- lzo
- maam
@ -3894,6 +3898,7 @@ broken-packages:
- PrimitiveArray-Pretty
- primitive-atomic
- primitive-checked
- primitive-containers
- primitive-convenience
- primitive-foreign
- primitive-indexed
@ -4199,6 +4204,7 @@ broken-packages:
- riemann
- riff
- ring-buffer
- ring-buffers
- riscv-isa
- Ritt-Wu
- rivers

View File

@ -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,7 @@ 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
- fourmolu == 0.4.* # 2022-02-05: for HLS with GHC 9.0.2
package-maintainers:
abbradar:

View File

@ -474,10 +474,8 @@ dont-distribute-packages:
- atomic-primops-foreign
- atp
- attoparsec-enumerator
- attoparsec-ip
- attoparsec-iteratee
- attoparsec-text-enumerator
- attoparsec-uri
- atuin
- audiovisual
- aura
@ -637,7 +635,6 @@ dont-distribute-packages:
- bv-sized-lens
- bytehash
- bytelog
- bytesmith
- bytestring-read
- c0check
- cabal-bounds
@ -716,7 +713,6 @@ dont-distribute-packages:
- chr-core
- chr-lang
- chromatin
- chronos_1_1_3
- chu2
- chuchu
- chunks
@ -729,7 +725,9 @@ dont-distribute-packages:
- claferwiki
- clash
- clash-ghc
- clash-ghc_1_4_7
- clash-lib
- clash-lib_1_4_7
- clash-multisignal
- clash-prelude-quickcheck
- clash-shake
@ -815,7 +813,6 @@ dont-distribute-packages:
- consumers
- container
- containers-accelerate
- contiguous-fft
- continuum
- continuum-client
- control
@ -838,6 +835,7 @@ dont-distribute-packages:
- coroutine-iteratee
- couch-simple
- couchdb-enumerator
- cpkg
- cprng-aes-effect
- cql-io-tinylog
- cqrs-example
@ -1196,7 +1194,7 @@ dont-distribute-packages:
- funnyprint
- funsat
- fused-effects-squeal
- futhark_0_21_4
- futhark_0_21_5
- fwgl-glfw
- fwgl-javascript
- fxpak
@ -1627,6 +1625,7 @@ dont-distribute-packages:
- hreader-lens
- hreq-client
- hreq-conduit
- hriemann
- hs-blake2
- hs-brotli
- hs-duktape
@ -1789,7 +1788,6 @@ dont-distribute-packages:
- invertible-hlist
- invertible-hxt
- ion
- ip
- ipatch
- ipc
- ipld-cid
@ -2094,7 +2092,6 @@ dont-distribute-packages:
- markdown-pap
- markdown2svg
- markov-processes
- markup
- marmalade-upload
- marquise
- marvin
@ -2178,7 +2175,6 @@ dont-distribute-packages:
- mpretty
- mprover
- mps
- mptcp
- mptcpanalyzer
- msgpack-aeson
- msgpack-idl
@ -2314,7 +2310,7 @@ dont-distribute-packages:
- pairing
- panda
- pandoc-japanese-filters
- pandoc_2_17_0_1
- pandoc_2_17_1_1
- papa
- papa-base
- papa-base-implement
@ -2437,8 +2433,6 @@ dont-distribute-packages:
- prednote-test
- presto-hdbc
- preview
- primitive-containers
- primitive-sort
- primula-board
- primula-bot
- proc
@ -2631,7 +2625,6 @@ dont-distribute-packages:
- ribosome-root
- ribosome-test
- ridley-extras
- ring-buffers
- rio-process-pool
- riot
- ripple
@ -2705,7 +2698,6 @@ dont-distribute-packages:
- scholdoc
- scholdoc-citeproc
- scholdoc-texmath
- scientific-notation
- scion
- scion-browser
- scope
@ -2808,7 +2800,6 @@ dont-distribute-packages:
- smallstring
- smartword
- smcdel
- smith
- smith-cli
- smith-client
- smtlib2-debug
@ -3148,8 +3139,6 @@ dont-distribute-packages:
- urembed
- uri-enumerator
- uri-enumerator-file
- url-bytes
- urlpath
- usb
- usb-enumerator
- usb-hid
@ -3161,7 +3150,6 @@ dont-distribute-packages:
- uu-cco-examples
- uu-cco-hut-parsing
- uu-cco-uu-parsinglib
- uuid-bytes
- uuid-crypto
- uvector-algorithms
- v4l2
@ -3209,7 +3197,6 @@ dont-distribute-packages:
- wai-middleware-cache
- wai-middleware-cache-redis
- wai-middleware-consul
- wai-middleware-content-type
- wai-middleware-rollbar
- wai-middleware-route
- wai-session-tokyocabinet
@ -3251,7 +3238,6 @@ dont-distribute-packages:
- wrecker-ui
- wright
- writer-cps-full
- ws
- wss-client
- wtk-gtk
- wu-wei
@ -3279,7 +3265,6 @@ dont-distribute-packages:
- xml-push
- xml-query-xml-conduit
- xml-query-xml-types
- xml-syntax
- xml-tydom-conduit
- xml2x
- xmltv

View File

@ -209,16 +209,6 @@ self: super: builtins.intersectAttrs super {
# Help the test suite find system timezone data.
tz = overrideCabal (drv: {
preConfigure = "export TZDIR=${pkgs.tzdata}/share/zoneinfo";
patches = [
# Fix tests failing with libSystem, musl etc. due to a lack of
# support for glibc's non-POSIX TZDIR environment variable.
# https://github.com/nilcons/haskell-tz/pull/29
(pkgs.fetchpatch {
name = "support-non-glibc-tzset.patch";
url = "https://github.com/sternenseemann/haskell-tz/commit/64928f1a50a1a276a718491ae3eeef63abcdb393.patch";
sha256 = "1f53w8k1vpy39hzalyykpvm946ykkarj2714w988jdp4c2c4l4cf";
})
] ++ (drv.patches or []);
}) super.tz;
# Nix-specific workaround
@ -814,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 dont 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 = [
@ -1062,4 +973,35 @@ 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-brittany-plugin
hls-call-hierarchy-plugin
hls-class-plugin
hls-eval-plugin
hls-floskell-plugin
hls-fourmolu-plugin
hls-module-name-plugin
hls-ormolu-plugin
hls-pragmas-plugin
hls-rename-plugin
hls-selection-range-plugin
hls-splice-plugin;
# Tests have file permissions expections that dont work with the nix store.
hls-stylish-haskell-plugin = dontCheck super.hls-stylish-haskell-plugin;
# Flaky tests
hls-hlint-plugin = dontCheck super.hls-hlint-plugin;
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;
}

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,10 @@
{ lib, supportedGhcVersions ? [ "884" "8107" "902" ], stdenv, haskellPackages
, haskell }:
{ lib
, stdenv
, supportedGhcVersions ? [ "884" "8107" "902" ]
++ lib.optionals (!stdenv.hostPlatform.isAarch64) [ "921" ]
, haskellPackages
, haskell
}:
#
# The recommended way to override this package is
#

View File

@ -115,8 +115,8 @@ in {
packages.ghc8107Binary;
inherit (buildPackages.python3Packages) sphinx;
inherit (buildPackages.darwin) autoSignDarwinBinariesHook xattr;
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_9;
llvmPackages = pkgs.llvmPackages_9;
buildTargetLlvmPackages = pkgsBuildTarget.llvmPackages_12;
llvmPackages = pkgs.llvmPackages_12;
};
ghc921 = callPackage ../development/compilers/ghc/9.2.1.nix {
bootPkgs =

View File

@ -311,11 +311,7 @@ let
cabal2nix = released;
cabal2nix-unstable = released;
funcmp = released;
haskell-language-server = [
compilerNames.ghc884
compilerNames.ghc8107
compilerNames.ghc902
];
haskell-language-server = released;
hoogle = released;
hlint = released;
hsdns = released;