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

Bump CI compiler versions (and update the docs) #79517

Draft
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

moxian
Copy link
Contributor

@moxian moxian commented Feb 3, 2025

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

@github-actions github-actions bot added Code: Tooling Tooling that is not part of the main game but is part of the repo. json-styled JSON lint passed, label assigned by github actions astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions labels Feb 3, 2025
@moxian
Copy link
Contributor Author

moxian commented Feb 4, 2025

gcc-14+ASan timing out the tests on CI is not a good sign

@moxian moxian marked this pull request as draft February 4, 2025 23:43
@moxian
Copy link
Contributor Author

moxian commented Feb 5, 2025

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
@moxian
Copy link
Contributor Author

moxian commented Feb 6, 2025

gcc-13 doesn't work (same symptoms)
nor does gcc-12

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?
Further research required...

@moxian
Copy link
Contributor Author

moxian commented Feb 7, 2025

It's the OS.
22.04 works - https://github.com/moxian/Cataclysm-DDA/actions/runs/13176636773/job/36819050904
24.04 times out - https://github.com/moxian/Cataclysm-DDA/actions/runs/13176636773/job/36819051070
(ignore the job names - I messed up there. See the runner image in the Set up job step and the compiler name in the build)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
astyled astyled PR, label is assigned by github actions BasicBuildPassed This PR builds correctly, label assigned by github actions Code: Tooling Tooling that is not part of the main game but is part of the repo. json-styled JSON lint passed, label assigned by github actions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant