Package: lintian Version: 2.13.0 Severity: normal lintian emits pkg-js-tools-test-is-missing for the openjk source package in contrib.
I believe this is because it uses a variable in the dh invocation, to disable one binary package (which is not considered ready by upstream) unless built for experimental or with some DEB_BUILD_OPTIONS: dh_options = ifneq ($(with_jk2),ON) dh_options += -Nopenjk-outcast endif ... %: dh $@ --builddir=obj $(dh_options) and checks/debhelper.pm assumes this might contain all possible addons: # Variables could contain any add-ons so assume we have seen # them all. foreach my $addon (keys %seen) { $seen{$addon} = 1 if m,\$[({]\w,; } This was fine for the dh_python checks before 2.13.0, because they are "negative" checks triggered by the python addons *not* being seen, so processing variables like this disables the checks and cannot cause false positives. However, this new nodejs check is "positive" and triggers on the nodejs addon being seen, so processing variables like this enables the check. I think the solution would probably look something like this: my $seen_variable = 0; ... # Variables could contain any add-ons so treat this as weak evidence # that we have seen them all. $seen_variable = 1 if m,\$[({]\w,; ... if ($seen_dh and not $seen{'python2'} and not $seen_variable) { # (changed to add $seen_variable) # consider emitting python-depends-but-no-python-helper } ... if ($seen{'nodejs'} and not $overrides{'dh_auto_test'}) { # (unchanged) # consider emitting pkg-js-tools-test-is-missing } This would avoid false positives for the "positive" checks like nodejs, while also avoiding false positives for the "negative" checks like python. smcv -- System Information: Debian Release: 10.0 APT prefers unstable-debug APT policy: (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'buildd-unstable'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental-debug'), (1, 'buildd-experimental'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.19.0-4-amd64 (SMP w/2 CPU cores) Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8), LANGUAGE=en_GB.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages lintian depends on: ii binutils 2.31.1-16 ii bzip2 1.0.6-9 ii diffstat 1.62-1 ii dpkg 1.19.6 ii dpkg-dev 1.19.6 ii file 1:5.35-4 ii gettext 0.19.8.1-9 ii gpg 2.2.13-1 ii intltool-debian 0.35.0+20060710.5 ii libapt-pkg-perl 0.1.34+b1 ii libarchive-zip-perl 1.64-1 ii libcapture-tiny-perl 0.48-1 ii libcgi-pm-perl 4.40-1 ii libclass-accessor-perl 0.51-1 ii libclone-perl 0.41-1+b1 pn libdigest-sha-perl <none> ii libdpkg-perl 1.19.6 ii libemail-valid-perl 1.202-1 ii libfile-basedir-perl 0.08-1 ii libio-async-perl 0.72-1 ii libipc-run-perl 20180523.0-1 ii liblist-moreutils-perl 0.416-1+b4 ii libparse-debianchangelog-perl 1.2.0-13 ii libpath-tiny-perl 0.108-1 ii libtext-levenshtein-perl 0.13-1 ii libtimedate-perl 2.3000-2 ii libtry-tiny-perl 0.30-1 ii liburi-perl 1.76-1 ii libxml-simple-perl 2.25-1 ii libyaml-libyaml-perl 0.76+repack-1 ii man-db 2.8.5-2 ii patchutils 0.3.4-2 ii perl 5.28.1-6 ii t1utils 1.41-3 ii xz-utils 5.2.4-1 Versions of packages lintian recommends: ii libperlio-gzip-perl 0.19-1+b5 Versions of packages lintian suggests: ii binutils-multiarch 2.31.1-16 ii libhtml-parser-perl 3.72-3+b3 ii libtext-template-perl 1.55-1 -- no debconf information