-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Bump CI compiler versions (and update the docs) #79517
base: master
Are you sure you want to change the base?
Conversation
gcc-14+ASan timing out the tests on CI is not a good sign |
gcc-14+ASan times out tests consistently after 6 hours. It's not a one-off fluke. As far as I can see this has not been the problem with our current gcc-11 - tests there finish within an hour or so. Sadly, I don't feel in the mood to debug it right now, so I'll try to go for a middle ground and set it togcc-13 instead, for the short term, and see if that helps. |
because gcc-14+asan times out tests for whatever reason
gcc-13 doesn't work (same symptoms) Is it not a question of gcc version but rather that of OS ? 🤔 I also haven't noticed until just now that we have a special handling of clang-12 which can now be removed? question mark? |
It's the OS. |
Summary
None
Purpose of change
The intent (at least per the existing docs) is to test the oldest supported compiler versions, and the newest ones. The older compilers are there to ensure that we don't introduce "too new" features into the codebase and break people on the old systems. The newer compilers are there to ensure that the new compilers don't break us (i.e. by introducing a new optional warning that we treat as error due to
-Werror
).We fell a bit behind on the newest, so this PR bumps them.
Describe the solution
gcc: 11 -> 14
clang: 12 -> 18
Also update comments and add a pretty feature matrix table.
Drive-by change: update macOS job name from "Clang 14, macOS 12" to "Clang 15, macOS 13" to reflect reality.
(the ccache key update is not technically neccessary, but it looks prettier when it's synced with the job name)
Describe alternatives you've considered
Testing
CI would self-test. (But also, i tried it in CI in my fork, and it seemed to work at the time).
Additional context