Skip to content

python312Packages.wheel: 0.44.0 -> 0.45.1, fix poetry2nix#361930

Merged
philiptaron merged 1 commit intoNixOS:stagingfrom
fpletz:pkgs/python-wheel-0.45.0
Dec 6, 2024
Merged

python312Packages.wheel: 0.44.0 -> 0.45.1, fix poetry2nix#361930
philiptaron merged 1 commit intoNixOS:stagingfrom
fpletz:pkgs/python-wheel-0.45.0

Conversation

@fpletz
Copy link
Member

@fpletz fpletz commented Dec 5, 2024

Since the beginning/mid of September, some python packages like PyYAML fail to build with poetry2nix using nixpkgs master and release-24.11. The issue we're encountering is pypa/setuptools#4683. I believe the root cause is the update of setuptools to 75.1.1 in 6b98b10.

We are encountering this for instance in the authentik-nix flake. The issue can be reliably fixed by bumping wheel to 0.45.0 but the override is a bit ugly, see fpletz/authentik-nix@24907f6.

This issue is solely related to poetry2nix builds and not for python packages in nixpkgs itself. I haven't investigated deeply what poetry2nix is doing differently under the hood than the python packaging in nixpkgs. Maybe some of our python maintainers can enlighten me here. Since it's a poetry2nix issue, I would prefer a fix in poetry2nix itself but it's abandonware yet still used by lots of people until the pyproject-nix tooling is ready for primetime. Putting the wheel package bump into poetry2nix is IMHO also not an ideal solution. A fix in nixpkgs (this PR) would also fix the issue but needs to be backported to 24.11 and is a mass-rebuild.

The fix for setuptools in pypa/setuptools#4684 was released with 75.2.0. The fix for wheel in pypa/wheel#638 was released in 0.45.0. I'm not entirely sure which of the two packages we should bump but I've chosen wheel for this PR.

Further ideas or solutions to fix the situation are appreciated.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@github-actions github-actions bot added the 6.topic: python Python is a high-level, general-purpose programming language. label Dec 5, 2024
@dotlambda
Copy link
Member

I believe the root cause is the update of setuptools to 75.1.1 in 6b98b10.

I doubt it was the update to 75.1.1. It might have been caused by the update 75.1.0 in 20d9b03.

Copy link
Member

@dotlambda dotlambda left a comment

Choose a reason for hiding this comment

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

The changelog looks fine to me.

It would be nice to use build-system.

@fpletz fpletz force-pushed the pkgs/python-wheel-0.45.0 branch from cf1ba5b to 570e12a Compare December 5, 2024 02:11
@fpletz fpletz changed the title python312Packages.wheel: 0.44.0 -> 0.45.0, fix poetry2nix python312Packages.wheel: 0.44.0 -> 0.45.1, fix poetry2nix Dec 5, 2024
@ofborg ofborg bot added the 10.rebuild-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. label Dec 5, 2024
@ofborg ofborg bot requested a review from siriobalmelli December 5, 2024 22:18
@ofborg ofborg bot added 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 Dec 5, 2024
@philiptaron philiptaron merged commit 5e036e9 into NixOS:staging Dec 6, 2024
@nixpkgs-ci
Copy link
Contributor

nixpkgs-ci bot commented Dec 6, 2024

Successfully created backport PR for staging-24.11:

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

Labels

6.topic: python Python is a high-level, general-purpose programming language. 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-darwin-stdenv This PR causes stdenv to rebuild on Darwin and must target a staging branch. 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.

3 participants