fix unix dependency correctly#10677
Merged
mergify[bot] merged 1 commit intohaskell:masterfrom Dec 26, 2024
Merged
Conversation
Collaborator
Author
|
Technically this should have a changelog, but practically that's already been covered. |
5a8faaf to
9d0cac9
Compare
ulysses4ever
approved these changes
Dec 26, 2024
ffaf1
approved these changes
Dec 26, 2024
Collaborator
Author
|
The delay here is I need to regenerate the bootstrap JSONs. About to push them. |
9d0cac9 to
fe80b22
Compare
Patching `cabal.release.project` still allows the buggy `unix` release to be installed via Hackage.
fe80b22 to
87ce0fc
Compare
Collaborator
Author
|
@mergify backport 3.14 |
Contributor
✅ Backports have been createdDetails
|
Collaborator
Author
|
@mergify backport 3.14.1.1 |
Contributor
✅ Backports have been createdDetails
|
This was referenced Dec 26, 2024
mergify bot
added a commit
that referenced
this pull request
Dec 26, 2024
Backport #10677: fix unix dependency correctly
mergify bot
added a commit
that referenced
this pull request
Dec 27, 2024
Backport #10677: fix unix dependency correctly
sternenseemann
added a commit
to sternenseemann/nixpkgs
that referenced
this pull request
Jan 16, 2025
Cabal has recently introduced a lower bound for unix so a certain bug fix for 32bit platforms (in combination with a toolchain that sets _FILE_OFFSET_BITS=64) is included: haskell/cabal#10664 haskell/cabal#10677 I don't think it's actually possible to encounter this problem with nixpkgs since we haven't transitioned to 64bit time_t for 32bit platforms unlike Debian. To prevent confusing behavior in edge cases, backport the patch to all GHC versions that lack it and lift the bound on Cabal 3.14 (which is honestly a strange way to “fix” this problem).
sternenseemann
added a commit
to NixOS/nixpkgs
that referenced
this pull request
Jan 16, 2025
Cabal has recently introduced a lower bound for unix so a certain bug fix for 32bit platforms (in combination with a toolchain that sets _FILE_OFFSET_BITS=64) is included: haskell/cabal#10664 haskell/cabal#10677 I don't think it's actually possible to encounter this problem with nixpkgs since we haven't transitioned to 64bit time_t for 32bit platforms unlike Debian. To prevent confusing behavior in edge cases, backport the patch to all GHC versions that lack it and lift the bound on Cabal 3.14 (which is honestly a strange way to “fix” this problem).
Collaborator
Author
|
@9999years reports that this doesn't work with 9.10.1 and Nix (which pins dependencies its own way). |
Collaborator
Author
|
And it looks like that is a Nixpkgs issue: the bug has existed for 13-14 years, so our bound is correct and their pin must be moved. |
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.
Patching
cabal.release.projectstill allows the buggyunixrelease to be installed via Hackage.Template B: This PR does not modify behaviour or interface
E.g. the PR only touches documentation or tests, does refactorings, etc.
Include the following checklist in your PR: