Draft: Feature/cppcheck parallel
What this MR does / why does DuMux need it:
After upgrading cppcheck from 2.9.x to 2.12.x, cppcheck takes much longer (apparently it used to abort checking for most targets).
The most expensive check, using --project=build-cmake/compile-commands.json
, does not parallelize, so this MR distributes the work using GNU parallel.
In addition we compile a more optimized build of cppcheck (dumux-docker-ci!39).
To make cppcheck even faster for MR pipelines, consider
-
using MR test selection to filter also compile commands -
not loading DUNE includes for MR, possibly replacing them by a .cfg file
Notes for the reviewer
Requires dumux-docker-ci!39
Before you request a review from someone, make sure to revise the following points:
-
does the new code follow the style guide? -
do the test pipelines pass? (see guide on how to run pipelines for a merge request) -
is the code you changed and/or the new code you wrote covered in the test suite? (if not, extend the existing tests or write new ones) -
does your change affect public interfaces or behavior, or, does it introduce a new feature? If so, document the change in CHANGELOG.md
. -
is the list of the header includes complete? ("include what you use") -
all files have to end with a \n
character. Make sure there is no\ No newline at end of file
comment in "Changes" of this MR.
Edited by Mathis Kelm