`uv sync --group test` fails on Intel macOS by resolving unsupported jaxlib wheels
#385 创建于 2026年3月31日
仓库指标
- 星标
- (720 个星标)
- PR 合并指标
- (平均合并 6天 3小时) (30 天内合并 3 个 PR)
描述
Summary
On Intel macOS, the recommended contributor setup currently fails:
uv venv .venv
source .venv/bin/activate
uv sync --group test
@gpagnon reported that uv sync --group test tries to install a recent jaxlib release that does not provide Intel-macOS wheels.
Recent jaxlib releases only publish macOS wheels for arm64, not Intel macOS (x86_64).
I reproduced the resolution failure for Intel macOS with:
uv sync --group test --python-platform x86_64-apple-darwin --dry-run
On the v1.0.0 tag this resolves to jaxlib==0.9.2 and fails because no Intel-macOS wheel exists.
On current main, the committed lockfile similarly fails on Intel macOS because it pins jaxlib==0.9.1, which also has no Intel-macOS wheel.
The package itself may still work on Intel Macs if resolution lands on the last compatible JAX line
Why this matters
The docs currently recommend uv sync --group test as the standard setup, so Intel-macOS users are led into a failing installation path even though core pymdp usage may still be possible.
Possible fixes
A few possible directions:
- Document Intel macOS as a constrained / best-effort platform and provide an explicit fallback install path.
- Add dependency markers or constraints so Intel macOS resolves to a compatible JAX/JAXlib version (likely <0.5).
- Adjust the uv locking strategy so Intel macOS is considered during resolution.
Additional note
After forcing older JAX in a temporary checkout, I hit a further Intel-macOS wheel issue in the test stack (torch, via transitive dependencies such as pybefit), so a full fix may need to look beyond JAX alone.