Skip to content

python313Packages.pycxx: fix postInstall - #406664

Merged
dotlambda merged 2 commits into
NixOS:masterfrom
dotlambda:python3Packages.pycxx
May 15, 2025
Merged

dotlambda merged 2 commits into
NixOS:masterfrom
dotlambda:python3Packages.pycxx

Conversation

@dotlambda

Copy link
Copy Markdown
Member

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.

@dotlambda dotlambda added the 0.kind: ZHF Fixes Fixes during the Zero Hydra Failures (ZHF) campaign label May 13, 2025
@github-actions github-actions Bot added 6.topic: python Python is a high-level, general-purpose programming language. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels May 13, 2025
@nix-owners
nix-owners Bot requested a review from freezeboy May 13, 2025 05:28
@dotlambda
dotlambda merged commit f4996b1 into NixOS:master May 15, 2025
@dotlambda
dotlambda deleted the python3Packages.pycxx branch May 15, 2025 01:33
postInstall = ''
mkdir -p $dev/include
mv $out/include/${python.libPrefix}*/CXX/ $dev/include/CXX/
mv $out/include/${python.libPrefix}*/cxx/ $dev/include/CXX/

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Shouldn't this have also lower-cased the destination directory? As $dev/include/cxx

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.

Then pysvn fails to build.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Weird. Do you know what caused this breakage in the first place?

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.

An upstream change.

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.

At least that's what I assumed. But actually that can't be it. I'll try to bisect.

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.

It turns out this was caused by ba49db0.

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.

More specifically, pypa/setuptools#4766.

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.

How about using both upper and lower case? #407387

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.

Out of curiosity, what made you comment on this?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thanks for the bisect!

Out of curiosity, what made you comment on this?

We maintain a fork of nixpkgs internally. After a recent rebase, pycxx broke and I noticed this PR that fixed it. I was just curious about what caused the issue in the first place.

version = "1.9.23";
pyproject = false;

disabled = pythonAtLeast "3.13";

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@dotlambda, why was this disabled for Python 3.13 and above?

The release notes for pysvn (ref) say that v1.9.23 supports Python 3.13:

Latest Version

PySVN 1.9.23 supporting Subversion 1.14.4 and earlier.
Changes:

  • Python 3.13 support
  • Build binary kits for Windows and macOS
  • No longer build svn 1.10 kits as subversion LTS is 1.14 now

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

Labels

0.kind: ZHF Fixes Fixes during the Zero Hydra Failures (ZHF) campaign 6.topic: python Python is a high-level, general-purpose programming language. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants