Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

haskellPackages: update hackage and stackage #346720

Merged
merged 81 commits into from
Oct 21, 2024
Merged

Conversation

sternenseemann
Copy link
Member

This Merge

This PR is the regular merge of the haskell-updates branch into master.

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-updates PRs 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:

  • We regularly update the Stackage and Hackage pins on haskell-updates (normally at the beginning of a merge window).
  • The community fixes builds of Haskell packages on that branch.
  • We aim at at least one merge of haskell-updates into master every two weeks.
  • We only do the merge if the mergeable job is succeeding on hydra.
  • If a maintained package 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 #339272. Come to #haskell:nixos.org if you have any questions.

This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
This commit has been generated by maintainers/scripts/haskell/update-hackage.sh
This commit has been generated by maintainers/scripts/haskell/regenerate-hackage-packages.sh
@vcunat
Copy link
Member

vcunat commented Oct 10, 2024

I dropped darwin builds from the jobset. I believe we can put it back when queues on the farm settle down a bit.

@sternenseemann
Copy link
Member Author

Feel free to disable evals altogether if necessary; I think no one is available to work on anything at least until the weekend.

github-actions bot and others added 7 commits October 11, 2024 00:16
This commit partially reverts ccec93c.

This will break a lot of packages in haskellPackages (due to a missing
webkitgtk), but at least hackage-packages.nix is reproducible with the
generation shell script again.

Unfortunately, it seems the generated nature of hackage-packages.nix was
ignored when preparing the webkitgtk change:
#345611 (comment)
@sternenseemann
Copy link
Member Author

The fallout from #345611 is going to be really annoying to deal with.

sternenseemann and others added 2 commits October 15, 2024 01:28
Unfortunately, this is the newest GHC revision we can update to. After
https://gitlab.haskell.org/ghc/ghc/-/commit/145a6477854d4003a07573d5e7ffa0c9a64ae29c,
it becomes necessary to bootstrap with an in tree Cabal version.
Supporting this in nixpkgs is a waste of time since it wouldn't be
necessary for any release version.
@sternenseemann
Copy link
Member Author

9.10 HLS either needs a downgraded extensions or to be built with Cabal >= 3.14.

github-actions bot and others added 12 commits October 19, 2024 00:16
Backport a patch (which probably addresses a completely unrelated issue
with hadrian and system libffi for GHC >= 9.2.3) that stops Cabal from
handling libffi includes in libraries/ghci. This allows for cc-wrapper
to freely pick the correct libffi which is important when cross
compiling GHC as we need to correctly pick between build and host/target
libffi each time.

This fixes the build of pkgsCross.riscv64.haskell.compiler.ghc8107.

Tested

- haskell.packages.ghc8107.cabal2nix (x86_64-linux, aarch64-linux)
- pkgsCross.riscv64.haskell.compiler.ghc8107 (x86_64-linux)

Could not test darwin because rcodesign is broken at the moment (?).
This reverts commit c3322f4.

Reason for revert: extensions 0.1.0.3 doesn't support Cabal == 3.12.*.
Dependency conflicts due to extensions seem annoying to deal with.
Neither package support GHC 9.10 currently. Their corresponding plugins
are thus disabled in HLS.
@sternenseemann sternenseemann changed the base branch from master to staging-next October 21, 2024 19:33
HLS can't be built yet with 9.8.3, so it doesn't make sense to make it a
default yet. Unfortunately we are still missing a ghc-lib-parser release
that works with ghc 9.8.3.
This commit has been generated by maintainers/scripts/haskell/mark-broken.sh based on
*evaluation [1809515](https://hydra.nixos.org/eval/1809515) of nixpkgs commit [e7735af](https://github.com/NixOS/nixpkgs/commits/e7735afbdce5f32dabb78e9393792625ff6d5eaa) as of 2024-10-21 19:40 UTC*
from the haskell-updates jobset on hydra under https://hydra.nixos.org/jobset/nixpkgs/haskell-updates
@sternenseemann sternenseemann merged commit 9ddc331 into staging-next Oct 21, 2024
10 of 11 checks passed
@sternenseemann
Copy link
Member Author

sternenseemann commented Oct 21, 2024

We've merged the current iteration into staging-next, so it will only propagate to master after #348827 is merged. This has been done in an effort to reduce the impact on master since we haven't been able to build/test any packages on Darwin (due to a lack of darwin build capacity). Merging to master would have meant introducing ~16k darwin rebuilds without any binary cache behind them.

Additional fixes can go to staging-next now. I won't open a new iteration for a bit since it would also need to target staging-next initially (which probably means extra delay until our jobset chews through the new builds) and there's no real incentive yet. We are waiting for a release of ghc-lib-parser and friends so we can have HLS for 9.8.3.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants