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
BLD: Bump cibuildwheel and enable more PyPy #21285
Conversation
Looks like tests are failing on pypy 3.9. cc @mattip.
(Sorry that I couldn't get the full log. My machine is lagging quite a bit with the verbose logs). |
I usually click on the gear and then download the raw logs since scrolling to the end of the formatted log seems impossible. As for the failures: is there a way to convince cibuildwheel to use PyPy3.9 v7.3.9 and not PyPy3.9 v7.3.8 (which was the version mentioned in the PR to add PyPy3.9 ? |
Maybe add a line to print the python version |
Ahh, nvrmind. I see the docker image is quay.io/pypa/manylinux2014_x86_64:2022-03-31-361e6b6, and it is using |
Adding logic to skip the tests on the bad PyPy versions makes CI pass. |
@mattip Just to confirm, the tests that are skipped here will not be skipped on PyPy's nightly testing, right? |
Looks like the fixes cause other tests to fail, now, unfortunately. I think it might be better to just skip pp39 wheel builds for now. PyPy 3.9 is in beta right now, and if the tests are going to be fixed in the next release of PyPy(which hopefully also makes pp39 stable), I'd rather wait until then. I believe PyPy tests against the numpy build suite, so its unlikely more/other tests will fail. |
Sounds good. |
FWIW, NumPy HEAD + PyPy 3.9 HEAD is passing the full test suite after I extended the timeout to over 70 minutes for macOS, so NumPy may want to consider adding PyPy39 after the next PyPy release. So I think once ppy39 is removed from this PR it should be ready. We should have a reminder somewhere to make sure we are using vs2019 v14.1 and not v14.2. |
This seems critical since using 14.2 will break SciPy and anyone else using |
The word "critical" is way too strong here IMO. The breakage is restricted to those using VS2017, an EOL compiler, for which free and ABI-compatible replacements are available (VS2019, VS2022). I have trouble imagining a scenario where someone cannot do an ABI-compatible upgrade, and I have yet to hear of someone affected in this way (I made the same case in conda-forge an no-one came forward so far). There's IMO a substantial possibility that we're jumping through hoops for an almost empty set of users here (and at some point, if one insists on using EOL software, it should be completely unsurprising that eventually one does not get to use the newest library versions anymore). Perhaps unsurprisingly (given the above), I think VS2017 support should simply be dropped. |
The problem here is users with fortran code. The best option for a fortran compiler is mingw64, which cannot link with the npymath.lib created from vs2019+. |
Ah, thanks, I was not aware of that restriction. Then I retract the suggestion to drop VS2017 (is there any issue to follow for mingw support of VS2019? Because VS2017 has been removed from all MSFT-owned CI providers already, and is very much on its way out). |
One place to start is in MacPython/numpy-wheels#145, which has links to both the Visual Studio response to the problem (basically: yes it is a known thing, we will document the breaking change), and a repo set up to investigate the problem matthew-brett/dll_investigation#1. The latter has a link to the mingw64 discussion
There is also issue #20880 to change from static linking to dynamic linking (ship a npymath.dll), which would mean we don't need the 14.1 toolchain. |
Thanks @lithomas1. The follow up to the 14.1/14.2 toolchain issues is #20880 |
No description provided.