haskellPackages: update stackage and hackage#132647
Merged
sternenseemann merged 39 commits intomasterfrom Aug 7, 2021
Merged
Conversation
This commit has been generated by maintainers/scripts/haskell/update-hackage.sh
This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
This commit has been generated by maintainers/scripts/haskell/regenerate-hackage-packages.sh
haskeline_0_8_1_2 was removed as the hackage version updated.
Test suite depends on an old version of base16-bytestring (but has not set up constraints for it). Can't be bothered to add an old version of it, let's just disable the test suite for now. This should fix itself sooner or later.
Member
Author
We employ a workaround for a GHC bug [1] which has been adopted by both Debian and Fedora for a eerily similar problem on ppc64le. Hopefully this fixes our aarch64 issue as well (untested so far). -O0 is not ideal, but compilation with -fllvm fails when linking (due to an invalid relocation and passing -fPIC wasn't enough to fix it), so we're stuck with this for now. [1]: https://gitlab.haskell.org/ghc/ghc/-/issues/17203
Another one for the no doctests list.
Disable doctests as workaround for RTS bug.
These are both packages which depend on the Linux kernel (or its headers) and won't work on darwin.
This was marked as broken by mistake: It builds fine, but just on darwin which is to be expected as it is binding to an API not available on Linux.
kqueue is a conditional dependency which is added via a cabal conditional which we need to emulate manually.
ats-format has a custom Setup.hs which does the following using cli-setup: * Add ~/.local/share/man to $MANPATH by editing shell configurations in $HOME. * Install a man page into ~/.local/share * Install a shell completion by editing shell configurations in $HOME. We had a workaround to keep this from failing the build in the nix sandbox, but this seemingly broke on darwin. To fix this once and forall, we force the use of only `defaultMain` in Setup.hs and install the man page manually. Additionally we generate completions and remove unnecessary extra references from the closure.
SDL_main.h which is included from SDL_ttf.h contains a #define which redefines main to SDL_main. This has to do with the way SDL binaries are linked and executed on darwin which is explained here [1]. However this is bad news for hsc2hs intermediate C sources which in this case only to gather version information from the headers and not to run a full SDL application. Thus compilation would fail due to this issue which we can avoid by redefining main to main again after including the header. [1]: http://www.ariis.it/link/repos/sdl-bindings/hssdl-image/MACOSX
SDL-mixer's configure script makes some darwin specific assumptions about the layout of the SDL libraries which don't hold up with the way they are packaged in nixpkgs. Since the way we are doing this on other platforms works with the configure script and doesn't significantly differ from the situation on darwin, we can just replace a string in a string comparison to ensure the non-darwin code path is taken.
Interestingly SDL-image exhibits both the problems of SDL-mixer and SDL-ttf have. How the respective fixes we apply here as well work is explained in 1a68ebf98573291fc4a8d8e7b35ea2e74a0d6665 and 2a8105fc58644307007f326de25b357d216d3ad7.
A few libraries published by https://github.com/typeclasses/ have the issue that they have a test suite with its Main module in hegehog.hs. On darwin GHC can't distinguish between Hedgehog.hs and hedgehog.hs due to the case insensitive file system and will raise an issue about this.
Won't build on e. g. aarch64 due to its use of x86 architecture specific features.
It has a constraint on an old version of gtk, so doesn't build and seems abandoned (no release since 2017, copyright notice year range ends with 2010).
Let upstream deal with the resource exhaustion issue, probably the stress test is a bit too optimistic for darwin's fd limits or whatever.
Patch in missing import.
Fails to build due to case insensitive file system.
Since enableLibraryProfiling is false on aarch64, we can't expect tests to work, but the library can still be built.
This commit has been generated by maintainers/scripts/haskell/mark-broken.sh
Tests succeed after a restart, maybe just flaky, we'll have to keep an eye on this one.
Member
Author
|
A note on related PRs:
|
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.
I will aim to merge this PR by 2021-08-08. If I can merge it earlier, there might be successor PRs in that time window. As part of our rotation @maralorn will continue these merges from 2021-08-09 to 2021-08-15.
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!)This is the follow-up to #132048.