-
-
Notifications
You must be signed in to change notification settings - Fork 5
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
CI improvements #14
Merged
Merged
CI improvements #14
Conversation
This file contains 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
Now uses references instead of QPointer.
Add infrastructure and a CI job to run the static analysis tool clang-tidy. For now we only enable two checks. The goal is to progressively enable more checks until we at least cover all the default checks. For now the ci job is stopping short of actually running clang-tidy though because the GitHub Actions runner consistently terminate likely due to oom. Locally clang-tidy can be run with the new Python script in tooling/analysis.
Instead of using QPointers, which is marked by clang-tidy.
The QPointer is marked by clang-tidy.
Instead of calling delete on a raw pointer.
Use the member directly instead.
This also fixes a clang-tidy warning about delete-after-free.
The QPointers are marked by clang-tidy as use-after-free.
This was marked by clang-tidy. For now we just assume that we have the precondition that these values can't be zero and assert on it.
This was marked by clang-tidy.
This was marked by clang-tidy.
The QPointer is not needed here. Fixes a clang-tidy warning.
Instead of having a single clang/coverage build for all statid and dynamic analysis, adapt the CMake presets to have different presets for test builds with coverage using clang and gcc. We also directly switch the ci coverage build to the gcc preset. This allows to use gcc-only features in the coverage reporting.
Without the exclusion nearly everything is marked as partial hit only. See also [1][2]. [1] https://gcovr.com/en/5.0/faq.html#why-does-c-code-have-so-many-uncovered-branches [2] https://stackoverflow.com/q/42003783
gcov executable is failing on finding Catch2 source, which is built via FetchContent. For now ignore the error. The coverage reporting seems to work anyway.
The default retention duration for artifacts is 90 days with GitHub Actions. These reports are rather small in size. We may just store them for this period as they might be useful sometimes when comparing them to Codecov results.
Fetch the latest release.
The most recent release works again. The regresssion from gcovr 6, and why gcovr 5 was used, has been fixed.
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #14 +/- ##
===========================================
+ Coverage 28.65% 50.01% +21.36%
===========================================
Files 924 938 +14
Lines 90405 87251 -3154
Branches 40954 45473 +4519
===========================================
+ Hits 25906 43642 +17736
+ Misses 40752 38638 -2114
+ Partials 23747 4971 -18776 ☔ View full report in Codecov by Sentry. |
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.
Main points: