Skip to content

haskellPackages: update stackage and hackage#209112

Merged
maralorn merged 34 commits intomasterfrom
haskell-updates
Jan 7, 2023
Merged

haskellPackages: update stackage and hackage#209112
maralorn merged 34 commits intomasterfrom
haskell-updates

Conversation

@maralorn
Copy link
Member

@maralorn maralorn commented Jan 4, 2023

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!)

This is the follow-up to #208421. Come to #haskell:nixos.org if you have any questions.

sternenseemann and others added 5 commits January 4, 2023 15:50
Previously, we would try to calculate the name of
buildPackages.stdenv.cc and then just hope that it is in PATH somehow.
This definitely doesn't work in all cases.

The new approach is to add buildPackages.stdenv.cc to depsBuildBuild
which also populates CC_FOR_BUILD which we can directly re-use.
This line may look odd, but we should not set ghc.isGhcjs if we are
using the JavaScript backend. It is a normal cross backend and no
special code is required to make it work, i.e. everything will be named
as it would be normally. Additionally, passing --ghcjs to Cabal will
make it do the wrong thing.

We need to, of course, stop strip from being thrown at the JS objects in
both cases.
The JavaScript backend emits `#!/usr/bin/env node` shebangs we need to
take care off using patchShebangs in fixupPhase.
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
@github-actions github-actions bot added the 6.topic: haskell General-purpose, statically typed, purely functional programming language label Jan 4, 2023
@ofborg ofborg bot added 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux. labels Jan 5, 2023
github-actions bot and others added 4 commits January 5, 2023 00:13
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
@ofborg ofborg bot added 10.rebuild-darwin: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. and removed 10.rebuild-darwin: 11-100 This PR causes between 11 and 100 packages to rebuild on Darwin. labels Jan 5, 2023
@maralorn
Copy link
Member Author

maralorn commented Jan 5, 2023

haskell-updates build report from hydra

evaluation 1788768 of nixpkgs commit 32e1f57 as of 2023-01-05 12:24 UTC

🟡 Potential issues (and possibly evaluation errors)

  • maintained jobset failed.

Build summary

Platform Failed ❌ DependencyFailed ❗ TimedOut ⌛🚫 Success ✔️
aarch64-linux 📱 18 13 2 6420
x86_64-darwin 🍎 58 9 295 6034
x86_64-linux 🐧 4 1 6482

Maintained packages with build failure

Maintained packages with failed dependency

Unmaintained packages with build failure

75 job(s)

Unmaintained packages with failed dependency

24 job(s)

Top 50 broken packages, sorted by number of reverse dependencies

50 job(s)

amazonka-core ⤴️ 187
gogol-core ⤴️ 184
haskell98 ⤴️ 153
th-desugar ⤴️ 57
enumerator ⤴️ 56
util ⤴️ 49
derive ⤴️ 48
cgi ⤴️ 46
amazonka ⤴️ 45
TypeCompose ⤴️ 44
accelerate ⤴️ 42
PrimitiveArray ⤴️ 35
rank1dynamic ⤴️ 33
distributed-static ⤴️ 31
distributed-process ⤴️ 30
iteratee ⤴️ 29
storablevector ⤴️ 29
sydtest ⤴️ 26
crypto-numbers ⤴️ 25
either-unwrap ⤴️ 25
crypto-pubkey ⤴️ 22
haskelldb ⤴️ 22
wxdirect ⤴️ 22
BiobaseTypes ⤴️ 21
alg ⤴️ 21
amazonka-s3 ⤴️ 21
mmsyn2 ⤴️ 21
polysemy-resume ⤴️ 21
wxc ⤴️ 21
biocore ⤴️ 20
bzlib ⤴️ 20
polysemy-conc ⤴️ 20
wxcore ⤴️ 20
attoparsec-enumerator ⤴️ 19
bytestring-show ⤴️ 19
fay ⤴️ 19
wx ⤴️ 19
BiobaseENA ⤴️ 18
asn1-data ⤴️ 18
dbus-core ⤴️ 18
gtksourceview2 ⤴️ 18
hsc3 ⤴️ 18
polysemy-log ⤴️ 18
ukrainian-phonetics-basic ⤴️ 18
BiobaseXNA ⤴️ 17
HGamer3D-Data ⤴️ 17
certificate ⤴️ 17
clash-prelude ⤴️ 17
clay ⤴️ 17
dbus-client ⤴️ 17

