Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Status of packaging tools #7

Open
13 of 15 tasks
rgommers opened this issue Apr 10, 2024 · 16 comments
Open
13 of 15 tasks

Status of packaging tools #7

rgommers opened this issue Apr 10, 2024 · 16 comments
Labels
status tracking Issue that tracks the status of compatibility and ongoing work in one or more open source projects

Comments

@rgommers
Copy link
Member

rgommers commented Apr 10, 2024

@rgommers rgommers added the status tracking Issue that tracks the status of compatibility and ongoing work in one or more open source projects label Apr 10, 2024
@henryiii
Copy link
Contributor

@rgommers
Copy link
Member Author

Thanks @henryiii! Table updated.

@henryiii
Copy link
Contributor

Looks like both meson and CMake don't support Windows + free-threading yet, they don't know to look for the library with the "t" for linking. I think I can fix this in scikit-build-core if I can tell it the correct library from sysconfig info.

@rgommers
Copy link
Member Author

Yeah, working on the same thing for Meson. I think adding the t in python313t.lib based on:

bool(sysconfig.get_config_var('Py_GIL_DISABLED'))

should do the job. Plus the debug flavor of it (there's no limited API variant).

@henryiii
Copy link
Contributor

Windows free-threaded fixed in scikit-build-core 0.9.5.

@henryiii
Copy link
Contributor

FYI, sysconfig's LIBRARY is correct as far as the "t" goes but is .dll instead of .lib.

@henryiii
Copy link
Contributor

Free-threading including macOS with 3.13.0b2 fully supported in cibuildwheel 2.19.0.

@rgommers
Copy link
Member Author

The final release of Pip 24.1 is out 🎉. That was the biggest missing piece here, we're in a pretty happy place now.

@rgommers
Copy link
Member Author

rgommers commented Jun 22, 2024

The Windows support in Meson by fixed in mesonbuild/meson#13338. @henryiii there is a second issue on Windows beyond libpython, namely that pyconfig.h is missing the Py_GIL_DISABLED define (discussed in https://discuss.python.org/t/windows-installer-freethreading-and-building-extension-modules/54391/2). I only lightly browsed your CMake/scikit-build-core PRs, so maybe I missed it - but it wasn't clear to me that that fix was included.

EDIT: xref https://gitlab.kitware.com/cmake/cmake/-/issues/26016 for CMake Windows issue.

@minrk
Copy link

minrk commented Aug 1, 2024

Is it appropriate to add tracking of pyO3 and cffi here in build backends?

I was testing Jupyter today, and of the extension dependencies for JupyterLab, these appear to both be limiting factors. Most extensions are working fine, though:

so I can run a nogil kernel, but not the UI yet.

@rgommers
Copy link
Member Author

rgommers commented Aug 1, 2024

Hey @minrk, thanks for the input! I'd say that these two aren't packaging tools so this isn't quite the right issue - and they're both important enough to deserve their own tracking issue.

PyO3 working will take a while, work has just started and it's quite complex. @ngoldbaum perhaps you could open a separate tracking issue for this?

cffi hasn't moved since December I think (aside from the PR you just opened), and it's the first time it has come up here. Maybe you want to open a new issue for it on this repo?

@ngoldbaum
Copy link
Collaborator

I opened #53 for PyO3, thanks for the reminder.

@minrk
Copy link

minrk commented Aug 2, 2024

Thanks, I somehow overlooked that pybind11 is not in this list, which is what I was thinking of as a peer for these. Opened #54 for cffi.

@henryiii
Copy link
Contributor

henryiii commented Nov 1, 2024

but it wasn't clear to me that that fix was included.

FYI, this was fixed in CMake 3.30.3 a month or two ago.

@rgommers
Copy link
Member Author

rgommers commented Nov 1, 2024

Great, thanks @henryiii!

@rgommers
Copy link
Member Author

rgommers commented Nov 1, 2024

Windows wheels are also starting to materialize and that all looks good, so I ticked off delvewheel. I'm sure there are some corner case bugs lurking somewhere, but overall we're in good shape here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
status tracking Issue that tracks the status of compatibility and ongoing work in one or more open source projects
Projects
None yet
Development

No branches or pull requests

4 participants