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

Missing macOS 11 x86_64 wheels for 1.17.0 #276

Closed
jni opened this issue Dec 3, 2024 · 19 comments
Closed

Missing macOS 11 x86_64 wheels for 1.17.0 #276

jni opened this issue Dec 3, 2024 · 19 comments

Comments

@jni
Copy link

jni commented Dec 3, 2024

Our macOS 13 intel builds are failing on 1.17. I'm not yet sure of the cause (wrapt seems to build correctly, or at least I can't see any visible build errors), but I noticed that 1.16 provides both x86_64 and arm64 wheels for macOS 11+, but 1.17 only provides arm64 wheels.

Looking at the release actions, I noticed "build wheels on macos-latest for auto" and "build wheels on macos-latest for arm64", but looking at the logs, both built arm64 wheels, so I'm wondering whether this was an unintentional change due to GHA changing the macos-latest to use ARM by default.

If this is an intentional drop then please feel free to close as wontfix — we can update our CI accordingly. But I couldn't find any information about dropping macOS Intel so I thought I would check here.

Thank you!

@GrahamDumpleton
Copy link
Owner

I rely on cibuildwheel (https://github.com/pypa/cibuildwheel) to build the wheels, so if something is missing it would be due to that. They do indeed seem to be missing in the build artefact generated by it.

wrapt-1.17.0-cp310-cp310-macosx_11_0_arm64.whl
wrapt-1.17.0-cp311-cp311-macosx_11_0_arm64.whl
wrapt-1.17.0-cp312-cp312-macosx_11_0_arm64.whl
wrapt-1.17.0-cp313-cp313-macosx_11_0_arm64.whl
wrapt-1.17.0-cp313-cp313t-macosx_11_0_arm64.whl
wrapt-1.17.0-cp38-cp38-macosx_11_0_arm64.whl
wrapt-1.17.0-cp39-cp39-macosx_11_0_arm64.whl

The cibuildwheel repo does suggest that they should be built still.

@GrahamDumpleton
Copy link
Owner

Does seem you may be right about macos-latest in some way. As GitHub action log says:

Complete job name: Build wheels (3.8+) on macos-latest for auto
Complete job name: Build wheels (3.8+) on macos-latest for arm64

@jni
Copy link
Author

jni commented Dec 3, 2024

I suspect that you now have to explicitly request an Intel runner, either macOS latest or using an earlier macOS version...

Here's the sklearn cibuildwheel matrix for macos_x86_64: https://github.com/scikit-learn/scikit-learn/blob/fba028b07ed2b4e52dd3719dad0d990837bde28c/.github/workflows/wheels.yml#L111-L130

platform_id seems to be the critical bit.

@jni
Copy link
Author

jni commented Dec 3, 2024

(as well as a fixed macOS version, rather than latest.)

@GrahamDumpleton
Copy link
Owner

Am try 87fe726 at the moment.

@GrahamDumpleton
Copy link
Owner

That is building:

wrapt-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl
wrapt-1.17.1-cp310-cp310-macosx_11_0_arm64.whl
wrapt-1.17.1-cp311-cp311-macosx_10_9_x86_64.whl
wrapt-1.17.1-cp311-cp311-macosx_11_0_arm64.whl
wrapt-1.17.1-cp312-cp312-macosx_10_13_x86_64.whl
wrapt-1.17.1-cp312-cp312-macosx_11_0_arm64.whl
wrapt-1.17.1-cp313-cp313-macosx_10_13_x86_64.whl
wrapt-1.17.1-cp313-cp313-macosx_11_0_arm64.whl
wrapt-1.17.1-cp313-cp313t-macosx_10_13_x86_64.whl
wrapt-1.17.1-cp313-cp313t-macosx_11_0_arm64.whl
wrapt-1.17.1-cp38-cp38-macosx_10_9_x86_64.whl
wrapt-1.17.1-cp38-cp38-macosx_11_0_arm64.whl
wrapt-1.17.1-cp39-cp39-macosx_10_9_x86_64.whl
wrapt-1.17.1-cp39-cp39-macosx_11_0_arm64.whl

Guess it looks like will be okay and I can release 1.17.1 to add it.

@Czaki
Copy link

Czaki commented Dec 9, 2024

Yes. GitHub changed macos-latest to arm runners, and cibuildwheel does not cross compile x86 from arm automatically.

I strongly suggest bumping actions/checkout and actions/upload-artifact before they stop working.

Also suggest adding pyproject.toml with build-system section as in last day's the more tools expect it to exist as do not preinstall some default tools to building virtual environments.

cibulildwheel maintainer

@Czaki
Copy link

Czaki commented Dec 16, 2024

@GrahamDumpleton When we could expect release?

@GrahamDumpleton
Copy link
Owner

Unfortunately I forgot to do it in rush just before went on trip, so can’t do it now until the end of the month as have no computer with me.

@GrahamDumpleton
Copy link
Owner

I’ll see if I can get an old colleague I trust to do a release for me. It may take a few days to organize though.

@Czaki
Copy link

Czaki commented Dec 16, 2024

@GrahamDumpleton No hurry for me. I just Block 1.17.0 on our CI to keep it green. I was worried when activity in this issue was missed, but packing on a trip is a good place to miss release.

@thomasrockhu-codecov
Copy link
Contributor

@GrahamDumpleton, would love to see this implemented, let me know if there's anything I can do to help

@GrahamDumpleton
Copy link
Owner

Sorry, everything is done and just need to make a release. Will aim to get a release done today. Started a new job after I got back from holidays so this is first weekend I feel I have had a chance to catch up on things but had forgotten about this.

@thomasrockhu-codecov
Copy link
Contributor

@GrahamDumpleton no problem! Thanks for all the work

@GrahamDumpleton
Copy link
Owner

Try wrapt==1.17.1 and tell me if all is okay.

@Czaki
Copy link

Czaki commented Jan 11, 2025

CI green
napari/napari#7514

@jni
Copy link
Author

jni commented Jan 12, 2025

Looks like this can be closed as far as I'm concerned! Thank you @GrahamDumpleton! (Sorry I'm on GH iOS app and I can't seem to find a close button! 😂)

@jni jni closed this as completed Jan 12, 2025
@jni
Copy link
Author

jni commented Jan 12, 2025

Ok found it as soon as I typed that of course 😂

@thomasrockhu-codecov
Copy link
Contributor

@GrahamDumpleton thanks again for this! I realized I really needed universal2 wheels and made a PR here

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants