Merge pull request #90032 from NixOS/haskell-updates
Update Haskell package set to LTS 16.1 (plus other fixes)
This commit is contained in:
commit
a2e18d7f8f
@ -1,6 +1,6 @@
|
||||
{ fetchurl }:
|
||||
|
||||
fetchurl {
|
||||
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/e8df5568f80e6230e29c2381e842db35fe11cd71.tar.gz";
|
||||
sha256 = "1fz4iax88pmlqpb4zp3l6mb6bmkzzha0q6mm3xasabh5yl83dbhy";
|
||||
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/65a280e01c4f90470959f0423a5450d2831f845a.tar.gz";
|
||||
sha256 = "0m5zg7hswch702gprlfsjmp2xk6hs828c1489d1c85w9kxiyqkdq";
|
||||
}
|
||||
|
@ -26,6 +26,12 @@ self: super: {
|
||||
# successfully with recent versions of the compiler).
|
||||
bin-package-db = null;
|
||||
|
||||
# waiting for release: https://github.com/jwiegley/c2hsc/issues/41
|
||||
c2hsc = appendPatch super.c2hsc (pkgs.fetchpatch {
|
||||
url = "https://github.com/jwiegley/c2hsc/commit/490ecab202e0de7fc995eedf744ad3cb408b53cc.patch";
|
||||
sha256 = "1c7knpvxr7p8c159jkyk6w29653z5yzgjjqj11130bbb8mk9qhq7";
|
||||
});
|
||||
|
||||
# Some Hackage packages reference this attribute, which exists only in the
|
||||
# GHCJS package set. We provide a dummy version here to fix potential
|
||||
# evaluation errors.
|
||||
@ -346,7 +352,6 @@ self: super: {
|
||||
pwstore-cli = dontCheck super.pwstore-cli;
|
||||
quantities = dontCheck super.quantities;
|
||||
redis-io = dontCheck super.redis-io;
|
||||
reflex = dontCheck super.reflex; # test suite uses hlint, which has different haskell-src-exts version
|
||||
rethinkdb = dontCheck super.rethinkdb;
|
||||
Rlang-QQ = dontCheck super.Rlang-QQ;
|
||||
safecopy = dontCheck super.safecopy;
|
||||
@ -1027,6 +1032,7 @@ self: super: {
|
||||
# 2020-06-04: HACK: dontCheck - The test suite attempts to use the network.
|
||||
# Should be solved when: https://github.com/dhall-lang/dhall-haskell/issues/1837
|
||||
dhall = generateOptparseApplicativeCompletion "dhall" (dontCheck super.dhall);
|
||||
dhall_1_30_0 = dontCheck super.dhall_1_30_0;
|
||||
|
||||
dhall-json =
|
||||
generateOptparseApplicativeCompletions ["dhall-to-json" "dhall-to-yaml"]
|
||||
@ -1045,8 +1051,7 @@ self: super: {
|
||||
|
||||
# Generate shell completion.
|
||||
cabal2nix = generateOptparseApplicativeCompletion "cabal2nix" super.cabal2nix;
|
||||
stack = generateOptparseApplicativeCompletion "stack" (super.stack.overrideScope (self: super: { http-download = self.http-download_0_2_0_0; }));
|
||||
http-download_0_2_0_0 = dontCheck super.http-download_0_2_0_0;
|
||||
stack = generateOptparseApplicativeCompletion "stack" super.stack;
|
||||
|
||||
# musl fixes
|
||||
# dontCheck: use of non-standard strptime "%s" which musl doesn't support; only used in test
|
||||
@ -1115,8 +1120,12 @@ self: super: {
|
||||
# });
|
||||
libnix = dontCheck super.libnix;
|
||||
|
||||
# Jailbreak: https://github.com/jaor/xmobar/issues/463
|
||||
# The test suite tries to mess with ALSA, which doesn't work in the build sandbox.
|
||||
xmobar = dontCheck super.xmobar;
|
||||
xmobar = appendPatch (dontCheck super.xmobar) (pkgs.fetchpatch {
|
||||
url = "https://github.com/jaor/xmobar/pull/464.patch";
|
||||
sha256 = "0y1dd878yzy1cx0cjj0ijd3dmywr7jdmk68vxdjimxzblrdw1al6";
|
||||
});
|
||||
|
||||
# https://github.com/mgajda/json-autotype/issues/25
|
||||
json-autotype = dontCheck super.json-autotype;
|
||||
@ -1244,9 +1253,6 @@ self: super: {
|
||||
];
|
||||
});
|
||||
|
||||
# Needs the corresponding version of haskell-src-exts.
|
||||
haskell-src-exts-simple = super.haskell-src-exts-simple.override { haskell-src-exts = self.haskell-src-exts_1_23_1; };
|
||||
|
||||
# https://github.com/Daniel-Diaz/HaTeX/issues/144
|
||||
HaTeX = dontCheck super.HaTeX;
|
||||
|
||||
@ -1411,11 +1417,6 @@ self: super: {
|
||||
# haskell-ci-0.8 needs cabal-install-parsers ==0.1, but we have 0.2.
|
||||
haskell-ci = doJailbreak super.haskell-ci;
|
||||
|
||||
# Needs the latest version of vty.
|
||||
matterhorn = super.matterhorn.overrideScope (self: super: {
|
||||
vty = self.vty_5_28_2;
|
||||
});
|
||||
|
||||
# Test suite requires database
|
||||
persistent-mysql = dontCheck super.persistent-mysql;
|
||||
persistent-postgresql = dontCheck super.persistent-postgresql;
|
||||
@ -1440,16 +1441,11 @@ self: super: {
|
||||
sha256 = "097wqn8hxsr50b9mhndg5pjim5jma2ym4ylpibakmmb5m98n17zp";
|
||||
});
|
||||
|
||||
# Needs a version that's newer than LTS-15.x provides.
|
||||
weeder = super.weeder.override { generic-lens = self.generic-lens_2_0_0_0; };
|
||||
|
||||
# polysemy-plugin 0.2.5.0 has constraint ghc-tcplugins-extra (==0.3.*)
|
||||
# This upstream issue is relevant:
|
||||
# https://github.com/polysemy-research/polysemy/issues/322
|
||||
polysemy-plugin = super.polysemy-plugin.override {
|
||||
# polysemy-plugin 0.2.5.0 has constraint ghc-tcplugins-extra (==0.3.*)
|
||||
# This upstream issue is relevant:
|
||||
# https://github.com/polysemy-research/polysemy/issues/322
|
||||
ghc-tcplugins-extra = self.ghc-tcplugins-extra_0_3_2;
|
||||
# version of Polysemy the plugin goes with
|
||||
polysemy = self.polysemy_1_3_0_0;
|
||||
};
|
||||
|
||||
# Test suite requires running a database server. Testing is done upstream.
|
||||
@ -1465,38 +1461,9 @@ self: super: {
|
||||
sha256 = "0xbfhzhzg94b4r5qy5dg1c40liswwpqarrc2chcwgfbfnrmwkfc2";
|
||||
});
|
||||
|
||||
# Depends on selective >= 0.4, but the default of selective is 0.3
|
||||
headed-megaparsec = super.headed-megaparsec.override {
|
||||
selective = self.selective_0_4_1;
|
||||
};
|
||||
|
||||
# Needed for ghcide
|
||||
haskell-lsp_0_22_0_0 = super.haskell-lsp_0_22_0_0.override {
|
||||
haskell-lsp-types = self.haskell-lsp-types_0_22_0_0;
|
||||
};
|
||||
|
||||
# this will probably need to get updated with every ghcide update,
|
||||
# we need an override because ghcide is tracking haskell-lsp closely.
|
||||
ghcide = dontCheck (super.ghcide.override rec {
|
||||
haskell-lsp-types = self.haskell-lsp-types_0_22_0_0;
|
||||
haskell-lsp = self.haskell-lsp_0_22_0_0;
|
||||
hie-bios = self.hie-bios_0_5_0;
|
||||
ghc-check = self.ghc-check_0_3_0_1;
|
||||
});
|
||||
|
||||
# stackage right now is not new enough for hlint-3.0
|
||||
ghc-lib-parser-ex_8_10_0_13 = super.ghc-lib-parser-ex_8_10_0_13.override {
|
||||
ghc-lib-parser = self.ghc-lib-parser_8_10_1_20200523;
|
||||
};
|
||||
|
||||
hlint = super.hlint.override {
|
||||
ghc-lib-parser = self.ghc-lib-parser_8_10_1_20200523;
|
||||
ghc-lib-parser-ex = self.ghc-lib-parser-ex_8_10_0_13;
|
||||
extra = self.extra_1_7_3;
|
||||
filepattern = self.filepattern.override {
|
||||
extra = self.extra_1_7_3;
|
||||
};
|
||||
};
|
||||
ghcide = dontCheck (super.ghcide.override { ghc-check = self.ghc-check_0_3_0_1; });
|
||||
|
||||
# hasn‘t bumped upper bounds
|
||||
# upstream: https://github.com/obsidiansystems/which/pull/6
|
||||
@ -1506,4 +1473,88 @@ self: super: {
|
||||
# through $PATH but they aren't in $PATH
|
||||
dhall-lsp-server = dontCheck super.dhall-lsp-server;
|
||||
|
||||
# https://github.com/ocharles/weeder/issues/15
|
||||
weeder = doJailbreak super.weeder;
|
||||
|
||||
# Requested version bump on upstream https://github.com/obsidiansystems/constraints-extras/issues/32
|
||||
constraints-extras = doJailbreak super.constraints-extras;
|
||||
# Requested version bump on upstream https://github.com/srid/rib/issues/160
|
||||
rib = doJailbreak (super.rib.override {
|
||||
dhall = self.dhall_1_30_0;
|
||||
});
|
||||
# Necessary for neuron 0.4.0
|
||||
neuron = super.neuron.override {
|
||||
dhall = self.dhall_1_30_0;
|
||||
};
|
||||
|
||||
# Necessary for stack
|
||||
# x509-validation test suite hangs: upstream https://github.com/vincenthz/hs-certificate/issues/120
|
||||
# tls test suite fails: upstream https://github.com/vincenthz/hs-tls/issues/434
|
||||
x509-validation = dontCheck super.x509-validation;
|
||||
tls = dontCheck super.tls;
|
||||
|
||||
# Upstream PR: https://github.com/bgamari/monoidal-containers/pull/62
|
||||
# Bump these version bound
|
||||
monoidal-containers = appendPatch super.monoidal-containers (pkgs.fetchpatch {
|
||||
url = "https://github.com/bgamari/monoidal-containers/pull/62/commits/715093b22a015398a1390f636be6f39a0de83254.patch";
|
||||
sha256="1lfxvwp8g55ljxvj50acsb0wjhrvp2hvir8y0j5pfjkd1kq628ng";
|
||||
});
|
||||
|
||||
patch = appendPatches super.patch [
|
||||
# Upstream PR: https://github.com/reflex-frp/patch/pull/20
|
||||
# Makes tests work with hlint 3
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/reflex-frp/patch/pull/20/commits/3ed23a4e4049ee17e64a1a5bbebf1990cdbe033a.patch";
|
||||
sha256 ="1hfa980wln8kzbqw1lr8ddszgcibw25xf12ki2jb9xkl464aynzf";
|
||||
})
|
||||
# Upstream PR: https://github.com/reflex-frp/patch/pull/17
|
||||
# Bumps version dependencies
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/reflex-frp/patch/pull/17/commits/a191ed9ded708ed7ff0cf53ad6dafaf54db5b95a.patch";
|
||||
sha256 ="1x9w5fimhk3a0l2aa5z91nqaa6s2irz1775iidd0191m6w25vszp";
|
||||
})
|
||||
];
|
||||
|
||||
reflex = appendPatches super.reflex [
|
||||
# Upstream PR: https://github.com/reflex-frp/reflex/pull/434
|
||||
# Bump version bounds
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/reflex-frp/reflex/pull/434/commits/e6104bdfd7f664f524b6765275490722e376df4d.patch";
|
||||
sha256 ="1awp5p4640cnhfd50dplsvp0kzy6h8r0hpbw1s40blni74r3dhzr";
|
||||
})
|
||||
# Upstream PR: https://github.com/reflex-frp/reflex/pull/436
|
||||
# Fix build with newest dependent-map version
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/reflex-frp/reflex/pull/436/commits/dc3bf44d822d70594e3c474fe3869261776c3554.patch";
|
||||
sha256 ="0rbjfj9b8p6zkvd5j4pak5kpgard6cyfvzk750s4xwpc1v84iiqd";
|
||||
})
|
||||
# Upstream PR: https://github.com/reflex-frp/reflex/pull/437
|
||||
# Fix tests with newer dep versions
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/reflex-frp/reflex/pull/437/commits/87c74a1b9d9098eae8a56148c59ed4963a5232c2.patch";
|
||||
sha256 ="0qhjjgd6n4fms1hpbblny78c95bfh74izhx9dvrdlnhz6q7xlm9q";
|
||||
})
|
||||
];
|
||||
|
||||
# Tests disabled and broken override needed because of missing lib chrome-test-utils: https://github.com/reflex-frp/reflex-dom/issues/392
|
||||
# Tests disabled because of very old dep: https://github.com/reflex-frp/reflex-dom/issues/393
|
||||
reflex-dom-core = unmarkBroken (dontCheck (appendPatches super.reflex-dom-core [
|
||||
# Upstream PR: https://github.com/reflex-frp/reflex-dom/pull/388
|
||||
# Fix upper bounds
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/reflex-frp/reflex-dom/pull/388/commits/5ef04d8e478f410d2c63603b84af052c9273a533.patch";
|
||||
sha256 ="0d0b819yh8mqw8ih5asdi9qcca2kmggfsi8gf22akfw1n7xvmavi";
|
||||
stripLen = 2;
|
||||
extraPrefix = "";
|
||||
})
|
||||
# Upstream PR: https://github.com/reflex-frp/reflex-dom/pull/394
|
||||
# Bump dependent-map
|
||||
(pkgs.fetchpatch {
|
||||
url = "https://github.com/reflex-frp/reflex-dom/pull/394/commits/695bd17d5dcdb1bf321ee8858670731637f651db.patch";
|
||||
sha256 ="0llky3i37rakgsw9vqaqmwryv7s91w8ph8xjkh83nxjs14p5zfyk";
|
||||
stripLen = 2;
|
||||
extraPrefix = "";
|
||||
})
|
||||
]));
|
||||
|
||||
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super
|
||||
|
@ -62,6 +62,7 @@ self: super: {
|
||||
|
||||
# Jailbreak to fix the build.
|
||||
async = doJailbreak super.async;
|
||||
base-noprelude = doJailbreak super.base-noprelude;
|
||||
ChasingBottoms = doJailbreak super.ChasingBottoms;
|
||||
ed25519 = doJailbreak super.ed25519;
|
||||
email-validate = doJailbreak super.email-validate; # https://github.com/Porges/email-validate-hs/issues/51
|
||||
@ -84,8 +85,6 @@ self: super: {
|
||||
zlib = doJailbreak super.zlib;
|
||||
|
||||
# Use the latest version to fix the build.
|
||||
dhall = self.dhall_1_32_0;
|
||||
ghc-lib-parser-ex = self.ghc-lib-parser-ex_8_10_0_4;
|
||||
lens = self.lens_4_19_2;
|
||||
optics-core = self.optics-core_0_3;
|
||||
repline = self.repline_0_3_0_0;
|
||||
@ -97,7 +96,7 @@ self: super: {
|
||||
# multiple verions of `ghc-lib-parser(-ex)` available, and the default ones
|
||||
# are older ones, those older ones will complain. Because we have a newer
|
||||
# GHC, we can just set the dependency to `null` as it is not used.
|
||||
ghc-lib-parser-ex_8_10_0_4 = super.ghc-lib-parser-ex_8_10_0_4.override { ghc-lib-parser = null; };
|
||||
ghc-lib-parser-ex = super.ghc-lib-parser-ex.override { ghc-lib-parser = null; };
|
||||
|
||||
# Jailbreak to fix the build.
|
||||
aeson-diff = doJailbreak super.aeson-diff;
|
||||
@ -111,8 +110,6 @@ self: super: {
|
||||
serialise = doJailbreak super.serialise;
|
||||
setlocale = doJailbreak super.setlocale;
|
||||
shellmet = doJailbreak super.shellmet;
|
||||
weeder = doJailbreak super.weeder; # https://github.com/ocharles/weeder/issues/15
|
||||
xmobar = doJailbreak super.xmobar;
|
||||
|
||||
# The shipped Setup.hs file is broken.
|
||||
csv = overrideCabal super.csv (drv: { preCompileBuildDriver = "rm Setup.hs"; });
|
||||
|
@ -74,7 +74,6 @@ self: super: {
|
||||
# TODO: remove when upstream accepts https://github.com/snapframework/io-streams-haproxy/pull/17
|
||||
io-streams-haproxy = doJailbreak super.io-streams-haproxy; # base >=4.5 && <4.13
|
||||
snap-server = doJailbreak super.snap-server;
|
||||
xmobar = doJailbreak super.xmobar;
|
||||
exact-pi = doJailbreak super.exact-pi;
|
||||
time-compat = doJailbreak super.time-compat;
|
||||
http-media = doJailbreak super.http-media;
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -639,17 +639,14 @@ self: super: builtins.intersectAttrs super {
|
||||
spago =
|
||||
let
|
||||
# Spago needs a small patch to work with the latest versions of rio.
|
||||
# https://github.com/purescript/spago/pull/616
|
||||
# This can probably be removed when a version after spago-0.15.1 is released.
|
||||
# https://github.com/purescript/spago/pull/647
|
||||
spagoWithPatches = appendPatch super.spago (pkgs.fetchpatch {
|
||||
url = "https://github.com/purescript/spago/pull/616/commits/95b5fa0f1d3bfb07972d1ef5004b8bee8a070667.patch";
|
||||
sha256 = "0v3890lwhddfrq9mhbq92962pkxra8kwbin97wg3s0b02dk65ysc";
|
||||
url = "https://github.com/purescript/spago/pull/647/commits/917ee541a966db74f0f5d11f2f86df0030c35dd7.patch";
|
||||
sha256 = "1nspqgcjk6z90cl9zhard0rn2q979kplcqz72x8xv5mh57zabk0w";
|
||||
});
|
||||
|
||||
# Spago basically compiles with LTS-14, but it requires a newer version
|
||||
# of directory. This is to work around a bug only present on windows, so
|
||||
# we can safely jailbreak spago and use the older directory package from
|
||||
# LTS-14.
|
||||
# spago requires an older version of megaparsec, but it appears to work
|
||||
# fine with newer versions.
|
||||
spagoWithOverrides = doJailbreak spagoWithPatches;
|
||||
|
||||
# This defines the version of the purescript-docs-search release we are using.
|
||||
@ -755,18 +752,6 @@ self: super: builtins.intersectAttrs super {
|
||||
'';
|
||||
});
|
||||
|
||||
postgresql-syntax = super.postgresql-syntax.override {
|
||||
rerebase = self.rerebase_1_6_1;
|
||||
};
|
||||
|
||||
rerebase_1_6_1 = super.rerebase_1_6_1.override {
|
||||
rebase = self.rebase_1_6_1;
|
||||
};
|
||||
|
||||
rebase_1_6_1 = super.rebase_1_6_1.override {
|
||||
selective = super.selective_0_4_1;
|
||||
};
|
||||
|
||||
# Fix compilation of Setup.hs by removing the module declaration.
|
||||
# See: https://github.com/tippenein/guid/issues/1
|
||||
guid = overrideCabal (super.guid) (drv: {
|
||||
@ -777,4 +762,10 @@ self: super: builtins.intersectAttrs super {
|
||||
# Tests disabled as recommended at https://github.com/luke-clifton/shh/issues/39
|
||||
shh = dontCheck super.shh;
|
||||
|
||||
# The test suites fail because there's no PostgreSQL database running in our
|
||||
# build sandbox.
|
||||
hasql-queue = dontCheck super.hasql-queue;
|
||||
postgresql-libpq-notify = dontCheck super.postgresql-libpq-notify;
|
||||
postgresql-pure = dontCheck super.postgresql-pure;
|
||||
|
||||
}
|
||||
|
6347
pkgs/development/haskell-modules/hackage-packages.nix
generated
6347
pkgs/development/haskell-modules/hackage-packages.nix
generated
File diff suppressed because it is too large
Load Diff
@ -11,11 +11,11 @@
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "spago";
|
||||
version = "0.15.1";
|
||||
version = "0.15.3";
|
||||
src = fetchgit {
|
||||
url = "https://github.com/purescript/spago.git";
|
||||
sha256 = "09ypbm03ap8xfhq803ra3cc01dxcavckn7nis6hi80dk2xxlhc3d";
|
||||
rev = "d5d206ff0f5c686f8b609fb4bc2e866959cc0144";
|
||||
sha256 = "0spc7r531kmh9magaxzy4jls3bzfazwf8sq3qzk6f292d7ky6n8y";
|
||||
rev = "da6d91c19b23f06f3ede793f78599a6589c9e7cd";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
isLibrary = true;
|
||||
|
@ -15774,9 +15774,17 @@ in
|
||||
|
||||
hashi-ui = callPackage ../servers/hashi-ui {};
|
||||
|
||||
/* This package duplicates a lot of functionality from haskellPackages
|
||||
instead of using the packages we maintain there. Now, a recent update to
|
||||
haskellPackages causes these tools to fail evaluation, and I have been
|
||||
unable to mark them as "broken" in a way that ofBorg bot recognizes. Since
|
||||
I don't want to merge code into master that generates evaluation errors, I
|
||||
have no other idea but to comment them out entirely.
|
||||
|
||||
inherit (callPackage ../servers/hasura { })
|
||||
hasura-cli
|
||||
hasura-graphql-engine;
|
||||
*/
|
||||
|
||||
heapster = callPackage ../servers/monitoring/heapster { };
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user