Is it possible to make --lintall the default behavior for `arc diff`?


#1

I have a C++ code base that I run clang-tidy as part of a custom linting script. Is it possible to configure arc such that --lintall is the default behavior when invoking arc diff?


#2

There’s no such config, but you can do one of several things:

  • Add a configuration to the linter engine (We don’t ship clang-tidy linter, so you should have some custom extension for this), and configure it in .arclint.
  • Make the extension always run as if --lintall was used.
  • Create an alias like arc alias mydiff diff -- --lintall, and then use arc mydiff instead of arc diff, which will run with this.

#3

Configure the linter to raise the clang-tidy messages at “error” severity, not “warning” severity.

The “warning” severity means “raise this message only if the line was changed, or if the --lintall flag is present”.

The “error” severity means “raise this message always”.

The “–lintall” flag might be more clearly named as “–treat-all-warnings-as-errors”.


#4

Thanks. This is exactly what I need. I modified my script to output clang-tidy warning as errors.

Just want to add that the use of “severity.rules” (for the script-and-regex linter which invokes the clang-tidy driver script) to map warnings to errors doesn’t seem to work.