Skip to content

Update Docker/CI to latest Ubuntu/Alpine, Clang22+GCC15#10333

Merged
WinterSolstice8 merged 7 commits into
LandSandBoat:basefrom
cocosolos:ci-upgrade
Jun 17, 2026
Merged

Update Docker/CI to latest Ubuntu/Alpine, Clang22+GCC15#10333
WinterSolstice8 merged 7 commits into
LandSandBoat:basefrom
cocosolos:ci-upgrade

Conversation

@cocosolos

Copy link
Copy Markdown
Contributor

I affirm:

  • I understand that if I do not agree to the following points by completing the checkboxes my PR will be ignored.
  • I understand I should leave resolving conversations to the LandSandBoat team so that reviewers won't miss what was said.
  • I have read and understood the Contributing Guide and the Code of Conduct.
  • I have tested my code and the things my code has changed since the last commit in the PR and will test after any later commits.

What does this pull request do?

  • Update Docker and CI runners to Ubuntu 26.04 and Alpine 3.24.

  • Update to Clang 22 and GCC 15.

  • Cleans up some new errors from clang-tidy and cppcheck.

  • Updates fmt, spdlog, recastnavigation, and efsw to fix some build issues.

  • Update GitHub Actions versions as Node.js 20 actions are deprecated.

There are some formatting changes needed for clang-format 22, but adding them to this PR would cause sanity checks to fail as they conflict with clang-format 20 used in the current devtools. Will submit after this.

Steps to test these changes

Build results
Test results

Can pull ghcr.io/cocosolos/server:latest to test the image.

Publish_Changelog:
name: Generate and Publish Changelog
runs-on: ubuntu-24.04
runs-on: ubuntu-latest

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

latest is a rolling tag, is ubuntu-26.04 available for use instead?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Yeah, latest is still 24.04 while 26.04 is in preview. I figured for general workflows like this latest would be fine, one less thing to keep track of. I think only the builds use an explicit version.

Updates to LLVM22 and GCC15.
- Updates to LLVM22 and GCC15.
- Updates runners to Python 3.14.
Fixes build issues with clang-22.
performance-unnecessary-copy-initialization
- Add explicit co_return for cppcheck errors [missingReturn]
- Return by const reference. [returnByReference]
Node.js 20 is deprecated. Upgrade to latest versions of affected actions.
Scripts were just being mounted instead of copied during buildtime to
save time, but this caused write access issues when generating enums
during the build.
@cocosolos cocosolos marked this pull request as ready for review June 17, 2026 02:51
@cocosolos

Copy link
Copy Markdown
Contributor Author

Added a commit to fix the current docker build issue. Should be good to go now. Required status checks will need to be updated in the github settings to reflect the new ubuntu version.

@WinterSolstice8 WinterSolstice8 merged commit 9584aaa into LandSandBoat:base Jun 17, 2026
12 checks passed
@cocosolos cocosolos mentioned this pull request Jun 17, 2026
4 tasks
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