Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

disallow fallback to Make in Python builds #124

Merged
merged 2 commits into from
Feb 17, 2025

Conversation

jameslamb
Copy link
Member

Contributes to rapidsai/build-planning#146

Proposes:

  • setting [tool.scikit-build].ninja.make-fallback = false, so scikit-build-core will not silently fallback to using GNU Make if ninja is not available

@jameslamb jameslamb added improvement Improves an existing functionality non-breaking Introduces a non-breaking change labels Jan 31, 2025
@jakirkham
Copy link
Member

Thanks James! 🙏

Can you please update the copyright range header for pyproject.toml as well?

@jameslamb
Copy link
Member Author

Whoops yeah, forgot to run pre-commit. Just pushed a fix.

@jameslamb
Copy link
Member Author

/ok to test

@jameslamb
Copy link
Member Author

One test is segfaulting here:

test_cpu_and_cuda_reuse (numba.cuda.tests.cudapy.test_caching.CUDAAndCPUCachingTest) ... Fatal Python error: Segmentation fault

Current thread 0x0000ffff877397e0 (most recent call first):
  File "/tmp/numba-tests.0/test_cache-8zu3yoby/cuda_and_cpu_caching_test_fodder.py", line 10 in _call
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/cuda/tests/cudapy/cache_usecases.py", line 31 in __call__
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/cuda/tests/cudapy/test_caching.py", line 323 in test_cpu_and_cuda_reuse
  File "/opt/conda/envs/test/lib/python3.10/unittest/case.py", line 549 in _callTestMethod
  File "/opt/conda/envs/test/lib/python3.10/unittest/case.py", line 591 in run
  File "/opt/conda/envs/test/lib/python3.10/unittest/case.py", line 650 in __call__
  File "/opt/conda/envs/test/lib/python3.10/unittest/suite.py", line 122 in run
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/testing/main.py", line 797 in _run_inner
  File "/opt/conda/envs/test/lib/python3.10/unittest/runner.py", line 184 in run
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/testing/main.py", line 830 in run
  File "/opt/conda/envs/test/lib/python3.10/unittest/main.py", line 271 in runTests
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/testing/main.py", line 361 in run_tests_real
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/testing/main.py", line 376 in runTests
  File "/opt/conda/envs/test/lib/python3.10/unittest/main.py", line 101 in __init__
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/testing/main.py", line 204 in __init__
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/testing/__init__.py", line 54 in run_tests
  File "/opt/conda/envs/test/lib/python3.10/site-packages/numba/testing/_runtests.py", line 25 in _main
  File "/__w/pynvjitlink/pynvjitlink/ci/run_patched_numba_tests.py", line 13 in <module>

Extension modules: pynvjitlink._nvjitlinklib, numpy._core._multiarray_umath, numpy.linalg._umath_linalg, numba.core.typeconv._typeconv, numpy.random._common, numpy.random.bit_generator, numpy.random._bounded_integers, numpy.random._mt19937, numpy.random.mtrand, numpy.random._philox, numpy.random._pcg64, numpy.random._sfc64, numpy.random._generator, numba._helperlib, numba._dynfunc, numba._dispatcher, numba.core.typing.builtins.itertools, numba.cpython.builtins.math, numba.core.runtime._nrt_python, numba.np.ufunc._internal, numba.experimental.jitclass._box, numba.mviewbuf, numba.core.typing.cmathdecl.cmath, numba.cpython.mathimpl.math, numba.cpython.mathimpl.sys, numba.types.itertools, numba.cpython.numbers.math, numba.cpython.hashing.math, numba.cpython.hashing.sys, numba.np.arraymath.math, numba.core.typing.mathdecl.math (total: 31)
ci/test_patch.sh: line 45:  1129 Segmentation fault      python ci/run_patched_numba_tests.py numba.cuda.tests -v -m

(build link)

It's very unlikely that that's related to these changes.

@jameslamb jameslamb changed the title WIP: disallow fallback to Make in Python builds disallow fallback to Make in Python builds Feb 3, 2025
@jameslamb jameslamb marked this pull request as ready for review February 3, 2025 16:58
@jameslamb jameslamb requested a review from a team as a code owner February 3, 2025 16:58
@jameslamb jameslamb requested a review from bdice February 3, 2025 16:58
@bdice
Copy link
Contributor

bdice commented Feb 4, 2025

@gmarkall might need to look at this segfault in the Numba tests, I agree it is not related to this PR's changes.

Noteworthy: only ARM jobs failed. I think there is a known issue with Numba and ARM but I don't know what it is.

@gmarkall
Copy link
Contributor

gmarkall commented Feb 4, 2025

Just taking a look...

I think there is a known issue with Numba and ARM but I don't know what it is.

I don't know of a Numba and ARM issue at present, so segfaulting is unexpected behaviour.

@bdice
Copy link
Contributor

bdice commented Feb 17, 2025

conda-forge/llvmdev-feedstock#314 appears to have fixed the issues on ARM.

Copy link
Contributor

@bdice bdice left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All looks good. Merging now that CI is fixed.

@bdice bdice merged commit afb2f8d into rapidsai:main Feb 17, 2025
40 checks passed
@jameslamb jameslamb deleted the no-make-fallback branch February 18, 2025 14:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
improvement Improves an existing functionality non-breaking Introduces a non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants