astral-sh / uv

An extremely fast Python package and project manager, written in Rust.
https://docs.astral.sh/uv
Apache License 2.0
24.96k stars 722 forks source link

uv fails to find PyPy executable on Windows with Python 3.8 #5730

Open charliermarsh opened 3 months ago

charliermarsh commented 3 months ago

From @henryiii on Discord:

Any cibuildwheel project building PyPy 3.8(+?) on Windows should show it; the three github.com/pybind/*_example repos for example.

Looking at it, I wonder if the fact it's using the python executable with PyPy is the issue? Did the logic change recently to assume the executable name for PyPy has pypy in it?

PyPy provides a python executable too.

https://github.com/pybind/scikit_build_example/actions/runs/10153047231/job/28075633350?pr=147

I think it worked up to 3 weeks ago and started failing 2 weeks ago. Another example is boost-histogram: https://github.com/scikit-hep/boost-histogram/actions/runs/10204535828/job/28250894947?pr=947

We could see if we can use the pypy executable instead of the python one when setting up the environment with cibuildwheel, but they are supposed to be interchangable.

henryiii commented 3 months ago

Ahh, this is what I was remembering: https://github.com/pypa/cibuildwheel/pull/1941. Next release of cibuildwheel will just ignore uv on PyPy 3.8 (and I guess this means it works fine for 3.9+). uv 0.2.25+ seems to be the issue.