⤴️: The number of packages that depend (directly or indirectly) on this package (if any). If two numbers are shown the first (lower) number considers only packages which currently have enabled hydra jobs, i.e. are not marked broken. The second (higher) number considers all packages.

Report generated with maintainers/scripts/haskell/hydra-report.hs

@domenkozar
Copy link
Member

Any chance for another hackage/stackage bump?

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
@maralorn
Copy link
Member Author

maralorn commented Jan 6, 2023

Sure, done!

@ofborg ofborg bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Jan 6, 2023
@maralorn
Copy link
Member Author

maralorn commented Jan 6, 2023

@domenkozar The cachix override diverged between master and haskell-updates, and I am not certain what the correct resolution is. Would you mind fixing it?

(Edit: Nevermind, you were faster.)

@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Jan 6, 2023
@maralorn
Copy link
Member Author

maralorn commented Jan 6, 2023

Wow, the error message I get, when I try to build nix-diff with a jailbreak is something I have never seen from ghc.

 src/Nix/Diff/Types.hs:103:12: error:
     • solveWanteds: too many iterations (limit = 4)
         Unsolved: WC {}
         Set limit with -fconstraint-solver-iterations=n; n=0 for no limit
     • When deriving the instance for (Arbitrary DerivationDiff)
     |
 103 |   deriving Arbitrary via GenericArbitrary DerivationDiff
     |            ^^^^^^^^^

@domenkozar
Copy link
Member

cc @Player-205

@domenkozar
Copy link
Member

Gabriella439/nix-diff#72

@s-and-witch
Copy link

s-and-witch commented Jan 7, 2023

I really don't know how to fix this error. I have some thought like replacing deriving via with standalone deriving or something similar can help there.
UPD: fixed via Gabriella439/nix-diff#74

@domenkozar
Copy link
Member

domenkozar commented Jan 7, 2023

Seems like the last broken build is ghcjs on darwin.

@sternenseemann
Copy link
Member

sternenseemann commented Jan 7, 2023

Seems like the last broken build is ghcjs on darwin.

That's not ghcjs! Seems like a GHC configure bug on darwin, we'll see. Not a regression, so not a blocker.

Edit: Have a fix for aarch64-linux (likely), darwin remains a mystery…

GHC ships a [modified] config.sub so that js-unknown-ghcjs is accepted
by autotools. For some platforms, we automatically update config.sub
from upstream's source in order to prevent that builds fail when we use
an outdated config.sub. In this case of course the perfectly up to date
config.sub would reject the target platform we are trying to use, so we
must disable this mechanism for now.

I have asked in the GHC IRC channel if there are any plans on
upstreaming the platform. It would be nice if were able to drop this
change in the future.
@sternenseemann sternenseemann linked an issue Jan 7, 2023 that may be closed by this pull request
This commit has been generated by maintainers/scripts/haskell/mark-broken.sh
@ofborg ofborg bot added the 8.has: clean-up This PR removes packages or removes other cruft label Jan 7, 2023
trofi and others added 3 commits January 7, 2023 20:37
…ckage

The package is needed by tasty on a subset of architectures. Quoting
upstream `.cabal` file:

  if(!arch(x86_64) && !arch(aarch64))
    build-depends:
      unbounded-delays >= 0.1

This fails the build on i686 (a wine depend via shellcheck):

    Setup: Encountered missing or private dependencies:
      unbounded-delays >=0.1

The change pulls unbounded-delays for mentioned targets.

Co-authored-by: sternenseemann <sternenseemann@systemli.org>
…fig-sub-rollback

pkgsCross.ghcjs.haskellPackages.ghc: don't revert edited config.sub
pkgsi686Linux.haskellPackages.tasty: pull missing unbounded-delays pa…
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: 101-500 This PR causes between 101 and 500 packages to rebuild on Darwin. 10.rebuild-linux: 101-500 This PR causes between 101 and 500 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

haskell.compiler.ghcHEAD: get JS backend to work

8 participants