depthai icon indicating copy to clipboard operation
depthai copied to clipboard

[BUG] 'universal' Python wheels are actually x86_64-only

Open bouk opened this issue 3 months ago • 0 comments

Describe the bug

The macOS universal Python wheels are only compiled for x86_64, which makes them not work on arm64. For example, this wheel: https://pypi.org/project/depthai/2.30.0.0/#depthai-2.30.0.0-cp312-cp312-macosx_10_13_universal2.whl depthai-2.30.0.0-cp312-cp312-macosx_10_13_universal2.whl is not, this can be checked as follows:

$ unzip depthai-2.30.0.0-cp312-cp312-macosx_10_13_universal2.whl
Archive:  depthai-2.30.0.0-cp312-cp312-macosx_10_13_universal2.whl
   creating: depthai
  inflating: depthai/node.pyi
  inflating: depthai/__init__.pyi
 extracting: depthai/py.typed
   creating: depthai-2.30.0.0.dist-info
  inflating: depthai-2.30.0.0.dist-info/RECORD
  inflating: depthai-2.30.0.0.dist-info/LICENSE
  inflating: depthai-2.30.0.0.dist-info/WHEEL
  inflating: depthai-2.30.0.0.dist-info/entry_points.txt
  inflating: depthai-2.30.0.0.dist-info/top_level.txt
  inflating: depthai-2.30.0.0.dist-info/METADATA
  inflating: depthai.cpython-312-darwin.so
   creating: depthai_cli
  inflating: depthai_cli/depthai_cli.py
  inflating: depthai_cli/cam_test.py
 extracting: depthai_cli/__init__.py
  inflating: depthai_cli/stress_test.py
  inflating: depthai_cli/cam_test_gui.py
   creating: palace.dylibs
  inflating: palace.dylibs/libusb-1.0.dylib
$ lipo -info depthai.cpython-312-darwin.so
Non-fat file: depthai.cpython-312-darwin.so is architecture: x86_64

This means the wheel can't be used on arm64 and some package managers might prefer it.

Expected behavior

The wheel should either be marked x86_64 or actually be universal

bouk avatar Sep 16 '25 15:09 bouk