specs icon indicating copy to clipboard operation
specs copied to clipboard

Add a recommendation for packaging macos arm64 wheels

Open mattip opened this issue 2 years ago • 2 comments

Does the scientific-python community have a unified opinion around whether to distribute universal2 or separate arm64/x86_64 wheels? cibuildwheel did not take a stand and allows both approaches. Some of the considerations that came up in that issue:

against

  • for most large projects, using universal2 wheels makes the artifact twice as big which is a waste
  • testing is problematic. There still are few arm64 CI runners (not so true with https://cirrus-ci.org/)
  • conda uses separate installations

for

  • the default python provided by python.org uses universal2

Whatever the decision, we need better documentation, users are confused around how to work with mixed universal2 python and arm64-only wheels.

mattip avatar Jul 06 '23 07:07 mattip

I guess we can have a spec that say that no decision has been taken yet, but that it would be best for wheel to work both on arm64 and x86_64. Spec being a live document we can point to discussion and update the recommendation with time, as well as list the decision of each project.

Personally I'm tempted to use separate wheels for macos, as:

  1. I'm pretty sure there are script around that will not work with detecting a wheel is avaialble with universal2.
  2. if a project ever want to drop the osx x86_64 (which will hapend even if in 5 years). It's easier to just sop publishing one of the two wheel, than to un-universal2.

Carreau avatar Aug 16 '23 09:08 Carreau

Is this still relevantm or can we close it now without action?

I suppose most projects moved on in the past year and use the reasonably new arm osx images on GHA, and just simply not provide arm wheels for older OSX versions.

bsipocz avatar Aug 28 '24 00:08 bsipocz