Skip to content

Update from Ubuntu 18 (gcc-6, clang-6) to Ubuntu 20 (gcc-7, clang-6) [AP-3178] #1473

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

Merged
merged 4 commits into from
Feb 14, 2025

Conversation

sbmueller
Copy link
Contributor

@sbmueller sbmueller commented Feb 12, 2025

Description

@swift-nav/algint-team

This PR updates the C stages in the CI from relying on Ubuntu 18 (gcc-6, clang-6) to Ubuntu 20 (gcc-7, clang-6). Ubuntu 18 is EOL since May 2023. Recently, we observed issues, e.g. in GitHub Actions due to old versions of GLIBC in Ubuntu 18 jobs. We decided to not further invest time and energy in maintaining these old pipelines, because:

  • No customer directly relies on gcc-6.
  • We are planning to update our codebase to C++17, which requires at least gcc-8 (or 7 without CTAD).
  • If we want to have full coverage for all customer required toolchains, that is a different topic and an additional effort. Currently, that is not done for dependency repositories like libsbp.
  • To still have a certain confidence that gcc versions down to 7 are supported, this PR updates to Ubuntu 20, which is still maintained and offers gcc 7 in its apt repositories.

API compatibility

Does this change introduce a API compatibility risk?

No, there are no changes to the code.

API compatibility plan

If the above is "Yes", please detail the compatibility (or migration) plan:

JIRA Reference

https://swift-nav.atlassian.net/browse/AP-3178

Ubuntu 18 is EOL since May 2023. The gcc 6 compiler is not explicitly
required by any of our customers. This change updates the stage to
Ubuntu 24 and gcc 14 / clang 18.
@sbmueller sbmueller requested a review from a team as a code owner February 12, 2025 09:07
{ c: "clang-6.0", cxx: "clang++-6.0", package: "clang-6.0" }
]
build_shared_libraries: [ true, false ]
exclude: [
Copy link
Contributor Author

@sbmueller sbmueller Feb 12, 2025

Choose a reason for hiding this comment

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

I digged in the history and this combination was excluded because at some point, there was a "code coverage" job that covered this combination. This job is not existing anymore, so I'm adding the combination again.

@sbmueller sbmueller changed the title Update from Ubuntu 18 (gcc-6, clang-6) to Ubuntu 24 (gcc-14, clang-18) [AP-3178] Update from Ubuntu 18 (gcc-6, clang-6) to Ubuntu 20 (gcc-7, clang-6) [AP-3178] Feb 13, 2025
@sbmueller sbmueller force-pushed the smuller/AP-3178-ubuntu-update branch 2 times, most recently from f624dfc to 6fc1396 Compare February 13, 2025 14:28
@sbmueller sbmueller force-pushed the smuller/AP-3178-ubuntu-update branch from 6fc1396 to 8e7e48f Compare February 13, 2025 14:33
Copy link

@marcoamm
Copy link

@sbmueller Ubuntu 20 will EOL in April this year. Would it be worth it to try to bump it to 22 or 24?

Copy link

@marcoamm marcoamm left a comment

Choose a reason for hiding this comment

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

Good for me! Only point is the comment above.

@sbmueller sbmueller merged commit 69e012e into master Feb 14, 2025
24 checks passed
@sbmueller sbmueller deleted the smuller/AP-3178-ubuntu-update branch February 14, 2025 17:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants