Skip to content

Haskell updates#123682

Merged
sternenseemann merged 73 commits intomasterfrom
haskell-updates
Jun 2, 2021
Merged

Haskell updates#123682
sternenseemann merged 73 commits intomasterfrom
haskell-updates

Conversation

@cdepillabout
Copy link
Copy Markdown
Member

This Merge

This PR is the regularly 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.

I will aim to merge this PR by 2021-05-28. If I can merge it earlier, there might be successor PRs in that time window. As part of our rotation @sternenseemann will continue these merges from 2021-05-28 to 2021-06-11.

haskellPackages Workflow Summary

Our workflow is currently described at 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!)

This is the follow-up to #122719

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
@cdepillabout cdepillabout added the 6.topic: haskell General-purpose, statically typed, purely functional programming language label May 19, 2021
@cdepillabout
Copy link
Copy Markdown
Member Author

This PR will only be merged to master after the 21.05 branch-off.

random 1.2.0 has a new test suite with a lot of dependencies. Among
other packages it depends on doctest which depends on syb which depends
on tasty which depends on optparse-applicative which depends on
QuickCheck which depends on -- you guessed it -- random!

The cycle could be broken at any point of course, I've disabled the
tests on random here because it has seen the change that causes all
of this. However, we may also want to consider doing this for
optparse-applicative instead, since random seems like a more critical
package to run the tests for possibly? Not sure, looking for feedback.
We arrived at 0.14.0.0 naturally via stackage.
hashable's test suite pins random to < 1.2 even in the latest release on
hackage, but lifting the bound fixes the build without any issues. Using
a patch so we are reminded to remove it when it's unnecessary.
These are not necessary anymore as stackage naturally contains random
1.2.0 and we apply the hashable fix globally as well.
random 1.2.0 is our default version now.
@ofborg ofborg bot added 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. labels May 19, 2021
sternenseemann and others added 7 commits May 19, 2021 17:17
Cabal revisions can break the patches we apply, so we'll need to make
any necessary changes to the cabal file with patches ourselves.
We got these cabal file revisions with our hackage update, so we can
remove it from the common configuration file.
too strict bound on random
too strict bound on random
…rrent config

This commit has been generated by maintainers/scripts/haskell/regenerate-hackage-packages.sh
@ofborg ofborg bot added the 8.has: clean-up This PR removes packages or removes other cruft label May 20, 2021
This commit has been generated by maintainers/scripts/haskell/regenerate-hackage-packages.sh
@cdepillabout
Copy link
Copy Markdown
Member Author

cdepillabout commented May 28, 2021

The darwin jobs are taking a long time to finish after merging master into this branch.

I'll pass off control of this PR to @sternenseemann to start his two weeks 👍


nvfetcher = with haskell.lib; overrideCabal (justStaticExecutables haskellPackages.nvfetcher) (drv: {
executableToolDepends = [ makeWrapper ];
postInstall = ''
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could move this override to configuration-nix.nix, I think? then haskellPackages.nvfetcher would also be functional were someone to use it.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have remarked this in the corresponding PR. berberman said they will improve on this in a future PR they have planned anyways.

as described above.

- The Haskell team members generally hang out in the Matrix room
[#haskell-space:matrix.org](https://matrix.to/#/#haskell-space:matrix.org).
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't we link #haskell:nixos.org directly here? My server doesn't support spaces, so I wouldn't be able to get there from the space, I think.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Whoops, completely pasted the wrong link here.

I've fixed this in 2451208 and changed the link to #haskell:nixos.org. I think that should be correct?

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

Labels

6.topic: haskell General-purpose, statically typed, purely functional programming language 8.has: clean-up This PR removes packages or removes other cruft 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 5001+ This PR causes many rebuilds on Darwin and must target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.