diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-14 13:42:30 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-14 13:42:30 +0000 |
commit | 75808db17caf8b960b351e3408e74142f4c85aac (patch) | |
tree | 7989e9c09a4240248bf4658a22208a0a52d991c4 /tags/b | |
parent | Initial commit. (diff) | |
download | lintian-upstream.tar.xz lintian-upstream.zip |
Adding upstream version 2.117.0.upstream/2.117.0upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tags/b')
73 files changed, 670 insertions, 0 deletions
diff --git a/tags/b/backgrounded-test-command.tag b/tags/b/backgrounded-test-command.tag new file mode 100644 index 0000000..3e0dec1 --- /dev/null +++ b/tags/b/backgrounded-test-command.tag @@ -0,0 +1,25 @@ +Tag: backgrounded-test-command +Severity: error +Check: testsuite +Explanation: + This package declares a <code>Test-Command</code> that backgrounds + itself with an ampersand. That is not a good idea. + . + In the <code>autopkgtest</code> framework, the return value determines + whether a test was successful. It is therefore fundamental to the + testing process. Unfortunately, that value is being ignored here. + . + This test only fails when a message printed to <code>stderr</code> + wins a race with the <code>autopkgtest</code> harness. While that + may result in an accurate (but unreliable) detection of some test + failures, a review of archive-wide <code>autopkgtest</code> data + shows no failures for backgrounded test commands. + . + Many incidents of this tag are based on a faulty command that invokes + <code>xvfb-run</code> for GUI programs. It was likely adopted from an + existing package. + . + Please drop the ampersand at the end of the <code>Test-Command</code>. +See-Also: + Bug#988591, + https://ci.debian.net/doc/ diff --git a/tags/b/backports-changes-missing.tag b/tags/b/backports-changes-missing.tag new file mode 100644 index 0000000..c8a091f --- /dev/null +++ b/tags/b/backports-changes-missing.tag @@ -0,0 +1,8 @@ +Tag: backports-changes-missing +Severity: info +Check: fields/distribution +Explanation: The changes file only has changelog entries from a single version. It + is recommended for backports to include all changes since (old)stable or + the previous backport. This can be done by adding the '-v' option to the + build with the appropriate version. +See-Also: http://backports.debian.org/Contribute/, Bug#785084 diff --git a/tags/b/backports-upload-has-incorrect-version-number.tag b/tags/b/backports-upload-has-incorrect-version-number.tag new file mode 100644 index 0000000..b8e9edd --- /dev/null +++ b/tags/b/backports-upload-has-incorrect-version-number.tag @@ -0,0 +1,7 @@ +Tag: backports-upload-has-incorrect-version-number +Severity: error +Check: fields/distribution +Explanation: The version number doesn't comply with the standard backport version + rules. It should end in ~bpoX+N, where X is the release version number of + the target distribution. +See-Also: http://backports.debian.org/Contribute/ diff --git a/tags/b/backup-file-in-package.tag b/tags/b/backup-file-in-package.tag new file mode 100644 index 0000000..c30af74 --- /dev/null +++ b/tags/b/backup-file-in-package.tag @@ -0,0 +1,6 @@ +Tag: backup-file-in-package +Severity: warning +Check: files/unwanted +Explanation: There is a file in the package whose name matches the format emacs + or vim uses for backup and autosave files. It may have been installed by + accident. diff --git a/tags/b/bad-distribution-in-changes-file.tag b/tags/b/bad-distribution-in-changes-file.tag new file mode 100644 index 0000000..93b0f1c --- /dev/null +++ b/tags/b/bad-distribution-in-changes-file.tag @@ -0,0 +1,12 @@ +Tag: bad-distribution-in-changes-file +Severity: error +Check: fields/distribution +Explanation: You've specified an unknown target distribution for your upload in + the <code>debian/changelog</code> file. It is possible that you are uploading + for a different distribution than the one Lintian is checking for. In + that case, passing --profile $VENDOR may fix this warning. + . + Note that the distributions <code>non-free</code> and <code>contrib</code> are no + longer valid. You'll have to use distribution <code>unstable</code> and + <code>Section: non-free/xxx</code> or <code>Section: contrib/xxx</code> instead. +See-Also: debian-policy 5.6.14 diff --git a/tags/b/bad-exception-format-in-dep5-copyright.tag b/tags/b/bad-exception-format-in-dep5-copyright.tag new file mode 100644 index 0000000..7731110 --- /dev/null +++ b/tags/b/bad-exception-format-in-dep5-copyright.tag @@ -0,0 +1,10 @@ +Tag: bad-exception-format-in-dep5-copyright +Severity: warning +Check: debian/copyright/dep5 +See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Explanation: The “License” field contains a short name with a bad exception + format. According to specification format of exception is: + shortlicencename with exceptionname exception. + . + If more than one exception applies to a single license, + an arbitrary short name must be used instead. diff --git a/tags/b/bad-homepage.tag b/tags/b/bad-homepage.tag new file mode 100644 index 0000000..9edbbcd --- /dev/null +++ b/tags/b/bad-homepage.tag @@ -0,0 +1,8 @@ +Tag: bad-homepage +Severity: warning +Check: fields/homepage +Explanation: The "Homepage:" field in this package's control file does not + contain a valid absolute URL. Most probably you forgot to specify + the scheme (e.g. http). + . + This tag is also triggered if the scheme is not known by Lintian. diff --git a/tags/b/bad-intended-distribution.tag b/tags/b/bad-intended-distribution.tag new file mode 100644 index 0000000..d374420 --- /dev/null +++ b/tags/b/bad-intended-distribution.tag @@ -0,0 +1,6 @@ +Tag: bad-intended-distribution +Severity: info +Check: debian/changelog +Experimental: yes +Explanation: The last changelog entry implies this version is not for release. + Instead it should specify the distribution it is to be uploaded to. diff --git a/tags/b/bad-jar-name.tag b/tags/b/bad-jar-name.tag new file mode 100644 index 0000000..cc73868 --- /dev/null +++ b/tags/b/bad-jar-name.tag @@ -0,0 +1,9 @@ +Tag: bad-jar-name +Severity: warning +Check: languages/java +Explanation: The package ships the specified "public" Jar file under + <code>/usr/share/java/</code>, but the name does not correspond to Java policy + guidelines. This can cause tools in the Debian Java toolchain to fail. +See-Also: + java-policy 2.4, + Bug#976681 diff --git a/tags/b/bad-menu-file-name.tag b/tags/b/bad-menu-file-name.tag new file mode 100644 index 0000000..16c3d3f --- /dev/null +++ b/tags/b/bad-menu-file-name.tag @@ -0,0 +1,7 @@ +Tag: bad-menu-file-name +Severity: error +Check: menus +Explanation: The package installs a file as <code>/usr/lib/menu/menu</code>, but that + location is reserved for the <code>menu</code> package. + . + Menu files should be named after the package that installs them. diff --git a/tags/b/bad-menu-item.tag b/tags/b/bad-menu-item.tag new file mode 100644 index 0000000..66547b1 --- /dev/null +++ b/tags/b/bad-menu-item.tag @@ -0,0 +1,5 @@ +Tag: bad-menu-item +Severity: error +Check: fields/installer-menu-item +Explanation: The field <code>Installer-Menu-Item</code> should only contain + positive integer values. diff --git a/tags/b/bad-owner-for-doc-file.tag b/tags/b/bad-owner-for-doc-file.tag new file mode 100644 index 0000000..2e52880 --- /dev/null +++ b/tags/b/bad-owner-for-doc-file.tag @@ -0,0 +1,4 @@ +Tag: bad-owner-for-doc-file +Severity: error +Check: documentation +Explanation: Documentation files should be owned by <code>root/root</code>. diff --git a/tags/b/bad-package-name.tag b/tags/b/bad-package-name.tag new file mode 100644 index 0000000..6eaa195 --- /dev/null +++ b/tags/b/bad-package-name.tag @@ -0,0 +1,7 @@ +Tag: bad-package-name +Severity: error +Check: fields/package +Explanation: A package name should be at least two characters long, must consist + of the alphanumerics and "+" "-" and ".", and must start with an + alphanumeric character. +See-Also: debian-policy 5.6.7 diff --git a/tags/b/bad-perm-for-file-in-etc-sudoers.d.tag b/tags/b/bad-perm-for-file-in-etc-sudoers.d.tag new file mode 100644 index 0000000..a1f4d40 --- /dev/null +++ b/tags/b/bad-perm-for-file-in-etc-sudoers.d.tag @@ -0,0 +1,6 @@ +Tag: bad-perm-for-file-in-etc-sudoers.d +Severity: error +Check: files/permissions +Explanation: Files in /etc/sudoers.d/ must be 0440 or sudo will refuse to + parse them. +See-Also: Bug#588831, Bug#576527 diff --git a/tags/b/bad-permissions-for-ali-file.tag b/tags/b/bad-permissions-for-ali-file.tag new file mode 100644 index 0000000..97ca85e --- /dev/null +++ b/tags/b/bad-permissions-for-ali-file.tag @@ -0,0 +1,12 @@ +Tag: bad-permissions-for-ali-file +Severity: warning +Check: files/permissions +See-Also: debian-policy 8.4 +Explanation: Ada Library Information (*.ali) files are required to be read-only + (mode 0444) by GNAT. + . + If at least one user can write the *.ali file, GNAT considers whether + or not to recompile the corresponding source file. Such recompilation + would fail because normal users don't have write permission on the + files. Moreover, such recompilation would defeat the purpose of + library packages, which provide *.a and *.so libraries to link against). diff --git a/tags/b/bad-permissions-for-etc-cron.d-script.tag b/tags/b/bad-permissions-for-etc-cron.d-script.tag new file mode 100644 index 0000000..476aa29 --- /dev/null +++ b/tags/b/bad-permissions-for-etc-cron.d-script.tag @@ -0,0 +1,5 @@ +Tag: bad-permissions-for-etc-cron.d-script +Severity: error +Check: cron +Explanation: Files in <code>/etc/cron.d</code> are configuration files for cron and not + scripts. Thus, they should not be marked executable. diff --git a/tags/b/bad-permissions-for-etc-emacs-script.tag b/tags/b/bad-permissions-for-etc-emacs-script.tag new file mode 100644 index 0000000..b907c35 --- /dev/null +++ b/tags/b/bad-permissions-for-etc-emacs-script.tag @@ -0,0 +1,5 @@ +Tag: bad-permissions-for-etc-emacs-script +Severity: error +Check: emacs +Explanation: Files in the <code>/etc/emacs*</code> directories should not be marked + executable. diff --git a/tags/b/bad-provided-package-name.tag b/tags/b/bad-provided-package-name.tag new file mode 100644 index 0000000..71f14d7 --- /dev/null +++ b/tags/b/bad-provided-package-name.tag @@ -0,0 +1,7 @@ +Tag: bad-provided-package-name +Severity: error +Check: fields/package-relations +Explanation: A package name should be at least two characters long, must consist + of the alphanumerics (lowercase characters only) and "+" "-" and ".", and + must start with an alphanumeric character. +See-Also: debian-policy 5.6.7 diff --git a/tags/b/bad-relation.tag b/tags/b/bad-relation.tag new file mode 100644 index 0000000..66168d9 --- /dev/null +++ b/tags/b/bad-relation.tag @@ -0,0 +1,6 @@ +Tag: bad-relation +Severity: error +Check: fields/package-relations +Explanation: The package declares a relationship that could not be parsed according + to the rules given in the Policy Manual. +See-Also: debian-policy 7.1 diff --git a/tags/b/bad-section-in-changes-file.tag b/tags/b/bad-section-in-changes-file.tag new file mode 100644 index 0000000..00077c7 --- /dev/null +++ b/tags/b/bad-section-in-changes-file.tag @@ -0,0 +1,7 @@ +Tag: bad-section-in-changes-file +Severity: error +Check: changes-file +Explanation: The sections <code>non-free</code> and <code>contrib</code> are no longer + valid. Please use section <code>non-free/xxx</code> or + <code>contrib/xxx</code> instead. +See-Also: debian-policy 2.4 diff --git a/tags/b/bad-so-link-within-manual-page.tag b/tags/b/bad-so-link-within-manual-page.tag new file mode 100644 index 0000000..9781ac5 --- /dev/null +++ b/tags/b/bad-so-link-within-manual-page.tag @@ -0,0 +1,7 @@ +Tag: bad-so-link-within-manual-page +Severity: error +Check: documentation/manual +Explanation: Manual files that use the .so links to include other pages should + only point to a path relative to the top-level manual hierarchy, e.g. + . + <code>.so man3/boo.1.gz</code> diff --git a/tags/b/bad-test-in-menu-item.tag b/tags/b/bad-test-in-menu-item.tag new file mode 100644 index 0000000..c8c00f0 --- /dev/null +++ b/tags/b/bad-test-in-menu-item.tag @@ -0,0 +1,9 @@ +Tag: bad-test-in-menu-item +Severity: error +Check: menu-format +Explanation: The <code>menu</code> file contains an item that does not start + with the required text <code>?package(somepackage):</code>. + . + All menu file lines must test for the existence of a package in that way. +See-Also: + menu-manual 3.2 diff --git a/tags/b/bad-urgency-in-changes-file.tag b/tags/b/bad-urgency-in-changes-file.tag new file mode 100644 index 0000000..2dc45fb --- /dev/null +++ b/tags/b/bad-urgency-in-changes-file.tag @@ -0,0 +1,9 @@ +Tag: bad-urgency-in-changes-file +Severity: error +Check: fields/urgency +Explanation: The keyword value of the "Urgency" field in the .changes file is not + one of the allowed values of low, medium, high, critical, and emergency + (case-insensitive). This value normally taken from the first line of the + most recent entry in <code>debian/changelog</code>, which is probably where + the error is. +See-Also: debian-policy 5.6.17 diff --git a/tags/b/bad-version-in-relation.tag b/tags/b/bad-version-in-relation.tag new file mode 100644 index 0000000..8b1b43b --- /dev/null +++ b/tags/b/bad-version-in-relation.tag @@ -0,0 +1,6 @@ +Tag: bad-version-in-relation +See-Also: debian-policy 5.6.12 +Severity: error +Check: fields/package-relations +Explanation: The version number used in this relationship does not match the + defined format of a version number. diff --git a/tags/b/bad-version-number.tag b/tags/b/bad-version-number.tag new file mode 100644 index 0000000..7b94629 --- /dev/null +++ b/tags/b/bad-version-number.tag @@ -0,0 +1,5 @@ +Tag: bad-version-number +Severity: error +Check: fields/version +Explanation: The version number fails one of the syntactic requirements of dpkg. +See-Also: debian-policy 5.6.12 diff --git a/tags/b/bad-whatis-entry.tag b/tags/b/bad-whatis-entry.tag new file mode 100644 index 0000000..0c4c823 --- /dev/null +++ b/tags/b/bad-whatis-entry.tag @@ -0,0 +1,18 @@ +Tag: bad-whatis-entry +Severity: warning +Check: documentation/manual +Renamed-From: manpage-has-bad-whatis-entry +Explanation: A manual page should start with a <code>NAME</code> section, which + lists the program name and a brief description. The <code>NAME</code> + section is used to generate a database that can be queried by commands + like <code>apropos</code> and <code>whatis</code>. You are seeing this tag + because <code>lexgrog</code> was unable to parse the <code>NAME</code> section. + . + Manual pages for multiple programs, functions, or files should list each + separated by a comma and a space, followed by <code>\-</code> and a common + description. + . + Listed items may not contain any spaces. A manual page for a two-level + command such as <code>fs listacl</code> must look like <code>fs_listacl</code> + so the list is read correctly. +See-Also: lexgrog(1), groff_man(7), groff_mdoc(7) diff --git a/tags/b/bash-completion-with-hashbang.tag b/tags/b/bash-completion-with-hashbang.tag new file mode 100644 index 0000000..f36a3e5 --- /dev/null +++ b/tags/b/bash-completion-with-hashbang.tag @@ -0,0 +1,9 @@ +Tag: bash-completion-with-hashbang +Severity: warning +Check: shell/bash/completion +Explanation: This file starts with the #! sequence that marks interpreted scripts, + but it is a bash completion script that is merely intended to be sourced. + . + Please remove the line with hashbang, including any designated interpreter. +See-Also: + https://salsa.debian.org/lintian/lintian/-/merge_requests/292#note_139494 diff --git a/tags/b/bash-term-in-posix-shell.tag b/tags/b/bash-term-in-posix-shell.tag new file mode 100644 index 0000000..ea13328 --- /dev/null +++ b/tags/b/bash-term-in-posix-shell.tag @@ -0,0 +1,17 @@ +Tag: bash-term-in-posix-shell +Severity: info +Check: shell/non-posix/bash-centric +Explanation: This script is marked as running under <code>/bin/sh</code>, but it seems + to use a feature found in bash but not in the SUSv3 or POSIX shell + specification. + . + Some examples are: + . + - <code>==</code> in a test, it should use <code>=</code> instead + - <code>read</code> without a variable in the argument + - <code>function</code> to define a function + - <code>source</code> instead of <code>.</code> + - <code>. command args</code>, passing arguments to commands via <code>source</code> is not supported + - <code>{foo,bar}</code> instead of <code>foo bar</code> + - <code>[[ test ]]</code> instead of <code>[ test ]</code> (requires a Korn shell) + - <code>type</code> instead of <code>which</code> or <code>command -v</code> diff --git a/tags/b/bin-sbin-mismatch.tag b/tags/b/bin-sbin-mismatch.tag new file mode 100644 index 0000000..2dc0ea3 --- /dev/null +++ b/tags/b/bin-sbin-mismatch.tag @@ -0,0 +1,17 @@ +Tag: bin-sbin-mismatch +Severity: info +Check: files/contents +Experimental: yes +Explanation: The package installs a binary under <code>/usr/sbin</code> or + <code>/sbin</code> but the specified file or maintainer script appears to + incorrectly reference it under <code>/usr/bin</code> or <code>/bin</code>. + . + This is likely due to the maintainer identifying that the package + requires root privileges or similar and thus installing the files to + the <code>sbin</code> variant, but the package has not been comprehensively + or completely updated to match. + . + For ELF files, false positives could be related to the <code>SHF_MERGE</code> + option to <code>ld</code>. The option saves space by providing different + start indices into the same static location in object files. + Unfortunately, the sub-string information is lost in that process. diff --git a/tags/b/binaries-have-file-conflict.tag b/tags/b/binaries-have-file-conflict.tag new file mode 100644 index 0000000..a5c111c --- /dev/null +++ b/tags/b/binaries-have-file-conflict.tag @@ -0,0 +1,10 @@ +Tag: binaries-have-file-conflict +Severity: warning +Check: group-checks +Experimental: no +Explanation: The binaries appears to have overlapping files without proper + conflicts relation. + . + Note the check is completely based on the file index for the + packages. Possible known false-positives include dpkg-diverts in + maintainer scripts. diff --git a/tags/b/binary-arch-rules-but-pkg-is-arch-indep.tag b/tags/b/binary-arch-rules-but-pkg-is-arch-indep.tag new file mode 100644 index 0000000..8de0142 --- /dev/null +++ b/tags/b/binary-arch-rules-but-pkg-is-arch-indep.tag @@ -0,0 +1,6 @@ +Tag: binary-arch-rules-but-pkg-is-arch-indep +Severity: warning +Check: debian/rules +Explanation: It looks like you try to run code in the binary-arch target of + <code>debian/rules</code>, even though your package is architecture- + independent. diff --git a/tags/b/binary-compiled-with-profiling-enabled.tag b/tags/b/binary-compiled-with-profiling-enabled.tag new file mode 100644 index 0000000..8d4f537 --- /dev/null +++ b/tags/b/binary-compiled-with-profiling-enabled.tag @@ -0,0 +1,7 @@ +Tag: binary-compiled-with-profiling-enabled +Severity: warning +Check: binaries/profiling +Explanation: Profiling is useful for testing and debugging, but running + this program will leave around files named <code>gmon.out</code>. + . + You should probably disable profiling, or perhaps override the tag. diff --git a/tags/b/binary-file-built-without-LFS-support.tag b/tags/b/binary-file-built-without-LFS-support.tag new file mode 100644 index 0000000..d9e2c2a --- /dev/null +++ b/tags/b/binary-file-built-without-LFS-support.tag @@ -0,0 +1,38 @@ +Tag: binary-file-built-without-LFS-support +Severity: info +Check: binaries/large-file-support +Experimental: yes +Explanation: The listed ELF binary appears to be (partially) built without + "Large File Support" (LFS). If so, it may not be able to handle large + files or files with large metadata values, such as inode numbers, correctly. + . + To support large files, code review might be needed to make sure that + those files are not slurped into memory or mmap(2)ed, and that correct + 64-bit data types are used (ex: <code>off_t</code> instead of <code>ssize_t</code>), etc. Once + that has been done ensure <code>_FILE_OFFSET_BITS</code> is defined and + set to 64 before any system headers are included (note that on systems + were the ABI has LFS enabled by default, setting <code>_FILE_OFFSET_BITS</code> + to 64 will be a no-op, and as such optional). This can be done by using + the <code>AC_SYS_LARGEFILE</code> macro with autoconf which will set any + macro required to enable LFS when necessary, or by enabling the + <code>lfs</code> feature from the <code>future</code> dpkg-buildflags feature + area which sets the <code>CPPFLAGS</code> variable (since dpkg-dev 1.19.0). + Note though, that <code>getconf LFS_CFLAGS</code> must not be used, + as it does not support cross-building. Using + <code>_FILE_OFFSET_BITS</code> should require no system function renames (eg. + from open(2) to open64(2)), and if this tag is still emitted, the most + probable cause is because the macro is not seen by the system code being + compiled. + . + Take into account that even if this tag is not emitted, that does not + mean the binary is LFS-safe (ie. no OOM conditions, file truncation + or overwrite will happen). + . + Also note that enabling LFS on a shared library is not always safe as + it might break ABI in case some of the exported types change size, in + those cases a SOVERSION bump might be required. Or alternatively, on + systems with an ABI without LFS, defining <code>_LARGEFILE64_SOURCE</code> + and exporting both 32 and 64-bit variants of the interfaces can avoid + the SOVERSION bump, at the cost of more complex maintenance. +See-Also: http://www.unix.org/version2/whatsnew/lfs20mar.html, + https://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html diff --git a/tags/b/binary-from-other-architecture.tag b/tags/b/binary-from-other-architecture.tag new file mode 100644 index 0000000..780b63a --- /dev/null +++ b/tags/b/binary-from-other-architecture.tag @@ -0,0 +1,7 @@ +Tag: binary-from-other-architecture +Severity: error +Check: binaries/architecture/other +Explanation: This ELF binary appears to have been built for an architecture other + than the one of the binary package being tested. This may occur when a + pre-built binary is shipped in the package or when an attempt to + cross-compile didn't work. diff --git a/tags/b/binary-has-unneeded-section.tag b/tags/b/binary-has-unneeded-section.tag new file mode 100644 index 0000000..5ed4ead --- /dev/null +++ b/tags/b/binary-has-unneeded-section.tag @@ -0,0 +1,11 @@ +Tag: binary-has-unneeded-section +Severity: info +Check: binaries +Explanation: The binary or shared library is stripped, but still contains a + section that is not useful. You should call strip with + <code>--remove-section=.comment --remove-section=.note</code> to remove the + <code>.note</code> and <code>.comment</code> sections. + . + <code>dh_strip</code> will do this automatically for you, but + <code>install -s</code> will not because it calls strip without any + arguments. diff --git a/tags/b/binary-in-etc.tag b/tags/b/binary-in-etc.tag new file mode 100644 index 0000000..8e3f4d7 --- /dev/null +++ b/tags/b/binary-in-etc.tag @@ -0,0 +1,6 @@ +Tag: binary-in-etc +Severity: error +Check: binaries/location +Explanation: This package installs an ELF binary in <code>/etc</code>. The + Filesystem Hierarchy Standard forbids it. +See-Also: filesystem-hierarchy etchostspecificsystemconfiguration diff --git a/tags/b/binary-nmu-debian-revision-in-source.tag b/tags/b/binary-nmu-debian-revision-in-source.tag new file mode 100644 index 0000000..7f72994 --- /dev/null +++ b/tags/b/binary-nmu-debian-revision-in-source.tag @@ -0,0 +1,9 @@ +Tag: binary-nmu-debian-revision-in-source +Severity: warning +Check: fields/version +See-Also: developer-reference 5.10.2.1 +Explanation: The version number of your source package ends in +b and a number or + has a Debian revision containing three parts. These version numbers are + used by binary NMUs and should not be used as the source version. (The + +b form is the current standard; the three-part version number now + obsolete.) diff --git a/tags/b/binary-package-depends-on-toolchain-package.tag b/tags/b/binary-package-depends-on-toolchain-package.tag new file mode 100644 index 0000000..73b484d --- /dev/null +++ b/tags/b/binary-package-depends-on-toolchain-package.tag @@ -0,0 +1,9 @@ +Tag: binary-package-depends-on-toolchain-package +Severity: warning +Check: fields/package-relations +Explanation: This package specifies a binary dependency on a "toolchain" package + such as debhelper or cdbs. This is likely to be a mistake; these + packages are typically specified as build-dependencies instead. + . + If the package intentionally requires such a dependency, please add a + Lintian override with a justifying remark. diff --git a/tags/b/binary-with-bad-dynamic-table.tag b/tags/b/binary-with-bad-dynamic-table.tag new file mode 100644 index 0000000..eea6e30 --- /dev/null +++ b/tags/b/binary-with-bad-dynamic-table.tag @@ -0,0 +1,10 @@ +Tag: binary-with-bad-dynamic-table +Severity: error +Check: binaries/corrupted +Explanation: This appears to be an ELF file. According to readelf, the + program headers suggests it should have a dynamic section, but + readelf cannot find it. + . + If it is meant to be external debugging symbols for another file, + it should be installed under /usr/lib/debug. Otherwise, this + could be a corrupt ELF file. diff --git a/tags/b/bogus-mail-host-in-debian-changelog.tag b/tags/b/bogus-mail-host-in-debian-changelog.tag new file mode 100644 index 0000000..d345573 --- /dev/null +++ b/tags/b/bogus-mail-host-in-debian-changelog.tag @@ -0,0 +1,6 @@ +Tag: bogus-mail-host-in-debian-changelog +Severity: error +Check: debian/changelog +Renamed-From: debian-changelog-file-contains-invalid-email-address +Explanation: The changelog file contains an invalid email address: the domain + needs at least one dot. This looks like a mistake. diff --git a/tags/b/bogus-mail-host.tag b/tags/b/bogus-mail-host.tag new file mode 100644 index 0000000..6474bbc --- /dev/null +++ b/tags/b/bogus-mail-host.tag @@ -0,0 +1,12 @@ +Tag: bogus-mail-host +Severity: error +Check: fields/mail-address +Renamed-From: + maintainer-address-is-on-localhost + uploader-address-is-on-localhost + changed-by-address-is-on-localhost +Explanation: The host part of the named contact address is not known or not + globally routables, such as localhost(.localdomain). +See-Also: debian-policy 5.6.2, + debian-policy 5.6.3, + debian-policy 5.6.4 diff --git a/tags/b/bogus-python-prerequisite.tag b/tags/b/bogus-python-prerequisite.tag new file mode 100644 index 0000000..47ee660 --- /dev/null +++ b/tags/b/bogus-python-prerequisite.tag @@ -0,0 +1,10 @@ +Tag: bogus-python-prerequisite +Severity: error +Check: languages/python/bogus-prerequisites +Experimental: yes +Explanation: This Python package declares an invalid prerequisite. + For example, packages should not refer to any of the <code>what-is-python</code> + packages in the source field for <code>Build-Depends</code>, or in the binary + fields for <code>Depends</code> or <code>Recommends</code>. +See-Also: + Bug#973011 diff --git a/tags/b/boilerplate-copyright-format-uri.tag b/tags/b/boilerplate-copyright-format-uri.tag new file mode 100644 index 0000000..dc7a175 --- /dev/null +++ b/tags/b/boilerplate-copyright-format-uri.tag @@ -0,0 +1,6 @@ +Tag: boilerplate-copyright-format-uri +Severity: warning +Check: debian/copyright/dep5 +Explanation: Format URI of the machine-readable copyright file contains + <code>VERSIONED_FORMAT_URL</code> or <code>REVISION</code> string. Please replace it + with an actual URI or an actual revision number respectively. diff --git a/tags/b/boolean-template-has-bogus-default.tag b/tags/b/boolean-template-has-bogus-default.tag new file mode 100644 index 0000000..6eaa537 --- /dev/null +++ b/tags/b/boolean-template-has-bogus-default.tag @@ -0,0 +1,9 @@ +Tag: boolean-template-has-bogus-default +Severity: error +Check: debian/debconf +Explanation: The <code>boolean</code> type in a Debconf template can have + only one of two values: <code>true</code> or <code>false</code>. This + template tries to use something else as the default value. +See-Also: + debconf-specification 3.1, + debconf-devel(7) diff --git a/tags/b/brace-expansion-in-debhelper-config-file.tag b/tags/b/brace-expansion-in-debhelper-config-file.tag new file mode 100644 index 0000000..1e6aea7 --- /dev/null +++ b/tags/b/brace-expansion-in-debhelper-config-file.tag @@ -0,0 +1,8 @@ +Tag: brace-expansion-in-debhelper-config-file +Severity: warning +Check: debhelper +Explanation: This debhelper config file appears to use shell brace expansion + (such as <code>{foo,bar}</code>) to specify files. This happens to work due + to an accident of implementation but is not a supported feature. Only + <code>?</code>, <code>*</code>, and <code>[...]</code> are supported. +See-Also: debhelper(1) diff --git a/tags/b/breaks-without-version.tag b/tags/b/breaks-without-version.tag new file mode 100644 index 0000000..1681670 --- /dev/null +++ b/tags/b/breaks-without-version.tag @@ -0,0 +1,13 @@ +Tag: breaks-without-version +Severity: warning +Check: fields/package-relations +See-Also: debian-policy 7.3, debian-policy 7.4, Bug#605744 +Explanation: This package declares a Breaks relationship with another package + that has no version number. Normally, Breaks should be used to indicate + an incompatibility with a specific version of another package, or with + all versions predating a fix. If the two packages can never be installed + at the same time, Conflicts should normally be used instead. + . + Note this tag can also be issued if a package has been split into two + completely new ones. In this case, this package is missing a Replaces + on the old package. diff --git a/tags/b/broken-bz2.tag b/tags/b/broken-bz2.tag new file mode 100644 index 0000000..4e32d86 --- /dev/null +++ b/tags/b/broken-bz2.tag @@ -0,0 +1,6 @@ +Tag: broken-bz2 +Severity: warning +Check: files/compressed/bz2 +Explanation: The given file ends with <code>.bz2</code>, which normally indicates it + was compressed with bzip2. However, it doesn't seem to be an + bz2-compressed file. diff --git a/tags/b/broken-gz.tag b/tags/b/broken-gz.tag new file mode 100644 index 0000000..7c19445 --- /dev/null +++ b/tags/b/broken-gz.tag @@ -0,0 +1,6 @@ +Tag: broken-gz +Severity: warning +Check: files/compressed/gz +Explanation: The given file ends with <code>.gz</code>, which normally indicates it + was compressed with gzip. However, it doesn't seem to be a + gzip-compressed file. diff --git a/tags/b/broken-link-to-undocumented.tag b/tags/b/broken-link-to-undocumented.tag new file mode 100644 index 0000000..4903f3b --- /dev/null +++ b/tags/b/broken-link-to-undocumented.tag @@ -0,0 +1,7 @@ +Tag: broken-link-to-undocumented +Severity: error +Check: documentation/manual +Renamed-From: bad-link-to-undocumented-manpage +Explanation: The symbolic link should reference + "<code>../man[237]/undocumented.[237].gz</code>" for manual pages in + <code>/usr/share/man</code>. diff --git a/tags/b/broken-lz.tag b/tags/b/broken-lz.tag new file mode 100644 index 0000000..604afd3 --- /dev/null +++ b/tags/b/broken-lz.tag @@ -0,0 +1,6 @@ +Tag: broken-lz +Severity: warning +Check: files/compressed/lz +Explanation: The given file ends with <code>.lz</code>, which normally indicates it + was compressed with lz. However, it doesn't seem to be an + lz-compressed file. diff --git a/tags/b/broken-lzma.tag b/tags/b/broken-lzma.tag new file mode 100644 index 0000000..205b613 --- /dev/null +++ b/tags/b/broken-lzma.tag @@ -0,0 +1,6 @@ +Tag: broken-lzma +Severity: warning +Check: files/compressed/lzma +Explanation: The given file ends with <code>.lzma</code>, which normally indicates it + was compressed with lzma. However, it doesn't seem to be an + lzma-compressed file. diff --git a/tags/b/broken-lzo.tag b/tags/b/broken-lzo.tag new file mode 100644 index 0000000..6709bdd --- /dev/null +++ b/tags/b/broken-lzo.tag @@ -0,0 +1,6 @@ +Tag: broken-lzo +Severity: warning +Check: files/compressed/lzo +Explanation: The given file ends with <code>.lzo</code>, which normally indicates it + was compressed with lzop. However, it doesn't seem to be an + lz-compressed file. diff --git a/tags/b/broken-xz.tag b/tags/b/broken-xz.tag new file mode 100644 index 0000000..15f2ac4 --- /dev/null +++ b/tags/b/broken-xz.tag @@ -0,0 +1,6 @@ +Tag: broken-xz +Severity: warning +Check: files/compressed/xz +Explanation: The given file ends with <code>.xz</code>, which normally indicates it + is compressed with xz. However, it doesn't seem to be an + xz-compressed file. diff --git a/tags/b/broken-zip.tag b/tags/b/broken-zip.tag new file mode 100644 index 0000000..bf7161a --- /dev/null +++ b/tags/b/broken-zip.tag @@ -0,0 +1,6 @@ +Tag: broken-zip +Severity: warning +Check: files/compressed/zip +Explanation: The given file ends with <code>.zip</code>, which normally indicates it + was compressed with zip. However, it doesn't seem to be a + zip-compressed file. diff --git a/tags/b/bugs-field-does-not-refer-to-debian-infrastructure.tag b/tags/b/bugs-field-does-not-refer-to-debian-infrastructure.tag new file mode 100644 index 0000000..ea76090 --- /dev/null +++ b/tags/b/bugs-field-does-not-refer-to-debian-infrastructure.tag @@ -0,0 +1,9 @@ +Tag: bugs-field-does-not-refer-to-debian-infrastructure +Severity: warning +Check: fields/bugs +Explanation: The <code>debian/control</code> file contains a Bugs field that does + not refer to Debian infrastructure. This is recognized by the string + ".debian.org". + . + This is likely to make reportbug(1) unable to report bugs. +See-Also: Bug#740944 diff --git a/tags/b/build-conflicts-with-build-dependency.tag b/tags/b/build-conflicts-with-build-dependency.tag new file mode 100644 index 0000000..32ff6b5 --- /dev/null +++ b/tags/b/build-conflicts-with-build-dependency.tag @@ -0,0 +1,6 @@ +Tag: build-conflicts-with-build-dependency +Severity: error +Check: fields/package-relations +See-Also: debian-policy 7.7 +Explanation: The package build-conflicts with a package that it also + build-depends on. diff --git a/tags/b/build-depends-arch-without-arch-dependent-binary.tag b/tags/b/build-depends-arch-without-arch-dependent-binary.tag new file mode 100644 index 0000000..4b56db2 --- /dev/null +++ b/tags/b/build-depends-arch-without-arch-dependent-binary.tag @@ -0,0 +1,5 @@ +Tag: build-depends-arch-without-arch-dependent-binary +Severity: error +Check: fields/package-relations +Explanation: The control file specifies source relations for architecture-dependent + packages, but no architecture-dependent packages are built. diff --git a/tags/b/build-depends-indep-without-arch-indep.tag b/tags/b/build-depends-indep-without-arch-indep.tag new file mode 100644 index 0000000..6c9a0b5 --- /dev/null +++ b/tags/b/build-depends-indep-without-arch-indep.tag @@ -0,0 +1,6 @@ +Tag: build-depends-indep-without-arch-indep +Severity: error +Check: fields/package-relations +See-Also: debian-policy 7.7 +Explanation: The control file specifies source relations for architecture-independent + packages, but no architecture-independent packages are built. diff --git a/tags/b/build-depends-on-1-revision.tag b/tags/b/build-depends-on-1-revision.tag new file mode 100644 index 0000000..2673e2a --- /dev/null +++ b/tags/b/build-depends-on-1-revision.tag @@ -0,0 +1,10 @@ +Tag: build-depends-on-1-revision +Severity: warning +Check: fields/package-relations +Explanation: The package declares a build dependency on a version of a package + with a -1 Debian revision such as "libfoo (>= 1.2-1)". Such a + dependency will not be satisfied by a backport of libfoo 1.2-1 and + therefore makes backporting unnecessarily difficult. Normally, the -1 + version is unneeded and a dependency such as "libfoo (>= 1.2)" would + be sufficient. If there was an earlier -0.X version of libfoo that would + not satisfy the dependency, use "libfoo (>= 1.2-1~)" instead. diff --git a/tags/b/build-depends-on-an-obsolete-java-package.tag b/tags/b/build-depends-on-an-obsolete-java-package.tag new file mode 100644 index 0000000..91c5e5a --- /dev/null +++ b/tags/b/build-depends-on-an-obsolete-java-package.tag @@ -0,0 +1,6 @@ +Tag: build-depends-on-an-obsolete-java-package +Severity: warning +Check: fields/package-relations +See-Also: java-policy 2.2 +Explanation: The package build-depends on an obsolete Java dependency. + It should build-depend on default-jdk instead. diff --git a/tags/b/build-depends-on-build-essential-package-without-using-version.tag b/tags/b/build-depends-on-build-essential-package-without-using-version.tag new file mode 100644 index 0000000..a8a3b79 --- /dev/null +++ b/tags/b/build-depends-on-build-essential-package-without-using-version.tag @@ -0,0 +1,13 @@ +Tag: build-depends-on-build-essential-package-without-using-version +Severity: error +Check: fields/package-relations +See-Also: debian-policy 4.2 +Explanation: The package declares a build-depends on a build essential package + without using a versioned depends. Packages do not have to depend on any + package included in build-essential. It is the responsibility of anyone + building packages to have all build-essential packages installed. The + only reason for an explicit dependency on a package included in + build-essential is if a particular version of that package is required, + in which case the dependency should include the version. +Renamed-From: + depends-on-build-essential-package-without-using-version diff --git a/tags/b/build-depends-on-build-essential.tag b/tags/b/build-depends-on-build-essential.tag new file mode 100644 index 0000000..9165239 --- /dev/null +++ b/tags/b/build-depends-on-build-essential.tag @@ -0,0 +1,7 @@ +Tag: build-depends-on-build-essential +Explanation: You depend on the build-essential package, which is only a + metapackage depending on build tools that have to be installed in all + build environments. +Severity: error +Check: fields/package-relations +See-Also: debian-policy 7.7 diff --git a/tags/b/build-depends-on-essential-package-without-using-version.tag b/tags/b/build-depends-on-essential-package-without-using-version.tag new file mode 100644 index 0000000..8a91ab2 --- /dev/null +++ b/tags/b/build-depends-on-essential-package-without-using-version.tag @@ -0,0 +1,10 @@ +Tag: build-depends-on-essential-package-without-using-version +Severity: error +Check: fields/package-relations +See-Also: debian-policy 4.2 +Explanation: The package declares a build-depends on an essential package, e.g. dpkg, + without using a versioned depends. Packages do not need to build-depend on + essential packages; essential means that they will always be present. + The only reason to list an explicit dependency on an essential package + is if you need a particular version of that package, in which case the + version should be given in the dependency. diff --git a/tags/b/build-depends-on-metapackage.tag b/tags/b/build-depends-on-metapackage.tag new file mode 100644 index 0000000..7a1d8a1 --- /dev/null +++ b/tags/b/build-depends-on-metapackage.tag @@ -0,0 +1,10 @@ +Tag: build-depends-on-metapackage +Severity: error +Check: fields/package-relations +Explanation: Packages must not build-depend on metapackages. + . + Metapackages such as xorg, xorg-dev, x-window-system, + x-window-system-dev and x-window-system-core exist only for the + benefit of users and should not be used in package build + dependencies. +See-Also: https://wiki.debian.org/Lintian/Tags/depends-on-metapackage diff --git a/tags/b/build-depends-on-non-build-package.tag b/tags/b/build-depends-on-non-build-package.tag new file mode 100644 index 0000000..b13cdc3 --- /dev/null +++ b/tags/b/build-depends-on-non-build-package.tag @@ -0,0 +1,8 @@ +Tag: build-depends-on-non-build-package +Severity: error +Check: fields/package-relations +Explanation: The package declares a build dependency on a package that is not + appropriate for build dependencies, usually because it's only for + interactive use or cannot be correctly installed in a build environment. + See the description or documentation of the package for more + information. diff --git a/tags/b/build-depends-on-obsolete-package.tag b/tags/b/build-depends-on-obsolete-package.tag new file mode 100644 index 0000000..d8018a7 --- /dev/null +++ b/tags/b/build-depends-on-obsolete-package.tag @@ -0,0 +1,6 @@ +Tag: build-depends-on-obsolete-package +Severity: warning +Check: fields/package-relations +Explanation: The package build-depends on a package that has been superseded. + If the superseded package is part of an ORed group, it should not be + the first package in the group. diff --git a/tags/b/build-depends-on-python-dev-with-no-arch-any.tag b/tags/b/build-depends-on-python-dev-with-no-arch-any.tag new file mode 100644 index 0000000..bfba2aa --- /dev/null +++ b/tags/b/build-depends-on-python-dev-with-no-arch-any.tag @@ -0,0 +1,15 @@ +Tag: build-depends-on-python-dev-with-no-arch-any +Severity: info +Check: fields/package-relations +Explanation: The given package appears to have a Python development package + (<code>python3-dev</code>, <code>python3-all-dev</code> or + <code>pythonX.Y-dev</code>) listed in its <code>Build-Depends</code> or + <code>Build-Depends-Indep</code> fields, but only <code>Architecture: all</code> + packages are built by this source package. Python applications and modules + do not usually require those dev packages, so you should consider removing + them in favour of <code>python3</code>, <code>python3-all</code> + or <code>pythonX.Y</code>. + . + If you are building a Python extension instead, you should have + development packages listed in <code>Build-Depends</code>, but normally there should + be at least one <code>Architecture: any</code> package. diff --git a/tags/b/build-depends-on-python-sphinx-only.tag b/tags/b/build-depends-on-python-sphinx-only.tag new file mode 100644 index 0000000..18b7e6b --- /dev/null +++ b/tags/b/build-depends-on-python-sphinx-only.tag @@ -0,0 +1,13 @@ +Tag: build-depends-on-python-sphinx-only +Severity: warning +Check: languages/python +Explanation: This package Build-Depends on the Python 2.x version of the Sphinx + documentation generator. + . + The 2.x series of Python is due for deprecation and will not be maintained + by upstream past 2020 and will likely be dropped after the release of + Debian "buster". + . + Some Python modules may need to depend on both <code>python-sphinx</code> and + <code>python3-sphinx</code> but please consider moving to only Build-Depending on + the <code>python3-sphinx</code> package instead. diff --git a/tags/b/build-depends-on-specific-java-doc-package.tag b/tags/b/build-depends-on-specific-java-doc-package.tag new file mode 100644 index 0000000..b9e0290 --- /dev/null +++ b/tags/b/build-depends-on-specific-java-doc-package.tag @@ -0,0 +1,6 @@ +Tag: build-depends-on-specific-java-doc-package +Severity: warning +Check: fields/package-relations +Explanation: The given package declares a build dependency on either openjdk- + X-doc or classpath-doc instead of using default-jdk-doc. default-jdk-doc + provides a symlink to the API via /usr/share/default-jdk-doc/api. diff --git a/tags/b/build-depends-on-versioned-berkeley-db.tag b/tags/b/build-depends-on-versioned-berkeley-db.tag new file mode 100644 index 0000000..e1de3c4 --- /dev/null +++ b/tags/b/build-depends-on-versioned-berkeley-db.tag @@ -0,0 +1,25 @@ +Tag: build-depends-on-versioned-berkeley-db +Severity: warning +Check: fields/package-relations +Explanation: The package build-depends on a versioned development package of + Berkeley DB (libdbX.Y-dev) instead of versionless package + (libdb-dev). Unfortunately this prevents binNMUs when default + Berkeley DB version changes. + . + Unless the package absolutely have to depend on specific Berkeley DB + version, it should build-depends on libdb-dev. For more information + on the upgrade process, please see the references. + . + The package can usually be made Berkeley DB version agnostic by the + following steps: + . + 1. note the version of Berkeley DB used to compile the package on build time + 2. on first install copy the used version to active version + 3. on upgrades compare the versions and if they differ do the upgrade procedure + . + If you are unsure you can contact Berkeley DB maintainer, who would be + glad to help. + . + Should the package have a legitimate reason for using the versioned development + package, please add an override. +See-Also: http://docs.oracle.com/cd/E17076_02/html/upgrading/upgrade_process.html diff --git a/tags/b/build-path-in-manual.tag b/tags/b/build-path-in-manual.tag new file mode 100644 index 0000000..e7c2093 --- /dev/null +++ b/tags/b/build-path-in-manual.tag @@ -0,0 +1,8 @@ +Tag: build-path-in-manual +Severity: error +Check: documentation/manual +Renamed-From: manpage-named-after-build-path +Explanation: The manual page appears to be named after its build path and + not after its content. + . + Please check your debian/rules or upstream Makefile. diff --git a/tags/b/build-prerequisite-in-installable-section.tag b/tags/b/build-prerequisite-in-installable-section.tag new file mode 100644 index 0000000..b3ee66e --- /dev/null +++ b/tags/b/build-prerequisite-in-installable-section.tag @@ -0,0 +1,13 @@ +Tag: build-prerequisite-in-installable-section +Severity: error +Check: debian/control/field/misplaced +Renamed-From: + build-info-in-binary-control-file-section +Explanation: The named field appears in an installable section of the + <code>debian/control</code> file, but the field declares a relationship + between sources. + . + The field should only appear in the source section of the <code>debian/control</code> + file. +See-Also: + debian-policy 5.2 diff --git a/tags/b/built-using-field-on-arch-all-package.tag b/tags/b/built-using-field-on-arch-all-package.tag new file mode 100644 index 0000000..d8cca62 --- /dev/null +++ b/tags/b/built-using-field-on-arch-all-package.tag @@ -0,0 +1,9 @@ +Tag: built-using-field-on-arch-all-package +Severity: info +Check: debian/control/field/built-using +Explanation: The stanza for an installation package in <code>debian/control</code> + declares a <code>Built-Using</code> field even though the package is declared as + <code>Architecture: all</code>. That is incorrect. + . + The <code>Built-Using</code> field is only used architecture-specific packages. + Please remove the <code>Built-Using</code> field from the indicated location. |