--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: lintian: false positive pkg-js-tools-test-is-missing for openjk: assumes variables contain --with=nodejs
- From: Simon McVittie <smcv@debian.org>
- Date: Wed, 1 May 2019 08:44:23 +0100
- Message-id: <20190501074423.GA27799@espresso.pseudorandom.co.uk>
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
--- End Message ---
--- Begin Message ---
Source: lintian
Source-Version: 2.16.0
We believe that the bug you reported is fixed in the latest version of
lintian, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 928283@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Chris Lamb <lamby@debian.org> (supplier of updated lintian package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Mon, 08 Jul 2019 01:24:09 +0000
Source: lintian
Binary: lintian
Architecture: source all
Version: 2.16.0
Distribution: unstable
Urgency: medium
Maintainer: Debian Lintian Maintainers <lintian-maint@debian.org>
Changed-By: Chris Lamb <lamby@debian.org>
Description:
lintian - Debian package checker
Closes: 570998 928283 930700 930702 931183 931426 931446 931632
Changes:
lintian (2.16.0) unstable; urgency=medium
.
The "post-buster" release.
.
* Summary of tag changes:
+ Added:
- bin-sbin-mismatch
- command-in-sbin-has-manpage-in-incorrect-section
- directory-in-etc-sv-directory-without-executable-run-script
- package-supports-alternative-init-but-no-init.d-script
.
[ Chris Lamb ]
* Add 4.4.0 as a known Standards-Version.
* Post-buster changes:
- Reflect the release, updating dates (etc.) of "oldstable" and so on.
- Bump the recommended debhelper level to 12 (see #918809).
- Bump the old and ancient version numbers for Python 3 checks (see
#903399).
- Drop the deprecated --fail-on-warnings option to help towards fixing
Debian bug #709932.
- Upgrade package-uses-vendor-specific-patch-series to "E:" level
severity (see #904302).
* Warn about files referencing /usr/bin/foo if the binary is actually
installed under /usr/sbin/foo. (Closes: #930702)
* Check that a package that ships a /etc/sv/foo directory then
/etc/sv/foo/run exists and is executable. (Closes: #931426)
* Support suppress-tags-from-file in Lintian configuration file.
(Closes: #930700)
* Don't emit pkg-js-tools-test-is-missing if the "dh" invocation uses
variables in its arguments. (Closes: #928283)
* Fix "mistake||correction" delimiter for a number of entries in
data/spelling/corrections-case. (Closes: #931446)
* Disable the duplicate word checker when analysing patch files.
(Closes: #931183)
* Override dh_dwz in a binaries-general test to avoid testsuite hanging.
(Closes: #931632)
* Don't emit latest-debian-changelog-entry-without-new-version for
uploads to (eg.) buster-security to avoid false-positives when
performing "no-change" uploads with a ~debXuY suffix.
.
[ Felix Lechner ]
* Bump the minimum perltidy version required to avoid test failures.
* Add runtime dependency on liblist-compare-perl.
* Reduce the complexity of code in Lintian::Unpacker.
.
[ Dmitry Bogatov ]
* Check for commands in /sbin or /usr/sbin with manpages in the
incorrect section. (Closes: #570998)
.
[ Adam D. Barratt ]
* Lintian::Reporting::Util: Add missing import of Exporter::import.
.
[ Axel Beckert ]
* Fix typo in description of debian-watch-does-not-check-gpg-signature.
Checksums-Sha1:
7780d4d1666e565d4d6896b61ed38bee3f2f40c2 3932 lintian_2.16.0.dsc
e8be42aa5246ac2169c169bda3a7ed397eaaa6eb 1717700 lintian_2.16.0.tar.xz
c588149c4f060a817152bb9fd55d89aec87c8f97 1188840 lintian_2.16.0_all.deb
48bc228545fa1ec213e836e487d4bd8a909a6962 18434 lintian_2.16.0_amd64.buildinfo
Checksums-Sha256:
f5159f4227abd6348846ed02910ff4d5804759bbb60c45cf631a8f7c86280181 3932 lintian_2.16.0.dsc
99b993a22cbf3ae5b8f8e647225642b7c494bc8a196d96d4f32c6d2409b6ba85 1717700 lintian_2.16.0.tar.xz
0c5d59097e8448a057eeecccbd165a0b7bb971d462cee34b586936e0eec60b47 1188840 lintian_2.16.0_all.deb
33298dae021cecf0513e5ceb997a19bf357ac54f10e460d7f575ec13eb55602a 18434 lintian_2.16.0_amd64.buildinfo
Files:
6d1429d04072b8fed0b6d9bcb6a8d62c 3932 devel optional lintian_2.16.0.dsc
535139c446d3f7d9bde695d9a5a55618 1717700 devel optional lintian_2.16.0.tar.xz
61d71d8416af8af50064b4abe9af5a7a 1188840 devel optional lintian_2.16.0_all.deb
1ea96fbbcfc342ddad169b101ceb9803 18434 devel optional lintian_2.16.0_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEwv5L0nHBObhsUz5GHpU+J9QxHlgFAl0l5kEACgkQHpU+J9Qx
Hliw1A//ZnWJPDGlsC+YAAImWvjCqeQK5Vc5N+6SU/kplWIg5LVgOFz9nhQOvsex
Y4jJMNInII2eKBVirjMItkAJcxxkQJovH4GLmgYYtLjn+eBT5o0170LczfJfhij0
5EQsIPzhQD6sJEwXtvjzT7ftXQJkws4+AMcoK36rKXEDTck3qxT/ubpQ5Ch06dQP
zZZWmJGpRJzFowDuLdKS92x+gyQ1Pv/9ywP4KOMeFnYvcEfOImFgw2B3Hbc8VfVH
bGyMlL4a7bLgUODekwXuHsTGepnviQfMSoWyNj65L3DTQom381bqdS3+U4SEceXP
ndTMMK/8Ex1ZOjjJUSuIt7ch06fAcO4xcqnZmOFO/74MpzzYIw82EUW3V0dhAPZT
5ptEbskBROcxdTyVLGtOlSA1P0HMc9Pf8aZANmS6nik/QAa4Y5AFyi+zKqMUE+GH
FLjwM1jBeYir2X0hNhf/CbDlSNwoRo3SKupIXhhkL04vWEoQcR4IeqSEtVjEcBDU
CMaCmVECC3HE1fG1mVhCq6JalzEUPpy6S5vyVJEi3Ol+lO7GtftSNOS4V1qOFve+
LJTSXne1M2onJH5XOHHNMuQXhMNfv7Q3ghsIu1M5bj8u8xT4Jd9E5hdpy+XKA95g
u1yPkqdOxTggwTeOd0p2sXX5nMvQU01kUxFD5mml1Xdxi4Ns5EQ=
=W6wJ
-----END PGP SIGNATURE-----
--- End Message ---