Skip to content

Commit 862bdd1

Browse files
Constrain numba on Intel macOS so llvmlite resolves to a wheel
Relaxing the numba pin was not sufficient on macOS x86_64. Resolvers pick the newest compatible numba (0.67.0), which requires llvmlite >=0.49 -- and llvmlite stopped publishing macOS x86_64 wheels at 0.46. Every version from there on falls back to a source build that requires CMake: FileNotFoundError: llvmlite needs CMake tools to build. Cap numba below 0.63 on Intel macOS only, which pins llvmlite to 0.45, the last release shipping an x86_64 wheel. The marker leaves every other platform free to resolve the latest numba. Verified by installing into both a native arm64 venv (numba 0.67.0 / llvmlite 0.49.0) and an x86_64 venv (numba 0.62.1 / llvmlite 0.45.1). Both install from wheels with no CMake and `import fimserve` succeeds. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 97a3b3a commit 862bdd1

1 file changed

Lines changed: 5 additions & 0 deletions

File tree

pyproject.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ dependencies = [
3434
"tqdm>=4.66",
3535
"python-dotenv>=1.0",
3636
"fimeval>=0.1.65",
37+
# teehr pulls numba, which pulls llvmlite. llvmlite stopped publishing macOS
38+
# x86_64 wheels at 0.46, so on Intel Macs anything newer falls back to a
39+
# source build that needs CMake. numba <0.63 pins llvmlite to 0.45, the last
40+
# release with an x86_64 wheel. Every other platform is left unconstrained.
41+
"numba<0.63; sys_platform == 'darwin' and platform_machine == 'x86_64'",
3742
]
3843

3944
[project.optional-dependencies]

0 commit comments

Comments
 (0)