lintian (2.15.0) unstable; urgency=medium [ Chris Lamb ] * t/bin/runtests: Correct equality operator preventing the correct parsing of --onlyrun="" used when (eg.) executing autopkgtests and apply a patch from Felix Lechner to specify a missing --work-dir argument when building test packages. (Closes: #929430) * Add references to Debian Policy §4.9.2 and §5.6.31 for checks regarding Rules-Requires-Root. (Closes: #929428) * Correct more false-positives for missing-systemd-timer-for-cron-script due to an incorrect regular expression. Thanks again to Francesco Poli (wintermute) for the patch. (Closes: #927970) * Remove unnecessary commas from tag long descriptions and improve grammar in the description of testsuite-autopkgtest-missing. [ Vagrant Cascadian ] * Add Guile 2.0 & 2.2 to and remove "ancient" versions 1.6 & 1.8 from the list of versioned interpreters. (Closes: #929501) [ Paul Wise ] * spelling: Add several corrections -- Chris Lamb Sun, 26 May 2019 14:12:53 +0000 lintian (2.14.0) unstable; urgency=medium [ Chris Lamb ] * Correct false-positives in missing-systemd-timer-for-cron-script due to an incorrect regular expression. Thanks to Francesco Poli (wintermute) for the patch. (Closes: #927970) * Adjust package-contains-python-header-in-incorrect-directory as Python 3.8 dropped the "m" modifier that was used in Python 3.7 and below (eg. /usr/include/python3.7m). (Closes: #928617) [ Ivo De Decker ] * Check for sources in the "main" section with only binaries in the "contrib" section. (Closes: #928126) [ Michael Biebl ] * Consider the now-preferred /usr/share/dbus-1/{system,session}.d directories (supported since dbus 1.9.18) when checking D-Bus services. (MR: !187) [ Xavier ] * Fix an error where debian/tests/pkg-js/files contained deep (but valid) directory. (MR: !199) [ Paul Wise ] * Add/fix several spelling corrections. * Sort the dictionary * Prefer American spelling for American typos -- Chris Lamb Wed, 22 May 2019 07:47:56 +0000 lintian (2.13.0) unstable; urgency=medium * Summary of tag changes: + Added: - debhelper-compat-level - patch-system - pkg-js-autopkgtest-file-does-not-exist - pkg-js-autopkgtest-test-is-missing - pkg-js-tools-test-is-missing - vcs - vcs-uri [ Niels Thykier ] * gitlab-ci: Run commands with the time command to get an estimate for each part. * Ensure that LINTIAN_CFG is always defined as it is used in debug output. * Fix a typo that called the wrong clean-up function with --unpack. * Extract reporting related utilities into a separate module. * Remove unused system_env function from Lintian::Util * Move Deb822 parsing into its own module called Lintian::Deb822Parser. [ Felix Lechner ] * Implement universal output format in Lintian. * Only run tests in t/bin/runtests but do not build any packages. [ Xavier ] * Test for Node.js packages that don't ship a debian/tests/pkg-js/test file or ship a debian/tests/pkg-js/files that contains invalid/missing references. (Closes: #923339) * Test for Node.js packages that use "--with nodejs" in debian/rules but do not specify a debian/tests/pkg-js/test file. (Closes: #923331) [ Adam D. Barratt ] * Update private/refresh-locale-codes to work with newer isoquery(1) and refresh data/files/locale-codes and data/fields/virtual-packages to match. [ Lucas Nussbaum ] * Emit a classification tag about the current debhelper compat level in use. (Closes: #926766) * Emit a classification tag that records the patch system in use. (Closes: #926767) * Emit a classification tags about the revision control system used by the package. (Closes: #926768) [ Michael Biebl ] * Also look in /usr/share/dbus-1/{system,session}.d for dbus configuration files. (MR: !187) [ Simon Quigley ] * Add "eoan" as a known Ubuntu distribution. (MR: !198) [ Chris Lamb ] * Clarify "Could not determine what you meant by" test harness error message; it is not always a parse error. [ Paul Wise ] * Add/fix several spelling corrections. -- Chris Lamb Mon, 22 Apr 2019 09:01:36 +0000 lintian (2.12.0) unstable; urgency=medium * Summary of tag changes: + Added: - doc-base-file-references-wrong-path - systemd-service-file-shutdown-problems [ Chris Lamb ] * Make the argument to --jobs non-optional to prevent a "0" job count being parsed if the argument is omitted. This resulted in Lintian getting stuck as it did not have any runners to perform work with. (Closes: #925970) * Fix false-positives in the version-substvar-for-external-package tag when a Provides field contains multiple items and/or with leading whitespace. (Closes: #833608) * Don't check for the x86-specific "SafeSEH" hardening feature for code that is JIT-compiled by the Mono runtime. (Closes: #926334) * Collapse the rather long-winded explanation regarding typos in the long description of the version-substvar-for-external-package tag. * Drop double-spaces in .desc files. [ Felix Lechner ] * Allow symlinks in autopkgtest paths. [ Niels Thykier ] * Restrict the number of parallel clean up jobs to match --jobs parameter. (Closes: #924714) [ Osamu Aoki ] * Check for files in doc-base control files that list paths pointing outside of /usr/share/{doc,info}. (Closes: #925200) [ Xavier Guimard ] * Don't emit the debian-watch-file-should-mangle-version tag if dversionmangle is set to "auto". (Closes: #926166) [ Topi Miettinen ] * Check for systemd service files that use DefaultDependencies=no and Conflicts=shutdown.target without Before=shutdown.target. (MR: !177) * Update the systemd hardening flags. (MR: !178) [ Balint Reczey ] * Run autopkgtest tests in parallel, autodetecting CPU count. (MR: !75) [ Paul Wise ] * Add/fix several spelling corrections. -- Chris Lamb Thu, 04 Apr 2019 08:20:06 +0000 lintian (2.11.0) unstable; urgency=medium [ Chris Lamb ] * Support dh-sequence-{gir,gnome,python3} etc. virtual packages as satisfying various build-dependencies. (Closes: #924082) * Don't detect non-maintainer upload (NMU) versions when checking for maintainer scripts that support "ancient" package versions. (Closes: #924501) * Correct false-positives in when checking for dh-runit packages that lack a "Breaks" substvar by ensuring that the binary package actually uses runit. (Closes: #924116) * Update the long description of the new-package-should-not-package-python2-module tag to justify further why a changelog entry is more appropriate than an override. * Remove errant "#" from the long description of inconsistent-appstream-metadata-license. [ Felix Lechner ] * Deprecate static labs; all labs are temporary from now on. * In autopkgtests, allow output to stderr to shorten waiting period. * Fix the rules-requires-root-implicitly test on stretch. * For stretch-backports, also Build-Depend on the "XS" version of the Text::CSV Perl module in addition to the pure Perl version. [ Stewart Ferguson ] * Allow *.pth files in Python directories to avoid false-positives for unknown-file-in-python-module-directory. (Closes: #924417) [ Paul Wise ] * Add/fix several spelling corrections. -- Chris Lamb Mon, 18 Mar 2019 22:20:48 +0000 lintian (2.10.0) unstable; urgency=medium [ Chris Lamb ] * Check for placeholder "" strings in debian/watch files as it can resut in uscan(1) generating a file with shell metacharacters. (Closes: #923589) * Add "itialize" to the list of "spelling-error-in-binary" exceptions. (Closes: #923725) * Use less-clunky "for entries that are too short" in the long description of debian-changelog-line-too-short. [ Paul Wise ] * Add several spelling corrections. -- Chris Lamb Fri, 08 Mar 2019 17:26:37 +0000 lintian (2.9.1) unstable; urgency=medium [ Felix Lechner ] * Add missing runtime dependency on libtry-tiny-perl. (Closes: #923262) [ Chris Lamb ] * Add an initial .gitab-ci.yml. -- Chris Lamb Mon, 25 Feb 2019 16:38:19 +0000 lintian (2.9.0) unstable; urgency=medium [ Felix Lechner ] * Add missing runtime dependency on libpath-tiny-perl. (Closes: #923229) [ Chris Lamb ] * Add /lib/runit/invoke/run as a known interpreter. (Closes: #923232) -- Chris Lamb Mon, 25 Feb 2019 12:36:32 +0000 lintian (2.8.0) unstable; urgency=medium [ Chris Lamb ] * Emit an experimental warning for packages that ship a cron script without an equivalent systemd .timer file. (Closes: #922862) * Make orig-tarball-missing-upstream-signature a "dsc" check so it also appears when running against non-.changes files. (Closes: #922557) * Check all combinations of processables and binary package names in order to avoid false-positives or unused override warnings in spelling checks depending on whether a .deb or .dsc (etc.) is passed to Lintian. (Closes: #921814) * Prevent pkg-config-references-unknown-shared-library false positives: - Ignoring entries such as -lfoo{install_suffix} as they are interpolated at runtime by Autoconf. (Closes: #922511) - Create an exception list and populating with shared objects shipped by libc6-dev and libgcc1. (Closes: #922402) - Manually add "gcc" as an exception. * Use the source package name (not the package section) when checking for uses-dpkg-database-directly exceptions. (Closes: #922530) * Correct reference to mips64el architecture to ensure we emit binary-from-other-architecture on this arch. Thanks to Helmut Grohne. (Closes: #921573) * Don't emit source-nmu-has-incorrect-version-number for uploads to backports. (Closes: #923060) * Ensure libpath-tiny-perl is installed regardless of nocheck build profile as it is needed to generate the Pod documentation. * Add dpatch to "nocheck" Build-Depends to avoid skipping tests and then don't emit build-depends-on-obsolete-package for Lintian itself as a result. * Remove "nocheck" Build-Depends restriction for libcapture-tiny-perl and specify it as a runtime dependency too. * Don't emit source-contains-prebuilt-java-object against Lintian itself as we ship a trivial HelloWorld.jar as a test fixture. * Don't print "Offering to re-calibrate..." message if we aren't actually about to offer. [ Felix Lechner ] * Ensure unpack loop stops when process succeeds after processable failed to try and prevent Lintian from occasionally hanging. (Closes: #922737) * Fix detection of security features in Portable Executable (PE) binaries. * Update recommendation in an update-menus long description that will not trigger a check for full path names in maintainer scripts. (MR: !149) * Interactively calibrate the expected tags in failing tests (MR: !145) and use green and red terminal colors when adding or removing tags during said calibration. (MR: !153) * t/runtests: * Split processing between scripts and tag tests. * Split out test routines to process universal tags. * Change options and arguments for stand-alone operation. * Drop obsolete old-format-menu-file tag. [ Guillem Jover ] * Don't hardcode ".gz" in the output of the malformed-deb-archive tag's extra information. (Closes: #922534) [ Paul Wise ] * Add several spelling corrections. -- Chris Lamb Sun, 24 Feb 2019 22:13:53 +0000 lintian (2.7.0) unstable; urgency=medium * Summary of tag changes: + Added: - script-uses-unversioned-python-in-shebang [ Chris Lamb ] * Track static libraries to avoid false-positives in pkg-config-references-unknown-shared-library. (Closes: #921872) * Assume that license files themselves do not require coverage in DEP-5 copyright files. (Closes: #921752) * Ignore spelling errors in patch author names. (Closes: #922233) [ Dmitry Bogatov ] * Add a classification tag to identify the number of scripts using unversioned Python shebangs. (Closes: #909510) [ Felix Lechner ] * Demote the Test-Against test metadata field to be a selector for false-positives only. (MR: !142) [ Paul Wise ] * Add several spelling corrections. -- Chris Lamb Thu, 14 Feb 2019 08:37:22 +0000 lintian (2.6.0) unstable; urgency=medium * Summary of tag changes: + Added: - package-contains-sass-cache-directory - package-uses-dh-runit-but-lacks-breaks-substvar - pkg-config-references-unknown-shared-library [ Chris Lamb ] * Enhancements: - Check for pkg-config(1) files that reference unknown shared objects via (for example) "Libs: -lfoo". (Closes: #920699) - Check for packages that use dh_runit without specifying a Breaks on the "${runit:Breaks}" substvar. (Closes: #920299) - Require that build paths aren't "/" when checking for file-references-package-build-path. - Check for packages that ship with .sass-cache directories. (Closes: #920593) - Detect accidental ".git.git" (etc.) in Vcs-Git headers. (Closes: #921084) * Bug fixes: - Fix FTBFS by avoiding "self" false-positives when checking for file-references-package-build-path in the Lintian test suite. (Closes: #920536) - Ignore duplicate .buildinfo files which can be supplied by using mergechanges(1) from devscripts. (Closes: #920469) - Rewrite "old" version calculation to prevent false-positives in the maintainer-script-supports-ancient-package-version tag. (Closes: #920638) - Prevent false-positives in the command-with-path-in-maintainer-script checks for sections automatically added by debhelper. (Closes: #920568) - Ignore quilt .pc directories when checking for inconsistent-appstream-metadata-license. (Closes: #920647) * Reporting improvements: - Include the upload and release dates in the output of the maintainer-script-supports-ancient-package-version tag. - Add a reference to the official specification in the long description of the unnecessary-source-date-epoch-assignment tag. * Misc: - Move to "Semantic Versioning" (https://semver.org/) scheme. - Print Carp tracebacks in --debug mode. [ Felix Lechner ] * Fix a race condition by stopping loop for collections after a task fails. (Closes: #920691) * Remove Test-For from all test specifications. (MR: !138) * Consolidate scripts in t/scripts; move internal harness tests there. * Clean up ./t; move helper binaries, including t/runtests, to t/bin. * Add an empty Test-Against to all tests that do not have one. * Calculate Test-For and Test-Against from new "Check" parameter in runner. * Add an internal self-test for all the fields in "desc" files. * Move all t/tags/tests addressing a single check into t/tags/checks/. (MR: !141) [ Jeremy Bicha ] * Drop "GTK" -> "GTK+" correction. (Closes: #911449) * Set "multimaint-merge" in debian/gbp.conf. (MR: !125) [ Xavier Guimard ] * Update debhelper addon specification now that nodejs-dev has been replaced by pkg-js-tools. (MR: !135) [ Paul Wise ] * Add several spelling corrections. -- Chris Lamb Wed, 06 Feb 2019 22:51:14 +0100 lintian (2.5.124) unstable; urgency=medium * Summary of tag changes: + Added: - obsolete-crypt-alias - obsolete-des-encryption [ Chris Lamb ] * Locate and process .buildinfo files if mentioned in a .changes file; previously it was only examined if explicitly referenced. Thanks to James Clarke. (Closes: #920228) * If the changelog entry is missing a maintainer (eg. " -- "), don't assume that it's an NMU. (Closes: #920184) * Permit "-b" branch specifications in Mercurial Vcs-Hg control fields. (Closes: #920314) * Really fix summary generation code to match the "WIP" entry in the changelog after moving to gbp-dch(1). * Add "could break" as a spelling correction. [ Felix Lechner ] * Allow tests to be freely organised such as by check. (MR: !132, !134) [ Zack Weinberg ] * Add a check for binaries using obsolete DES encryption. (Closes: #920376) [ Paul Wise ] * Add several spelling corrections. -- Chris Lamb Thu, 24 Jan 2019 23:47:53 +0100 lintian (2.5.123) unstable; urgency=medium * Summary of tag changes: + Added: - inconsistent-appstream-metadata-license - package-contains-python-header-in-incorrect-directory + Renamed: - package-contains-usr-unmerged-pathnames -> package-contains-real-file-outside-usr [ Chris Lamb ] * Group warnings that only differ on the architecture in the HTML reports. (Closes: #919162) * Prevent a large number false-positives when checking "new style" init scripts that use "#!/usr/bin/env /lib/init/init-d-script" as their shebang. (Closes: #919604) * Check for packages that ship headers in /usr/include/python3.x. (Closes: #919979) * Check for inconsistencies between debian/copyright and the information embedded/duplicated in AppStream metadata files. Thanks to Daniel Kahn Gillmor for the idea. (Closes: #907072) * package-contains-usr-unmerged-pathnames tag: - Prevent false-positives for leading directories. (Closes: #919839) - Rename from package-contains-real-file-outside-usr. - Move to "Classification" severity instead of a pedantic/experimental combination. * Use a verb in the debian-changelog-line-too-short tag description. * Use "state cache" vs "state-cache" consistently between source and binary packages when printing warnings during report generation. * Update added/removed tag summary generation code to match "WIP" now we are using gbp-dch(1). [ Niels Thykier ] * lib/lintian: Do entry removals asynchroniously in temp labs. * Lintian::Unpacker: * Migrate to use IO::Async. * Refactor to extract a "find_next_task"-sub(-generator). * Add a simple queue to avoid some overhead. * Support prioritizing unpacking by collections. [ Felix Lechner ] * Template cleanup: (MR: !131) - Rename tests-watchfile and tests-pedantic. - Use renamed template sets in skeletons for suite tests. - Move upstream/metadata from debian-native to debian-extra-non-native. - Delete unused template set source-arch-independent. [ Mike Miller ] * Reword the description of the description-too-long tag to match the actual check. (Closes: #919740) [ Paul Wise ] * Add several spelling corrections. -- Chris Lamb Mon, 21 Jan 2019 18:53:24 +0000 lintian (2.5.122) unstable; urgency=medium * Summary of tag changes: + Added: - example-incorrect-path-for-interpreter - incorrect-path-for-interpreter - package-contains-real-file-outside-usr - zero-byte-executable-in-path [ Chris Lamb ] * Add a check for empty executable files in PATH; these files do not do anything and produce no error message. (Closes: #919458) * Prevent false-positives in the maintainer-script-should-not-use-dpkg-maintscript-helper tag by adding optional support for ignoring sections automatically added by debhelper. (Closes: #917567) * Split the wrong-path-for-interpreter tag into "wrong" and "incorrect" variants, the latter with a reduced severity and capturing incorrect (but working) shebangs such as "#!/usr/bin/env perl". Thanks to Ivo De Decker for the report. (Closes: #917790) * Update Debian Policy regex and manual references since this document moved to Sphinx. (Closes: #918963) * Also update the Java policy references as a new version of Docbook generates different HTML links. * Tests: - Tidy "sorry" message in t/runtests. - Drop changelog-format.t tests now we are trialling using gbp-dch. - Add a note that using a "maintainer-script-should-not-" tag prefix ensures that the tag will automatically pass the internal coverage tests. * debian/control: - Clarify some grammar in the package long description. - Prune Uploaders field to the current members of the "lintian" LDAP group. With thanks to all who have contributed in the past. [ Felix Lechner ] * Always use the extracted testing code in autopkgtests. (Closes: #919096) * Exit test runner with error code after parsing errors on the command line. * Convert test modules to the "Test Anything Protocol" (TAP). - Run TAP scripts for all tests through TAP::Harness. (MR: !124) - Add a generic test script for TAP::Harness. - Add name of the generic TAP script to the default settings. - Install generic TAP script into work directories during preparation. * Make harness timestamp calculation more robust for non-existent files. * Always use the installed "dplint" in autopkgtests. [ Josh Triplett ] * Add a pedantic-level package-contains-real-file-outside-usr tag to detect files installed to /. (MR: !128) [ Paul Wise ] * Add several spelling corrections. -- Chris Lamb Thu, 17 Jan 2019 15:52:23 +0000 lintian (2.5.121) unstable; urgency=medium * Summary of tag changes: + Added: - maintainer-script-should-not-use-dpkg-maintscript-helper - maintainer-script-supports-ancient-package-version * checks/shared-libs.pm: + [CL] Fix symbols-file-missing-build-depends-package-field false-positives when a package contains more than one library. Thanks to Mike Gabriel for the bug report. (Closes: #918473) * checks/scripts.{desc,pm}: + [CL] Check for manual calls to dpkg-maintscript-helper(1) in maintainer scripts; recommend using dh_installdeb .maintscript files instead. (Closes: #917567) + [CL] Check for packages that have maintainer scripts that ship support code for legacy versions of Debian. (Closes: #917566) * data/debhelper/compat-level: + [CL] Don't emit a pedantic warning for compat level 12 "until bullseye to avoid having to revert that change in case you need an unblock for the buster release". (Closes: #918809) * data/scripts/interpreters: + [CL] Apply a patch from Mo Zhou to fix the Julia interpreter path. (MR: !120) * t/*: + [CL] Apply a patch from Felix Lechner to ensure the debhelper-compat-experimental tag is run after the upgrade to debhelper compat level 12. (MR: !117) + [CL] Apply a patch series from Felix Lechner to support adaptive rebuilding, speeding up the test suite by a factor of 17 (excluding "scripts" tests). (MR: !118) + [CL] Apply a patch series from Felix Lechner to add a number of "internal" tests for the test apparatus itself. (MR: !119) + [CL] Apply a patch series from Felix Lechner to split the preparation of tests from the test runner itself. (MR: !122) -- Chris Lamb Thu, 10 Jan 2019 21:16:24 +0000 lintian (2.5.120) unstable; urgency=medium * Summary of tag changes: + Removed: - versioned-dependency-satisfied-by-perl * checks/binaries.pm: + [CL] Guile object files do not objdump/strip correctly so exclude them from a number of tests. (Closes: #918444) * checks/fields.{desc,pm}: + [CL] Drop versioned-dependency-satisfied-by-perl; Perl now provides its dual-lived module packages with versions. (Closes: #917967) * checks/{menus,patch-systems}.desc: + [CL] Clarify that spelling-* tags also correct various grammatical errors too. * checks/rules.desc: + [AB] override_dh_auto_test-does-not-check-DEB_BUILD_OPTIONS: Replace misleading "profile" with "option" in long description. See #889746 and https://lists.debian.org/debian-devel/2019/01/msg00047.html * checks/systemd.pm: + [CL] Apply a patch from Robin Jarry to handle service templates for missing init scripts. (MR: !115) * checks/testsuite.pm: + [CL] Apply a patch from Ondřej Nový fix false-positives in the unnecessary-testsuite-autopkgtest-field tag with non-"autopkgtest" values in the Testsuite control field. (Closes: #918621) * data/systemd/init-whitelist: + [CL] Add "brightness" to the list of initscripts that do not need a corresponding service file. (Closes: #918459) * debian/control: + [AB] Build-conflict with libperl-critic-pulp-perl (except with nocheck build profile) as it adds additional perlcritic rules which cause several checks under t/scripts/01-critic/ to fail. * lib/Lintian/Util.pm: + [CL] Add optional support for stripping comments at EOL in read_dpkg_control via DCTRL_COMMENTS_AT_EOL. (Closes: #917964) -- Chris Lamb Mon, 07 Jan 2019 22:19:07 +0000 lintian (2.5.119) unstable; urgency=medium * checks/changelog-file.pm: + [CL] Avoid false-positives in changelog-file-missing-explicit-entry when uploading updates to updates such as "1.2-3+nmu2" or "1.2-3deb8u2". * checks/cruft.pm: + [BR] Following #916095, tag "invariant sections" modified by upstream versions as non official. * checks/debhelper.desc: + [CL] Include the debhelper-compat method of setting the compatibility level in a number of tag descriptions. Thanks to Jeremy Bicha for the idea. (Closes: #917345) * checks/python.desc: + [CL] Update the dependency-on-python-version-marked-for-end-of-life tag's description to mention that a commented override would be useful in order to document that the package will not ported to Python 3.x. Thanks to Scott Kitterman. (Closes: #917264) * checks/shared-libs.desc: + [CL] Clarify that "Build-Depends-Package" lines should start in column 1 of the file and not be indented to align with the symbols themselves. * checks/upstream-signing-key.pm: + [CL] Apply a patch from Felix Lechner to provide writable temporary home directory for GPG. (Closes: #913930) * data/debhelper/compat-level: + [CL] Bump the recommended and experimental debhelper compat levels to 12 and 13 respectfully. (Closes: #917344) * data/files/js-libraries: + [BR] Detect the html5shiv library. This library is the de facto way to enable the use of HTML5 "sectioning" elements in legacy Internet Explorer. + [BR] Detect the mocha testing framework and recommend libjs-mocha. + [BR] Detect the "chai" testing framework, recommending libjs-chai. * data/files/privacy-breaker-websites: + [BR] Suggest using libjs-html5shiv over linking to an external version. + [BR] Detect the libjs-chai package. + [BR] Detect the libjs-expect.js package. * data/spelling/corrections: + [PW] Add a number of corrections. * debian/control: + [CL] Move to debhelper compatibility level 12. * t/tests/*: + [CL] Apply a patch eries from Felix Lechner to ensure the tests pass under groff 1.22.4-1. (Closes: #917752, #917844) + [CL] Apply a patch series from Felix Lechner to update the Debhelper compatibility level in tests. The value is now read from Lintian::Data and no longer hardcoded. (MR: !111) * t/tests/debhelper-compat-experimental/tags: + [CL] Apply a patch from Felix Lechner to remove a tag that is no longer emitted. (MR: !112) -- Chris Lamb Tue, 01 Jan 2019 14:55:01 +0000 lintian (2.5.118) unstable; urgency=medium * Summary of tag changes: + Added: - changelog-file-missing-explicit-entry - debian-tests-control-and-control-autodep8 - debian-tests-control-autodep8-is-obsolete * checks/*.desc: + [CL] Consistently use a single space after a full-stop/period. * checks/changelog-file.{desc,pm}: + [CL] Check that 1.2-3~debXuY stanzas follow a 1.2-3 one. Thanks to Andreas Beckmann for the suggestion. (Closes: #916877) * checks/cruft.pm: + [CL] Allow some alternatives in the "invariant sections" regular expressions as some upstream's have modified the official wording. Thanks to Dmitry Bogatov for the patch. (Closes: #916095) * checks/files.pm: + [CL] The package-contains-documentation-outside-usr-share-doc tag should accept files under "/usr/share/help"; these are being installed by a number of GNOME packages. Thanks to Jeremy Bicha for the report. (Closes: #916497) + [CL] Avoid a number of false-positives in documentation files when processing the uses-dpkg-database-directly tag as these are invariably legitimate. + [CL] Prevent package-contains-no-arch-dependent-files false-positives regarding files under /usr/lib/. Thanks to Andreas Beckmann. (Closes: #916901, #917028) * checks/systemd.pm: + [CL] Don't emit systemd-service-file-missing-hardening-features for WantedBy=sleep.target "services" such as autosuspend. * checks/testsuite.{desc,pm}: + [CL] Apply a patch series from Paul Gevers to warn about obsolete debian/tests/control.autodep8 files. (MR: !95) * checks/version-substvars.pm: + [CL] Apply a patch from Matt Kraai (via MR !101) to make the version-substvar-for-external-package tag require versioned provides. (Closes: #833608) * CONTRIBUTING.md: + [CL] Update a number of references to Salsa, recommending merge requests, etc. * data/output/manual-references: + [CL] Refresh. * data/spelling/corrections: + [PW] Add a number of corrections. * data/standards-version/release-dates: + [CL] Add 4.3.0 as a known Standards-Version. * data/systemd/wantedby-whitelist: + [CL] Add default, network-online and sleep' to the list of valid WantedBy systemd targets. + [PW] Add a number of corrections. * debian/{docs,lintian.install}: + [CL] Order lines. to Salvo Tomaselli for the report. (Closes: #917120) * doc/lintianrc.example: + [CL] Clarify that spaces are valid in variable assignments. Thanks * private/refresh-manual-refs: + [CL] Update location of the Python policy; it is now shipped in the "python3" binary package. * t/*: + [CL] Apply a patch series from Felix Lechner to capture log output in tests using Capture::Tiny as it works better in a multi-threaded environment. (MR: !102) + [CL] Apply a patch from Felix Lechner to remove the "diff" directory and contents for two tests. (MR: !103) -- Chris Lamb Sun, 23 Dec 2018 16:42:08 +0000 lintian (2.5.117) unstable; urgency=medium * Summary of tag changes: + Added: - file-references-package-build-path * checks/files.pm: + [CL] Don't emit uses-dpkg-database-directly for d-i components; they likely know what they are doing with no alternatives. + [CL] Use the output from file(1) when determining whether to emit the package-contains-no-arch-dependent-files tag to catch packages that ship (for example) just a Python script under /usr/bin in an architecture-dependent package. This reverts 6f4bd2fee2 in order to distinguish between "data" and such scripts. Thanks to Dmitry Bogatov for investigating. (Closes: #916023) + [CL] Refactor, tidy and optimise various checks for the contents of files. + [CL] Check files for references to the build path if specified in a .buildinfo. (Closes: #916021) * checks/shared-libs.desc: + [CL] Clarify that symbols-file-missing-build-depends-package-field is emitted per-package in its long description, not based on a file. * checks/systemd.pm: + [CL] Don't emit systemd-service-file-missing-hardening-features for Type=oneshot "services" such as mdadm(8). * checks/watch-file.desc: + [CL] Correct grammar of the debian-watch-does-not-check-gpg-signature tag description. + [CL] Mark debian-watch-does-not-check-gpg-signature as "experimental" as it is not actionable in the vast majority of cases and is in danger of diluting the output of Lintian. (Closes: #916207) * data/spelling/corrections: + [PW] Add a number of corrections. * t/*: + [CL] Apply a patch series from Felix Lechner to use "skeletons" as test templates, fixing a "exec failed: Text file busy" regression when running tests by tag name. (Closes: #916087) + [CL] Apply a patch series from Felix Lechner to improve the "onlyrun=" test selection feature. One can now select all tests connected to particular Lintian check with "check:foo". (MR: !90) + [CL] Apply a patch set from Felix Lechner to sign test packages. when a upstream/private-key.asc is present. (MR: !93) -- Chris Lamb Fri, 14 Dec 2018 17:56:27 +0000 lintian (2.5.116) unstable; urgency=medium * checks/fields.pm: + [CL] Apply a patch from Felix Lechner to remove the incorrect line in the fields-bugs-field-does-not-refer-to-debian-infrastructure tag's output. (MR: !83) * data/fields/perl-provides: + [CL] Update for Perl 5.028001. * data/java/constants: + [CL] Apply a patch from Felix Lechner to fix the "maximum existing * debian/rules: + [CL] Apply a patch from Felix Lechner to remove the "runtests" build stamp mechanism as it blocks runs that should be allowed such as when only the test runner itself has changed. (MR: !80) * t/*: + [CL] Apply a patch series from Felix Lechner to make "pedantic" templates the default for all tests. (MR: !87) + [CL] Apply a patch from Felix Lechner to allow debian/rules to be generated from templates in tests. (MR: !81) + [CL] Apply a patch from Felix Lechner to remove pre-existing metadata in the upstream-metadata-is-not-a-file test. (MR: !84) + [CL] Apply a patch series from Felix Lechner to provide a generalised facility to make any test template set independent of the package format. (MR: !82) + [CL] Apply a patch series from Felix Lechner to support suite-independent test templates. (MR: !88) -- Chris Lamb Fri, 07 Dec 2018 08:59:39 +0000 lintian (2.5.115) unstable; urgency=medium * Summary of tag changes: + Removed: - debian-rules-makemaker-prefix-is-deprecated * checks/binaries.pm: + [CL] Allow packages to define an RPATH under /usr/lib/ghc/ as the Haskell team have their own scheme for this. (Closes: #914873) * checks/rules.{desc,pm}: + [CL] Drop the debian-rules-makemaker-prefix-is-deprecated tag as the transition was completed in 2015. Thanks to Niko Tyni for the update. (Closes: #914885) * checks/patch-systems.desc: + [CL] Downgrade package-uses-vendor-specific-patch-series from "E:" to "W:" as they are not RC bugs until the release of buster. * data/spelling/corrections: + [PW] Add a number of corrections. * t/*: + [CL] Apply a patch series from Felix Lechner to implement a universal test runner with file-based default values. (MR: !76) * t/runtests: + [CL] Apply a patch from Felix Lechner to fail tests with outdated specifications (ie. ./debian/debian exists). (MR: !77) * t/tests/{binaries-missing-lfs,deb-format-udeb-compression}: + [CL] Apply a patch from Adam Conrad to fix two typos introduced when parameterising test architectures. (Closes: #914952) * t/tests/files-multiarch-foreign-files: + [CL] Apply a patch from James Clarke to fix this test on non-amd64 architectures. (MR: !78) -- Chris Lamb Mon, 03 Dec 2018 13:33:49 +0000 lintian (2.5.114) unstable; urgency=medium * checks/debhelper.pm: + [CL] Apply a patch from Stephen Kitt to avoid false-positives for the package-does-not-use-debhelper-or-cdbs tag if the call to dh(1) is prefixed with "@", "+" or "-". (Closes: #914538) * checks/*, t/*: + [CL] Consistently use (eg.) "DEP 5" over "DEP-5" to match the style used on dep.debian.net. (Closes: #914562) * data/files/documentation-file-regex: + [CL] Prevent false-positives for files called (eg.) readMesh_off.m for the package-contains-documentation-outside-usr-share-doc tag which was matching an overly-permissive regex. Thanks to Rafael Laboissière (rafael) for the report. (Closes: #914500) * data/spelling/corrections: + [PW] Add a number of corrections. * t/*: + [CL] Apply a patch series from Felix Lechner to make the templating more flexible in tests, re-using the Skeleton: statements in "desc" files for more complex templating logic. (MR: !75) -- Chris Lamb Mon, 26 Nov 2018 08:21:31 +0000 lintian (2.5.113) unstable; urgency=medium * Summary of tag changes: + Added: - package-contains-file-in-usr-share-hal - package-uses-vendor-specific-patch-series - systemd-service-file-missing-hardening-features + Merged: - maintainer-script-should-not-use-dpkg-{database,status}-directly -> uses-dpkg-database-directly + Renamed: - init.d-script-does-not-implement-optional-option -> init.d-script-does-not-implement-status-option * checks/control-file.{desc.pm}: + [CL] Ensure the "Architecture" field in a changes files contains only the string "source" rather than checking whether it is defined or not. This fixes source-only-upload-to-non-free-without-autobuild false positives. Thanks to Chuan-kai Lin. (Closes: #914163) * checks/files.{desc,pm}: + [CL] Unify all dpkg internal database checks into a single new uses-dpkg-database-directly check, extending it to check all files shipped in package, not just the maintainer scripts. Thanks to Guillem Jover for the suggestion. (Closes: #913974) * checks/files.desc, checks/java.desc: + [CL] Clarify distinction between the package-installs-java-bytecode and source-contains-prebuilt-java-object tags. Thanks to Markus Koschany for the suggestion. (Closes: #879851) * checks/init.d.{pm,desc}: + [CL] Rework the init.d-script-does-not-implement-optional-option tag by renaming it to init.d-script-does-not-implement-status-option and update the description to make the distinction between the LSB (where it is required) and Debian Policy (where currently it is not). Thanks to Andreas Henriksson for the suggestion. (Closes: #913466) * checks/patch-systems.{desc,pm}: + [CL] Warn about packages that use vendor-specific patch series files since the CTTE decision in #904302. * checks/shared-libs.pm: + [CL] Apply a patch from James McCoy to fix a regression that was causing Lintian to incorrectly report the invalid-template-id-in-symbols-file and syntax-error-in-symbols-file tags. Thanks! (Closes: #913290) * checks/systemd.{desc,pm}: + [CL] Emit an experimental-level warning for .service files that do not appear to use any security/hardening features. (Closes: #913605) * checks/watch-file.pm: + [CL] Avoid debian-watch-file-should-mangle-version false-positives when the file uses the @DEB_EXT@ or auto dversionmangle features. Thanks to Sebastian Ramacher and Mattia Rizzolo. (Closes: #913761) * collection/java-info: + [CL] Prevent an "uninitialized value" warning when processing empty or otherwise truncated .class files. Thanks to Branden Robinson for the report. (Closes: #913398) * data/description/planned-features: + [AB] Add "is planned" and "is also planned". * data/fields/name_section_mappings: + [CL] Tidy file. * data/files/fnames: + [CL] Check for packages that install files to /usr/share/hal as the hal package was removed from Debian in 2014. Thanks to Paul Wise for the idea. (Closes: #913280) * data/spelling/corrections: + [AB] Add "redundant" and a bunch of variants around "conditional". + [PW] Add a number of corrections. * t/*: + [CL] Apply a patch series from Felix Lechner to parameterise the debhelper compatibility level in tests. (MR: !73) + [CL] Apply a patch from Felix Lechner to implement a new file hierarchy for test specifications. (MR: !74) * t/scripts/spellintian.t: + [CL] Make the "No no-op correction present..." test failure messages include the offending correction to make it easier to correct. -- Chris Lamb Fri, 23 Nov 2018 22:13:47 +0000 lintian (2.5.112) unstable; urgency=medium * Summary of tag changes: + Added: - public-upstream-key-in-native-package - public-upstream-key-not-minimal - public-upstream-key-unusable - public-upstream-keys-in-multiple-locations - systemd-service-file-pidfile-refers-to-var-run * checks/cruft.desc: + [CL] Bump the severity of the source-contains-prebuilt-windows-binary tag from "P:" to "W:" and update the description to mention that this could potentially be a DFSG violation. * checks/systemd.{desc,pm}: + [CL] Warn if a PIDFile entry in a .service unit references /var/run. (Closes: #913078) * checks/upstream-signing-key.{desc,pm}: + [CL] Apply a patch series from Felix Lechner to add multiple tests for upstream GPG keys. Thanks! (MR: !62) * data/java/constants: + [CL] Apply patches from Bas Couwenberg to update the bytecode checks for OpenJDK 11. (Closes: #912292) * data/rules/rules-should-not-use: + [CL] Ensure --dbgsym-migration='quoted with spaces' is correctly displayed when emitting debug-symbol-migration-possibly-complete. * data/spelling/corrections: + [PW] Add a number of corrections. * debian/control: + [CL] Apply a patch from Mathieu Parent to add a dependency on dpkg-dev to ensure dpkg-architecture is available. Thanks! (Closes: #912330) * t/*: + [CL] Apply a patch from Adam Conrad to fix two tests on non-amd64 architectures in Ubuntu. Thanks! (Closes: #913099) + [CL] Apply a patch series Felix Lechner to parameterise the source format in all applicable tests. (MR: !64) + [CL] Apply a patch series from Felix Lechner to parameterise the package architecture for all tests that build only single binary package. (MR: !68) * t/tests/basic-non-native-with-epoch/desc: + [CL] Apply a patch from Felix Lechner to correct a test "Type" field. (MR: !63) * t/tests/watch-file-pgpmode-next/*: + [CL] Apply a patch series from Felix Lechner to add missing "-I -E" options to the existing "--pedantic" one. (MR: !67) * vendors/ubuntu/main/data/changes-file/known-dists: + [CL] Add "disco" as a known Ubuntu distribution. -- Chris Lamb Thu, 08 Nov 2018 22:29:31 +0000 lintian (2.5.111) unstable; urgency=medium * Summary of tag changes: + Added: - maintainer-script-should-not-use-piuparts-variable - source-package-encodes-python-version * checks/binaries.pm: + [CL] Prevent a false-positive when checking statically-linked-binary when we do not have access to the source package to check for a Golang build-dependency by falling-back to checking the package name. Thanks to Jeffrey Cliff for the report. (Closes: #911864) * checks/changelog-file.desc: + [CL] Clarify the grammatical logic in the long description of the epoch-change-without-comment tag. * checks/cruft.pm: + [CL] Look for debian/missing-sources/foo for a missing "foo" to prevent source-is-missing false-positives. Thanks to Daniel Kahn Gillmor for the report. (Closes: #890468) * checks/menu-format.desc: + [CL] Apply a patch from Salvatore Bonaccorso to fix a typo in the description for the desktop-entry-lacks-icon-entry tag. (MR: !59) * checks/python.{desc,pm}: + [CL] Check for packages that encode a version number in their source package name. * checks/scripts.desc: + [CL] Warn about packages that use PIUPARTS_TEST (etc.) in their maintainer scripts. Thanks to Holger Levsen. (Closes: #912040) + [CL] Add a note that packages might have added the required dependency for missing-versioned-depends-on-init-system-helpers to Build-Depends instead of the binary package (eg. in src:lbcd). * data/spelling/corrections: + [PW] Add a number of corrections. + [CL] Add a "recognise" connection. (re. MR: !59). * data/testsuite/known-restrictions: + [CL] Apply a patch from intrigeri to add "superficial" to the list of known restrictions in testsuite definitions. This was added to autopkgtest in #904979. (MR: !60) * reporting/templates/tag.tmpl: + [CL] Also show the maintainer name on the tag-specific pages such as . -- Chris Lamb Mon, 29 Oct 2018 13:51:26 +0000 lintian (2.5.110) unstable; urgency=medium * Summary of tag changes: + Added: - symbols-file-missing-build-depends-package-field * checks/debhelper.desc: + [CL] Tidy a number of references regarding the debhelper-compat virtual package, in particular clarifying that this does not work for experimental/beta levels. + [CL] Update example experimental combination of using compatibility level 9 with debhelper >= 8.1.3 with using level 12 with debhelper >= 11.4~. * checks/fields.pm: + [CL] Apply a patch series from Felix Lechner to fix a false-negative in the multi-arch-same-package-has-arch-specific-overrides tag. (Closes: #911355) * checks/shared-libs.{desc,pm}: + [CL] Emit a "I:" warning for packages that do not specify a Build-Depends-Package field in their symbol files. (Closes: #911451) * data/files/js-libraries: + [CL] Prevent a false-positive in embedded-javascript-library as jquery-ui.structure.css is not shipped by libjs-jquery-ui. (Closes: #911311) * data/scripts/interpreters: + [CL] Apply a patch from Luca Boccassi to add /lib/init/init-d-script to the list of known interpreters. (MR: !56) * data/spelling/*: + [CL] Move the "needs" entry to the corrections-case file, preventing false positives in the spelling-error-in-{binary,changelog} tags that reference Georg Nees, an early pioneer of computer art. + [PW] Add a number of corrections. * t/*: + [CL] Apply a patch series from Felix Lechner to adjust some build-dependencies that were discovered when backporting to stretch. (MR: !51) + [CL] Apply a patch series from Felix Lechner to move data for upstream tarballs to "orig" to facilitate the addition of tests related to upstream signatures. (MR: !52) + [CL] Apply a patch series from Felix Lechner to use relative paths in Lintian options; a tight integration between the test runner and harness is generally undesirable. (MR: !54) + [CL] Apply a patch series from Felix Lechner to move the templated changelogs away from template directory. (MR: !57) + [CL] Apply a patch series from Felix Lechner to remove the default.upstream placeholder in empty template directories. (MR: !58) -- Chris Lamb Mon, 22 Oct 2018 01:06:54 +0000 lintian (2.5.109) unstable; urgency=medium * Summary of tag changes: + Added: - maintainer-script-should-not-parse-etc-passwd-or-group - missing-versioned-depends-on-init-system-helpers - unknown-file-in-python-module-directory * checks/debhelper.pm: + [CL] Avoid false-positives when using the blends-dev package for the package-does-not-use-debhelper-or-cdbs tag. (Closes: #910453) * checks/files.{pm,desc}: + [CL] Check for packages that ship non-Python files in top-level Python module directories such as /usr/lib/python3/dist-packages. * checks/scripts.{desc,pm}: + [CL] Check for packages missing versioned dependencies on init-system-helpers. (Closes: #910594) + [CL] Check for packages that manually parse /etc/passwd or /etc/group using grep/egrep etc. in their maintainer scripts. Thanks to Rhonda D'Vine for the bug report. (Closes: #911157) * t/tests/*: + [CL] Apply a patch from Felix Lechner to fix some test descriptions not parsed correctly due to continuation lines. + [CL] Apply a set of patches from Felix Lechner to make various tests architecture independent. + [CL] Apply a patch from Felix Lechner to require build dependencies as prerequisites for tests. + [CL] Apply a patch from Felix Lechner to clarify the substitution variable name for the test package's Architecture field. * t/tests/debhelper-dh-nativejava: + [CL] Apply a patch from Felix Lechner to remove this now-obsolete test given that -gcj packages are no-longer built. -- Chris Lamb Wed, 17 Oct 2018 02:38:36 +0000 lintian (2.5.108) unstable; urgency=medium * Summary of tag changes: + Added: - maintainer-script-has-invalid-update-inetd-options * checks/scripts.{desc,pm}: + [CL] Check for calls to update-inetd(1) that use "--group" without "--add" and "--pattern" with "--add". (Closes: #909511) * checks/testsuite.pm: + [CL] Avoid testsuite-dependency-has-unparsable-elements false positives when the "Depends" field starts with a newline. Thanks to Mattia Rizzolo for the report. (Closes: #910210) * data/spelling/corrections: + [PW] Add a number of corrections. * debian/control: + [NT] Remove myself from the Uploaders field. * t/source/*: + [CL] Apply two patch series from Felix Lechner to rename a test target to match its name and also to adjust version numbers to match test targets produced. -- Chris Lamb Fri, 05 Oct 2018 11:07:25 +0000 lintian (2.5.107) unstable; urgency=medium * checks/changes-file.{desc,pm}: + [CL] Don't emit changelog-empty-entry if distribution is UNRELEASED. (Closes: #909674) * checks/debhelper.desc: + [CL] Apply patch from Josh Triplett to improve the long description of excessive-debhelper-overrides. * checks/scripts.{desc,pm}: + [CL] Don't emit udevadm-called-without-guard if the package has a dependency on udev itself. (Closes: #909801) * data/rules/rules-should-not-use: + [CL] Ensure --dbgsym-migration='quoted' is correctly displayed when emitting the debug-symbol-migration-possibly-complete tag. * data/spelling/corrections: + [CL] Add a suggestion from Sven Joachim to add "practical" and "practically" as spelling corrections for "pratical" and "pratically". (Closes: #909772) + [CL] Add "practically" as a correction for "practicaly". + [PW] Add a number of corrections. -- Chris Lamb Mon, 01 Oct 2018 13:46:42 +0000 lintian (2.5.106) unstable; urgency=medium * Summary of tag changes: + Added: - excessive-debhelper-overrides - package-installs-apt-keyring * checks/debhelper.{desc,pm}: + [CL] Warn about packages that use an excessive (currently >= 20) number of debhelper overrides. * checks/files.{desc,pm}: + [CL] Apply a patch from Josh Triplett to check for packages that install APT keyrings without being called "foo-archive-keyring" or "foo-apt-source". + [CL] Apply a patch from Josh Triplett to allow packages such as "foo-apt-source" to install APT sources. * data/binaries/spelling-exceptions: + [CL] Also add "wiH" (alongside "wIH") to the list of "spelling-error-in-binary" exceptions. * t/*: + [CL] Apply a patch series from Felix Lechner to support wildcards in test architecture fields. Thanks! + [CL] Apply a patch series from Felix Lechner to disable architecture overrides in the testsuite; see for more information. + [CL] Apply a patch series from Josh Triplett to add "Test-Depends" to a few tests. (Closes: #908915) -- Chris Lamb Wed, 26 Sep 2018 15:04:01 +0000 lintian (2.5.105) unstable; urgency=medium * Summary of tag changes: + Added: - debian-rules-should-not-use-custom-compression-settings - debian-source-options-has-custom-compression-settings + Removed: - xz-compression-level-too-high * checks/cruft.pm: + [CL] Do not emit package-does-not-install-examples for example directories under "vendor" or "third_party". * checks/debian-source-dir.{desc,pm}: + [CL] Warn about debian/source/options specifying custom compression settings. (Closes: #906614) * checks/rules.{desc,pm}: + [CL] Expand and rename xz-compression-level-too-high to warn about all manual adjustments to such settings. (Closes: #906611) * commands/lintian.pm: + [CL] Show the number of unused overrides in the "N: 1 tag overridden ..." summary line. (Closes: #909319) * t/*: + [CL] Apply a patch series from Felix Lechner to support dynamic test rebuilding. -- Chris Lamb Mon, 24 Sep 2018 10:04:39 +0000 lintian (2.5.104) unstable; urgency=medium * checks/description.pm: + [CL] Check for overly-indented paragraph separators in package long descriptions. (Closes: #909272) * checks/fields.pm: + [CL] Apply patches from Josh Triplett to re-use the metapackage detection logic from Lintian::Collect::Binary and to allow metapackages to depend on toolchain packages. * checks/source-copyright.pm: + [CL] Fix a number of false-positives when checking for incomplete Creative Commons licenses. Thanks to Jonathan Dowland (jmtd) for collecting a corpus of test data. (Closes: #906284) + [CL] Also check the "Source" field when looking for repack explanations as per section 6.4 of the machine-readable debian/copyright file specification. (Closes: #909270) + [CL] Include the line number in the output of the incomplete-creative-commons-license tag. * private/refresh-ftp-master-tags: + [CL] Remove any duplicates from FTPmaster's list of supplied tags when automatically generating the ftp-master-{fatal,nonfatal} data files. This should be fixed upstream via . * profiles/debian/ftp-master-auto-reject.profile: + [CL] Refresh tags via private/refresh-ftp-master-tags, specifically allowing dir-or-file-in-etc-opt to be overridable. (Closes: #908911) -- Chris Lamb Fri, 21 Sep 2018 08:13:34 +0000 lintian (2.5.103) unstable; urgency=medium * private/refresh-manual-refs: + [CL] Apply a patch series from Joseph Herlant to update some locations of manual references. * t/helpers/bin/create-deb: + [CL] Apply a patch from Felix Lechner to removed a likely-accidental slash in a find(1) call. -- Chris Lamb Fri, 14 Sep 2018 17:33:43 +0000 lintian (2.5.102) unstable; urgency=medium * checks/files.pm: + [CL] Ensure package-contains-documentation-outside-usr-share-doc also excludes files in directories called (eg.) "autotools_templates" or "my-templates.d". (Closes: #907734) * data/fields/name_section_mappings: + [CL] Reclassify xfonts-foo packages as part of the "fonts" section as nobody was doing this in practice. This reverts the change requested in #878609 which was released inLintian 2.5.72. Thanks to Russ Allbery. (Closes: #907725) -- Chris Lamb Tue, 11 Sep 2018 19:33:54 +0000 lintian (2.5.101) unstable; urgency=medium * Summary of tag changes: + Added: - changelog-distribution-does-not-match-changes-file - package-builds-dbg-and-dbgsym-variants * checks/changes-file.{desc,pm}: + [CL] Check for packages that build both foo-dbg and foo-dbgsym debug symbol variants. (Closes: #907423) * checks/changelog-file.{desc,pm}: + [CL] Check that .changes and debian/changelog distribution are identical. (Closes: #906610) * checks/control-files.desc: + [CL] Clarify that checks/control-files.* relates to the "control" tarball, not debian/control in the source tarball. * checks/fields.desc: + [CL] Clarify that the target of the dbg-package-missing-depends check cannot be "Architecture: all". * checks/files.pm: + [CL] Don't emit package-contains-documentation-outside-usr-share-doc for files in "templates" directories. (Closes: #907734) + [CL] Apply a patch from Josh Triplett and Ximin Luo to ignore false-positive "ancient" files generated by Rust. * checks/init.d.pm: + [CL] Avoid false positives in init.d-script-possible-missing-stop when checking initscripts in "early boot" packages such as udev, etc. (Closes: #908185) * checks/scripts.desc: + [CL] Apply a patch from Adrian Bunk to improve the long description of the multi-arch-same-package-calls-pycompile tag. + [CL] Update the long description of wrong-path-for-interpreter to reflect the weakening of the /usr/bin/perl "should" requirement and to use "particular" over "special exception". Thanks to David Bremner. (Closes: #908350) * data/changelog-file/invalid-dates: + [CL] Merge patch from Josh Triplett to display the correct "short" three-letter dates for June and July. * lib/Lintian/Data.pm: + [CL] Apply a patch series from Josh Triplett to add a "matches_any" utility function to Lintian::Data instances and ports a number of applicable instances to use it. Thanks! -- Chris Lamb Sun, 09 Sep 2018 09:34:50 +0000 lintian (2.5.100) unstable; urgency=medium * Summary of tag changes: + Added: - obsolete-runtime-tests-restriction - package-contains-python-dot-directory - skip-systemd-native-flag-missing-pre-depends + Renamed: - vcs-obsolete-in-debian-infrastructure -> vcs-deprecated-in-debian-infrastructure * checks/control-file.{desc.pm}: + [CL] Don't check the .dsc for "XS-Autobuild"; check the control file itself. This fixes source-only-upload-to-non-free-without-autobuild. (Closes: #907681) * checks/debhelper.pm: + [CL] Also check override_dh_systemd_-arch and -indep for debian-rules-uses-deprecated-systemd-override. (Closes: #907845) * checks/fields.{desc.pm}: + [CL] Rename vcs-deprecated-in-debian-infrastructure and update the documentation to match. (Closes: #907578) * checks/scripts.{desc.pm}: + [CL] Check for "invoke-rc.d --skip-systemd-native" without a suitable Pre-Depends. (Closes: #907836) * checks/testsuite.{desc,pm}: + [CL] Don't emit unknown-runtime-tests-feature for autopkgtest "Features:" entries that use the "test-name=foo" nomenclature. (Closes: #907620) + [CL] Apply patch from Paul Gevers to emit warnings for deprecated test features. * data/files/fnames: + [CL] Check for "dot" directories in Python packaging such as ".cache", etc; they are usually an error. (Closes: #907870) * data/spelling/corrections: + [PW] Add a number of corrections. * data/testsuite/known-restrictions: + [CL] Apply patch from Paul Gevers to add hint-testsuite-triggers and skip-not-installable to the list of known autopkgtest restrictions. * lib/Lintian/Output.pm: + [CL] Escape output if --color=html is used. This prevents browsers loading images/stylesheets from foreign websites that are part of warning messages. (Closes: #907667) * Miscellaneous: + [CL] Apply patch Daniele Forsi fixing a large number of typos in the codebase, documentation, etc. + [CL] Update tests to support dash 0.5.10.2. -- Chris Lamb Thu, 06 Sep 2018 12:09:56 +0000 lintian (2.5.99) unstable; urgency=medium * checks/crufts.desc: + [FL] Improve tag description for 'package-does-not-install-examples'. * checks/source-copyright.desc: + [CL] Correct "may be" typo in the long description for the 'incomplete-creative-commons-license' tag. * data/cruft/warn-file-type: + [CL] Match (for example) foo_o.golden with foo.cc to avoid source-is-missing false-positives. (Closes: #907475) * t/tests/changes: + [FL] Place all tests for the 'changes' suite into their own directories. -- Chris Lamb Wed, 29 Aug 2018 14:18:31 +0000 lintian (2.5.98) unstable; urgency=medium * Summary of tag changes: + Added: - debian-rules-passes-version-info-to-dh_shlibdeps - multi-arch-same-package-calls-pycompile * checks/rules.pm: + [CL] Apply patch from Peter Pentchev to fix false-positives for missing Build-Depends on debhelper when using debhelper-compat commands. (Closes: #907261) * checks/scripts.{desc,pm}: + [CL] Warn about Multi-Arch: same packages that use pycompile or py3compile in their maintainer scripts. (Closes: #907276) + [CL] Expand the description to explain why we emit wrong-path-for-interpreter for #!/usr/bin/env perl. * checks/source-changelog.pm: + [FL] Fix false positives in version parsing, especially when some components are "0". (Closes: #906957) * data/rules/rules-should-not-use: + [CL] Check for packages that pass -V to dh_shlibdeps instead of dh_makeshlibs. (Closes: #906722) * data/standards-version/release-dates: + [CL] Add 4.2.1 as a known Standards-Version. -- Chris Lamb Sun, 26 Aug 2018 09:00:19 +0000 lintian (2.5.97) unstable; urgency=medium * Summary of tag changes: + Added: - debian-changelog-version-requires-debian-revision - maintainer-script-needs-depends-on-xfonts-utils - malformed-debian-changelog-version - missing-call-to-update-fonts - upload-has-backports-version-number + Renamed: - native-package-with-dash-version -> hyphen-in-native-debian-changelog-version - non-native-package-with-native-version -> hyphen-in-upstream-part-of-debian-changelog-version * checks/changes-file.{desc,pm}: + [CL] Apply patch from Julien Cristau (with test) to warn about uploads that have a version containing "~bpo" but their target distribution is not *-backports. (Closes: #906155) * checks/scripts.{desc,pm}: + [CL] Check for packages that contain X11 fonts but do not run update-fonts-* in their postinst or depend on xfonts-utils. (Closes: #905881) * checks/source-changelog.{desc.pm}: + [FL] Rework, centralise and improve version parsing. (Closes: #886036) * data/common/dh_addons: + [NT] Refresh data. * data/debhelper/dh_{commands,packages}: + [NT] Refresh data. * data/spelling/corrections: + [PW] Add a number of corrections. * data/testsuite/known-restrictions: + [CL] Re-add "allow-stderr" accidentally dropped in 0cb688fb. (Closes: #905843) * private/refresh-debhelper-data: + [NT] Add debhelper-compat an alternative to debhelper in the data files. * t/scripts/01-critic/runner.pl: + [CL] Bump perltidy test dependencies to prevent a failing build in backports, etc. -- Chris Lamb Sat, 18 Aug 2018 08:47:03 +0000 lintian (2.5.96) unstable; urgency=medium * Summary of tag changes: + Added: - incomplete-creative-commons-license - maintainer-script-should-not-use-dpkg-database-directly + Removed: - no-upstream-changelog + Renamed: - package-contains-upstream-install-documentation -> package-contains-upstream-installation-documentation * checks/changelog-file.{desc,pm}: + [CL] Drop no-upstream-changelog; it is rarely actionable and simply introduces unnecessary noise and/or requiring an override. It had additionally been disabled in the Ubuntu profile since 2011. (Closes: #513544, #646192) * checks/cruft.desc: + [CL] Tidy the description of the license-problem-cc-by-nc-sa and license-problem-non-free-img-lenna tags. * checks/files.{desc,pm}: + [BR] Improve package-contains-documentation-outside-usr-share-doc by checking if README includes 'this directory' (Closes: #904852) + [CL] Rename package-contains-upstream-install-documentation tag to package-contains-upstream-installation-documentation. * checks/source-copyright.{desc,pm}: + [CL] Check for Creative Commons license texts that use the incomplete "human-readable" summary. (Closes: #903470) * data/scripts/maintainer-script-bad-command: + [CL] Warn about packages that directly query the dpkg database in their maintainer scripts. Thanks, Guillem Jover! (Closes: #905469) * data/spelling/corrections: + [PW] Add a number of corrections. -- Chris Lamb Thu, 09 Aug 2018 13:44:29 +0000 lintian (2.5.95) unstable; urgency=medium * Summary of tag changes: + Added: - debhelper-compat-virtual-relation - depends-on-python2-and-python3 - no-op-testsuite - r-package-not-arch-all - source-only-upload-to-non-free-without-autobuild * checks/debhelper.{desc,pm}: + [CL] Support "debhelper-compat (= X)" build-dependency as a replacement for "debhelper (>= X~)". (Closes: #904886) * checks/changes-file.{desc,pm}: + [CL] Detect source-only uploads to non-free uploads that will not be autobuilt by default. (Closes: #905467) * checks/control-file.desc: + [AB] Fix duplicate word "the" in tag description. * checks/cruft.pm: + [CL] Don't emit mentions-deprecated-usr-lib-perl5-directory for debian/*.install files as they are used as source directories. (Closes: #905635) * checks/fields.{desc.pm}: + [CL] Warn about R packages incorrectly set to "Architecture: any". (Closes: #904985) * checks/files.{desc,pm}: + [CL] Whitelist files in /usr/share/doc and /usr/share/locale for the missing-depends-on-sensible-utils tag and update testsuite to match. (Closes: #904936) + [CL] Add Suggests and Pre-Depends as potential relations with the sensible-utils package. Thanks to Guillem Jover for the idea. * checks/python.{desc,pm}: + [CL] Check for Python packages that have a relation on both Python 2 and Python 3. (Closes: #904817) * checks/testsuite.{desc,pm}: + [CL] Warn about packages that have a single, no-op autopkgtest. (Closes: #905030) + [CL] Move list of known fields, "Restriction" fields and testsuites to files under data/testsuite/. + [CL] Improve the long description of the testsuite-autopkgtest-missing tag; in particular, reference that autopkgtest results now influence migration from unstable to testing. * data/debhelper/filename-config-files: + [NT] Add mime and sharedmimeinfo as known debhelper config files. * data/scripts/interpreters: + [CL] Prevent ruby-script-but-no-ruby-dep false positives by also accepting ruby:any as a dependency. Thanks to Marc Dequènes for the bug report. (Closes: #905258) * data/spelling/corrections: + [PW] Add a number of corrections. * data/standards-version/release-dates: + [CL] Add 4.2.0 as a known Standards-Version. * data/testsuite/known-restrictions: + [CL] Add "flaky" and "skippable" to the list of known Restrictions in testsuite definitions. Thanks to Rebecca N. Palmer. (Closes: #904623) * lib/Lintian/Collect/Package.pm: + [CL] Don't assume that "tar -tv" output always includes a time. (Closes: #905423) * debian/rules: + [CL] Apply a patch from Felix Lechner which fixes a typo which was preventing the 'runtests' target relying on test descriptions. -- Chris Lamb Tue, 07 Aug 2018 13:02:08 +0000 lintian (2.5.94) unstable; urgency=medium * Summary of tag changes: + Added: - spelling-error-in-rules-requires-root + Renamed: - missing-depends-on-sensible-utils => script-needs-depends-on-sensible-utils * checks/control-file.desc: + [CL] Raise the severity of the debian-control-has-empty-field tag from "P:" to "I:" and explicitly test the "whitespace" cases. (Closes: #904420) + [CL] Warn about mispellings of Rules-Requires-Root. Thanks to Axel Beckert for the idea. (Closes: #904522) * checks/cruft.{desc,pm}: + [CL] Correctly warn about packages using sensible-utils without a relationship by checking all files instead of just maintainer scripts. Thanks to Guillem Jover. (Closes: #872611) * checks/scripts.pm: + [CL] Policy 10.4 states that Perl scripts must use /usr/bin/perl directly and not via /usr/bin/env, etc. (Closes: #904414) * data/scripts/interpreters: + [CL] Add the Julia language as a known interpreter via #!/usr/bin/julia. (Closes: #904140) * data/spelling/corrections: + [PW] Add a number of corrections. -- Chris Lamb Wed, 25 Jul 2018 12:11:14 +0000 lintian (2.5.93) unstable; urgency=medium * Summary of tag changes: + Added: - vcs-field-mismatch * checks/cruft.pm: + [CL] Don't emit r-data-without-readme-source by checking that .rda (etc.) files aren't actually R data files. (Closes: #903435) * checks/fields.{desc,pm}: + [CL] Add support and update tests for the "Vcs-Git: uri [subdir]" syntax. (Closes: #903103) + [CL] Check for mismatched Vcs-* fields. (Closes: #903690) * checks/gir.pm: + [CL] Apply patch from Simon McVittie to don't warn about wrong section for "oldlibs". * data/python/versions: + [CL] Don't emit old-python-version-field for X-Python3-Version 3.5 just yet. (Closes: #903399) * data/spelling/corrections: + [PW] Add a number of corrections. * lib/Lintian/Collect/Package.pm: + [CL] Support parsing the filename component of tar -tvf output when delimited by multiple spaces (not just a single one) to prevent source-contains-empty-directory false positives. (Closes: #903307) -- Chris Lamb Mon, 16 Jul 2018 09:39:46 +0000 lintian (2.5.92) unstable; urgency=medium The "Policy 4.1.5" release. * Summary of tag changes: + Added: - font-outside-font-dir - package-contains-documentation-outside-usr-share-doc - package-contains-eslint-config-file - package-contains-npm-ignore-file * checks/files.{desc,pm}: + [BR] Detect ESLint config files installed in the tree. ESLint is pluggable linting utility for JavaScript. This kind of files belong to source not to installed package. + [BR] Detect .woff, .woff2 and .eot files as fonts. + [BR] Detect installed fonts outside /usr/share/fonts. + [BR] Detect .npmignore files installed in the tree. These files help npm the Node.js package manager to keep files out of npm package. + [BR] Detect documentation files outside /usr/share/doc. (Closes: #901274) + [CL] Apply patches from Jonathan Dowland (jmtd) to ignore rel="edituri" and rel="copyright" URIs when checking external URIs embedded in HTML files. (Closes: #902919) + [CL] Policy 4.1.5 adopts FHS 3.0 so permit files/dirs in /usr/libexec. (Closes: #834607) * data/files/{js-libraries,privacy-breaker-websites}: + [CL] Replace references to an unknown "libjs-normalize.css" package with node-normalize.css package. Thanks to Lumin for the report. (Closes: #902926) * data/spelling/corrections: + [CL] Drop non-hyphenated versions of "re-enable" and "re-enabled"; these are seemingly legitimate. See for the background and further discussion. + [PW] Add a number of corrections. * data/standards-version/release-dates: + [CL] Add 4.1.5 as a known Standards-Version. * debian/rules: + [CL] Don't install /usr/share/lintian/data/README; it's not very useful at runtime and avoids a package-contains-documentation-outside-usr-share-doc warning. * t/scripts/spellintian.t: + [PW] Differentiate between no-op corrections and case sensitive corrections. + [CL] Bump test count. -- Chris Lamb Wed, 04 Jul 2018 15:31:11 +0000 lintian (2.5.91) unstable; urgency=medium * checks/rules.desc: + [CL] Replace DH_BUILD_MAINT_OPTIONS with DEB_BUILD_MAINT_OPTIONS in tag description. Thanks to Drew Parsons for the report. (Closes: #901581) * checks/rules.{pm,desc}, data/*: + [CL] Also permit "python2" and suffixed variants as substitutes for "python" (etc.) to avoid false-positives in the missing-dep-for-interpreter, missing-build-dependency-for-dh-addon and missing-python-build-dependency tags. (Closes: #901075) * data/spelling/corrections: + [PW] Add a number of corrections. -- Chris Lamb Sat, 16 Jun 2018 17:59:35 +0000 lintian (2.5.90) unstable; urgency=medium * checks/binaries.pm: + [CL] Ignore .debuginfo files under /usr/lib/jvm to prevent false- positives in shared-lib-without-dependency-information. (Closes: #900268) * checks/cruft.pm: + [BR] Ignore HTML bold tags (eg. ) during license checking. * checks/fields.{desc,pm}: + [CL] Move invalid-version-number-for-derivative to a "source" type check so we have access to $info->native to prevent false-positives when checking derivative versions. * checks/systemd.pm: + [CL] Don't use potentially-undefined value in invalid .service files. * checks/version-substvars.pm: + [CL] Fix a false-positives in version-substvar-for-external-package when the "external" package is actually a "Provides" in the current source package. (Closes: #833608) * data/*: + [CL] Update and expand the documentation of derivative-{changed-by,versions} to match the implementation. * data/fields/obsolete-packages: + [BR] Detect obsolete Adobe Flash packages. * data/files/js-libraries: + [BR] Detect libjs-jquery-ui, a set of user interface interactions, effects, widgets, and themes built on top of the jQuery Javascript library. * data/scripts/interpreters: + [CL] Avoid #!/usr/bin/r false-positives when checking the missing-dep-for-interpreter tag as r-cran-littler also "Provides" this package. (Closes: #901228) * data/spelling/corrections: + [PW] Add a number of corrections. * data/spelling/corrections-multiword: + [CL] Drop "some system" from the list of multiword spelling corrections. (Closes: #900670) * helpers/coll/objdump-info-helper: + [CL] Ignore low ASCII characters in ELF headers such as RPATH and SONAME to avoid false-positives in, for example, Go libraries. (Closes: #898809) * vendors/pureos/main/data/fields/derivative-fields: + [CL] Update the Vcs-* checks for PureOS now that repo structure has introduced sub-groups. -- Chris Lamb Wed, 13 Jun 2018 18:58:43 +0000 lintian (2.5.89) unstable; urgency=medium * Summary of tag changes: + Added: - embedded-script-includes-copyright-statement - source-contains-browserified-javascript * checks/cruft.pm: + [BR] Detect minified Javascript in HTML files. + [BR] Detect browserified Javascript. + [BR] Detect scripts in HTML files that include copyright statements. * checks/debhelper.pm: + [CL] Specifically check for missing "auto" in (for example) "override_dh_build". Thanks to Mattia Rizzolo for the idea. (Closes: #900213) * checks/files.pm: + [BR] Detect privacy breaches in HTML5 files. * checks/group-checks.pm: + [CL] Prevent false-positives when checking debug-package-for-multi- arch-same-pkg-not-coinstallable by ignoring Python "debug" packages. (Closes: #900122) * checks/source-copyright.pm: + [CL] Update references from to . * data/obsolete-sites/obsolete-sites: + [PW] Add search.cpan.org to the list of obsolete sites; it has been replaced by metacpan.org. * data/spelling/corrections: + [PW] Add a number of corrections. * vendors/pureos/main/data/fields/derivative-fields: + [CL] Update the Vcs-* checks for PureOS now that code has moved to a GitLab instance. -- Chris Lamb Fri, 01 Jun 2018 10:22:09 +0000 lintian (2.5.88) unstable; urgency=medium * checks/application-not-library.desc: + [CL] Update references to pkg-perl's homepages since the Salsa migration. * checks/control-file.desc: + [CL] Update references to Go team's homepages for the Salsa move. * checks/elpa.desc: + [CL] Apply patch from Sean Whitton to update references to emacsen-team's website since the move from Alioth to Salsa. Thank! (Closes: #899214) * checks/fields.pm: + [CL] Really don't warn about binary packages "depending" on toolchain packages via Conflicts/Breaks relations. Thanks to Guillem Jover. (Closes: #896133) * checks/files.pm: + [CL] Only warn about (eg.) "/usr/include/util.h" and "/usr/include//util.h" when checking for overly generic header names. (Closes: #899192) * data/spelling/corrections: + [PW] Add a number of corrections. + [EB] Add some more corrections. -- Chris Lamb Tue, 22 May 2018 08:57:28 +0000 lintian (2.5.87) unstable; urgency=medium * Summary of tag changes: + Added: - debian-pyversions-is-obsolete - debug-symbol-migration-possibly-complete - header-has-overly-generic-name * checks/cruft.{desc,pm}: + [CL] Apply patch from Joseph Herlant to warn about use of obsolete debian/pyversion files. Thanks! (Closes: #898592) * checks/debhelper.pm: + [CL] Prevent false-positives with comments and newlines when checking debhelper-compat-file-contains-multiple-levels. (Closes: #898799) * checks/fields.{desc,pm}: + [BR] Detect privacy breaches in Internet Explorer "