-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
CI/MAINT: Increase minimum required compiler versions to GCC 9.1 and Clang 14.0; adapt CI #20478
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
Conversation
14957fa
to
b5fbae3
Compare
Fun! Switching from gcc 8 to 9 produces a test failure (looks like switched signs somewhere):
|
Those tests are wrong. They should be using the same logic as in # Check that scipy.sparse.linalg.svds ~ scipy.linalg.svd
if check_svd:
u2, s2, vh2 = sorted_svd(A, k, which)
assert_allclose(np.abs(u), np.abs(u2), atol=atol, rtol=rtol)
assert_allclose(s, s2, atol=atol, rtol=rtol)
assert_allclose(np.abs(vh), np.abs(vh2), atol=atol, rtol=rtol) |
Handled in #20484 |
b5fbae3
to
5be3c29
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, let's give this a go. Thanks @h-vetinari
I'm going to lower the minimum supported Clang version, this PR was too aggressive (see gh-20523 and #20524 (comment)). |
Interesting. Seems I overlooked the remaining uses of |
Not quite. That's also not how we do it on Linux. Instead we look at what versions of GCC people still use, and then adjust the bound to that. That we don't have a separate "minimum Clang" job like we do a "minimum GCC" is a separate issue. |
The bump done in scipygh-20478 was too aggressive, and the info added to the toolchain there was not fully correct. Also remove the sentence about the lower bound not being enforced from the docs, since it is now. Closes scipygh-20523 [skip cirrus]
We're agreeing on all the principles, though to me this is not a separate issue. If we have ways to identify reasonable lower bounds for LLVM based on usage, then we need to add a CI job for that and keep it green. And then we're back on the same page with me saying "lower bound reflects the lowest version we're testing with". |
Sure, agreed. That CI job would be nice to have. |
Follow-up to #20454