depthai
depthai copied to clipboard
[BUG] 'universal' Python wheels are actually x86_64-only
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