On Fri, 24 Feb 2023 at 12:11:19 +0100, Helmut Grohne wrote:
> On Fri, Feb 24, 2023 at 10:58:37AM +0100, Johannes Schauer Marin Rodrigues wrote:
> > Should other linters like shellcheck be disabled with
> > DEB_BUILD_OPTIONS=nocheck?
> I argue for "no" (see above).
In a typical build system like Autotools, CMake or Meson, it's going to
be much, much easier for the answer to be yes, because the obvious way to
make linters easy to run is to implement them as a (slightly specialized)
test. I think a pragmatic approach for Debian would be to say that nolint
SHOULD either disable lint checks, and nocheck MAY disable lint checks.
The way I've generally set up lint checks in my recent projects is to
make them a test that usually always passes (with non-fatal warnings
when a problem is detected, like "not ok # TODO" in TAP syntax), and
then have a non-default way to turn those warnings into a test failure,
which I use in upstream CI (but usually not in Debian packaging). I
think doing the lint checks, but ignoring their results other than as
human-readable diagnostics in the build log, should be considered a
valid implementation of nolint.