-
Notifications
You must be signed in to change notification settings - Fork 790
Add clang-format check in CI/CD and format all files #667
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
base: master
Are you sure you want to change the base?
Conversation
ffc351b
to
9a7556e
Compare
7ddc6a7
to
285b4cf
Compare
Pull Request Test Coverage Report for Build 18599605414Details
💛 - Coveralls |
285b4cf
to
e354989
Compare
// To avoid the `(std::min)` workaround for when a min macro is defined | ||
#ifdef min | ||
#define WINDOWS_MIN min | ||
#undef min | ||
#endif | ||
#ifdef max | ||
#define WINDOWS_MAX max | ||
#undef max | ||
#endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was initially to fix the formatting being different between clang-format 14 and 20 for the (std::min)(x, y)
trick.
I ended up fixing it differently but this "guard" macros seems a bit cleaner than having to remember the (std::min)
workaround. Let me know if I should keep it
(Still have to test if it works on Windows tho)
.github/workflows/ci.yml
Outdated
- name: format | ||
if: ${{ startsWith(matrix.os, 'ubuntu-24') }} | ||
run: | | ||
clang-format --version | ||
git ls-files | grep -E '\.(cpp|hpp)' | xargs clang-format --dry-run --Werror | ||
sudo apt install -y clang-format-20 | ||
clang-format-20 --version | ||
git ls-files | grep -E '\.(cpp|hpp)' | xargs clang-format-20 --dry-run --Werror |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is running clang-format 20 only on Ubuntu okay?
Not sure how to solve the fact that people might have different versions installed..
The formatter hasn't been run in a long time so I formatted all the files (with the exact same formatting config as before) and added a check in CI/CD.
I feel like having a pre-commit config to run clang-format before commiting might be handy aswell