chore: Modernize CMake build, CI workflows, and code quality tooling#16
Merged
monkey0722 merged 13 commits intomainfrom Dec 29, 2025
Merged
chore: Modernize CMake build, CI workflows, and code quality tooling#16monkey0722 merged 13 commits intomainfrom
monkey0722 merged 13 commits intomainfrom
Conversation
…CMake presets version
…date VSCode settings
…or handling and output formatting
… add clang-format version check
….04 for build jobs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces significant improvements to the C++ project's build system, code quality tooling, and codebase consistency. The main focus is on modernizing the CMake configuration, enhancing CI workflows, enforcing code quality standards, and making minor code improvements for readability and correctness.
Build System Modernization and CI Improvements:
CMakePresets.jsonfor standardized build and test presets, and improved compiler warning handling usingtarget_compile_options. [1] [2] [3]clang-formatchecks, and use CMake presets for CI builds.Code Quality and Tooling Enhancements:
.clang-tidyconfiguration to enable/disable specific checks, treat critical warnings as errors, and set header filtering for source files.clang-formatandclang-tidy, ensuring only source files are linted and all code is properly formatted. [1] [2]scripts/run_tests.shin favor of CMake presets and CI workflows.Codebase Consistency and Minor Fixes:
[[nodiscard]]and other modern C++ attributes to key methods, improved initialization, and standardized output formatting across several data structures and algorithms. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18]Summary of Most Important Changes:
Build System & CI Modernization
CMakePresets.jsonfor easier builds and tests, and improved compiler warning management. [1] [2] [3]clang-format, and use CMake presets for CI.scripts/run_tests.shin favor of CMake-based workflows.Code Quality Tooling
.clang-tidyconfiguration: fine-tuned enabled/disabled checks, set key warnings as errors, and added header filtering for focused analysis.clang-formatandclang-tidytargets, ensuring correct file selection and command usage. [1] [2]Codebase Improvements
[[nodiscard]], improved initialization, standardized output, and fixed minor code issues for clarity and correctness across multiple files. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18]