haskellPackages: update hackage and stackage#278674
Merged
sternenseemann merged 50 commits intomasterfrom Jan 7, 2024
Merged
Conversation
This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
This commit has been generated by maintainers/scripts/haskell/update-hackage.sh
… version In #278074 I removed `exception` completely. But `nixpkgs` has a version of `exceptions we could use. Let's enable that instead. Co-authored-by: Dennis Gosnell <[email protected]>
…xceptions-restore haskell.packages.ghc865Binary.exceptions: restore package, use 0.10.7…
Before the change an attempt to instantiate `stm` package failed as:
$ nix build --no-link -f. haskell.packages.ghcjs.stm
error:
… in the left operand of the update (//) operator
at /home/slyfox/dev/git/nixpkgs-haskell-updates/pkgs/development/haskell-modules/lib/compose.nix:40:7:
39| mkDerivation = drv: (args.mkDerivation drv).override f;
40| })) // {
| ^
41| overrideScope = scope: overrideCabal f (drv.overrideScope scope);
error: attribute 'stm_2_5_1_0' missing
at /home/slyfox/dev/git/nixpkgs-haskell-updates/pkgs/development/haskell-modules/configuration-ghcjs.nix:29:21:
28| # ghcjs/ghcjs#676
29| stm = doJailbreak self.stm_2_5_1_0;
| ^
30| exceptions = dontCheck self.exceptions_0_10_7;
Did you mean stm_2_5_3_0?
Files like `pkgs/development/haskell-modules/configuration-ghc-8.10.x.nix` assume `ghc` always has an `llvmPackages` attribue. Let's expose `null` value from `ghcjs` to allow it's propagation. This fixes package evaluation for `ghcjs` packages.
We're opting for the strategy of providing the most up to date version llvm-ffi supports which works out well enough, as nixpkgs also tries to be quite up to date with its LLVM version (and also uses LLVM 16 as the default).
We need this attribute to work for cross compilation. Unfortunately the updated bounds are not yet released to Hackage.
This reverts commit 2e7f09c. Reason for revert: Due to all-cabal-hashes not updating, we can't at the moment get a more up to date hackage database the normal way. Let's revert to the old state, so we can keep working on what we have until a more up to date snapshot is available.
This commit has been generated by maintainers/scripts/haskell/regenerate-hackage-packages.sh
See NixOS/cabal2nix#611 for discussion. While we're changing things, let's also use the tzdata setupHook for haskellPackages.tz.
No longer needed by stack.
- Use hfinal where possible - Move overrides out of custom overlay where possible
pandoc: install man pages from pandoc-cli tarball The pandoc man pages moved from pandoc to pandoc-cli, so we need to install them elsewhere. The install script for this was emitted by cabal2nix which we now stop doing for pandoc >= 3.1.10 (so haskellPackages.pandoc still has man pages). Instead we manually add an override where it matters to us, namely pkgs.pandoc (haskellPackages.pandoc-cli is lacking them now, not sure if we need to care).
dhall suddenly appeared in Stackage LTS 21 at 1.41.* which we don't necessarily want, as we were using 1.42.* before. It is much easier to revert this downgrade due to other packages (not in Stackage LTS) we are shipping, like dhall-nix, dhall-nixpkgs and hnix.
For GHC 9.6 and 9.8 we can use the Cabal library bundled with GHC since it matches the requested version. This can prevent inconsistent dependencies later in e.g. haskell-language-server. For lower versions we may need to jailbreak and downgrade Cabal to which upstream seems to be open: > We need to pin a single major version of Cabal here because the main > reason we use Cabal is for its list of extensions. Later versions have > strictly more extensions, and we'll have missing patterns if we try to > support more than one major version. If this causes problems in > practice let's revisit this decision and come up with another > approach. Alternatively, hls-stan-plugin can be disabled.
hls-stan-plugin is not buildable with GHC >= 9.2.4 && < 9.4, so we have no GHC from the 9.2 series that would support this plugin.
Member
Author
|
@ncfavier |
Member
|
Thanks for the heads up. |
The `mueval-core` executable was removed for some reason, so use `mueval` instead.
All versions have this patch that conditionally enables support for template-haskell >= 2.16, so we can fold them into one.
Support for GHC 9.0 was dropped in this version, so we can no longer ship it.
haskellPackages.ircbot, haskellPackages.bytestring-conversion: unbreak
haskellPackages.double-conversion: don't use vendored library
Clean up override for removed version.
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.
These packages are too tightly coupled to GHC/Cabal
Unfortunately we have a disagreement between Stackage LTS and what pandoc needs for typst-symbols.
This commit has been generated by maintainers/scripts/haskell/mark-broken.sh based on *evaluation [1803414](https://hydra.nixos.org/eval/1803414) of nixpkgs commit [2676ce5](https://github.com/NixOS/nixpkgs/commits/2676ce5a9a4f073f724887059022a278aa9fff76) as of 2024-01-07 10:20 UTC* from the haskell-updates jobset on hydra under https://hydra.nixos.org/jobset/nixpkgs/haskell-updates
The GHC 9.0 package set uses ghc-lib 9.4.*
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This Merge
This PR is the regular merge of the
haskell-updatesbranch intomaster.This branch is being continually built and tested by hydra at https://hydra.nixos.org/jobset/nixpkgs/haskell-updates. You may be able to find an up-to-date Hydra build report at cdepillabout/nix-haskell-updates-status.
We roughly aim to merge these
haskell-updatesPRs at least once every two weeks. See the @NixOS/haskell team calendar for who is currently in charge of this branch.haskellPackages Workflow Summary
Our workflow is currently described in
pkgs/development/haskell-modules/HACKING.md.The short version is this:
haskell-updates(normally at the beginning of a merge window).haskell-updatesintomasterevery two weeks.mergeablejob is succeeding on hydra.maintainedpackage is still broken at the time of merge, we will only merge if the maintainer has been pinged 7 days in advance. (If you care about a Haskell package, become a maintainer!)More information about Haskell packages in nixpkgs can be found in the nixpkgs manual.
This is the follow-up to #272097. Come to #haskell:nixos.org if you have any questions.