-
Notifications
You must be signed in to change notification settings - Fork 216
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
WHL: Window x64 builds failing #1425
Comments
That are 4 commands chained. We do not know which one is failing. |
Seems like we need to untangle these commands: pyproj/.github/workflows/release.yaml Lines 151 to 155 in 2a27805
Edit: Since it fails after over 30s, I'm quite sure it's the last line with pytest itself. |
If you go to a failed run, like https://github.com/pyproj4/pyproj/actions/runs/10307248459/job/28532125980, then you should be able to rerun the failed job. You can checkmark the "run in debug" mode option, and then we might get some more information. |
No more info in debug :( |
Can we run the tests separately, without the whole cibuildwheel thing? Or are those tests explicitly about the wheels? If so, maybe remove the tests steps temporarily, download some of the wheels, and run them manually though pytest. Or remove the test steps from cibuildwheel, and run them separately afterwards. |
They are specifically for the wheels. They are meant to prevent publishing problematic wheels.
I don't have a local Windows machine to test or debug with. The CI is how testing/debugging on Windows happens. |
I believe can do that with a fork. The artifacts should be available in the completed action. |
FYI |
Also, FYI the tests fail with just
|
Potential backup if Windows wheels issue is not addressed: https://github.com/cgohlke/geospatial-wheels |
Just thought I'd share that I have a windows machine to test with and I've been having a bit of a look into this. If I skip this CI check on my fork and download the wheels from the gitlab CI artifact, I get a segfault at import time (modifying the wheel and adjusting the I can't replicate this locally though - building wheels myself using a similar setup vcpkg for proj deps, proj source code and msvc compiler produces a valid wheel which doesn't segfault. Happy to test other things if there are useful suggestions. |
Talk of segfaults reminds me of this recent Matplotlib issue matplotlib/matplotlib#28551 I have no idea if the causes could be related though - I’m afraid that discussion went over my head. |
I agree this sounds very similar. The very short summary is that visual studio made a change to the c++ stdlibary. Things compiled before the change work with the new library, things compiled after change segfault when used with the old library. To try and be self-contained many wheels will bundle the c++ runtime. If you then have a wheel that bundles the old one, import it so that the old runtime gets loaded, and then use something compiled with the new version of visual studio you will get this segfault. We also found that as part of the bundling process we would sometimes grab the wrong (and old) version of the dll. |
I was trying to add Python 3.13 wheels for Cartopy and are unable to do that because of the missing pyproj wheels for 3.13. What was the recommended fix in that issue? Several different things were going on and I also did not follow the final recommendation on what wheel builders should be doing. Is it to statically link the msvc runtime? |
See #1439 |
Yes, we statically linked the runtime: matplotlib/matplotlib#28687 |
https://github.com/pyproj4/pyproj/actions/runs/10307248459/job/28532125980
The text was updated successfully, but these errors were encountered: