summaryrefslogtreecommitdiffstats
path: root/tags
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-14 13:42:30 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-14 13:42:30 +0000
commit75808db17caf8b960b351e3408e74142f4c85aac (patch)
tree7989e9c09a4240248bf4658a22208a0a52d991c4 /tags
parentInitial commit. (diff)
downloadlintian-75808db17caf8b960b351e3408e74142f4c85aac.tar.xz
lintian-75808db17caf8b960b351e3408e74142f4c85aac.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')
-rw-r--r--tags/a/absolute-symbolic-link-target-in-source.tag11
-rw-r--r--tags/a/absolute-symlink-in-top-level-folder.tag15
-rw-r--r--tags/a/acute-accent-in-manual-page.tag18
-rw-r--r--tags/a/add-component-copyright.tag13
-rw-r--r--tags/a/adduser-with-home-var-run.tag6
-rw-r--r--tags/a/adopted-extended-field.tag17
-rw-r--r--tags/a/alien-tag.tag7
-rw-r--r--tags/a/alternates-not-allowed.tag6
-rw-r--r--tags/a/alternatively-build-depends-on-python-sphinx-and-python3-sphinx.tag12
-rw-r--r--tags/a/ambiguous-paragraph-in-dep5-copyright.tag17
-rw-r--r--tags/a/ancient-libtool.tag24
-rw-r--r--tags/a/ancient-python-version-field.tag15
-rw-r--r--tags/a/ansi-escape.tag4
-rw-r--r--tags/a/anticipated-repack-count.tag13
-rw-r--r--tags/a/apache2-configuration-files-need-conf-suffix.tag6
-rw-r--r--tags/a/apache2-deprecated-auth-config.tag15
-rw-r--r--tags/a/apache2-module-does-not-depend-on-apache2-api.tag7
-rw-r--r--tags/a/apache2-module-does-not-ship-load-file.tag9
-rw-r--r--tags/a/apache2-reverse-dependency-calls-invoke-rc.d.tag8
-rw-r--r--tags/a/apache2-reverse-dependency-calls-wrapper-script.tag8
-rw-r--r--tags/a/apache2-reverse-dependency-ships-file-in-not-allowed-directory.tag7
-rw-r--r--tags/a/apache2-reverse-dependency-uses-obsolete-directory.tag7
-rw-r--r--tags/a/apache2-unparsable-dependency.tag7
-rw-r--r--tags/a/apache2-unsupported-dependency.tag7
-rw-r--r--tags/a/application-in-library-section.tag15
-rw-r--r--tags/a/appstream-metadata-in-legacy-location.tag6
-rw-r--r--tags/a/appstream-metadata-invalid.tag6
-rw-r--r--tags/a/appstream-metadata-legacy-format.tag12
-rw-r--r--tags/a/appstream-metadata-malformed-modalias-provide.tag7
-rw-r--r--tags/a/appstream-metadata-missing-modalias-provide.tag8
-rw-r--r--tags/a/arch-dep-package-has-big-usr-share.tag13
-rw-r--r--tags/a/arch-dependent-file-in-usr-share.tag6
-rw-r--r--tags/a/arch-dependent-file-not-in-arch-specific-directory.tag6
-rw-r--r--tags/a/arch-independent-package-contains-binary-or-object.tag9
-rw-r--r--tags/a/arch-wildcard-in-binary-package.tag7
-rw-r--r--tags/a/architecture-escape.tag13
-rw-r--r--tags/a/archive-liberty-mismatch.tag13
-rw-r--r--tags/a/aspell-package-not-arch-all.tag8
-rw-r--r--tags/a/autotools-pkg-config-macro-not-cross-compilation-safe.tag10
-rw-r--r--tags/b/backgrounded-test-command.tag25
-rw-r--r--tags/b/backports-changes-missing.tag8
-rw-r--r--tags/b/backports-upload-has-incorrect-version-number.tag7
-rw-r--r--tags/b/backup-file-in-package.tag6
-rw-r--r--tags/b/bad-distribution-in-changes-file.tag12
-rw-r--r--tags/b/bad-exception-format-in-dep5-copyright.tag10
-rw-r--r--tags/b/bad-homepage.tag8
-rw-r--r--tags/b/bad-intended-distribution.tag6
-rw-r--r--tags/b/bad-jar-name.tag9
-rw-r--r--tags/b/bad-menu-file-name.tag7
-rw-r--r--tags/b/bad-menu-item.tag5
-rw-r--r--tags/b/bad-owner-for-doc-file.tag4
-rw-r--r--tags/b/bad-package-name.tag7
-rw-r--r--tags/b/bad-perm-for-file-in-etc-sudoers.d.tag6
-rw-r--r--tags/b/bad-permissions-for-ali-file.tag12
-rw-r--r--tags/b/bad-permissions-for-etc-cron.d-script.tag5
-rw-r--r--tags/b/bad-permissions-for-etc-emacs-script.tag5
-rw-r--r--tags/b/bad-provided-package-name.tag7
-rw-r--r--tags/b/bad-relation.tag6
-rw-r--r--tags/b/bad-section-in-changes-file.tag7
-rw-r--r--tags/b/bad-so-link-within-manual-page.tag7
-rw-r--r--tags/b/bad-test-in-menu-item.tag9
-rw-r--r--tags/b/bad-urgency-in-changes-file.tag9
-rw-r--r--tags/b/bad-version-in-relation.tag6
-rw-r--r--tags/b/bad-version-number.tag5
-rw-r--r--tags/b/bad-whatis-entry.tag18
-rw-r--r--tags/b/bash-completion-with-hashbang.tag9
-rw-r--r--tags/b/bash-term-in-posix-shell.tag17
-rw-r--r--tags/b/bin-sbin-mismatch.tag17
-rw-r--r--tags/b/binaries-have-file-conflict.tag10
-rw-r--r--tags/b/binary-arch-rules-but-pkg-is-arch-indep.tag6
-rw-r--r--tags/b/binary-compiled-with-profiling-enabled.tag7
-rw-r--r--tags/b/binary-file-built-without-LFS-support.tag38
-rw-r--r--tags/b/binary-from-other-architecture.tag7
-rw-r--r--tags/b/binary-has-unneeded-section.tag11
-rw-r--r--tags/b/binary-in-etc.tag6
-rw-r--r--tags/b/binary-nmu-debian-revision-in-source.tag9
-rw-r--r--tags/b/binary-package-depends-on-toolchain-package.tag9
-rw-r--r--tags/b/binary-with-bad-dynamic-table.tag10
-rw-r--r--tags/b/bogus-mail-host-in-debian-changelog.tag6
-rw-r--r--tags/b/bogus-mail-host.tag12
-rw-r--r--tags/b/bogus-python-prerequisite.tag10
-rw-r--r--tags/b/boilerplate-copyright-format-uri.tag6
-rw-r--r--tags/b/boolean-template-has-bogus-default.tag9
-rw-r--r--tags/b/brace-expansion-in-debhelper-config-file.tag8
-rw-r--r--tags/b/breaks-without-version.tag13
-rw-r--r--tags/b/broken-bz2.tag6
-rw-r--r--tags/b/broken-gz.tag6
-rw-r--r--tags/b/broken-link-to-undocumented.tag7
-rw-r--r--tags/b/broken-lz.tag6
-rw-r--r--tags/b/broken-lzma.tag6
-rw-r--r--tags/b/broken-lzo.tag6
-rw-r--r--tags/b/broken-xz.tag6
-rw-r--r--tags/b/broken-zip.tag6
-rw-r--r--tags/b/bugs-field-does-not-refer-to-debian-infrastructure.tag9
-rw-r--r--tags/b/build-conflicts-with-build-dependency.tag6
-rw-r--r--tags/b/build-depends-arch-without-arch-dependent-binary.tag5
-rw-r--r--tags/b/build-depends-indep-without-arch-indep.tag6
-rw-r--r--tags/b/build-depends-on-1-revision.tag10
-rw-r--r--tags/b/build-depends-on-an-obsolete-java-package.tag6
-rw-r--r--tags/b/build-depends-on-build-essential-package-without-using-version.tag13
-rw-r--r--tags/b/build-depends-on-build-essential.tag7
-rw-r--r--tags/b/build-depends-on-essential-package-without-using-version.tag10
-rw-r--r--tags/b/build-depends-on-metapackage.tag10
-rw-r--r--tags/b/build-depends-on-non-build-package.tag8
-rw-r--r--tags/b/build-depends-on-obsolete-package.tag6
-rw-r--r--tags/b/build-depends-on-python-dev-with-no-arch-any.tag15
-rw-r--r--tags/b/build-depends-on-python-sphinx-only.tag13
-rw-r--r--tags/b/build-depends-on-specific-java-doc-package.tag6
-rw-r--r--tags/b/build-depends-on-versioned-berkeley-db.tag25
-rw-r--r--tags/b/build-path-in-manual.tag8
-rw-r--r--tags/b/build-prerequisite-in-installable-section.tag13
-rw-r--r--tags/b/built-using-field-on-arch-all-package.tag9
-rw-r--r--tags/c/cannot-check-whether-usr-share-doc-symlink-points-to-foreign-package.tag10
-rw-r--r--tags/c/capitalization-error-in-description-synopsis.tag7
-rw-r--r--tags/c/capitalization-error-in-description.tag12
-rw-r--r--tags/c/capitalization-in-override-comment.tag8
-rw-r--r--tags/c/carriage-return-line-feed.tag13
-rw-r--r--tags/c/changed-by-invalid-for-derivative.tag8
-rw-r--r--tags/c/changelog-distribution-does-not-match-changes-file.tag11
-rw-r--r--tags/c/changelog-empty-entry.tag6
-rw-r--r--tags/c/changelog-file-missing-explicit-entry.tag11
-rw-r--r--tags/c/changelog-file-not-compressed.tag6
-rw-r--r--tags/c/changelog-is-dh_make-template.tag10
-rw-r--r--tags/c/changelog-is-symlink.tag11
-rw-r--r--tags/c/changelog-news-debian-mismatch.tag7
-rw-r--r--tags/c/changelog-not-compressed-with-max-compression.tag6
-rw-r--r--tags/c/changelog-references-temp-security-identifier.tag15
-rw-r--r--tags/c/checksum-count-mismatch-in-changes-file.tag6
-rw-r--r--tags/c/checksum-mismatch-in-changes-file.tag6
-rw-r--r--tags/c/chown-with-dot.tag11
-rw-r--r--tags/c/circular-installation-prerequisite.tag13
-rw-r--r--tags/c/classpath-contains-relative-path.tag15
-rw-r--r--tags/c/co-maintained-package-with-no-vcs-fields.tag10
-rw-r--r--tags/c/codeless-jar.tag5
-rw-r--r--tags/c/comma-separated-files-in-dep5-copyright.tag8
-rw-r--r--tags/c/command-in-menu-file-and-desktop-file.tag13
-rw-r--r--tags/c/command-with-path-in-maintainer-script.tag18
-rw-r--r--tags/c/composer-package-without-pkg-php-tools-builddep.tag8
-rw-r--r--tags/c/composer-prerequisite.tag22
-rw-r--r--tags/c/compressed-documentation.tag10
-rw-r--r--tags/c/compressed-duplicate.tag8
-rw-r--r--tags/c/compressed-symlink-with-wrong-ext.tag8
-rw-r--r--tags/c/concatenated-upstream-signatures.tag7
-rw-r--r--tags/c/conffile-has-bad-file-type.tag8
-rw-r--r--tags/c/config-does-not-load-confmodule.tag4
-rw-r--r--tags/c/config-file-reserved.tag5
-rw-r--r--tags/c/configure-generated-file-in-source.tag17
-rw-r--r--tags/c/conflicting-negation-in-source-relation.tag8
-rw-r--r--tags/c/conflicting-test-fields.tag11
-rw-r--r--tags/c/conflicts-with-dependency.tag6
-rw-r--r--tags/c/conflicts-with-version.tag11
-rw-r--r--tags/c/control-file-contains-dh-make-vcs-comment.tag10
-rw-r--r--tags/c/control-file-has-bad-owner.tag5
-rw-r--r--tags/c/control-file-has-bad-permissions.tag7
-rw-r--r--tags/c/control-file-is-empty.tag5
-rw-r--r--tags/c/control-file-is-not-a-file.tag4
-rw-r--r--tags/c/control-interpreter-in-usr-local.tag7
-rw-r--r--tags/c/control-interpreter-without-depends.tag7
-rw-r--r--tags/c/control-interpreter-without-predepends.tag15
-rw-r--r--tags/c/control-tarball-compression-format.tag4
-rw-r--r--tags/c/copyright-contains-automatically-extracted-boilerplate.tag8
-rw-r--r--tags/c/copyright-contains-dh_make-todo-boilerplate.tag8
-rw-r--r--tags/c/copyright-does-not-refer-to-common-license-file.tag7
-rw-r--r--tags/c/copyright-file-compressed.tag6
-rw-r--r--tags/c/copyright-file-contains-full-apache-2-license.tag7
-rw-r--r--tags/c/copyright-file-contains-full-gfdl-license.tag7
-rw-r--r--tags/c/copyright-file-contains-full-gpl-license.tag8
-rw-r--r--tags/c/copyright-file-is-symlink.tag6
-rw-r--r--tags/c/copyright-file-lacks-pointer-to-perl-license.tag7
-rw-r--r--tags/c/copyright-has-crs.tag9
-rw-r--r--tags/c/copyright-has-url-from-dh_make-boilerplate.tag9
-rw-r--r--tags/c/copyright-not-using-common-license-for-apache2.tag12
-rw-r--r--tags/c/copyright-not-using-common-license-for-gfdl.tag12
-rw-r--r--tags/c/copyright-not-using-common-license-for-gpl.tag12
-rw-r--r--tags/c/copyright-not-using-common-license-for-lgpl.tag13
-rw-r--r--tags/c/copyright-refers-to-compressed-license.tag7
-rw-r--r--tags/c/copyright-refers-to-deprecated-bsd-license-file.tag13
-rw-r--r--tags/c/copyright-refers-to-incorrect-directory.tag6
-rw-r--r--tags/c/copyright-refers-to-nonexistent-license-file.tag7
-rw-r--r--tags/c/copyright-refers-to-old-directory.tag7
-rw-r--r--tags/c/copyright-refers-to-symlink-license.tag21
-rw-r--r--tags/c/copyright-refers-to-versionless-license-file.tag17
-rw-r--r--tags/c/copyright-with-old-dh-make-debian-copyright.tag14
-rw-r--r--tags/c/copyright-without-copyright-notice.tag22
-rw-r--r--tags/c/country-in-manual.tag10
-rw-r--r--tags/c/csh-considered-harmful.tag7
-rw-r--r--tags/c/ctrl-script.tag7
-rw-r--r--tags/c/custom-compression-in-debian-rules.tag23
-rw-r--r--tags/c/custom-compression-in-debian-source-options.tag23
-rw-r--r--tags/c/custom-library-search-path.tag25
-rw-r--r--tags/c/cute-field.tag8
-rw-r--r--tags/continuous-integration/salsa/include.tag5
-rw-r--r--tags/continuous-integration/salsa/specification.tag5
-rw-r--r--tags/d/data-tarball-compression-format.tag4
-rw-r--r--tags/d/dbg-package-missing-depends.tag16
-rw-r--r--tags/d/dbus-policy-at-console.tag28
-rw-r--r--tags/d/dbus-policy-excessively-broad.tag30
-rw-r--r--tags/d/dbus-policy-in-etc.tag16
-rw-r--r--tags/d/dbus-policy-without-send-destination.tag37
-rw-r--r--tags/d/dbus-session-service-wrong-name.tag14
-rw-r--r--tags/d/dbus-system-service-wrong-name.tag13
-rw-r--r--tags/d/debconf-config-not-executable.tag5
-rw-r--r--tags/d/debconf-is-not-a-registry.tag17
-rw-r--r--tags/d/debconf-translation-using-general-list.tag11
-rw-r--r--tags/d/debhelper-autoscript-in-maintainer-scripts.tag5
-rw-r--r--tags/d/debhelper-but-no-misc-depends.tag10
-rw-r--r--tags/d/debhelper-compat-file-contains-multiple-levels.tag11
-rw-r--r--tags/d/debhelper-compat-file-is-empty.tag7
-rw-r--r--tags/d/debhelper-compat-file-is-missing.tag14
-rw-r--r--tags/d/debhelper-compat-level.tag4
-rw-r--r--tags/d/debhelper-compat-not-a-number.tag6
-rw-r--r--tags/d/debhelper-compat-virtual-relation.tag5
-rw-r--r--tags/d/debhelper-tools-from-autotools-dev-are-deprecated.tag19
-rw-r--r--tags/d/debian-adds-arch-control-dir.tag14
-rw-r--r--tags/d/debian-adds-arch-inventory-file.tag8
-rw-r--r--tags/d/debian-adds-bts-control-dir.tag12
-rw-r--r--tags/d/debian-adds-bzr-control-dir.tag12
-rw-r--r--tags/d/debian-adds-cvs-conflict-copy.tag10
-rw-r--r--tags/d/debian-adds-cvs-control-dir.tag11
-rw-r--r--tags/d/debian-adds-editor-backup-file.tag11
-rw-r--r--tags/d/debian-adds-git-control-dir.tag12
-rw-r--r--tags/d/debian-adds-hg-control-dir.tag12
-rw-r--r--tags/d/debian-adds-hg-tags-file.tag9
-rw-r--r--tags/d/debian-adds-patch-failure-file.tag10
-rw-r--r--tags/d/debian-adds-quilt-control-dir.tag12
-rw-r--r--tags/d/debian-adds-svk-commit-file.tag8
-rw-r--r--tags/d/debian-adds-svn-commit-file.tag8
-rw-r--r--tags/d/debian-adds-svn-conflict-file.tag10
-rw-r--r--tags/d/debian-adds-svn-control-dir.tag11
-rw-r--r--tags/d/debian-build-system.tag5
-rw-r--r--tags/d/debian-changelog-file-contains-obsolete-user-emacs-settings.tag8
-rw-r--r--tags/d/debian-changelog-file-is-a-symlink.tag13
-rw-r--r--tags/d/debian-changelog-file-missing-or-wrong-name.tag11
-rw-r--r--tags/d/debian-changelog-has-wrong-day-of-week.tag13
-rw-r--r--tags/d/debian-changelog-line-too-long.tag7
-rw-r--r--tags/d/debian-changelog-line-too-short.tag21
-rw-r--r--tags/d/debian-control-file-is-a-symlink.tag11
-rw-r--r--tags/d/debian-control-has-dbgsym-package.tag10
-rw-r--r--tags/d/debian-control-has-empty-field.tag8
-rw-r--r--tags/d/debian-control-has-obsolete-dbg-package.tag14
-rw-r--r--tags/d/debian-control-has-unusual-field-spacing.tag10
-rw-r--r--tags/d/debian-control-repeats-field-name-in-value.tag9
-rw-r--r--tags/d/debian-copyright-is-symlink.tag7
-rw-r--r--tags/d/debian-files-list-in-source.tag9
-rw-r--r--tags/d/debian-news-entry-has-strange-distribution.tag8
-rw-r--r--tags/d/debian-news-entry-has-unknown-version.tag8
-rw-r--r--tags/d/debian-news-entry-uses-asterisk.tag8
-rw-r--r--tags/d/debian-news-file-not-compressed.tag6
-rw-r--r--tags/d/debian-pycompat-is-obsolete.tag6
-rw-r--r--tags/d/debian-pyversions-is-obsolete.tag8
-rw-r--r--tags/d/debian-revision-is-zero.tag10
-rw-r--r--tags/d/debian-revision-not-well-formed.tag7
-rw-r--r--tags/d/debian-rules-calls-debhelper-in-odd-order.tag10
-rw-r--r--tags/d/debian-rules-calls-pwd.tag13
-rw-r--r--tags/d/debian-rules-contains-unnecessary-get-orig-source-target.tag15
-rw-r--r--tags/d/debian-rules-ignores-make-clean-error.tag19
-rw-r--r--tags/d/debian-rules-is-dh_make-template.tag7
-rw-r--r--tags/d/debian-rules-is-symlink.tag11
-rw-r--r--tags/d/debian-rules-missing-recommended-target.tag10
-rw-r--r--tags/d/debian-rules-missing-required-target.tag33
-rw-r--r--tags/d/debian-rules-not-a-makefile.tag8
-rw-r--r--tags/d/debian-rules-not-executable.tag7
-rw-r--r--tags/d/debian-rules-parses-dpkg-parsechangelog.tag12
-rw-r--r--tags/d/debian-rules-passes-version-info-to-dh_shlibdeps.tag10
-rw-r--r--tags/d/debian-rules-sets-DEB_BUILD_OPTIONS.tag8
-rw-r--r--tags/d/debian-rules-sets-DH_COMPAT.tag8
-rw-r--r--tags/d/debian-rules-sets-dpkg-architecture-variable.tag16
-rw-r--r--tags/d/debian-rules-should-not-set-CFLAGS-from-noopt.tag9
-rw-r--r--tags/d/debian-rules-should-not-use-DH_EXTRA_ADDONS.tag7
-rw-r--r--tags/d/debian-rules-should-not-use-sanitize-all-buildflag.tag17
-rw-r--r--tags/d/debian-rules-updates-control-automatically.tag9
-rw-r--r--tags/d/debian-rules-uses-as-needed-linker-flag.tag15
-rw-r--r--tags/d/debian-rules-uses-deb-build-opts.tag7
-rw-r--r--tags/d/debian-rules-uses-deprecated-makefile.tag6
-rw-r--r--tags/d/debian-rules-uses-deprecated-systemd-override.tag14
-rw-r--r--tags/d/debian-rules-uses-installed-python-versions.tag17
-rw-r--r--tags/d/debian-rules-uses-special-shell-variable.tag20
-rw-r--r--tags/d/debian-rules-uses-supported-python-versions-without-python-all-build-depends.tag12
-rw-r--r--tags/d/debian-rules-uses-unnecessary-dh-argument.tag9
-rw-r--r--tags/d/debian-rules-uses-wrong-environment-variable.tag13
-rw-r--r--tags/d/debian-tests-control-autodep8-is-obsolete.tag21
-rw-r--r--tags/d/debian-upstream-obsolete-path.tag15
-rw-r--r--tags/d/debian-watch-contains-dh_make-template.tag5
-rw-r--r--tags/d/debian-watch-could-verify-download.tag9
-rw-r--r--tags/d/debian-watch-does-not-check-openpgp-signature.tag21
-rw-r--r--tags/d/debian-watch-file-in-native-package.tag8
-rw-r--r--tags/d/debian-watch-file-is-missing.tag16
-rw-r--r--tags/d/debian-watch-file-pubkey-file-is-missing.tag10
-rw-r--r--tags/d/debian-watch-file-specifies-old-upstream-version.tag10
-rw-r--r--tags/d/debian-watch-file-specifies-wrong-upstream-version.tag10
-rw-r--r--tags/d/debian-watch-file-standard.tag6
-rw-r--r--tags/d/debian-watch-file-uses-deprecated-githubredir.tag12
-rw-r--r--tags/d/debian-watch-file-uses-deprecated-sf-redirector-method.tag7
-rw-r--r--tags/d/debian-watch-lacks-sourceforge-redirector.tag16
-rw-r--r--tags/d/debian-watch-line-invalid.tag6
-rw-r--r--tags/d/debian-watch-mangles-debian-version-improperly.tag12
-rw-r--r--tags/d/debian-watch-mangles-upstream-version-improperly.tag10
-rw-r--r--tags/d/debian-watch-not-mangling-version.tag13
-rw-r--r--tags/d/debian-watch-upstream-component.tag5
-rw-r--r--tags/d/debian-watch-uses-insecure-uri.tag9
-rw-r--r--tags/d/debug-file-with-no-debug-symbols.tag12
-rw-r--r--tags/d/debug-package-for-multi-arch-same-pkg-not-coinstallable.tag19
-rw-r--r--tags/d/debug-suffix-not-dbg.tag11
-rw-r--r--tags/d/debug-symbol-migration-possibly-complete.tag18
-rw-r--r--tags/d/debug-symbols-directly-in-usr-lib-debug.tag11
-rw-r--r--tags/d/debug-symbols-not-detached.tag21
-rw-r--r--tags/d/declare-python-versions-for-test.tag25
-rw-r--r--tags/d/declares-possibly-conflicting-debhelper-compat-versions.tag8
-rw-r--r--tags/d/default-mta-dependency-does-not-specify-mail-transport-agent.tag12
-rw-r--r--tags/d/default-mta-dependency-not-listed-first.tag13
-rw-r--r--tags/d/dep5-copyright-license-name-not-unique.tag26
-rw-r--r--tags/d/dep5-file-paragraph-references-header-paragraph.tag11
-rw-r--r--tags/d/dependency-is-not-multi-archified.tag6
-rw-r--r--tags/d/dependency-on-python-version-marked-for-end-of-life.tag17
-rw-r--r--tags/d/depends-exclusively-on-makedev.tag8
-rw-r--r--tags/d/depends-on-essential-package-without-using-version.tag10
-rw-r--r--tags/d/depends-on-libdb1-compat.tag7
-rw-r--r--tags/d/depends-on-metapackage.tag9
-rw-r--r--tags/d/depends-on-misc-pre-depends.tag7
-rw-r--r--tags/d/depends-on-obsolete-package.tag6
-rw-r--r--tags/d/depends-on-old-emacs.tag11
-rw-r--r--tags/d/depends-on-packaging-dev.tag5
-rw-r--r--tags/d/depends-on-python-minimal.tag8
-rw-r--r--tags/d/depends-on-python2-and-python3.tag8
-rw-r--r--tags/d/depends-on-specific-java-doc-package.tag6
-rw-r--r--tags/d/deprecated-configure-filename.tag8
-rw-r--r--tags/d/description-contains-dh-make-perl-template.tag7
-rw-r--r--tags/d/description-contains-homepage.tag9
-rw-r--r--tags/d/description-contains-invalid-control-statement.tag14
-rw-r--r--tags/d/description-contains-tabs.tag5
-rw-r--r--tags/d/description-is-debmake-template.tag5
-rw-r--r--tags/d/description-is-dh_make-template.tag5
-rw-r--r--tags/d/description-is-pkg-name.tag6
-rw-r--r--tags/d/description-mentions-planned-features.tag11
-rw-r--r--tags/d/description-possibly-contains-homepage.tag7
-rw-r--r--tags/d/description-starts-with-leading-spaces.tag7
-rw-r--r--tags/d/description-starts-with-package-name.tag7
-rw-r--r--tags/d/description-synopsis-is-duplicated.tag7
-rw-r--r--tags/d/description-synopsis-is-empty.tag5
-rw-r--r--tags/d/description-synopsis-starts-with-article.tag10
-rw-r--r--tags/d/description-too-short.tag6
-rw-r--r--tags/d/desktop-command-not-in-package.tag11
-rw-r--r--tags/d/desktop-contains-deprecated-key.tag13
-rw-r--r--tags/d/desktop-entry-contains-deprecated-key.tag10
-rw-r--r--tags/d/desktop-entry-contains-encoding-key.tag12
-rw-r--r--tags/d/desktop-entry-contains-unknown-key.tag13
-rw-r--r--tags/d/desktop-entry-file-has-crs.tag14
-rw-r--r--tags/d/desktop-entry-invalid-category.tag15
-rw-r--r--tags/d/desktop-entry-lacks-icon-entry.tag17
-rw-r--r--tags/d/desktop-entry-lacks-keywords-entry.tag18
-rw-r--r--tags/d/desktop-entry-lacks-main-category.tag11
-rw-r--r--tags/d/desktop-entry-limited-to-environments.tag14
-rw-r--r--tags/d/desktop-entry-missing-required-key.tag10
-rw-r--r--tags/d/desktop-entry-unknown-type.tag16
-rw-r--r--tags/d/desktop-entry-uses-reserved-category.tag16
-rw-r--r--tags/d/desktop-file-in-wrong-dir.tag9
-rw-r--r--tags/d/desktop-mime-but-no-exec-code.tag10
-rw-r--r--tags/d/development-package-ships-elf-binary-in-path.tag20
-rw-r--r--tags/d/dfsg-version-in-native-package.tag13
-rw-r--r--tags/d/dfsg-version-misspelled.tag6
-rw-r--r--tags/d/dfsg-version-with-period.tag13
-rw-r--r--tags/d/dfsg-version-with-tilde.tag16
-rw-r--r--tags/d/dh-clean-k-is-deprecated.tag6
-rw-r--r--tags/d/dh-exec-install-not-allowed-here.tag8
-rw-r--r--tags/d/dh-exec-private-helper.tag8
-rw-r--r--tags/d/dh-exec-script-without-dh-exec-features.tag8
-rw-r--r--tags/d/dh-exec-subst-unknown-variable.tag10
-rw-r--r--tags/d/dh-exec-useless-usage.tag19
-rw-r--r--tags/d/dh-make-template-in-source.tag10
-rw-r--r--tags/d/dh-quilt-addon-but-quilt-source-format.tag8
-rw-r--r--tags/d/dh_installmanpages-is-obsolete.tag6
-rw-r--r--tags/d/dir-in-usr-local.tag13
-rw-r--r--tags/d/dir-or-file-in-build-tree.tag8
-rw-r--r--tags/d/dir-or-file-in-etc-opt.tag6
-rw-r--r--tags/d/dir-or-file-in-home.tag5
-rw-r--r--tags/d/dir-or-file-in-mnt.tag7
-rw-r--r--tags/d/dir-or-file-in-opt.tag6
-rw-r--r--tags/d/dir-or-file-in-run.tag6
-rw-r--r--tags/d/dir-or-file-in-srv.tag18
-rw-r--r--tags/d/dir-or-file-in-tmp.tag9
-rw-r--r--tags/d/dir-or-file-in-var-lock.tag6
-rw-r--r--tags/d/dir-or-file-in-var-run.tag6
-rw-r--r--tags/d/dir-or-file-in-var-www.tag20
-rw-r--r--tags/d/direct-changes-in-diff-but-no-patch-system.tag13
-rw-r--r--tags/d/directory-in-etc-sv-directory-without-executable-run-script.tag10
-rw-r--r--tags/d/distant-prerequisite-in-shlibs.tag18
-rw-r--r--tags/d/distribution-and-changes-mismatch.tag12
-rw-r--r--tags/d/distribution-and-experimental-mismatch.tag11
-rw-r--r--tags/d/diversion-for-unknown-file.tag5
-rw-r--r--tags/d/django-package-does-not-depend-on-django.tag8
-rw-r--r--tags/d/dm-upload-allowed-is-obsolete.tag8
-rw-r--r--tags/d/doc-base-abstract-field-is-template.tag8
-rw-r--r--tags/d/doc-base-abstract-field-separator-extra-whitespace.tag10
-rw-r--r--tags/d/doc-base-abstract-might-contain-extra-leading-whitespace.tag8
-rw-r--r--tags/d/doc-base-document-field-ends-in-whitespace.tag9
-rw-r--r--tags/d/doc-base-document-field-not-in-first-line.tag10
-rw-r--r--tags/d/doc-base-file-lacks-required-field.tag8
-rw-r--r--tags/d/doc-base-file-no-format-section.tag7
-rw-r--r--tags/d/doc-base-file-no-format.tag9
-rw-r--r--tags/d/doc-base-file-no-index.tag11
-rw-r--r--tags/d/doc-base-file-references-missing-file.tag9
-rw-r--r--tags/d/doc-base-file-references-wrong-path.tag8
-rw-r--r--tags/d/doc-base-file-separator-extra-whitespace.tag11
-rw-r--r--tags/d/doc-base-file-syntax-error.tag7
-rw-r--r--tags/d/doc-base-file-unknown-field.tag12
-rw-r--r--tags/d/doc-base-file-unknown-format.tag13
-rw-r--r--tags/d/doc-base-index-references-multiple-files.tag10
-rw-r--r--tags/d/doc-base-invalid-document-field.tag10
-rw-r--r--tags/d/doc-base-unknown-section.tag11
-rw-r--r--tags/d/doc-base-uses-applications-section.tag12
-rw-r--r--tags/d/doc-package-depends-on-main-package.tag9
-rw-r--r--tags/d/documentation-package-not-architecture-independent.tag5
-rw-r--r--tags/d/dot-before-repack-count.tag15
-rw-r--r--tags/d/doubly-armored-upstream-signature.tag8
-rw-r--r--tags/d/dpatch-build-dep-but-no-patch-list.tag11
-rw-r--r--tags/d/dpatch-index-references-non-existent-patch.tag5
-rw-r--r--tags/d/dpatch-missing-description.tag14
-rw-r--r--tags/d/drop-python-version-declaration.tag16
-rw-r--r--tags/d/duplicate-changelog-files.tag9
-rw-r--r--tags/d/duplicate-conffile.tag7
-rw-r--r--tags/d/duplicate-contact.tag5
-rw-r--r--tags/d/duplicate-entry-in-symbols-control-file.tag4
-rw-r--r--tags/d/duplicate-field-in-doc-base.tag5
-rw-r--r--tags/d/duplicate-files.tag16
-rw-r--r--tags/d/duplicate-font-file.tag16
-rw-r--r--tags/d/duplicate-format-in-doc-base.tag11
-rw-r--r--tags/d/duplicate-globbing-patterns.tag10
-rw-r--r--tags/d/duplicate-in-shlibs.tag6
-rw-r--r--tags/d/duplicate-key-in-desktop.tag9
-rw-r--r--tags/d/duplicate-long-description-in-template.tag6
-rw-r--r--tags/d/duplicate-long-description.tag10
-rw-r--r--tags/d/duplicate-override-context.tag12
-rw-r--r--tags/d/duplicate-p3dist-override.tag28
-rw-r--r--tags/d/duplicate-packaging-file.tag14
-rw-r--r--tags/d/duplicate-short-description.tag11
-rw-r--r--tags/d/duplicate-tag-in-menu.tag9
-rw-r--r--tags/d/duplicate-updaterc.d-calls-in-postinst.tag5
-rw-r--r--tags/d/duplicate-updaterc.d-calls-in-postrm.tag5
-rw-r--r--tags/e/elevated-privileges.tag16
-rw-r--r--tags/e/elf-error.tag14
-rw-r--r--tags/e/elf-maintainer-script.tag4
-rw-r--r--tags/e/elf-warning.tag13
-rw-r--r--tags/e/emacsen-common-without-dh-elpa.tag15
-rw-r--r--tags/e/embedded-feedparser-library.tag7
-rw-r--r--tags/e/embedded-javascript-library.tag8
-rw-r--r--tags/e/embedded-library.tag12
-rw-r--r--tags/e/embedded-pear-module.tag8
-rw-r--r--tags/e/embedded-php-library.tag7
-rw-r--r--tags/e/embedded-script-includes-copyright-statement.tag11
-rw-r--r--tags/e/empty-binary-package.tag17
-rw-r--r--tags/e/empty-debian-tests-control.tag6
-rw-r--r--tags/e/empty-field.tag6
-rw-r--r--tags/e/empty-manual-page.tag4
-rw-r--r--tags/e/empty-rust-library-declares-provides.tag24
-rw-r--r--tags/e/empty-shared-library-symbols.tag13
-rw-r--r--tags/e/empty-shlibs.tag17
-rw-r--r--tags/e/empty-short-license-in-dep5-copyright.tag6
-rw-r--r--tags/e/empty-translated-choices.tag6
-rw-r--r--tags/e/empty-udeb-package.tag13
-rw-r--r--tags/e/empty-upstream-sources.tag5
-rw-r--r--tags/e/epoch-change-without-comment.tag26
-rw-r--r--tags/e/epoch-changed-but-upstream-version-did-not-go-backwards.tag27
-rw-r--r--tags/e/essential-in-source-package.tag5
-rw-r--r--tags/e/essential-no-not-needed.tag6
-rw-r--r--tags/e/example-incorrect-path-for-interpreter.tag14
-rw-r--r--tags/e/example-interpreter-in-usr-local.tag7
-rw-r--r--tags/e/example-interpreter-not-absolute.tag9
-rw-r--r--tags/e/example-script-uses-bin-env.tag7
-rw-r--r--tags/e/example-script-uses-deprecated-nodejs-location.tag14
-rw-r--r--tags/e/example-script-without-interpreter.tag5
-rw-r--r--tags/e/example-shell-script-fails-syntax-check.tag12
-rw-r--r--tags/e/example-unusual-interpreter.tag6
-rw-r--r--tags/e/example-wrong-path-for-interpreter.tag10
-rw-r--r--tags/e/excessive-debhelper-overrides.tag24
-rw-r--r--tags/e/excessive-priority-for-library-package.tag12
-rw-r--r--tags/e/executable-debhelper-file-without-being-executable.tag8
-rw-r--r--tags/e/executable-desktop-file.tag7
-rw-r--r--tags/e/executable-in-usr-lib.tag41
-rw-r--r--tags/e/executable-in-usr-share-doc.tag6
-rw-r--r--tags/e/executable-in-usr-share-docbase.tag4
-rw-r--r--tags/e/executable-is-not-world-readable.tag9
-rw-r--r--tags/e/executable-jar-without-main-class.tag5
-rw-r--r--tags/e/executable-manual-page.tag5
-rw-r--r--tags/e/executable-menu-file.tag6
-rw-r--r--tags/e/executable-not-elf-or-script.tag13
-rw-r--r--tags/e/executable-stack-in-shared-library.tag20
-rw-r--r--tags/e/exit-in-shared-library.tag15
-rw-r--r--tags/e/experimental-to-unstable-without-comment.tag13
-rw-r--r--tags/e/explicit-default-in-package-type.tag7
-rw-r--r--tags/e/explicitly-armored-upstream-signature.tag7
-rw-r--r--tags/e/extended-description-contains-empty-paragraph.tag5
-rw-r--r--tags/e/extended-description-is-empty.tag6
-rw-r--r--tags/e/extended-description-is-probably-too-short.tag10
-rw-r--r--tags/e/extended-description-line-too-long.tag8
-rw-r--r--tags/e/extra-license-file.tag7
-rw-r--r--tags/e/extra-whitespace-around-name-in-changelog-trailer.tag10
-rw-r--r--tags/f/FSSTND-dir-in-manual-page.tag10
-rw-r--r--tags/f/FSSTND-dir-in-usr.tag9
-rw-r--r--tags/f/FSSTND-dir-in-var.tag10
-rw-r--r--tags/f/faulty-debian-qa-group-address.tag10
-rw-r--r--tags/f/faulty-debian-qa-group-phrase.tag6
-rw-r--r--tags/f/field-too-long.tag11
-rw-r--r--tags/f/file-contains-fixme-placeholder.tag9
-rw-r--r--tags/f/file-directly-in-usr-share-doc.tag6
-rw-r--r--tags/f/file-directly-in-usr-share.tag8
-rw-r--r--tags/f/file-in-discouraged-x11-font-directory.tag10
-rw-r--r--tags/f/file-in-etc-not-marked-as-conffile.tag6
-rw-r--r--tags/f/file-in-etc-rc.d-marked-as-conffile.tag5
-rw-r--r--tags/f/file-in-root-and-usr.tag12
-rw-r--r--tags/f/file-in-unknown-x11-font-directory.tag9
-rw-r--r--tags/f/file-in-unusual-dir.tag5
-rw-r--r--tags/f/file-in-usr-lib-sgml.tag7
-rw-r--r--tags/f/file-in-usr-lib-site-python.tag9
-rw-r--r--tags/f/file-in-usr-local.tag6
-rw-r--r--tags/f/file-in-usr-marked-as-conffile.tag8
-rw-r--r--tags/f/file-included-already.tag11
-rw-r--r--tags/f/file-missing-in-md5sums.tag9
-rw-r--r--tags/f/file-name-contains-wildcard-character.tag7
-rw-r--r--tags/f/file-name-ends-in-whitespace.tag10
-rw-r--r--tags/f/file-name-in-PATH-is-not-ASCII.tag8
-rw-r--r--tags/f/file-references-package-build-path.tag18
-rw-r--r--tags/f/file-size-mismatch-in-changes-file.tag6
-rw-r--r--tags/f/file-without-copyright-information.tag7
-rw-r--r--tags/f/files-excluded-without-copyright-format-1.0.tag15
-rw-r--r--tags/f/font-in-non-font-package.tag11
-rw-r--r--tags/f/font-outside-font-dir.tag6
-rw-r--r--tags/f/font-package-not-multi-arch-foreign.tag10
-rw-r--r--tags/f/forbidden-config-interpreter.tag7
-rw-r--r--tags/f/forbidden-postrm-interpreter.tag9
-rw-r--r--tags/f/format-3.0-but-debian-changes-patch.tag12
-rw-r--r--tags/g/game-outside-section.tag7
-rw-r--r--tags/g/gawk-script-but-no-gawk-dep.tag9
-rw-r--r--tags/g/generated-file.tag12
-rw-r--r--tags/g/gfortran-module-does-not-declare-version.tag9
-rw-r--r--tags/g/gir-in-arch-all-package.tag8
-rw-r--r--tags/g/gir-missing-typelib-dependency.tag25
-rw-r--r--tags/g/gir-section-not-libdevel.tag10
-rw-r--r--tags/g/git-patches-not-exported.tag15
-rw-r--r--tags/g/global-data-in-games-directory.tag14
-rw-r--r--tags/g/global-files-wildcard-not-first-paragraph-in-dep5-copyright.tag15
-rw-r--r--tags/g/globbing-patterns-out-of-order.tag13
-rw-r--r--tags/g/gobject-introspection-package-missing-depends-on-gir-depends.tag11
-rw-r--r--tags/g/groff-message.tag39
-rw-r--r--tags/g/gzip-file-is-not-multi-arch-same-safe.tag8
-rw-r--r--tags/h/hardening-no-bindnow.tag17
-rw-r--r--tags/h/hardening-no-fortify-functions.tag13
-rw-r--r--tags/h/hardening-no-pie.tag23
-rw-r--r--tags/h/hardening-no-relro.tag9
-rw-r--r--tags/h/header-has-overly-generic-name.tag8
-rw-r--r--tags/h/helper-templates-in-copyright.tag8
-rw-r--r--tags/h/homepage-field-uses-insecure-uri.tag5
-rw-r--r--tags/h/homepage-for-bioconductor-package-not-canonical.tag14
-rw-r--r--tags/h/homepage-for-cpan-package-contains-version.tag17
-rw-r--r--tags/h/homepage-for-cran-package-not-canonical.tag14
-rw-r--r--tags/h/homepage-github-url-ends-with-dot-git.tag12
-rw-r--r--tags/h/homepage-gitlab-url-ends-with-dot-git.tag12
-rw-r--r--tags/h/homepage-in-binary-package.tag13
-rw-r--r--tags/h/homepage-refers-to-filesystem-listing.tag7
-rw-r--r--tags/h/homepage-refers-to-obsolete-debian-infrastructure.tag13
-rw-r--r--tags/h/homepage-salsa-url-ends-with-dot-git.tag12
-rw-r--r--tags/h/html-changelog-without-text-version.tag7
-rw-r--r--tags/h/hyphen-file.tag7
-rw-r--r--tags/h/hyphen-in-upstream-part-of-debian-changelog-version.tag7
-rw-r--r--tags/i/icon-size-and-directory-name-mismatch.tag6
-rw-r--r--tags/i/illegal-multi-arch-value.tag7
-rw-r--r--tags/i/illegal-runtime-test-name.tag7
-rw-r--r--tags/i/illegal-variable.tag21
-rw-r--r--tags/i/image-file-has-conflicting-name.tag6
-rw-r--r--tags/i/image-file-has-unexpected-name.tag6
-rw-r--r--tags/i/image-file-in-usr-lib.tag6
-rw-r--r--tags/i/improbable-bug-number-in-closes.tag6
-rw-r--r--tags/i/incompatible-java-bytecode-format.tag7
-rw-r--r--tags/i/incomplete-creative-commons-license.tag23
-rw-r--r--tags/i/inconsistent-appstream-metadata-license.tag10
-rw-r--r--tags/i/inconsistent-maintainer.tag10
-rw-r--r--tags/i/incorrect-libdir-in-la-file.tag8
-rw-r--r--tags/i/incorrect-locale-code.tag15
-rw-r--r--tags/i/incorrect-naming-of-pkcs11-module.tag11
-rw-r--r--tags/i/incorrect-packaging-filename.tag16
-rw-r--r--tags/i/incorrect-path-for-interpreter.tag13
-rw-r--r--tags/i/info-document-has-wrong-extension.tag4
-rw-r--r--tags/i/info-document-missing-dir-entry.tag16
-rw-r--r--tags/i/info-document-missing-dir-section.tag13
-rw-r--r--tags/i/info-document-missing-image-file.tag19
-rw-r--r--tags/i/info-document-not-compressed-with-gzip.tag7
-rw-r--r--tags/i/info-document-not-compressed-with-max-compression.tag6
-rw-r--r--tags/i/info-document-not-compressed.tag5
-rw-r--r--tags/i/init-d-script-stops-in-s-runlevel.tag8
-rw-r--r--tags/i/init-script-is-not-a-file.tag5
-rw-r--r--tags/i/init.d-script-contains-skeleton-template-content.tag8
-rw-r--r--tags/i/init.d-script-depends-on-all-virtual-facility.tag9
-rw-r--r--tags/i/init.d-script-depends-on-unknown-virtual-facility.tag8
-rw-r--r--tags/i/init.d-script-does-not-implement-required-option.tag6
-rw-r--r--tags/i/init.d-script-does-not-implement-status-option.tag8
-rw-r--r--tags/i/init.d-script-does-not-provide-itself.tag9
-rw-r--r--tags/i/init.d-script-does-not-source-init-functions.tag11
-rw-r--r--tags/i/init.d-script-has-bad-lsb-line.tag10
-rw-r--r--tags/i/init.d-script-has-bad-start-runlevel.tag7
-rw-r--r--tags/i/init.d-script-has-bad-stop-runlevel.tag7
-rw-r--r--tags/i/init.d-script-has-conflicting-start-stop.tag9
-rw-r--r--tags/i/init.d-script-has-duplicate-lsb-keyword.tag7
-rw-r--r--tags/i/init.d-script-has-duplicate-lsb-section.tag8
-rw-r--r--tags/i/init.d-script-has-unknown-lsb-keyword.tag8
-rw-r--r--tags/i/init.d-script-has-unterminated-lsb-section.tag11
-rw-r--r--tags/i/init.d-script-missing-dependency-on-local_fs.tag12
-rw-r--r--tags/i/init.d-script-missing-lsb-keyword.tag8
-rw-r--r--tags/i/init.d-script-missing-lsb-section.tag9
-rw-r--r--tags/i/init.d-script-missing-lsb-short-description.tag8
-rw-r--r--tags/i/init.d-script-missing-start.tag8
-rw-r--r--tags/i/init.d-script-not-included-in-package.tag5
-rw-r--r--tags/i/init.d-script-not-marked-as-conffile.tag8
-rw-r--r--tags/i/init.d-script-possible-missing-stop.tag15
-rw-r--r--tags/i/init.d-script-provides-virtual-facility.tag16
-rw-r--r--tags/i/init.d-script-should-always-start-service.tag19
-rw-r--r--tags/i/init.d-script-sourcing-without-test.tag11
-rw-r--r--tags/i/init.d-script-starts-in-stop-runlevel.tag9
-rw-r--r--tags/i/init.d-script-uses-usr-interpreter.tag15
-rw-r--r--tags/i/initial-upload-closes-no-bugs.tag12
-rw-r--r--tags/i/insecure-copyright-format-uri.tag11
-rw-r--r--tags/i/install-info-used-in-maintainer-script.tag10
-rw-r--r--tags/i/installable-field-mirrors-source.tag11
-rw-r--r--tags/i/interpreter-in-usr-local.tag6
-rw-r--r--tags/i/interpreter-not-absolute.tag6
-rw-r--r--tags/i/intra-source-package-circular-dependency.tag14
-rw-r--r--tags/i/invalid-arch-string-in-source-relation.tag9
-rw-r--r--tags/i/invalid-date-in-debian-changelog.tag16
-rw-r--r--tags/i/invalid-escape-sequence-in-dep5-copyright.tag9
-rw-r--r--tags/i/invalid-field-for-derivative.tag17
-rw-r--r--tags/i/invalid-override-restriction.tag8
-rw-r--r--tags/i/invalid-po-file.tag6
-rw-r--r--tags/i/invalid-potfiles-in.tag11
-rw-r--r--tags/i/invalid-profile-name-in-build-profiles-field.tag28
-rw-r--r--tags/i/invalid-profile-name-in-source-relation.tag26
-rw-r--r--tags/i/invalid-restriction-formula-in-build-profiles-field.tag8
-rw-r--r--tags/i/invalid-short-name-in-dep5-copyright.tag6
-rw-r--r--tags/i/invalid-standards-version.tag6
-rw-r--r--tags/i/invalid-systemd-documentation.tag25
-rw-r--r--tags/i/invalid-template-id-in-symbols-file.tag9
-rw-r--r--tags/i/invalid-value-in-built-using-field.tag11
-rw-r--r--tags/i/invalid-version-number-for-derivative.tag9
-rw-r--r--tags/i/invalid-versioned-provides.tag8
-rw-r--r--tags/i/isdefault-flag-is-deprecated.tag12
-rw-r--r--tags/j/jar-contains-source.tag12
-rw-r--r--tags/j/jar-not-in-usr-share.tag14
-rw-r--r--tags/j/javalib-but-no-public-jars.tag10
-rw-r--r--tags/k/kill-mode-none.tag13
-rw-r--r--tags/k/killall-is-dangerous.tag9
-rw-r--r--tags/l/lacks-ldconfig-trigger.tag20
-rw-r--r--tags/l/lacks-unversioned-link-to-shared-library.tag26
-rw-r--r--tags/l/lacks-versioned-link-to-shared-library.tag12
-rw-r--r--tags/l/latest-changelog-entry-without-new-date.tag9
-rw-r--r--tags/l/latest-debian-changelog-entry-reuses-existing-version.tag15
-rw-r--r--tags/l/latest-debian-changelog-entry-without-new-date.tag9
-rw-r--r--tags/l/ldconfig-escape.tag14
-rw-r--r--tags/l/ldconfig-symlink-is-not-a-symlink.tag7
-rw-r--r--tags/l/ldconfig-symlink-referencing-wrong-file.tag7
-rw-r--r--tags/l/lengthy-symlink.tag10
-rw-r--r--tags/l/lib-recommends-documentation.tag12
-rw-r--r--tags/l/libapp-perl-package-name.tag12
-rw-r--r--tags/l/libmodule-build-perl-needs-to-be-in-build-depends.tag7
-rw-r--r--tags/l/libmodule-build-tiny-perl-needs-to-be-in-build-depends.tag7
-rw-r--r--tags/l/library-in-root-and-usr.tag12
-rw-r--r--tags/l/library-not-linked-against-libc.tag14
-rw-r--r--tags/l/library-package-name-for-application.tag15
-rw-r--r--tags/l/license-file-listed-in-debian-copyright.tag6
-rw-r--r--tags/l/license-problem-bad-php-license.tag10
-rw-r--r--tags/l/license-problem-cc-by-nc-sa.tag5
-rw-r--r--tags/l/license-problem-convert-utf-code.tag15
-rw-r--r--tags/l/license-problem-font-adobe-copyrighted-fragment-no-credit.tag12
-rw-r--r--tags/l/license-problem-font-adobe-copyrighted-fragment.tag9
-rw-r--r--tags/l/license-problem-gfdl-invariants-empty.tag11
-rw-r--r--tags/l/license-problem-gfdl-invariants.tag12
-rw-r--r--tags/l/license-problem-gfdl-non-official-text.tag8
-rw-r--r--tags/l/license-problem-json-evil.tag7
-rw-r--r--tags/l/license-problem-md5sum-non-distributable-file.tag12
-rw-r--r--tags/l/license-problem-md5sum-non-free-file.tag10
-rw-r--r--tags/l/license-problem-non-free-RFC-BCP78.tag11
-rw-r--r--tags/l/license-problem-non-free-RFC.tag11
-rw-r--r--tags/l/license-problem-non-free-img-lenna.tag23
-rw-r--r--tags/l/license-problem-nvidia-intellectual.tag14
-rw-r--r--tags/l/license-problem-php-license.tag11
-rw-r--r--tags/l/license-problem-undefined-license.tag20
-rw-r--r--tags/l/link-to-shared-library-in-wrong-package.tag19
-rw-r--r--tags/l/linked-with-obsolete-library.tag20
-rw-r--r--tags/l/loads-obsolete-confmodule.tag7
-rw-r--r--tags/l/lzma-deb-archive.tag6
-rw-r--r--tags/m/macos-ds-store-file-in-package.tag8
-rw-r--r--tags/m/macos-resource-fork-file-in-package.tag8
-rw-r--r--tags/m/magic-arch-in-arch-list.tag8
-rw-r--r--tags/m/mail-address-loops-or-bounces.tag17
-rw-r--r--tags/m/mail-contact.tag7
-rw-r--r--tags/m/mail-transport-agent-dependency-does-not-specify-default-mta.tag12
-rw-r--r--tags/m/mailing-list-on-alioth.tag10
-rw-r--r--tags/m/maintainer-also-in-uploaders.tag8
-rw-r--r--tags/m/maintainer-desktop-entry.tag10
-rw-r--r--tags/m/maintainer-manual-page.tag11
-rw-r--r--tags/m/maintainer-script-calls-chown-improperly.tag9
-rw-r--r--tags/m/maintainer-script-calls-gconftool.tag6
-rw-r--r--tags/m/maintainer-script-calls-init-script-directly.tag11
-rw-r--r--tags/m/maintainer-script-calls-install-sgmlcatalog.tag9
-rw-r--r--tags/m/maintainer-script-calls-service.tag14
-rw-r--r--tags/m/maintainer-script-calls-start-stop-daemon.tag9
-rw-r--r--tags/m/maintainer-script-calls-systemctl.tag13
-rw-r--r--tags/m/maintainer-script-changes-ld-so-conf.tag17
-rw-r--r--tags/m/maintainer-script-changes-netbase.tag9
-rw-r--r--tags/m/maintainer-script-does-not-check-for-existence-of-installdocs.tag12
-rw-r--r--tags/m/maintainer-script-does-not-check-for-existence-of-updatemenus.tag14
-rw-r--r--tags/m/maintainer-script-empty.tag13
-rw-r--r--tags/m/maintainer-script-has-invalid-update-inetd-options.tag16
-rw-r--r--tags/m/maintainer-script-has-unexpanded-debhelper-token.tag9
-rw-r--r--tags/m/maintainer-script-hides-init-failure.tag12
-rw-r--r--tags/m/maintainer-script-ignores-errors.tag7
-rw-r--r--tags/m/maintainer-script-interpreter.tag4
-rw-r--r--tags/m/maintainer-script-lacks-debhelper-token.tag8
-rw-r--r--tags/m/maintainer-script-lacks-home-in-adduser.tag18
-rw-r--r--tags/m/maintainer-script-modifies-inetd-conf.tag7
-rw-r--r--tags/m/maintainer-script-needs-depends-on-adduser.tag5
-rw-r--r--tags/m/maintainer-script-needs-depends-on-gconf2.tag7
-rw-r--r--tags/m/maintainer-script-needs-depends-on-ucf.tag5
-rw-r--r--tags/m/maintainer-script-needs-depends-on-update-inetd.tag10
-rw-r--r--tags/m/maintainer-script-needs-depends-on-xfonts-utils.tag11
-rw-r--r--tags/m/maintainer-script-needs-depends-on-xml-core.tag8
-rw-r--r--tags/m/maintainer-script-removes-device-files.tag6
-rw-r--r--tags/m/maintainer-script-sets-alternative-improperly.tag12
-rw-r--r--tags/m/maintainer-script-should-not-parse-etc-passwd-or-group.tag10
-rw-r--r--tags/m/maintainer-script-should-not-use-dpkg-maintscript-helper.tag10
-rw-r--r--tags/m/maintainer-script-should-not-use-piuparts-variable.tag12
-rw-r--r--tags/m/maintainer-script-supports-ancient-package-version.tag8
-rw-r--r--tags/m/maintainer-script-switches-dir-to-symlink-unsafely.tag11
-rw-r--r--tags/m/maintainer-script-updates-fontconfig-cache-improperly.tag7
-rw-r--r--tags/m/maintainer-script-without-set-e.tag10
-rw-r--r--tags/m/maintainer-shell-script-fails-syntax-check.tag8
-rw-r--r--tags/m/maintainer-upload-has-incorrect-version-number.tag7
-rw-r--r--tags/m/maintscript-calls-ldconfig.tag24
-rw-r--r--tags/m/maintscript-includes-maint-script-parameters.tag9
-rw-r--r--tags/m/making-assumptions-about-interfaces-in-templates.tag8
-rw-r--r--tags/m/malformed-changes-file.tag11
-rw-r--r--tags/m/malformed-contact.tag17
-rw-r--r--tags/m/malformed-deb-archive.tag11
-rw-r--r--tags/m/malformed-debian-changelog-version.tag7
-rw-r--r--tags/m/malformed-dm-upload-allowed.tag8
-rw-r--r--tags/m/malformed-md5sums-control-file.tag7
-rw-r--r--tags/m/malformed-override.tag15
-rw-r--r--tags/m/malformed-prompt-in-templates.tag11
-rw-r--r--tags/m/malformed-python-version.tag16
-rw-r--r--tags/m/malformed-question-in-templates.tag11
-rw-r--r--tags/m/malformed-template-name.tag6
-rw-r--r--tags/m/malformed-title-in-templates.tag7
-rw-r--r--tags/m/manual-page-for-system-command.tag16
-rw-r--r--tags/m/manual-page-from-template.tag12
-rw-r--r--tags/m/manual-page-in-udeb.tag5
-rw-r--r--tags/m/manual-page-with-generic-name.tag8
-rw-r--r--tags/m/maven-plugin-in-usr-share-java.tag5
-rw-r--r--tags/m/mawk-script-but-no-mawk-dep.tag9
-rw-r--r--tags/m/maybe-not-arch-all-binnmuable.tag10
-rw-r--r--tags/m/md5sum-mismatch.tag12
-rw-r--r--tags/m/md5sums-lists-nonexistent-file.tag9
-rw-r--r--tags/m/mentions-deprecated-usr-lib-perl5-directory.tag10
-rw-r--r--tags/m/menu-command-not-in-package.tag8
-rw-r--r--tags/m/menu-file-in-usr-lib.tag11
-rw-r--r--tags/m/menu-icon-cannot-be-parsed.tag10
-rw-r--r--tags/m/menu-icon-missing.tag17
-rw-r--r--tags/m/menu-icon-not-in-xpm-format.tag14
-rw-r--r--tags/m/menu-icon-too-big.tag10
-rw-r--r--tags/m/menu-icon-uses-relative-path.tag10
-rw-r--r--tags/m/menu-item-contains-unknown-tag.tag10
-rw-r--r--tags/m/menu-item-creates-new-root-section.tag8
-rw-r--r--tags/m/menu-item-creates-new-section.tag11
-rw-r--r--tags/m/menu-item-missing-required-tag.tag9
-rw-r--r--tags/m/menu-item-needs-dwww.tag7
-rw-r--r--tags/m/menu-item-needs-tag-has-unknown-value.tag8
-rw-r--r--tags/m/menu-item-uses-apps-games-section.tag8
-rw-r--r--tags/m/menu-item-uses-apps-section.tag8
-rw-r--r--tags/m/menu-item-uses-icon-none.tag6
-rw-r--r--tags/m/menu-item-uses-windowmanagers-section.tag8
-rw-r--r--tags/m/menu-method-lacks-include.tag12
-rw-r--r--tags/m/mismatch-translated-choices.tag12
-rw-r--r--tags/m/mismatched-override.tag15
-rw-r--r--tags/m/mismatched-python-substvar.tag8
-rw-r--r--tags/m/misnamed-po-file.tag13
-rw-r--r--tags/m/misplaced-extra-member-in-deb.tag6
-rw-r--r--tags/m/misplaced-systemd-tmpfiles.tag7
-rw-r--r--tags/m/missing-build-dependency-for-dh-addon.tag6
-rw-r--r--tags/m/missing-build-dependency-for-dh_-command.tag6
-rw-r--r--tags/m/missing-build-depends-for-clean-target-in-debian-rules.tag18
-rw-r--r--tags/m/missing-built-using-field-for-golang-package.tag14
-rw-r--r--tags/m/missing-call-to-dpkg-maintscript-helper.tag8
-rw-r--r--tags/m/missing-call-to-update-fonts.tag11
-rw-r--r--tags/m/missing-conffile.tag12
-rw-r--r--tags/m/missing-debconf-dependency-for-preinst.tag8
-rw-r--r--tags/m/missing-debconf-dependency.tag5
-rw-r--r--tags/m/missing-debian-source-format.tag19
-rw-r--r--tags/m/missing-debian-watch-file-standard.tag11
-rw-r--r--tags/m/missing-dep-for-interpreter.tag9
-rw-r--r--tags/m/missing-dep-on-jarwrapper.tag6
-rw-r--r--tags/m/missing-dependency-on-libc.tag15
-rw-r--r--tags/m/missing-dependency-on-libstdc++.tag16
-rw-r--r--tags/m/missing-dependency-on-numpy-abi.tag9
-rw-r--r--tags/m/missing-dependency-on-perlapi.tag11
-rw-r--r--tags/m/missing-dependency-on-phpapi.tag15
-rw-r--r--tags/m/missing-depends-on-sensible-utils.tag14
-rw-r--r--tags/m/missing-explanation-for-contrib-or-non-free-package.tag10
-rw-r--r--tags/m/missing-explanation-for-repacked-upstream-tarball.tag10
-rw-r--r--tags/m/missing-field-in-dep5-copyright.tag6
-rw-r--r--tags/m/missing-file-from-potfiles-in.tag6
-rw-r--r--tags/m/missing-intermediate-directory.tag7
-rw-r--r--tags/m/missing-license-paragraph-in-dep5-copyright.tag12
-rw-r--r--tags/m/missing-license-text-in-dep5-copyright.tag6
-rw-r--r--tags/m/missing-manifest.tag5
-rw-r--r--tags/m/missing-notice-file-for-apache-license.tag18
-rw-r--r--tags/m/missing-pkg-php-tools-addon.tag10
-rw-r--r--tags/m/missing-pkg-php-tools-buildsystem.tag8
-rw-r--r--tags/m/missing-potfiles-in.tag6
-rw-r--r--tags/m/missing-prerequisite-for-gfortran-module.tag9
-rw-r--r--tags/m/missing-prerequisite-for-pyproject-backend.tag14
-rw-r--r--tags/m/missing-runtime-test-file.tag6
-rw-r--r--tags/m/missing-separator-between-items.tag7
-rw-r--r--tags/m/missing-systemd-service-for-init.d-rcS-script.tag15
-rw-r--r--tags/m/missing-systemd-service-for-init.d-script.tag11
-rw-r--r--tags/m/missing-systemd-timer-for-cron-script.tag16
-rw-r--r--tags/m/missing-templates-pot.tag6
-rw-r--r--tags/m/missing-tests-control.tag11
-rw-r--r--tags/m/missing-vcs-browser-field.tag10
-rw-r--r--tags/m/missing-xs-go-import-path-for-golang-package.tag21
-rw-r--r--tags/m/misspelled-closes-bug.tag6
-rw-r--r--tags/m/mknod-in-maintainer-script.tag10
-rw-r--r--tags/m/more-than-one-patch-system.tag9
-rw-r--r--tags/m/multi-arch-same-package-calls-pycompile.tag24
-rw-r--r--tags/m/multi-arch-same-package-has-arch-specific-overrides.tag8
-rw-r--r--tags/m/multiarch-foreign-cmake-file.tag10
-rw-r--r--tags/m/multiarch-foreign-pkgconfig.tag10
-rw-r--r--tags/m/multiarch-foreign-shared-library.tag11
-rw-r--r--tags/m/multiarch-foreign-static-library.tag10
-rw-r--r--tags/m/multiline-architecture-field.tag8
-rw-r--r--tags/m/multiline-field.tag5
-rw-r--r--tags/m/multiple-debian-watch-file-standards.tag9
-rw-r--r--tags/m/multiple-distributions-in-changes-file.tag11
-rw-r--r--tags/n/named-copyright-for-single-installable.tag10
-rw-r--r--tags/n/national-encoding.tag23
-rw-r--r--tags/n/native-source-file-without-utf8-name.tag10
-rw-r--r--tags/n/needless-dependency-on-jre.tag15
-rw-r--r--tags/n/needless-suggest-recommend-libservlet-java.tag12
-rw-r--r--tags/n/needlessly-depends-on-awk.tag8
-rw-r--r--tags/n/nested-examples-directory.tag6
-rw-r--r--tags/n/new-essential-package.tag7
-rw-r--r--tags/n/new-package-should-not-package-python2-module.tag24
-rw-r--r--tags/n/new-package-uses-date-based-version-number.tag11
-rw-r--r--tags/n/newer-debconf-templates.tag13
-rw-r--r--tags/n/newer-standards-version.tag8
-rw-r--r--tags/n/nfs-temporary-file-in-package.tag7
-rw-r--r--tags/n/nmu-in-changelog.tag13
-rw-r--r--tags/n/no-changelog.tag18
-rw-r--r--tags/n/no-code-sections.tag11
-rw-r--r--tags/n/no-complete-debconf-translation.tag13
-rw-r--r--tags/n/no-copyright-file.tag6
-rw-r--r--tags/n/no-ctrl-scripts.tag5
-rw-r--r--tags/n/no-debconf-config.tag6
-rw-r--r--tags/n/no-debconf-templates.tag6
-rw-r--r--tags/n/no-debian-changes.tag19
-rw-r--r--tags/n/no-debian-copyright-in-source.tag7
-rw-r--r--tags/n/no-dep5-copyright.tag8
-rw-r--r--tags/n/no-dh-sequencer.tag10
-rw-r--r--tags/n/no-english-manual-page.tag10
-rw-r--r--tags/n/no-homepage-field.tag8
-rw-r--r--tags/n/no-human-maintainers.tag7
-rw-r--r--tags/n/no-manual-page.tag23
-rw-r--r--tags/n/no-md5sums-control-file.tag12
-rw-r--r--tags/n/no-newline-at-end.tag7
-rw-r--r--tags/n/no-nmu-in-changelog.tag15
-rw-r--r--tags/n/no-op-testsuite.tag15
-rw-r--r--tags/n/no-phrase.tag13
-rw-r--r--tags/n/no-qa-in-changelog.tag7
-rw-r--r--tags/n/no-shlibs.tag9
-rw-r--r--tags/n/no-source-section.tag5
-rw-r--r--tags/n/no-strong-digests-in-dsc.tag15
-rw-r--r--tags/n/no-symbols-control-file.tag10
-rw-r--r--tags/n/no-template-description.tag8
-rw-r--r--tags/n/no-template-name.tag4
-rw-r--r--tags/n/no-template-type.tag4
-rw-r--r--tags/n/no-tests.tag7
-rw-r--r--tags/n/no-versioned-debhelper-prerequisite.tag28
-rw-r--r--tags/n/node-package-install-in-nodejs-rootdir.tag5
-rw-r--r--tags/n/nodejs-lock-file.tag16
-rw-r--r--tags/n/nodejs-missing-version-override.tag6
-rw-r--r--tags/n/nodejs-module-installed-in-bad-directory.tag9
-rw-r--r--tags/n/nodejs-module-installed-in-usr-lib.tag11
-rw-r--r--tags/n/nodejs-module-not-declared.tag8
-rw-r--r--tags/n/nodejs-module.tag4
-rw-r--r--tags/n/non-conf-file-in-modprobe.d.tag11
-rw-r--r--tags/n/non-consecutive-debian-revision.tag8
-rw-r--r--tags/n/non-debug-file-in-debug-package.tag9
-rw-r--r--tags/n/non-empty-dependency_libs-in-la-file.tag15
-rw-r--r--tags/n/non-etc-file-marked-as-conffile.tag7
-rw-r--r--tags/n/non-free-flash.tag5
-rw-r--r--tags/n/non-multi-arch-lib-dir.tag7
-rw-r--r--tags/n/non-standard-apache2-configuration-name.tag7
-rw-r--r--tags/n/non-standard-apache2-module-package-name.tag7
-rw-r--r--tags/n/non-standard-dir-in-usr.tag8
-rw-r--r--tags/n/non-standard-dir-in-var.tag8
-rw-r--r--tags/n/non-standard-dir-perm.tag6
-rw-r--r--tags/n/non-standard-executable-perm.tag8
-rw-r--r--tags/n/non-standard-file-perm.tag32
-rw-r--r--tags/n/non-standard-file-permissions-for-etc-init.d-script.tag5
-rw-r--r--tags/n/non-standard-game-executable-perm.tag8
-rw-r--r--tags/n/non-standard-setuid-executable-perm.tag10
-rw-r--r--tags/n/non-standard-toplevel-dir.tag6
-rw-r--r--tags/n/non-virtual-facility-in-initd-script.tag14
-rw-r--r--tags/n/non-wm-in-windowmanager-menu-section.tag8
-rw-r--r--tags/n/non-wm-module-in-wm-modules-menu-section.tag10
-rw-r--r--tags/n/not-allowed-control-file.tag7
-rw-r--r--tags/n/not-binnmuable-all-depends-any.tag14
-rw-r--r--tags/n/not-binnmuable-any-depends-all.tag9
-rw-r--r--tags/n/not-binnmuable-any-depends-any.tag6
-rw-r--r--tags/n/not-using-po-debconf.tag8
-rw-r--r--tags/n/number-of-patches.tag5
-rw-r--r--tags/o/obsolete-command-in-modprobe.d-file.tag6
-rw-r--r--tags/o/obsolete-comments-style-in-php-ini.tag9
-rw-r--r--tags/o/obsolete-crypt-alias.tag15
-rw-r--r--tags/o/obsolete-debian-watch-file-standard.tag6
-rw-r--r--tags/o/obsolete-des-encryption.tag28
-rw-r--r--tags/o/obsolete-field-in-dep5-copyright.tag12
-rw-r--r--tags/o/obsolete-relation-form-in-source.tag11
-rw-r--r--tags/o/obsolete-relation-form.tag11
-rw-r--r--tags/o/obsolete-runtime-tests-restriction.tag8
-rw-r--r--tags/o/obsolete-url-in-packaging.tag14
-rw-r--r--tags/o/obsolete-vim-addon-manager.tag12
-rw-r--r--tags/o/ocaml-custom-executable.tag9
-rw-r--r--tags/o/ocaml-dangling-cmi.tag9
-rw-r--r--tags/o/ocaml-dangling-cmx.tag8
-rw-r--r--tags/o/ocaml-dangling-cmxa.tag6
-rw-r--r--tags/o/ocaml-dangling-cmxs.tag9
-rw-r--r--tags/o/ocaml-dev-file-in-nondev-package.tag8
-rw-r--r--tags/o/ocaml-dev-file-not-in-usr-lib-ocaml.tag9
-rw-r--r--tags/o/ocaml-meta-without-suggesting-findlib.tag9
-rw-r--r--tags/o/ocaml-stray-cmo.tag10
-rw-r--r--tags/o/odd-historical-debian-changelog-version.tag16
-rw-r--r--tags/o/odd-mark-in-description.tag8
-rw-r--r--tags/o/odd-permissions-on-shared-library.tag8
-rw-r--r--tags/o/odd-place-for-manual-page.tag11
-rw-r--r--tags/o/odd-static-library-name.tag12
-rw-r--r--tags/o/old-devhelp-standard.tag9
-rw-r--r--tags/o/old-fsf-address-in-copyright-file.tag8
-rw-r--r--tags/o/old-python-version-field.tag15
-rw-r--r--tags/o/old-source-override-location.tag12
-rw-r--r--tags/o/old-style-config-script-multiarch-path-arch-all.tag11
-rw-r--r--tags/o/old-style-config-script-multiarch-path.tag9
-rw-r--r--tags/o/old-style-config-script.tag26
-rw-r--r--tags/o/older-debian-watch-file-standard.tag6
-rw-r--r--tags/o/older-source-format.tag15
-rw-r--r--tags/o/omitted-systemd-service-for-init.d-script.tag16
-rw-r--r--tags/o/openpgp-file-has-implementation-specific-extension.tag20
-rw-r--r--tags/o/opentype-font-prohibits-installable-embedding.tag7
-rw-r--r--tags/o/opentype-font-wrong-filename.tag5
-rw-r--r--tags/o/ored-build-depends-on-obsolete-package.tag5
-rw-r--r--tags/o/ored-depends-on-obsolete-package.tag5
-rw-r--r--tags/o/orig-tarball-missing-upstream-signature.tag23
-rw-r--r--tags/o/orphaned-diversion.tag6
-rw-r--r--tags/o/orphaned-package-maintained-in-private-space.tag13
-rw-r--r--tags/o/orphaned-package-not-maintained-in-debian-infrastructure.tag12
-rw-r--r--tags/o/out-of-date-copyright-format-uri.tag8
-rw-r--r--tags/o/out-of-date-standards-version.tag18
-rw-r--r--tags/o/outdated-relation-in-shlibs.tag10
-rw-r--r--tags/o/output-of-updaterc.d-not-redirected-to-dev-null.tag6
-rw-r--r--tags/o/override-file-in-wrong-location.tag9
-rw-r--r--tags/o/override-file-in-wrong-package.tag8
-rw-r--r--tags/o/override_dh_auto_test-does-not-check-DEB_BUILD_OPTIONS.tag29
-rw-r--r--tags/o/override_dh_clean-does-not-call-dh_clean.tag11
-rw-r--r--tags/o/override_dh_fixperms-does-not-call-dh_fixperms.tag12
-rw-r--r--tags/p/package-builds-dbg-and-dbgsym-variants.tag10
-rw-r--r--tags/p/package-contains-ancient-file.tag7
-rw-r--r--tags/p/package-contains-broken-symlink-wildcard.tag7
-rw-r--r--tags/p/package-contains-bts-control-dir.tag6
-rw-r--r--tags/p/package-contains-cmake-private-file.tag13
-rw-r--r--tags/p/package-contains-compiled-font-file.tag6
-rw-r--r--tags/p/package-contains-compiled-glib-schema.tag7
-rw-r--r--tags/p/package-contains-documentation-outside-usr-share-doc.tag25
-rw-r--r--tags/p/package-contains-empty-directory.tag10
-rw-r--r--tags/p/package-contains-eslint-config-file.tag11
-rw-r--r--tags/p/package-contains-file-in-etc-skel.tag13
-rw-r--r--tags/p/package-contains-file-in-usr-share-hal.tag9
-rw-r--r--tags/p/package-contains-hardlink.tag14
-rw-r--r--tags/p/package-contains-icon-cache-in-generic-dir.tag8
-rw-r--r--tags/p/package-contains-info-dir-file.tag10
-rw-r--r--tags/p/package-contains-linda-override.tag7
-rw-r--r--tags/p/package-contains-mime-cache-file.tag9
-rw-r--r--tags/p/package-contains-mime-file-outside-package-dir.tag10
-rw-r--r--tags/p/package-contains-mimeinfo.cache-file.tag10
-rw-r--r--tags/p/package-contains-multiple-dpi-fonts.tag9
-rw-r--r--tags/p/package-contains-no-arch-dependent-files.tag9
-rw-r--r--tags/p/package-contains-npm-ignore-file.tag9
-rw-r--r--tags/p/package-contains-python-coverage-file.tag11
-rw-r--r--tags/p/package-contains-python-doctree-file.tag29
-rw-r--r--tags/p/package-contains-python-dot-directory.tag12
-rw-r--r--tags/p/package-contains-python-header-in-incorrect-directory.tag14
-rw-r--r--tags/p/package-contains-python-hypothesis-example.tag17
-rw-r--r--tags/p/package-contains-python-tests-in-global-namespace.tag12
-rw-r--r--tags/p/package-contains-readme-for-other-platform-or-distro.tag8
-rw-r--r--tags/p/package-contains-sass-cache-directory.tag17
-rw-r--r--tags/p/package-contains-thumbnails-dir.tag6
-rw-r--r--tags/p/package-contains-timestamped-gzip.tag9
-rw-r--r--tags/p/package-contains-unsafe-symlink.tag6
-rw-r--r--tags/p/package-contains-upstream-installation-documentation.tag8
-rw-r--r--tags/p/package-contains-usr-unmerged-pathnames.tag17
-rw-r--r--tags/p/package-contains-vcs-control-dir.tag6
-rw-r--r--tags/p/package-contains-vcs-control-file.tag8
-rw-r--r--tags/p/package-contains-xvpics-dir.tag5
-rw-r--r--tags/p/package-depends-on-an-x-font-package.tag10
-rw-r--r--tags/p/package-depends-on-hardcoded-libc.tag6
-rw-r--r--tags/p/package-depends-on-multiple-libpng-versions.tag6
-rw-r--r--tags/p/package-depends-on-multiple-libstdc-versions.tag6
-rw-r--r--tags/p/package-depends-on-multiple-tcl-versions.tag6
-rw-r--r--tags/p/package-depends-on-multiple-tclx-versions.tag6
-rw-r--r--tags/p/package-depends-on-multiple-tk-versions.tag6
-rw-r--r--tags/p/package-does-not-install-examples.tag25
-rw-r--r--tags/p/package-does-not-use-debhelper-or-cdbs.tag11
-rw-r--r--tags/p/package-file-is-executable.tag10
-rw-r--r--tags/p/package-has-long-file-name.tag12
-rw-r--r--tags/p/package-has-unnecessary-activation-of-ldconfig-trigger.tag12
-rw-r--r--tags/p/package-installs-apt-keyring.tag13
-rw-r--r--tags/p/package-installs-apt-preferences.tag10
-rw-r--r--tags/p/package-installs-apt-sources.tag17
-rw-r--r--tags/p/package-installs-deprecated-upstart-configuration.tag9
-rw-r--r--tags/p/package-installs-file-to-usr-x11r6.tag12
-rw-r--r--tags/p/package-installs-ieee-data.tag13
-rw-r--r--tags/p/package-installs-into-etc-gconf-schemas.tag7
-rw-r--r--tags/p/package-installs-into-etc-rc.boot.tag6
-rw-r--r--tags/p/package-installs-into-etc-rc.d.tag6
-rw-r--r--tags/p/package-installs-into-obsolete-dir.tag7
-rw-r--r--tags/p/package-installs-java-bytecode.tag8
-rw-r--r--tags/p/package-installs-nonbinary-perl-in-usr-lib-perl5.tag8
-rw-r--r--tags/p/package-installs-packlist.tag16
-rw-r--r--tags/p/package-installs-perllocal-pod.tag8
-rw-r--r--tags/p/package-installs-python-bytecode.tag7
-rw-r--r--tags/p/package-installs-python-egg.tag8
-rw-r--r--tags/p/package-installs-python-pycache-dir.tag11
-rw-r--r--tags/p/package-is-co-maintained.tag6
-rw-r--r--tags/p/package-is-maintained-by-individual.tag5
-rw-r--r--tags/p/package-is-team-maintained.tag5
-rw-r--r--tags/p/package-mixes-misc-and-dpi-fonts.tag8
-rw-r--r--tags/p/package-modifies-ld.so-search-path.tag15
-rw-r--r--tags/p/package-name-defined-in-config-h.tag9
-rw-r--r--tags/p/package-name-doesnt-match-sonames.tag9
-rw-r--r--tags/p/package-not-lowercase.tag5
-rw-r--r--tags/p/package-placeholder-in-symbols-file.tag17
-rw-r--r--tags/p/package-relation-with-perl-modules.tag8
-rw-r--r--tags/p/package-relation-with-self.tag6
-rw-r--r--tags/p/package-section-games-but-contains-no-game.tag7
-rw-r--r--tags/p/package-section-games-but-has-usr-bin.tag7
-rw-r--r--tags/p/package-superseded-by-perl.tag12
-rw-r--r--tags/p/package-uses-debhelper-but-lacks-build-depends.tag9
-rw-r--r--tags/p/package-uses-deprecated-debhelper-compat-version.tag14
-rw-r--r--tags/p/package-uses-deprecated-dpatch-patch-system.tag9
-rw-r--r--tags/p/package-uses-dh-exec-but-lacks-build-depends.tag5
-rw-r--r--tags/p/package-uses-dh-runit-but-lacks-breaks-substvar.tag12
-rw-r--r--tags/p/package-uses-experimental-debhelper-compat-version.tag14
-rw-r--r--tags/p/package-uses-local-diversion.tag8
-rw-r--r--tags/p/package-uses-old-debhelper-compat-version.tag13
-rw-r--r--tags/p/package-uses-vendor-specific-patch-series.tag25
-rw-r--r--tags/p/patch-file-present-but-not-mentioned-in-series.tag14
-rw-r--r--tags/p/patch-modifying-debian-files.tag10
-rw-r--r--tags/p/patch-not-forwarded-upstream.tag15
-rw-r--r--tags/p/patch-system-but-direct-changes-in-diff.tag10
-rw-r--r--tags/p/patch-system-but-no-source-readme.tag13
-rw-r--r--tags/p/patch-system.tag5
-rw-r--r--tags/p/patched-file-without-utf8-name.tag12
-rw-r--r--tags/p/pear-channel-without-pkg-php-tools-builddep.tag8
-rw-r--r--tags/p/pear-package-but-missing-dependency.tag5
-rw-r--r--tags/p/pear-package-not-using-substvar.tag9
-rw-r--r--tags/p/pear-package-without-pkg-php-tools-builddep.tag8
-rw-r--r--tags/p/pecl-package-requires-build-dependency.tag5
-rw-r--r--tags/p/perl-module-in-core-directory.tag7
-rw-r--r--tags/p/perl-module-name-not-mentioned-in-description.tag8
-rw-r--r--tags/p/perl-module-uses-perl4-libs-without-dep.tag8
-rw-r--r--tags/p/php-script-but-no-php-cli-dep.tag10
-rw-r--r--tags/p/php-script-with-unusual-interpreter.tag6
-rw-r--r--tags/p/pipe-symbol-used-as-license-disjunction.tag9
-rw-r--r--tags/p/pkg-config-bad-directive.tag7
-rw-r--r--tags/p/pkg-config-multi-arch-wrong-dir.tag15
-rw-r--r--tags/p/pkg-config-unavailable-for-cross-compilation.tag14
-rw-r--r--tags/p/pkg-js-autopkgtest-file-does-not-exist.tag8
-rw-r--r--tags/p/pkg-js-autopkgtest-test-is-empty.tag8
-rw-r--r--tags/p/pkg-js-autopkgtest-test-is-missing.tag11
-rw-r--r--tags/p/pkg-js-tools-test-is-empty.tag8
-rw-r--r--tags/p/pkg-js-tools-test-is-missing.tag13
-rw-r--r--tags/p/pkg-not-in-package-test.tag17
-rw-r--r--tags/p/pod-conversion-message.tag9
-rw-r--r--tags/p/poor-compression-in-manual-page.tag7
-rw-r--r--tags/p/portable-executable-missing-security-features.tag40
-rw-r--r--tags/p/possible-bashism-in-maintainer-script.tag19
-rw-r--r--tags/p/possible-debconf-note-abuse.tag18
-rw-r--r--tags/p/possible-documentation-but-no-doc-base-registration.tag10
-rw-r--r--tags/p/possible-gpl-code-linked-with-openssl.tag17
-rw-r--r--tags/p/possible-missing-colon-in-closes.tag7
-rw-r--r--tags/p/possible-new-upstream-release-without-new-version.tag9
-rw-r--r--tags/p/possible-unindented-list-in-extended-description.tag8
-rw-r--r--tags/p/possibly-insecure-handling-of-tmp-files-in-maintainer-script.tag12
-rw-r--r--tags/p/postinst-does-not-call-updatemenus.tag15
-rw-r--r--tags/p/postinst-does-not-load-confmodule.tag6
-rw-r--r--tags/p/postinst-has-useless-call-to-install-docs.tag9
-rw-r--r--tags/p/postinst-has-useless-call-to-update-menus.tag7
-rw-r--r--tags/p/postinst-uses-db-input.tag7
-rw-r--r--tags/p/postrm-calls-installdocs.tag7
-rw-r--r--tags/p/postrm-contains-additional-updaterc.d-calls.tag5
-rw-r--r--tags/p/postrm-does-not-call-updatemenus.tag15
-rw-r--r--tags/p/postrm-does-not-call-updaterc.d-for-init.d-script.tag7
-rw-r--r--tags/p/postrm-does-not-purge-debconf.tag6
-rw-r--r--tags/p/postrm-has-useless-call-to-update-menus.tag7
-rw-r--r--tags/p/postrm-removes-alternative.tag25
-rw-r--r--tags/p/prefer-uscan-symlink.tag13
-rw-r--r--tags/p/preinst-calls-installdocs.tag8
-rw-r--r--tags/p/preinst-calls-updatemenus.tag7
-rw-r--r--tags/p/preinst-calls-updaterc.d.tag6
-rw-r--r--tags/p/prerm-calls-updatemenus.tag8
-rw-r--r--tags/p/prerm-calls-updaterc.d.tag6
-rw-r--r--tags/p/prerm-has-useless-call-to-install-docs.tag10
-rw-r--r--tags/p/priority-extra-is-replaced-by-priority-optional.tag9
-rw-r--r--tags/p/privacy-breach-donation.tag16
-rw-r--r--tags/p/privacy-breach-facebook.tag12
-rw-r--r--tags/p/privacy-breach-generic.tag13
-rw-r--r--tags/p/privacy-breach-google-adsense.tag21
-rw-r--r--tags/p/privacy-breach-google-cse.tag13
-rw-r--r--tags/p/privacy-breach-google-plus.tag13
-rw-r--r--tags/p/privacy-breach-logo.tag17
-rw-r--r--tags/p/privacy-breach-piwik.tag19
-rw-r--r--tags/p/privacy-breach-statistics-website.tag25
-rw-r--r--tags/p/privacy-breach-twitter.tag12
-rw-r--r--tags/p/privacy-breach-uses-embedded-file.tag11
-rw-r--r--tags/p/privacy-breach-w3c-valid-html.tag15
-rw-r--r--tags/p/program-not-linked-against-libc.tag11
-rw-r--r--tags/p/public-upstream-key-in-native-package.tag8
-rw-r--r--tags/p/public-upstream-key-not-minimal.tag13
-rw-r--r--tags/p/public-upstream-key-unusable.tag8
-rw-r--r--tags/p/public-upstream-keys-in-multiple-locations.tag11
-rw-r--r--tags/p/pypi-homepage.tag14
-rw-r--r--tags/p/python-debug-in-wrong-location.tag9
-rw-r--r--tags/p/python-depends-but-no-python-helper.tag10
-rw-r--r--tags/p/python-foo-but-no-python3-foo.tag16
-rw-r--r--tags/p/python-module-has-overly-generic-name.tag8
-rw-r--r--tags/p/python-module-in-wrong-location.tag8
-rw-r--r--tags/p/python-package-depends-on-package-from-other-python-variant.tag10
-rw-r--r--tags/p/python-package-missing-depends-on-python.tag8
-rw-r--r--tags/p/python-traceback-in-manpage.tag15
-rw-r--r--tags/p/python-version-current-is-deprecated.tag6
-rw-r--r--tags/p/python2-script-but-no-python2-dep.tag21
-rw-r--r--tags/p/python3-depends-but-no-python3-helper.tag6
-rw-r--r--tags/p/python3-script-but-no-python3-dep.tag21
-rw-r--r--tags/q/qa-upload-has-incorrect-version-number.tag5
-rw-r--r--tags/q/quilt-build-dep-but-no-series-file.tag11
-rw-r--r--tags/q/quilt-patch-missing-description.tag16
-rw-r--r--tags/q/quilt-patch-using-template-description.tag10
-rw-r--r--tags/q/quilt-patch-with-non-standard-options.tag12
-rw-r--r--tags/q/quilt-series-but-no-build-dep.tag13
-rw-r--r--tags/q/quilt-series-references-non-existent-patch.tag5
-rw-r--r--tags/q/quilt-series-without-trailing-newline.tag7
-rw-r--r--tags/q/quoted-placeholder-in-mailcap-entry.tag14
-rw-r--r--tags/r/r-data-without-readme-source.tag11
-rw-r--r--tags/r/r-package-not-arch-all.tag10
-rw-r--r--tags/r/raster-image-in-scalable-directory.tag5
-rw-r--r--tags/r/rc-version-greater-than-expected-version.tag9
-rw-r--r--tags/r/read-in-maintainer-script.tag14
-rw-r--r--tags/r/readme-debian-contains-debmake-template.tag14
-rw-r--r--tags/r/readme-debian-contains-invalid-email-address.tag5
-rw-r--r--tags/r/readme-debian-mentions-usr-doc.tag7
-rw-r--r--tags/r/readme-source-is-dh_make-template.tag8
-rw-r--r--tags/r/recommended-field.tag14
-rw-r--r--tags/r/recursive-privilege-change.tag27
-rw-r--r--tags/r/redundant-bugs-field.tag6
-rw-r--r--tags/r/redundant-build-prerequisites.tag11
-rw-r--r--tags/r/redundant-control-relation.tag11
-rw-r--r--tags/r/redundant-globbing-patterns.tag12
-rw-r--r--tags/r/redundant-installation-prerequisite.tag19
-rw-r--r--tags/r/redundant-origin-field.tag5
-rw-r--r--tags/r/relative-conffile.tag7
-rw-r--r--tags/r/relative-library-search-path.tag31
-rw-r--r--tags/r/relative-symlink.tag10
-rw-r--r--tags/r/remove-of-unknown-diversion.tag9
-rw-r--r--tags/r/renamed-tag.tag9
-rw-r--r--tags/r/repackaged-source-not-advertised.tag26
-rw-r--r--tags/r/repeated-path-segment.tag9
-rw-r--r--tags/r/repeated-trigger-name.tag18
-rw-r--r--tags/r/required-field.tag17
-rw-r--r--tags/r/requires-r-api.tag13
-rw-r--r--tags/r/root-in-contact.tag11
-rw-r--r--tags/r/ruby-interpreter-is-deprecated.tag12
-rw-r--r--tags/r/ruby-script-but-no-ruby-dep.tag9
-rw-r--r--tags/r/rubygem-homepage.tag12
-rw-r--r--tags/r/rules-do-not-require-root.tag11
-rw-r--r--tags/r/rules-require-build-prerequisite.tag25
-rw-r--r--tags/r/rules-require-root-explicitly.tag13
-rw-r--r--tags/r/rules-silently-require-root.tag24
-rw-r--r--tags/r/run-parts-cron-filename-contains-illegal-chars.tag8
-rw-r--r--tags/r/runtime-test-file-is-not-a-regular-file.tag7
-rw-r--r--tags/r/runtime-test-file-uses-installed-python-versions.tag17
-rw-r--r--tags/r/runtime-test-file-uses-supported-python-versions-without-test-depends.tag15
-rw-r--r--tags/r/rust-boilerplate.tag21
-rw-r--r--tags/s/script-in-etc-init.d-not-registered-via-update-rc.d.tag7
-rw-r--r--tags/s/script-in-usr-share-doc.tag6
-rw-r--r--tags/s/script-not-executable.tag9
-rw-r--r--tags/s/script-uses-bin-env.tag7
-rw-r--r--tags/s/script-uses-deprecated-nodejs-location.tag14
-rw-r--r--tags/s/script-uses-perl4-libs-without-dep.tag10
-rw-r--r--tags/s/script-uses-unversioned-python-in-shebang.tag12
-rw-r--r--tags/s/script-with-language-extension.tag10
-rw-r--r--tags/s/script-without-interpreter.tag5
-rw-r--r--tags/s/section-is-dh_make-template.tag8
-rw-r--r--tags/s/select-with-boolean-choices.tag6
-rw-r--r--tags/s/select-without-choices.tag9
-rw-r--r--tags/s/service-file-is-not-a-file.tag5
-rw-r--r--tags/s/shared-library-is-executable.tag8
-rw-r--r--tags/s/shared-library-is-multi-arch-foreign.tag9
-rw-r--r--tags/s/shared-library-lacks-prerequisites.tag23
-rw-r--r--tags/s/shared-library-lacks-stack-section.tag13
-rw-r--r--tags/s/shared-library-lacks-version.tag24
-rw-r--r--tags/s/shared-library-not-shipped.tag8
-rw-r--r--tags/s/shared-library-symbols-not-tracked.tag8
-rw-r--r--tags/s/sharedobject-in-library-directory-missing-soname.tag13
-rw-r--r--tags/s/shell-script-fails-syntax-check.tag12
-rw-r--r--tags/s/shipped-file-without-utf8-name.tag13
-rw-r--r--tags/s/ships-r-site-library.tag6
-rw-r--r--tags/s/ships-undeclared-shared-library.tag8
-rw-r--r--tags/s/silent-on-rules-requiring-root.tag21
-rw-r--r--tags/s/skip-systemd-native-flag-missing-pre-depends.tag15
-rw-r--r--tags/s/source-contains-arch-control-dir.tag9
-rw-r--r--tags/s/source-contains-arch-inventory-file.tag6
-rw-r--r--tags/s/source-contains-autogenerated-gperf-data.tag11
-rw-r--r--tags/s/source-contains-autogenerated-visual-c++-file.tag11
-rw-r--r--tags/s/source-contains-browserified-javascript.tag9
-rw-r--r--tags/s/source-contains-bts-control-dir.tag6
-rw-r--r--tags/s/source-contains-bzr-control-dir.tag9
-rw-r--r--tags/s/source-contains-cmake-cache-file.tag14
-rw-r--r--tags/s/source-contains-cvs-conflict-copy.tag9
-rw-r--r--tags/s/source-contains-cvs-control-dir.tag8
-rw-r--r--tags/s/source-contains-data-from-ieee-data-oui-db.tag9
-rw-r--r--tags/s/source-contains-debian-substvars.tag10
-rw-r--r--tags/s/source-contains-editor-backup-file.tag9
-rw-r--r--tags/s/source-contains-git-control-dir.tag8
-rw-r--r--tags/s/source-contains-hg-control-dir.tag8
-rw-r--r--tags/s/source-contains-hg-tags-file.tag8
-rw-r--r--tags/s/source-contains-patch-failure-file.tag8
-rw-r--r--tags/s/source-contains-prebuilt-binary.tag7
-rw-r--r--tags/s/source-contains-prebuilt-doxygen-documentation.tag9
-rw-r--r--tags/s/source-contains-prebuilt-flash-object.tag15
-rw-r--r--tags/s/source-contains-prebuilt-flash-project.tag14
-rw-r--r--tags/s/source-contains-prebuilt-java-object.tag7
-rw-r--r--tags/s/source-contains-prebuilt-javascript-object.tag7
-rw-r--r--tags/s/source-contains-prebuilt-ms-help-file.tag17
-rw-r--r--tags/s/source-contains-prebuilt-pandoc-documentation.tag9
-rw-r--r--tags/s/source-contains-prebuilt-python-object.tag7
-rw-r--r--tags/s/source-contains-prebuilt-silverlight-object.tag7
-rw-r--r--tags/s/source-contains-prebuilt-sphinx-documentation.tag9
-rw-r--r--tags/s/source-contains-prebuilt-wasm-binary.tag11
-rw-r--r--tags/s/source-contains-prebuilt-windows-binary.tag13
-rw-r--r--tags/s/source-contains-prebuilt-yapp-parser.tag10
-rw-r--r--tags/s/source-contains-quilt-control-dir.tag10
-rw-r--r--tags/s/source-contains-svk-commit-file.tag6
-rw-r--r--tags/s/source-contains-svn-commit-file.tag6
-rw-r--r--tags/s/source-contains-svn-conflict-file.tag9
-rw-r--r--tags/s/source-contains-svn-control-dir.tag9
-rw-r--r--tags/s/source-contains-waf-binary.tag14
-rw-r--r--tags/s/source-field-malformed.tag12
-rw-r--r--tags/s/source-format.tag4
-rw-r--r--tags/s/source-is-missing.tag12
-rw-r--r--tags/s/source-nmu-has-incorrect-version-number.tag14
-rw-r--r--tags/s/source-only-upload-to-non-free-without-autobuild.tag13
-rw-r--r--tags/s/source-package-component-has-long-file-name.tag8
-rw-r--r--tags/s/source-package-encodes-python-version.tag12
-rw-r--r--tags/s/source-ships-excluded-file.tag14
-rw-r--r--tags/s/space-in-std-shortname-in-dep5-copyright.tag6
-rw-r--r--tags/s/spare-manual-page.tag11
-rw-r--r--tags/s/special-file.tag10
-rw-r--r--tags/s/specific-address-in-shared-library.tag21
-rw-r--r--tags/s/spelling-error-in-binary.tag19
-rw-r--r--tags/s/spelling-error-in-changelog.tag10
-rw-r--r--tags/s/spelling-error-in-copyright.tag8
-rw-r--r--tags/s/spelling-error-in-description-synopsis.tag8
-rw-r--r--tags/s/spelling-error-in-description.tag8
-rw-r--r--tags/s/spelling-error-in-doc-base-abstract-field.tag7
-rw-r--r--tags/s/spelling-error-in-doc-base-title-field.tag7
-rw-r--r--tags/s/spelling-error-in-news-debian.tag6
-rw-r--r--tags/s/spelling-error-in-patch-description.tag10
-rw-r--r--tags/s/spelling-error-in-readme-debian.tag6
-rw-r--r--tags/s/spelling-error-in-rules-requires-root.tag10
-rw-r--r--tags/s/spelling-in-override-comment.tag7
-rw-r--r--tags/s/sphinxdoc-but-no-sphinxdoc-depends.tag14
-rw-r--r--tags/s/spurious-fields-in-upstream-signature.tag10
-rw-r--r--tags/s/standards-version.tag5
-rw-r--r--tags/s/star-file.tag6
-rw-r--r--tags/s/static-library-has-unneeded-sections.tag13
-rw-r--r--tags/s/static-link-time-optimization.tag18
-rw-r--r--tags/s/statically-linked-binary.tag8
-rw-r--r--tags/s/stray-devhelp-documentation.tag21
-rw-r--r--tags/s/stray-folder-in-manual.tag7
-rw-r--r--tags/s/stray-translated-debconf-templates.tag8
-rw-r--r--tags/s/stripped-library.tag8
-rw-r--r--tags/s/su-to-root-with-usr-sbin.tag12
-rw-r--r--tags/s/su-wrapper-not-su-to-root.tag14
-rw-r--r--tags/s/su-wrapper-without--c.tag8
-rw-r--r--tags/s/subdir-in-bin.tag6
-rw-r--r--tags/s/subdir-in-usr-bin.tag6
-rw-r--r--tags/s/substvar-source-version-is-deprecated.tag8
-rw-r--r--tags/s/superficial-tests.tag12
-rw-r--r--tags/s/superfluous-clutter-in-homepage.tag7
-rw-r--r--tags/s/superfluous-file-pattern.tag12
-rw-r--r--tags/s/surplus-shared-library-symbols.tag7
-rw-r--r--tags/s/svk-commit-file-in-package.tag6
-rw-r--r--tags/s/svn-commit-file-in-package.tag6
-rw-r--r--tags/s/symbols-declares-dependency-on-other-package.tag15
-rw-r--r--tags/s/symbols-file-contains-current-version-with-debian-revision.tag15
-rw-r--r--tags/s/symbols-file-contains-debian-revision.tag10
-rw-r--r--tags/s/symbols-file-missing-build-depends-package-field.tag25
-rw-r--r--tags/s/symbols-for-undeclared-shared-library.tag7
-rw-r--r--tags/s/symlink-contains-spurious-segments.tag14
-rw-r--r--tags/s/symlink-ends-with-slash.tag10
-rw-r--r--tags/s/symlink-has-double-slash.tag11
-rw-r--r--tags/s/symlink-has-too-many-up-segments.tag5
-rw-r--r--tags/s/symlink-is-self-recursive.tag6
-rw-r--r--tags/s/symlink-target-in-build-tree.tag9
-rw-r--r--tags/s/symlink-target-in-tmp.tag9
-rw-r--r--tags/s/synopsis-is-a-sentence.tag15
-rw-r--r--tags/s/synopsis-too-long.tag6
-rw-r--r--tags/s/syntax-error-in-debconf-template.tag7
-rw-r--r--tags/s/syntax-error-in-debian-changelog.tag12
-rw-r--r--tags/s/syntax-error-in-debian-news-file.tag5
-rw-r--r--tags/s/syntax-error-in-dep5-copyright.tag9
-rw-r--r--tags/s/syntax-error-in-symbols-file.tag8
-rw-r--r--tags/s/systemd-service-alias-without-extension.tag8
-rw-r--r--tags/s/systemd-service-file-missing-documentation-key.tag8
-rw-r--r--tags/s/systemd-service-file-missing-hardening-features.tag15
-rw-r--r--tags/s/systemd-service-file-missing-install-key.tag9
-rw-r--r--tags/s/systemd-service-file-refers-to-obsolete-bindto.tag8
-rw-r--r--tags/s/systemd-service-file-refers-to-obsolete-target.tag8
-rw-r--r--tags/s/systemd-service-file-refers-to-unusual-wantedby-target.tag11
-rw-r--r--tags/s/systemd-service-file-refers-to-var-run.tag13
-rw-r--r--tags/s/systemd-service-file-shutdown-problems.tag18
-rw-r--r--tags/s/systemd-service-file-uses-deprecated-syslog-facility.tag11
-rw-r--r--tags/s/systemd-service-file-uses-nobody-or-nogroup.tag10
-rw-r--r--tags/s/systemd-service-file-wraps-init-script.tag11
-rw-r--r--tags/s/systemd-service-in-odd-location.tag18
-rw-r--r--tags/s/systemd-tmpfile-in-var-run.tag12
-rw-r--r--tags/t/tab-in-license-text.tag9
-rw-r--r--tags/t/tclsh-script-but-no-tclsh-dep.tag9
-rw-r--r--tags/t/team-upload-has-incorrect-version-number.tag7
-rw-r--r--tags/t/template-uses-unsplit-choices.tag15
-rw-r--r--tags/t/temporary-debhelper-file.tag10
-rw-r--r--tags/t/test-leaves-python-version-untested.tag11
-rw-r--r--tags/t/testsuite-dependency-has-unparsable-elements.tag11
-rw-r--r--tags/t/third-party-package-in-python-dir.tag10
-rw-r--r--tags/t/timewarp-standards-version.tag7
-rw-r--r--tags/t/too-long-extended-description-in-templates.tag7
-rw-r--r--tags/t/too-long-short-description-in-templates.tag8
-rw-r--r--tags/t/too-many-architectures.tag6
-rw-r--r--tags/t/too-many-contacts.tag7
-rw-r--r--tags/t/trailing-slash-for-dpkg-maintscript-helper-symlink_to_dir.tag7
-rw-r--r--tags/t/trailing-whitespace.tag27
-rw-r--r--tags/t/transitional-package-not-oldlibs-optional.tag13
-rw-r--r--tags/t/translated-default-field.tag20
-rw-r--r--tags/t/trimmed-deb822-field.tag6
-rw-r--r--tags/t/trimmed-field.tag5
-rw-r--r--tags/t/triplet-dir-and-architecture-mismatch.tag9
-rw-r--r--tags/t/truetype-font-prohibits-installable-embedding.tag7
-rw-r--r--tags/t/truetype-font-wrong-filename.tag5
-rw-r--r--tags/t/typelib-in-arch-all-package.tag8
-rw-r--r--tags/t/typelib-missing-gir-depends.tag9
-rw-r--r--tags/t/typelib-not-in-multiarch-directory.tag6
-rw-r--r--tags/t/typelib-package-name-does-not-match.tag18
-rw-r--r--tags/t/typelib-section-not-introspection.tag10
-rw-r--r--tags/t/typo-in-debhelper-override-target.tag13
-rw-r--r--tags/t/typo-in-manual-page.tag14
-rw-r--r--tags/team/pkg-js/deprecated/nodejs-bad-buffer-usage.tag6
-rw-r--r--tags/team/pkg-js/testsuite/no-team-tests.tag8
-rw-r--r--tags/team/pkg-js/testsuite/no-testsuite-header.tag6
-rw-r--r--tags/team/pkg-js/vcs/no-git.tag6
-rw-r--r--tags/team/pkg-js/vcs/no-team-url.tag6
-rw-r--r--tags/team/pkg-perl/testsuite/autopkgtest-needs-use-name.tag12
-rw-r--r--tags/team/pkg-perl/testsuite/no-team-tests.tag10
-rw-r--r--tags/team/pkg-perl/testsuite/no-testsuite-header.tag8
-rw-r--r--tags/team/pkg-perl/vcs/no-git.tag6
-rw-r--r--tags/team/pkg-perl/vcs/no-team-url.tag6
-rw-r--r--tags/team/pkg-perl/xs-abi/legacy-vendorarch-directory.tag11
-rw-r--r--tags/u/udeb-contains-documentation-file.tag4
-rw-r--r--tags/u/udeb-postinst-calls-ldconfig.tag9
-rw-r--r--tags/u/udeb-uses-unsupported-compression-for-data-tarball.tag9
-rw-r--r--tags/u/udev-rule-in-etc.tag7
-rw-r--r--tags/u/udev-rule-missing-subsystem.tag8
-rw-r--r--tags/u/udev-rule-missing-uaccess.tag9
-rw-r--r--tags/u/udev-rule-unreadable.tag7
-rw-r--r--tags/u/udevadm-called-without-guard.tag14
-rw-r--r--tags/u/uncompressed-manual-page.tag6
-rw-r--r--tags/u/unconditional-use-of-dpkg-statoverride.tag7
-rw-r--r--tags/u/undeclared-elf-prerequisites.tag13
-rw-r--r--tags/u/undocumented-manual-page.tag17
-rw-r--r--tags/u/unexpected-conffile.tag10
-rw-r--r--tags/u/unicode-trojan.tag41
-rw-r--r--tags/u/unknown-architecture.tag8
-rw-r--r--tags/u/unknown-conffile-instruction.tag10
-rw-r--r--tags/u/unknown-control-file.tag8
-rw-r--r--tags/u/unknown-control-interpreter.tag7
-rw-r--r--tags/u/unknown-copyright-format-uri.tag6
-rw-r--r--tags/u/unknown-debconf-priority.tag7
-rw-r--r--tags/u/unknown-debian-watch-file-standard.tag9
-rw-r--r--tags/u/unknown-encoding-in-po-file.tag5
-rw-r--r--tags/u/unknown-essential-value.tag5
-rw-r--r--tags/u/unknown-field-in-templates.tag9
-rw-r--r--tags/u/unknown-field.tag8
-rw-r--r--tags/u/unknown-file-in-debian-source.tag13
-rw-r--r--tags/u/unknown-file-in-python-module-directory.tag8
-rw-r--r--tags/u/unknown-java-class-version.tag5
-rw-r--r--tags/u/unknown-locale-code.tag13
-rw-r--r--tags/u/unknown-meta-field-in-symbols-file.tag7
-rw-r--r--tags/u/unknown-multi-arch-value.tag5
-rw-r--r--tags/u/unknown-paragraph-in-dep5-copyright.tag6
-rw-r--r--tags/u/unknown-priority.tag6
-rw-r--r--tags/u/unknown-runtime-tests-feature.tag7
-rw-r--r--tags/u/unknown-runtime-tests-field.tag7
-rw-r--r--tags/u/unknown-runtime-tests-restriction.tag7
-rw-r--r--tags/u/unknown-section.tag17
-rw-r--r--tags/u/unknown-template-type.tag6
-rw-r--r--tags/u/unknown-testsuite.tag7
-rw-r--r--tags/u/unknown-trigger.tag8
-rw-r--r--tags/u/unmerged-usr.tag27
-rw-r--r--tags/u/unnecessary-source-date-epoch-assignment.tag11
-rw-r--r--tags/u/unnecessary-team-upload.tag5
-rw-r--r--tags/u/unnecessary-testsuite-autopkgtest-field.tag10
-rw-r--r--tags/u/unpack-message-for-deb-control.tag8
-rw-r--r--tags/u/unpack-message-for-deb-data.tag8
-rw-r--r--tags/u/unpack-message-for-orig.tag9
-rw-r--r--tags/u/unpack-message-for-source.tag8
-rw-r--r--tags/u/unparsable-menu-item.tag9
-rw-r--r--tags/u/unquoted-string-in-menu-item.tag9
-rw-r--r--tags/u/unreleased-changelog-distribution.tag6
-rw-r--r--tags/u/unreleased-changes.tag7
-rw-r--r--tags/u/unstripped-binary-or-object.tag8
-rw-r--r--tags/u/unstripped-static-library.tag12
-rw-r--r--tags/u/unsupported-source-format.tag6
-rw-r--r--tags/u/untranslatable-debconf-templates.tag17
-rw-r--r--tags/u/unused-build-dependency-on-cdbs.tag5
-rw-r--r--tags/u/unused-debconf-template.tag23
-rw-r--r--tags/u/unused-entry-in-debian-source-include-binaries.tag9
-rw-r--r--tags/u/unused-license-paragraph-in-dep5-copyright.tag7
-rw-r--r--tags/u/unused-override.tag21
-rw-r--r--tags/u/unusual-control-interpreter.tag7
-rw-r--r--tags/u/unusual-documentation-package-name.tag9
-rw-r--r--tags/u/unusual-interpreter.tag6
-rw-r--r--tags/u/unversioned-copyright-format-uri.tag9
-rw-r--r--tags/u/unwanted-path-too-specific.tag13
-rw-r--r--tags/u/update-debian-copyright.tag6
-rw-r--r--tags/u/upload-has-backports-version-number.tag5
-rw-r--r--tags/u/uploader-name-missing.tag6
-rw-r--r--tags/u/uploaders-in-orphan.tag7
-rw-r--r--tags/u/upstart-job-in-etc-init.d-not-registered-via-update-rc.d.tag12
-rw-r--r--tags/u/upstream-file-without-utf8-name.tag14
-rw-r--r--tags/u/upstream-metadata-exists.tag5
-rw-r--r--tags/u/upstream-metadata-field-unknown.tag10
-rw-r--r--tags/u/upstream-metadata-file-is-missing.tag16
-rw-r--r--tags/u/upstream-metadata-in-native-source.tag15
-rw-r--r--tags/u/upstream-metadata-is-not-a-file.tag7
-rw-r--r--tags/u/upstream-metadata-missing-bug-tracking.tag10
-rw-r--r--tags/u/upstream-metadata-missing-repository.tag10
-rw-r--r--tags/u/upstream-metadata-not-yaml-mapping.tag12
-rw-r--r--tags/u/upstream-metadata-yaml-invalid.tag6
-rw-r--r--tags/u/upstream-metadata.tag6
-rw-r--r--tags/u/use-of-compat-symlink.tag7
-rw-r--r--tags/u/useless-autogenerated-doxygen-file.tag12
-rw-r--r--tags/u/useless-autoreconf-build-depends.tag8
-rw-r--r--tags/u/useless-whatis-entry.tag16
-rw-r--r--tags/u/uses-debhelper-compat-file.tag15
-rw-r--r--tags/u/uses-deprecated-adttmp.tag7
-rw-r--r--tags/u/uses-deprecated-compression-for-data-tarball.tag12
-rw-r--r--tags/u/uses-dpkg-database-directly.tag13
-rw-r--r--tags/u/uses-implicit-await-trigger.tag19
-rw-r--r--tags/u/uses-no-compression-for-control-tarball.tag8
-rw-r--r--tags/u/uses-no-compression-for-data-tarball.tag11
-rw-r--r--tags/u/uses-pdm-cli.tag8
-rw-r--r--tags/u/uses-poetry-cli.tag8
-rw-r--r--tags/u/uses-python-distutils.tag12
-rw-r--r--tags/u/using-first-person-in-description.tag12
-rw-r--r--tags/u/using-first-person-in-templates.tag11
-rw-r--r--tags/u/using-imperative-form-in-templates.tag7
-rw-r--r--tags/u/using-question-in-extended-description-in-templates.tag9
-rw-r--r--tags/u/usr-share-doc-symlink-points-outside-of-usr-share-doc.tag6
-rw-r--r--tags/u/usr-share-doc-symlink-to-foreign-package.tag13
-rw-r--r--tags/u/usr-share-doc-symlink-without-dependency.tag21
-rw-r--r--tags/v/vcs-browser-links-to-empty-view.tag7
-rw-r--r--tags/v/vcs-field-bitrotted.tag9
-rw-r--r--tags/v/vcs-field-has-unexpected-spaces.tag11
-rw-r--r--tags/v/vcs-field-mismatch.tag9
-rw-r--r--tags/v/vcs-field-not-canonical.tag10
-rw-r--r--tags/v/vcs-field-uses-insecure-uri.tag11
-rw-r--r--tags/v/vcs-field-uses-not-recommended-uri-format.tag10
-rw-r--r--tags/v/vcs-field-uses-unknown-uri-format.tag5
-rw-r--r--tags/v/vcs-fields-use-more-than-one-vcs.tag4
-rw-r--r--tags/v/vcs-git-uses-invalid-user-uri.tag8
-rw-r--r--tags/v/vcs-obsolete-in-debian-infrastructure.tag16
-rw-r--r--tags/v/vcs-uri.tag5
-rw-r--r--tags/v/vcs.tag5
-rw-r--r--tags/v/version-refers-to-distribution.tag14
-rw-r--r--tags/v/version-substvar-for-external-package.tag8
-rw-r--r--tags/v/very-long-line-length-in-source-file.tag42
-rw-r--r--tags/v/vim-addon-within-vim-runtime-path.tag7
-rw-r--r--tags/v/virtual-package-depends-without-real-package-depends.tag14
-rw-r--r--tags/w/wayward-symbolic-link-target-in-source.tag11
-rw-r--r--tags/w/weak-dependency-on-misc-depends.tag8
-rw-r--r--tags/w/weak-library-dev-dependency.tag21
-rw-r--r--tags/w/web-application-depends-on-apache2-data-package.tag10
-rw-r--r--tags/w/web-application-works-only-with-apache.tag10
-rw-r--r--tags/w/whitespace-after-continuation-character.tag9
-rw-r--r--tags/w/wiki-copyright-format-uri.tag9
-rw-r--r--tags/w/windows-devel-file-in-package.tag7
-rw-r--r--tags/w/windows-thumbnail-database-in-package.tag8
-rw-r--r--tags/w/wish-script-but-no-wish-dep.tag9
-rw-r--r--tags/w/wrong-bug-number-in-closes.tag5
-rw-r--r--tags/w/wrong-compression-in-manual-page.tag6
-rw-r--r--tags/w/wrong-file-owner-uid-or-gid.tag14
-rw-r--r--tags/w/wrong-manual-section.tag8
-rw-r--r--tags/w/wrong-name-for-changelog-of-native-package.tag7
-rw-r--r--tags/w/wrong-name-for-debian-changelog-file.tag6
-rw-r--r--tags/w/wrong-name-for-debian-news-file.tag7
-rw-r--r--tags/w/wrong-name-for-manual-page.tag7
-rw-r--r--tags/w/wrong-name-for-upstream-changelog.tag6
-rw-r--r--tags/w/wrong-path-for-interpreter.tag10
-rw-r--r--tags/w/wrong-section-according-to-package-name.tag5
-rw-r--r--tags/w/wrong-section-for-udeb.tag4
-rw-r--r--tags/w/wrong-team.tag8
-rw-r--r--tags/z/zero-byte-executable-in-path.tag9
-rw-r--r--tags/z/zero-byte-file-in-doc-directory.tag11
-rw-r--r--tags/z/zip-parse-error.tag5
1526 files changed, 15932 insertions, 0 deletions
diff --git a/tags/a/absolute-symbolic-link-target-in-source.tag b/tags/a/absolute-symbolic-link-target-in-source.tag
new file mode 100644
index 0000000..593f806
--- /dev/null
+++ b/tags/a/absolute-symbolic-link-target-in-source.tag
@@ -0,0 +1,11 @@
+Tag: absolute-symbolic-link-target-in-source
+Severity: warning
+Check: files/symbolic-links
+Explanation: This symlink in a patched source tree points to an absolute target. It
+ happens sometimes when people point toward /dev/null, but that can and should
+ be done in the installation package instead. It is no problem there. The
+ source package is considered unanchored and should not contain any absolute
+ file references.
+ .
+ Please remove the symbolic link from the source package or point it to a
+ location inside the patched source tree.
diff --git a/tags/a/absolute-symlink-in-top-level-folder.tag b/tags/a/absolute-symlink-in-top-level-folder.tag
new file mode 100644
index 0000000..f4d978b
--- /dev/null
+++ b/tags/a/absolute-symlink-in-top-level-folder.tag
@@ -0,0 +1,15 @@
+Tag: absolute-symlink-in-top-level-folder
+Severity: warning
+Check: files/symbolic-links
+Renamed-From: symlink-should-be-relative
+Explanation: Symbolic links to files in the same top-level directory should be
+ relative.
+ .
+ As an example, a link in <code>/usr</code> to another file in <code>/usr</code>
+ should be relative, while a link in <code>/usr</code> to a file in
+ <code>/etc</code> should be absolute.
+ .
+ With Debhelper, running dh&lowbar;link after creating the package structure
+ will fix the issue for you.
+See-Also:
+ debian-policy 10.5
diff --git a/tags/a/acute-accent-in-manual-page.tag b/tags/a/acute-accent-in-manual-page.tag
new file mode 100644
index 0000000..a792a28
--- /dev/null
+++ b/tags/a/acute-accent-in-manual-page.tag
@@ -0,0 +1,18 @@
+Tag: acute-accent-in-manual-page
+Severity: info
+Check: documentation/manual
+Renamed-From: acute-accent-in-manpage
+Explanation: This manual page uses the <code>\'</code> groff
+ sequence. Usually, the intent is to generate an apostrophe, but that
+ sequence actually renders as an acute accent.
+ .
+ For an apostrophe or a single closing quote, use plain <code>'</code>.
+ For single opening quote, i.e. a straight downward line <code>'</code>
+ like the one used in shell commands, use <code>'&#92;(aq'</code>.
+ .
+ In case this tag was emitted for the second half of a
+ <code>'\\'</code> sequence, this is indeed no acute accent, but still
+ wrong: A literal backslash should be written <code>\e</code> in the
+ groff format, i.e. a <code>'\\'</code> sequence needs to be changed
+ to <code>'\e'</code> which also won't trigger this tag.
+See-Also: Bug#554897, Bug#507673, Bug#966803
diff --git a/tags/a/add-component-copyright.tag b/tags/a/add-component-copyright.tag
new file mode 100644
index 0000000..a8bffc6
--- /dev/null
+++ b/tags/a/add-component-copyright.tag
@@ -0,0 +1,13 @@
+Tag: add-component-copyright
+Severity: info
+Check: debian/copyright/dep5/components
+Explanation: The sources ship an extra <code>orig</code> component, but the
+ named <code>debian/copyright</code> file lacks a separate entry for it.
+ .
+ Tarballs usually include a COPYING or LICENSE file, or a shipping manifest
+ of some kind. It is good practice to list those license terms separately in
+ our copyright files.
+See-Also:
+ uscan(1),
+ Bug#915181,
+ Bug#915384
diff --git a/tags/a/adduser-with-home-var-run.tag b/tags/a/adduser-with-home-var-run.tag
new file mode 100644
index 0000000..4f8c9c6
--- /dev/null
+++ b/tags/a/adduser-with-home-var-run.tag
@@ -0,0 +1,6 @@
+Tag: adduser-with-home-var-run
+Severity: warning
+Check: maintainer-scripts/adduser
+Explanation: {pre,post}inst script calls adduser --home /var/run, should be /run.
+ Examples for such packages include pesign, pulseaudio and openssh-server.
+See-Also: Bug#760422
diff --git a/tags/a/adopted-extended-field.tag b/tags/a/adopted-extended-field.tag
new file mode 100644
index 0000000..eed0b31
--- /dev/null
+++ b/tags/a/adopted-extended-field.tag
@@ -0,0 +1,17 @@
+Tag: adopted-extended-field
+Severity: info
+Check: debian/control/field/adopted
+Renamed-From:
+ xc-package-type-in-debian-control
+ xs-testsuite-field-in-debian-control
+ xs-vcs-field-in-debian-control
+Explanation: A field in <code>debian/control</code> has an extension prefix
+ but is also known without it.
+ .
+ Extension prefixes like <code>XS-&ast;</code> or <code>XC-&ast;</code> allow
+ experimental fields to propagate to the right place when packages are
+ built with <code>dpkg</code>. In this case, however, the field is
+ also known without the prefix. In all likelihood the field was permanently
+ adopted, and <code>dpkg</code> learned how to deal with it.
+ .
+ Please consider removing the extension prefix for the field name.
diff --git a/tags/a/alien-tag.tag b/tags/a/alien-tag.tag
new file mode 100644
index 0000000..731a66a
--- /dev/null
+++ b/tags/a/alien-tag.tag
@@ -0,0 +1,7 @@
+Tag: alien-tag
+Severity: error
+Show-Always: yes
+Check: debian/lintian-overrides/mystery
+Explanation: The given override refers to an unknown tag.
+See-Also:
+ lintian-manual 2.4.1
diff --git a/tags/a/alternates-not-allowed.tag b/tags/a/alternates-not-allowed.tag
new file mode 100644
index 0000000..8482c90
--- /dev/null
+++ b/tags/a/alternates-not-allowed.tag
@@ -0,0 +1,6 @@
+Tag: alternates-not-allowed
+Severity: error
+Check: fields/package-relations
+Explanation: Only the "Depends", "Recommends", "Suggests" and "Pre-Depends"
+ fields may specify alternate dependencies using the "|" symbol.
+See-Also: debian-policy 7.1
diff --git a/tags/a/alternatively-build-depends-on-python-sphinx-and-python3-sphinx.tag b/tags/a/alternatively-build-depends-on-python-sphinx-and-python3-sphinx.tag
new file mode 100644
index 0000000..7d3f775
--- /dev/null
+++ b/tags/a/alternatively-build-depends-on-python-sphinx-and-python3-sphinx.tag
@@ -0,0 +1,12 @@
+Tag: alternatively-build-depends-on-python-sphinx-and-python3-sphinx
+Severity: warning
+Check: languages/python
+Explanation: This package alternatively Build-Depends on the Python 2 or Python 3
+ 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".
+ .
+ Please replace the alternative with a single build dependency on
+ <code>python3-sphinx</code>.
diff --git a/tags/a/ambiguous-paragraph-in-dep5-copyright.tag b/tags/a/ambiguous-paragraph-in-dep5-copyright.tag
new file mode 100644
index 0000000..0882a45
--- /dev/null
+++ b/tags/a/ambiguous-paragraph-in-dep5-copyright.tag
@@ -0,0 +1,17 @@
+Tag: ambiguous-paragraph-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+Explanation: The paragraph has both <code>License</code> and
+ <code>Copyright</code> fields, but no <code>Files</code> field. The paragraph
+ is technically valid according to the DEP 5 specification, but it is probably
+ a mistake.
+ .
+ If the paragraph is a "stand-alone" license paragraph, the <code>Copyright</code>
+ field is not needed. If it is, on the other hand, "files" paragraph, the
+ <code>Files</code> field is missing.
+ .
+ The <code>Files</code> field was at some point optional in some circumstances
+ but is now mandatory in all "files" paragraphs.
+See-Also:
+ Bug#652380,
+ https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/a/ancient-libtool.tag b/tags/a/ancient-libtool.tag
new file mode 100644
index 0000000..bdcbba4
--- /dev/null
+++ b/tags/a/ancient-libtool.tag
@@ -0,0 +1,24 @@
+Tag: ancient-libtool
+Severity: warning
+Check: build-systems/autotools/libtool
+Explanation: The referenced file seems to be from a libtool version older than
+ 1.5.2-2. This might lead to build errors on some newer architectures not
+ known to this libtool.
+ .
+ Please ask your upstream maintainer to re-libtoolize the package or do it
+ yourself if there is no active upstream. You will also need to run
+ Autoconf to regenerate the configure script. Usually it is best to do
+ this during the build by depending on autoconf, libtool, and automake if
+ it is used, and then running:
+ .
+ autoreconf -i --force
+ .
+ before running configure. Depending on how old the package is, this may
+ require additional modifications to <code>configure.ac</code> or
+ <code>configure.in</code> or other work. If you do this during the build,
+ determine which files it will add or update and be sure to remove those
+ files in the clean target.
+ .
+ If you have fixed architecture-specific issues with minimal patches,
+ rather than updating libtool, and verified that it builds correctly,
+ please override this tag. Lintian will not be able to verify that.
diff --git a/tags/a/ancient-python-version-field.tag b/tags/a/ancient-python-version-field.tag
new file mode 100644
index 0000000..69b6729
--- /dev/null
+++ b/tags/a/ancient-python-version-field.tag
@@ -0,0 +1,15 @@
+Tag: ancient-python-version-field
+Severity: warning
+Check: languages/python
+See-Also: python-policy 3.4
+Explanation: The control fields <code>Python-Version</code> and
+ <code>Python3-Version</code> show the Python versions your package
+ supports, but the Python version listed here predates the current
+ "oldstable" distribution. There is no need to list it.
+ .
+ Please drop or update the named version.
+ .
+ When removing a version, please check <code>debian/rules</code> and
+ <code>debian/tests/&ast;</code> for any use of <code>py3versions -r</code>.
+ Without a <code>Python3-Version</code> field, that program falls back to
+ all supported versions, which may not be what you want.
diff --git a/tags/a/ansi-escape.tag b/tags/a/ansi-escape.tag
new file mode 100644
index 0000000..23648e2
--- /dev/null
+++ b/tags/a/ansi-escape.tag
@@ -0,0 +1,4 @@
+Tag: ansi-escape
+Severity: warning
+Check: fields/terminal-control
+Explanation: A control field contains an ANSI terminal escape code.
diff --git a/tags/a/anticipated-repack-count.tag b/tags/a/anticipated-repack-count.tag
new file mode 100644
index 0000000..00ee172
--- /dev/null
+++ b/tags/a/anticipated-repack-count.tag
@@ -0,0 +1,13 @@
+Tag: anticipated-repack-count
+Severity: info
+Check: fields/version/repack/count
+Explanation: The version contains the string <code>+dfsgN</code>
+ where <code>N</code> is a low number as in <code>+dfsg1</code>.
+ .
+ Normally it is not necessary to repackage an upstream source package more than
+ once. You can omit the repack count. In most cases <code>+dfsg-1</code> is
+ enough.
+ .
+ If you really need to bump it, just go straight to <code>+dfsg2-1</code>.
+See-Also:
+ https://lists.debian.org/debian-devel/2021/10/msg00026.html
diff --git a/tags/a/apache2-configuration-files-need-conf-suffix.tag b/tags/a/apache2-configuration-files-need-conf-suffix.tag
new file mode 100644
index 0000000..2102ad3
--- /dev/null
+++ b/tags/a/apache2-configuration-files-need-conf-suffix.tag
@@ -0,0 +1,6 @@
+Tag: apache2-configuration-files-need-conf-suffix
+Severity: error
+Check: apache2
+Explanation: The package is installing an Apache2 configuration but that file does not
+ end with a '<code>.conf</code>' suffix. Starting with Apache2 2.4 all configuration
+ files except module '<code>.load</code>' files need that suffix or are ignored otherwise.
diff --git a/tags/a/apache2-deprecated-auth-config.tag b/tags/a/apache2-deprecated-auth-config.tag
new file mode 100644
index 0000000..a60d581
--- /dev/null
+++ b/tags/a/apache2-deprecated-auth-config.tag
@@ -0,0 +1,15 @@
+Tag: apache2-deprecated-auth-config
+Severity: warning
+Check: apache2
+Explanation: The package is using some of the deprecated authentication configuration
+ directives Order, Satisfy, Allow, Deny, &lt;Limit&gt; or &lt;LimitExcept&gt;
+ .
+ These do not integrate well with the new authorization scheme of Apache
+ 2.4 and, in the case of &lt;Limit&gt; and &lt;LimitExcept&gt; have confusing
+ semantics. The configuration directives should be replaced with a suitable
+ combination of &lt;RequireAll&gt;, &lt;RequireAny&gt;, Require all, Require local,
+ Require ip, and Require method.
+ .
+ Alternatively, the offending lines can be wrapped between
+ &lt;IfModule !mod&lowbar;authz&lowbar;core.c&gt; ... &lt;/IfModule&gt; or
+ &lt;IfVersion &lt; 2.3&gt; ... &lt;/IfVersion&gt; directives.
diff --git a/tags/a/apache2-module-does-not-depend-on-apache2-api.tag b/tags/a/apache2-module-does-not-depend-on-apache2-api.tag
new file mode 100644
index 0000000..50b9218
--- /dev/null
+++ b/tags/a/apache2-module-does-not-depend-on-apache2-api.tag
@@ -0,0 +1,7 @@
+Tag: apache2-module-does-not-depend-on-apache2-api
+Severity: error
+Check: apache2
+Explanation: The package is an Apache2 HTTPD server module but does not declare a
+ strong binary relation against the Apache2 server binary it links against. Modules
+ must depend on the <code>apache2-api-YYYYMMNN</code> package provided as a virtual
+ package by <code>apache2-bin</code>.
diff --git a/tags/a/apache2-module-does-not-ship-load-file.tag b/tags/a/apache2-module-does-not-ship-load-file.tag
new file mode 100644
index 0000000..7ce22cc
--- /dev/null
+++ b/tags/a/apache2-module-does-not-ship-load-file.tag
@@ -0,0 +1,9 @@
+Tag: apache2-module-does-not-ship-load-file
+Severity: error
+Check: apache2
+Explanation: The package is an Apache2 HTTPD server module but does not ship a
+ "<code>.load</code>" file or it was installed under an unexpected name. The load
+ files in "<code>/etc/apache2/mods-available</code>" are required to interact with
+ the server package to enable and disable the module and must match the module
+ name without "<code>mod&lowbar;</code> prefix, e.g. <code>mod&lowbar;foo</code> must ship a load file
+ named "<code>foo.load</code>".
diff --git a/tags/a/apache2-reverse-dependency-calls-invoke-rc.d.tag b/tags/a/apache2-reverse-dependency-calls-invoke-rc.d.tag
new file mode 100644
index 0000000..5aa2389
--- /dev/null
+++ b/tags/a/apache2-reverse-dependency-calls-invoke-rc.d.tag
@@ -0,0 +1,8 @@
+Tag: apache2-reverse-dependency-calls-invoke-rc.d
+Severity: warning
+Check: apache2
+Explanation: The package is invoking apache2's init script in its maintainer script
+ albeit it shouldn't do so. Reverse dependencies installing apache2
+ configuration pieces should not restart the web server unconditionally in
+ maintainer scripts. Instead they should be using apache2-maintscript-helper
+ which correctly obeys local policies.
diff --git a/tags/a/apache2-reverse-dependency-calls-wrapper-script.tag b/tags/a/apache2-reverse-dependency-calls-wrapper-script.tag
new file mode 100644
index 0000000..fbec349
--- /dev/null
+++ b/tags/a/apache2-reverse-dependency-calls-wrapper-script.tag
@@ -0,0 +1,8 @@
+Tag: apache2-reverse-dependency-calls-wrapper-script
+Severity: warning
+Check: apache2
+Explanation: The package is calling an Apache2 configuration wrapper script (e.g.
+ <code>a2enmod</code>, <code>a2enconf</code>, <code>a2enconf</code>, ...). Maintainer
+ scripts should not be calling these scripts directly. To achieve a uniform and
+ consolidated behavior these scripts should be invoked indirectly by using
+ apache2-maintscript-helper.
diff --git a/tags/a/apache2-reverse-dependency-ships-file-in-not-allowed-directory.tag b/tags/a/apache2-reverse-dependency-ships-file-in-not-allowed-directory.tag
new file mode 100644
index 0000000..b530f75
--- /dev/null
+++ b/tags/a/apache2-reverse-dependency-ships-file-in-not-allowed-directory.tag
@@ -0,0 +1,7 @@
+Tag: apache2-reverse-dependency-ships-file-in-not-allowed-directory
+Severity: error
+Check: apache2
+Explanation: The package installs a piece of Apache2 configuration to
+ <code>/etc/apache2/{sites,mods,conf}-enabled</code>. This is not allowed. Instead
+ the respective <code>/etc/apache2/{sites,mods,conf}-available</code> counterparts
+ must be used.
diff --git a/tags/a/apache2-reverse-dependency-uses-obsolete-directory.tag b/tags/a/apache2-reverse-dependency-uses-obsolete-directory.tag
new file mode 100644
index 0000000..5f62dd4
--- /dev/null
+++ b/tags/a/apache2-reverse-dependency-uses-obsolete-directory.tag
@@ -0,0 +1,7 @@
+Tag: apache2-reverse-dependency-uses-obsolete-directory
+Severity: warning
+Check: apache2
+Explanation: The package is installing a file into the obsolete
+ <code>/etc/apache2/conf.d/</code> directory. This file is not read by the Apache2
+ 2.4 web server anymore. Instead <code>/etc/apache2/conf-available/</code> should be
+ used.
diff --git a/tags/a/apache2-unparsable-dependency.tag b/tags/a/apache2-unparsable-dependency.tag
new file mode 100644
index 0000000..d796ebd
--- /dev/null
+++ b/tags/a/apache2-unparsable-dependency.tag
@@ -0,0 +1,7 @@
+Tag: apache2-unparsable-dependency
+Severity: warning
+Check: apache2
+Explanation: The package is declaring a module dependency within an Apache
+ configuration file which does not meet the requirements. Dependencies must be
+ declared without paths, leading "<code>mod&lowbar;</code>" prefix and without file
+ extension.
diff --git a/tags/a/apache2-unsupported-dependency.tag b/tags/a/apache2-unsupported-dependency.tag
new file mode 100644
index 0000000..040e36c
--- /dev/null
+++ b/tags/a/apache2-unsupported-dependency.tag
@@ -0,0 +1,7 @@
+Tag: apache2-unsupported-dependency
+Severity: warning
+Check: apache2
+Explanation: The package is declaring a module dependency within an Apache
+ configuration file which is not supported there. Dependencies are supported in
+ module '<code>.load</code>' files, and web application '<code>.conf</code>' files,
+ conflicts in '<code>.load</code> files only.
diff --git a/tags/a/application-in-library-section.tag b/tags/a/application-in-library-section.tag
new file mode 100644
index 0000000..144a81f
--- /dev/null
+++ b/tags/a/application-in-library-section.tag
@@ -0,0 +1,15 @@
+Tag: application-in-library-section
+Severity: info
+Check: application-not-library
+Experimental: yes
+Explanation: This package contains a binary in $PATH but is in a section just
+ thought for libraries. It likely should be in another section like
+ e.g. utils, text, devel, misc, etc., but not in e.g. perl, ruby or
+ python.
+ .
+ People tend to skip these package sections when looking for
+ applications in the package list and hence wouldn't notice this
+ package.
+ .
+ In case the program in $PATH is only a helper tool and the package is
+ primarily a library, please add a Lintian override for this tag.
diff --git a/tags/a/appstream-metadata-in-legacy-location.tag b/tags/a/appstream-metadata-in-legacy-location.tag
new file mode 100644
index 0000000..86c2c17
--- /dev/null
+++ b/tags/a/appstream-metadata-in-legacy-location.tag
@@ -0,0 +1,6 @@
+Tag: appstream-metadata-in-legacy-location
+Severity: warning
+Check: appstream-metadata
+See-Also: https://wiki.debian.org/AppStream/Guidelines
+Explanation: AppStream metadata file was found in /usr/share/appdata/. The
+ AppStream XML files should be placed in /usr/share/metainfo/.
diff --git a/tags/a/appstream-metadata-invalid.tag b/tags/a/appstream-metadata-invalid.tag
new file mode 100644
index 0000000..cafc77b
--- /dev/null
+++ b/tags/a/appstream-metadata-invalid.tag
@@ -0,0 +1,6 @@
+Tag: appstream-metadata-invalid
+Severity: error
+Check: appstream-metadata
+See-Also: https://wiki.debian.org/AppStream/Guidelines
+Explanation: The specified AppStream metadata file does not consist of
+ valid XML.
diff --git a/tags/a/appstream-metadata-legacy-format.tag b/tags/a/appstream-metadata-legacy-format.tag
new file mode 100644
index 0000000..ddf8173
--- /dev/null
+++ b/tags/a/appstream-metadata-legacy-format.tag
@@ -0,0 +1,12 @@
+Tag: appstream-metadata-legacy-format
+Severity: error
+Check: appstream-metadata
+See-Also:
+ https://wiki.debian.org/AppStream/Guidelines,
+ https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#sect-Metadata-GenericComponent
+Explanation: The AppStream metadata contains the obsolete root node
+ <code>&lt;application&gt;</code>. It was used in a legacy format.
+ The application metadata for your package should follow the new
+ format described on freedesktop.org.
+ .
+ You can validate draft formats with 'appstreamcli validate'.
diff --git a/tags/a/appstream-metadata-malformed-modalias-provide.tag b/tags/a/appstream-metadata-malformed-modalias-provide.tag
new file mode 100644
index 0000000..6a04993
--- /dev/null
+++ b/tags/a/appstream-metadata-malformed-modalias-provide.tag
@@ -0,0 +1,7 @@
+Tag: appstream-metadata-malformed-modalias-provide
+Severity: warning
+Check: appstream-metadata
+See-Also: https://wiki.debian.org/AppStream/Guidelines
+Explanation: The modalias matching rule in the AppStream metadata file is
+ malformed. Hexadecimal numbers in vendor and product IDs must be
+ upper case.
diff --git a/tags/a/appstream-metadata-missing-modalias-provide.tag b/tags/a/appstream-metadata-missing-modalias-provide.tag
new file mode 100644
index 0000000..d3d8112
--- /dev/null
+++ b/tags/a/appstream-metadata-missing-modalias-provide.tag
@@ -0,0 +1,8 @@
+Tag: appstream-metadata-missing-modalias-provide
+Severity: warning
+Check: appstream-metadata
+See-Also: https://wiki.debian.org/AppStream/Guidelines
+Explanation: This package contain a udev rule for providing device access to
+ the console user (using the uaccess udev TAG) or to members of the
+ plugdev file group without announcing the hardware support using
+ AppStream.
diff --git a/tags/a/arch-dep-package-has-big-usr-share.tag b/tags/a/arch-dep-package-has-big-usr-share.tag
new file mode 100644
index 0000000..4583b58
--- /dev/null
+++ b/tags/a/arch-dep-package-has-big-usr-share.tag
@@ -0,0 +1,13 @@
+Tag: arch-dep-package-has-big-usr-share
+Severity: info
+Check: huge-usr-share
+Explanation: The package has a significant amount of architecture-independent
+ data (over 4MB, or over 2MB and more than 50% of the package) in
+ <code>/usr/share</code> but is an architecture-dependent package. This is
+ wasteful of mirror space and bandwidth since it means distributing
+ multiple copies of this data, one for each architecture.
+ .
+ If the data in <code>/usr/share</code> is not architecture-independent, this
+ is a Policy violation that should be fixed by moving the data elsewhere
+ (usually <code>/usr/lib</code>).
+See-Also: developer-reference 6.7.5
diff --git a/tags/a/arch-dependent-file-in-usr-share.tag b/tags/a/arch-dependent-file-in-usr-share.tag
new file mode 100644
index 0000000..4b24a87
--- /dev/null
+++ b/tags/a/arch-dependent-file-in-usr-share.tag
@@ -0,0 +1,6 @@
+Tag: arch-dependent-file-in-usr-share
+Severity: error
+Check: binaries/location
+Explanation: This package installs an ELF binary in the <code>/usr/share</code>
+ hierarchy, which is reserved for architecture-independent files.
+See-Also: filesystem-hierarchy usrsharearchitectureindependentdata
diff --git a/tags/a/arch-dependent-file-not-in-arch-specific-directory.tag b/tags/a/arch-dependent-file-not-in-arch-specific-directory.tag
new file mode 100644
index 0000000..ca0be6d
--- /dev/null
+++ b/tags/a/arch-dependent-file-not-in-arch-specific-directory.tag
@@ -0,0 +1,6 @@
+Tag: arch-dependent-file-not-in-arch-specific-directory
+Severity: error
+Check: binaries/location
+Explanation: This package is Multi-Arch "same", but it installs an ELF binary in the
+ directory that is not architecture-specific.
+See-Also: https://wiki.ubuntu.com/MultiarchSpec
diff --git a/tags/a/arch-independent-package-contains-binary-or-object.tag b/tags/a/arch-independent-package-contains-binary-or-object.tag
new file mode 100644
index 0000000..63ffedb
--- /dev/null
+++ b/tags/a/arch-independent-package-contains-binary-or-object.tag
@@ -0,0 +1,9 @@
+Tag: arch-independent-package-contains-binary-or-object
+Severity: error
+Check: binaries/architecture
+Explanation: The package contains a binary or object file but is tagged
+ Architecture: all.
+ .
+ If this package contains binaries or objects for cross-compiling or
+ binary blobs for other purposes independent of the host architecture
+ (such as BIOS updates or firmware), please add a Lintian override.
diff --git a/tags/a/arch-wildcard-in-binary-package.tag b/tags/a/arch-wildcard-in-binary-package.tag
new file mode 100644
index 0000000..9e5ce0b
--- /dev/null
+++ b/tags/a/arch-wildcard-in-binary-package.tag
@@ -0,0 +1,7 @@
+Tag: arch-wildcard-in-binary-package
+Severity: error
+Check: fields/architecture
+Explanation: Architecture wildcards, including the special architecture value
+ "any", do not make sense in a binary package. A binary package must
+ either be architecture-independent or built for a specific architecture.
+See-Also: debian-policy 5.6.8
diff --git a/tags/a/architecture-escape.tag b/tags/a/architecture-escape.tag
new file mode 100644
index 0000000..d10430d
--- /dev/null
+++ b/tags/a/architecture-escape.tag
@@ -0,0 +1,13 @@
+Tag: architecture-escape
+Severity: info
+Check: files/hierarchy/links
+Explanation: The named link is located in an architecture-specific load
+ path for the dynamic linker but points to a general folder in the path.
+ .
+ Packages should install public shared libraries into an
+ architecture-specific load path instead of using a link.
+See-Also:
+ Bug#243158,
+ Bug#964111,
+ Bug#971707,
+ Bug#968525
diff --git a/tags/a/archive-liberty-mismatch.tag b/tags/a/archive-liberty-mismatch.tag
new file mode 100644
index 0000000..506c86e
--- /dev/null
+++ b/tags/a/archive-liberty-mismatch.tag
@@ -0,0 +1,13 @@
+Tag: archive-liberty-mismatch
+Severity: error
+Check: archive/liberty/mismatch
+Renamed-From:
+ section-area-mismatch
+Explanation: The <code>debian/control</code> file places the named installation
+ package in a different archive area (<code>main</code>, <code>contrib</code>,
+ <code>non-free</code>) than the source or the other installation packages.
+ .
+ A source and all installation packages produced from it must be in the
+ same archive area, except that sources in <code>main</code> may produce
+ installation packages in <code>contrib</code> as long as they also produce
+ installation packages in <code>main</code>.
diff --git a/tags/a/aspell-package-not-arch-all.tag b/tags/a/aspell-package-not-arch-all.tag
new file mode 100644
index 0000000..fffdf40
--- /dev/null
+++ b/tags/a/aspell-package-not-arch-all.tag
@@ -0,0 +1,8 @@
+Tag: aspell-package-not-arch-all
+Severity: warning
+Check: fields/architecture
+Explanation: This package appears to be an aspell dictionary package, but it is
+ not Architecture: all. The binary hashes should be built at install-time
+ by calling aspell-autobuildhash, so the contents of the package should be
+ architecture-independent.
+See-Also: aspell-autobuildhash(8)
diff --git a/tags/a/autotools-pkg-config-macro-not-cross-compilation-safe.tag b/tags/a/autotools-pkg-config-macro-not-cross-compilation-safe.tag
new file mode 100644
index 0000000..b1b4cda
--- /dev/null
+++ b/tags/a/autotools-pkg-config-macro-not-cross-compilation-safe.tag
@@ -0,0 +1,10 @@
+Tag: autotools-pkg-config-macro-not-cross-compilation-safe
+Severity: warning
+Check: build-systems/autotools
+Explanation: The package appears to use <code>AC&lowbar;PATH&lowbar;PROG</code> to discover the
+ location of <code>pkg-config(1)</code>. This macro fails to select the correct
+ version to support cross-compilation.
+ .
+ A better way would be to use the <code>PKG&lowbar;PROG&lowbar;PKG&lowbar;CONFIG</code> macro from
+ <code>pkg.m4</code> and then using the <code>$PKG&lowbar;CONFIG</code> shell variable.
+See-Also: Bug#884798
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 (&ast;.ali) files are required to be read-only
+ (mode 0444) by GNAT.
+ .
+ If at least one user can write the &ast;.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 &ast;.a and &ast;.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&ast;</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&lowbar;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&lowbar;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&lowbar;t</code> instead of <code>ssize&lowbar;t</code>), etc. Once
+ that has been done ensure <code>&lowbar;FILE&lowbar;OFFSET&lowbar;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>&lowbar;FILE&lowbar;OFFSET&lowbar;BITS</code>
+ to 64 will be a no-op, and as such optional). This can be done by using
+ the <code>AC&lowbar;SYS&lowbar;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&lowbar;CFLAGS</code> must not be used,
+ as it does not support cross-building. Using
+ <code>&lowbar;FILE&lowbar;OFFSET&lowbar;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>&lowbar;LARGEFILE64&lowbar;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&lowbar;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&lowbar;FORMAT&lowbar;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>&ast;</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 (&gt;= 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 (&gt;= 1.2)" would
+ be sufficient. If there was an earlier -0.X version of libfoo that would
+ not satisfy the dependency, use "libfoo (&gt;= 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.
diff --git a/tags/c/cannot-check-whether-usr-share-doc-symlink-points-to-foreign-package.tag b/tags/c/cannot-check-whether-usr-share-doc-symlink-points-to-foreign-package.tag
new file mode 100644
index 0000000..259077f
--- /dev/null
+++ b/tags/c/cannot-check-whether-usr-share-doc-symlink-points-to-foreign-package.tag
@@ -0,0 +1,10 @@
+Tag: cannot-check-whether-usr-share-doc-symlink-points-to-foreign-package
+Severity: info
+Check: debian/copyright
+Explanation: There is a symlink /usr/share/doc/*pkg1* -&gt; *pkg2*
+ in your package. This means that *pkg1* and *pkg2* must
+ both come from the same source package. Lintian cannot check this right now
+ however.
+ .
+ Please reprocess this binary together with its source package to avoid
+ this tag.
diff --git a/tags/c/capitalization-error-in-description-synopsis.tag b/tags/c/capitalization-error-in-description-synopsis.tag
new file mode 100644
index 0000000..4c48db9
--- /dev/null
+++ b/tags/c/capitalization-error-in-description-synopsis.tag
@@ -0,0 +1,7 @@
+Tag: capitalization-error-in-description-synopsis
+Severity: info
+Check: fields/description
+Explanation: Lintian found a possible capitalization error in the package
+ synopsis. Lintian has a list of common capitalization errors,
+ primarily of upstream projects, that it looks for. It does not have a
+ dictionary like a spelling checker does.
diff --git a/tags/c/capitalization-error-in-description.tag b/tags/c/capitalization-error-in-description.tag
new file mode 100644
index 0000000..2253db9
--- /dev/null
+++ b/tags/c/capitalization-error-in-description.tag
@@ -0,0 +1,12 @@
+Tag: capitalization-error-in-description
+Severity: info
+Check: fields/description
+Explanation: Lintian found a possible capitalization error in the package
+ description. Lintian has a list of common capitalization errors,
+ primarily of upstream projects, that it looks for. It does not have a
+ dictionary like a spelling checker does.
+ .
+ This is a particularly picky check of capitalization in package
+ descriptions, since they're very visible to end users, but it will have
+ false positives for project names used in a context where they should be
+ lowercase, such as package names or executable names.
diff --git a/tags/c/capitalization-in-override-comment.tag b/tags/c/capitalization-in-override-comment.tag
new file mode 100644
index 0000000..b941280
--- /dev/null
+++ b/tags/c/capitalization-in-override-comment.tag
@@ -0,0 +1,8 @@
+Tag: capitalization-in-override-comment
+Severity: pedantic
+Check: debian/lintian-overrides/comments
+Explanation: The comment attached to a Lintian override probably contains
+ a capitalization error.
+ .
+ Lintian looks for common capitalization errors. It does not have a
+ dictionary.
diff --git a/tags/c/carriage-return-line-feed.tag b/tags/c/carriage-return-line-feed.tag
new file mode 100644
index 0000000..d4f2d8b
--- /dev/null
+++ b/tags/c/carriage-return-line-feed.tag
@@ -0,0 +1,13 @@
+Tag: carriage-return-line-feed
+Severity: error
+Check: debian/line-separators
+Renamed-From: control-file-with-CRLF-EOLs
+Explanation: The given control file uses <code>CRLF</code> as line terminator
+ instead of the traditional UNIX <code>LF</code> terminator. Since some
+ tools were only designed with the UNIX end-of-line terminators in mind,
+ it is possible that they misbehave or lead to unexpected results.
+ .
+ Running the following command against the given file removes any
+ <code>CR</code> character in the file:
+ .
+ <code>sed -i 's/\r//g' path/to/file</code>
diff --git a/tags/c/changed-by-invalid-for-derivative.tag b/tags/c/changed-by-invalid-for-derivative.tag
new file mode 100644
index 0000000..718229e
--- /dev/null
+++ b/tags/c/changed-by-invalid-for-derivative.tag
@@ -0,0 +1,8 @@
+Tag: changed-by-invalid-for-derivative
+Severity: error
+Check: fields/changed-by
+Explanation: The Changed-By field does not match the required format for this
+ Debian derivative.
+ .
+ Derivative distributions of Debian may enforce additional restrictions
+ on such fields.
diff --git a/tags/c/changelog-distribution-does-not-match-changes-file.tag b/tags/c/changelog-distribution-does-not-match-changes-file.tag
new file mode 100644
index 0000000..4a02e36
--- /dev/null
+++ b/tags/c/changelog-distribution-does-not-match-changes-file.tag
@@ -0,0 +1,11 @@
+Tag: changelog-distribution-does-not-match-changes-file
+Severity: warning
+Check: debian/changelog
+Explanation: The target distribution in the most recent entry in this package's
+ <code>debian/changelog</code> file does not match the target in the generated
+ <code>.changes</code> file.
+ .
+ This may indicate a mistake in setting the distribution, an accidental
+ upload to unstable of a package intended for experimental, or a mistake
+ in invoking <code>sbuild(1)</code>.
+See-Also: Bug#906155, sbuild(1)
diff --git a/tags/c/changelog-empty-entry.tag b/tags/c/changelog-empty-entry.tag
new file mode 100644
index 0000000..7584b23
--- /dev/null
+++ b/tags/c/changelog-empty-entry.tag
@@ -0,0 +1,6 @@
+Tag: changelog-empty-entry
+Severity: error
+Check: debian/changelog
+Explanation: The last changelog entry is empty. Please add a description or use
+ an UNRELEASED version.
+See-Also: debian-policy 4.4
diff --git a/tags/c/changelog-file-missing-explicit-entry.tag b/tags/c/changelog-file-missing-explicit-entry.tag
new file mode 100644
index 0000000..2d99394
--- /dev/null
+++ b/tags/c/changelog-file-missing-explicit-entry.tag
@@ -0,0 +1,11 @@
+Tag: changelog-file-missing-explicit-entry
+Severity: warning
+Check: debian/changelog
+Explanation: The latest changelog file for this package specifies a version in
+ the form of 1.2-3+deb8u1, 1.2-3+nmu4 (or similar) but this does not
+ follow from a corresponding 1.2-3 changelog stanza.
+ .
+ This suggests that changes were merged into a single entry. This is
+ suboptimal as it makes it more difficult for users to determine which
+ upload fixed a particular bug.
+See-Also: developer-reference 5.8.5.4, developer-reference 5.11.2, developer-reference 5.14.3, Bug#916877
diff --git a/tags/c/changelog-file-not-compressed.tag b/tags/c/changelog-file-not-compressed.tag
new file mode 100644
index 0000000..9796eb9
--- /dev/null
+++ b/tags/c/changelog-file-not-compressed.tag
@@ -0,0 +1,6 @@
+Tag: changelog-file-not-compressed
+Severity: error
+Check: debian/changelog
+Explanation: Changelog files should be compressed using "gzip -9". Even if they
+ start out small, they will become large with time.
+See-Also: debian-policy 12.7
diff --git a/tags/c/changelog-is-dh_make-template.tag b/tags/c/changelog-is-dh_make-template.tag
new file mode 100644
index 0000000..ec288a0
--- /dev/null
+++ b/tags/c/changelog-is-dh_make-template.tag
@@ -0,0 +1,10 @@
+Tag: changelog-is-dh_make-template
+Severity: error
+Check: debian/changelog
+Explanation: The changelog file has an instruction left by dh&lowbar;make, which has
+ not been removed. Example:
+ .
+ - Initial release (Closes: #nnnn) &lt;nnnn is the bug number of your ITP&gt;
+ .
+ The "&lt;... is the bug number ...&gt;" part has not been removed from the
+ changelog.
diff --git a/tags/c/changelog-is-symlink.tag b/tags/c/changelog-is-symlink.tag
new file mode 100644
index 0000000..ad71b2f
--- /dev/null
+++ b/tags/c/changelog-is-symlink.tag
@@ -0,0 +1,11 @@
+Tag: changelog-is-symlink
+Severity: warning
+Check: nmu
+Explanation: The file <code>debian/changelog</code> is a symlink instead of a regular
+ file. This is unnecessary and makes package checking and manipulation
+ more difficult. If the changelog should be available in the source
+ package under multiple names, make <code>debian/changelog</code> the real
+ file and the other names symlinks to it.
+ .
+ This problem may have prevented Lintian from performing other checks,
+ leading to undetected changelog errors.
diff --git a/tags/c/changelog-news-debian-mismatch.tag b/tags/c/changelog-news-debian-mismatch.tag
new file mode 100644
index 0000000..8659155
--- /dev/null
+++ b/tags/c/changelog-news-debian-mismatch.tag
@@ -0,0 +1,7 @@
+Tag: changelog-news-debian-mismatch
+Severity: warning
+Check: debian/changelog
+Explanation: The latest entries in the Debian changelog file and NEWS.Debian file
+ are for the same version but the given field doesn't match. The
+ changelog information is canonical and the NEWS.Debian information is
+ ignored, but it may be confusing to users to have them be different.
diff --git a/tags/c/changelog-not-compressed-with-max-compression.tag b/tags/c/changelog-not-compressed-with-max-compression.tag
new file mode 100644
index 0000000..73bf23b
--- /dev/null
+++ b/tags/c/changelog-not-compressed-with-max-compression.tag
@@ -0,0 +1,6 @@
+Tag: changelog-not-compressed-with-max-compression
+Severity: warning
+Check: debian/changelog
+Explanation: Changelog files should be compressed using "gzip -9"; i.e., using
+ the maximum compression level via the -9 option to gzip.
+See-Also: debian-policy 12.7
diff --git a/tags/c/changelog-references-temp-security-identifier.tag b/tags/c/changelog-references-temp-security-identifier.tag
new file mode 100644
index 0000000..03b0337
--- /dev/null
+++ b/tags/c/changelog-references-temp-security-identifier.tag
@@ -0,0 +1,15 @@
+Tag: changelog-references-temp-security-identifier
+Severity: warning
+Check: debian/changelog
+Explanation: The changelog entry references a temporary security identifier,
+ like "TEMP-0000000-2FC21E".
+ .
+ The TEMP identifier will disappear in the future once a proper CVE
+ identifier has been assigned. Therefore it is useless as an
+ external reference. Even worse, the identifier is not stable and
+ may change even before a CVE is allocated.
+ .
+ If a CVE has been allocated, please use that instead. Otherwise,
+ please replace the TEMP identifier with a short description of the
+ issue.
+See-Also: Bug#787929, Bug#807892
diff --git a/tags/c/checksum-count-mismatch-in-changes-file.tag b/tags/c/checksum-count-mismatch-in-changes-file.tag
new file mode 100644
index 0000000..60a2255
--- /dev/null
+++ b/tags/c/checksum-count-mismatch-in-changes-file.tag
@@ -0,0 +1,6 @@
+Tag: checksum-count-mismatch-in-changes-file
+Severity: error
+Check: changes-file
+Explanation: The number of checksums <code>.changes</code> file for the
+ specified algorithm does not match the number of files.
+See-Also: debian-policy 5.6.21, debian-policy 5.6.24
diff --git a/tags/c/checksum-mismatch-in-changes-file.tag b/tags/c/checksum-mismatch-in-changes-file.tag
new file mode 100644
index 0000000..c4826f2
--- /dev/null
+++ b/tags/c/checksum-mismatch-in-changes-file.tag
@@ -0,0 +1,6 @@
+Tag: checksum-mismatch-in-changes-file
+Severity: error
+Check: changes-file
+Explanation: The actual checksum does not match what's listed in the
+ <code>.changes</code> file.
+See-Also: debian-policy 5.6.21, debian-policy 5.6.24
diff --git a/tags/c/chown-with-dot.tag b/tags/c/chown-with-dot.tag
new file mode 100644
index 0000000..1bc7bd0
--- /dev/null
+++ b/tags/c/chown-with-dot.tag
@@ -0,0 +1,11 @@
+Tag: chown-with-dot
+Severity: pedantic
+Check: script/deprecated/chown
+Explanation: The named script uses a dot to separate owner and group in
+ a call like <code>chown user.group</code> but that usage is deprecated.
+ .
+ Please use a colon instead, as in:
+ .
+ <code>chown user:group</code>.
+See-Also:
+ https://lists.debian.org/debian-devel/2022/03/msg00138.html
diff --git a/tags/c/circular-installation-prerequisite.tag b/tags/c/circular-installation-prerequisite.tag
new file mode 100644
index 0000000..55bdfe5
--- /dev/null
+++ b/tags/c/circular-installation-prerequisite.tag
@@ -0,0 +1,13 @@
+Tag: circular-installation-prerequisite
+Severity: warning
+Check: debian/control/prerequisite/circular
+Renamed-From:
+ package-depends-on-itself
+Explanation: The installable declares itself as its own installation prerequisite
+ in the relevant <code>debian/control</code> stanza.
+ .
+ Current versions of <code>dpkg-gencontrol</code> will silently ignore the
+ prerequisite, but it may still indicate an oversight. It could be a misspelling
+ or having cut and pasted an incorrect package name.
+See-Also:
+ debian-policy 7.2
diff --git a/tags/c/classpath-contains-relative-path.tag b/tags/c/classpath-contains-relative-path.tag
new file mode 100644
index 0000000..6f4bbdb
--- /dev/null
+++ b/tags/c/classpath-contains-relative-path.tag
@@ -0,0 +1,15 @@
+Tag: classpath-contains-relative-path
+Severity: warning
+Check: languages/java
+Explanation: The classpath listed in the jar file refers to a potential
+ missing jar file. This could be the remnants of a build-time
+ classpath that are not relevant for a JAR bundled in a Debian
+ package.
+ .
+ Alternatively, the classpath may be correct, but the package is
+ lacking a jar file or a symlink to it.
+ .
+ Note, Lintian assumes that all (relative) classpaths pointing to
+ /usr/share/java/ (but not subdirs thereof) are satisfied by
+ dependencies as long as there is at least one strong libX-java
+ dependency.
diff --git a/tags/c/co-maintained-package-with-no-vcs-fields.tag b/tags/c/co-maintained-package-with-no-vcs-fields.tag
new file mode 100644
index 0000000..fe4296b
--- /dev/null
+++ b/tags/c/co-maintained-package-with-no-vcs-fields.tag
@@ -0,0 +1,10 @@
+Tag: co-maintained-package-with-no-vcs-fields
+Severity: pedantic
+Check: fields/vcs
+Explanation: Based on the content of the maintainer and uploader fields this
+ package is co-maintained but there are no Vcs-&ast; fields.
+ .
+ It is recommended that shared maintenance of packages are co-ordinated
+ via a revision control system.
+Renamed-From:
+ co-maintained-package-with-no-vcs-headers
diff --git a/tags/c/codeless-jar.tag b/tags/c/codeless-jar.tag
new file mode 100644
index 0000000..743e7c5
--- /dev/null
+++ b/tags/c/codeless-jar.tag
@@ -0,0 +1,5 @@
+Tag: codeless-jar
+Severity: warning
+Check: languages/java
+Explanation: The jar file contains a manifest but no code. This probably indicates
+ that something went wrong at build-time.
diff --git a/tags/c/comma-separated-files-in-dep5-copyright.tag b/tags/c/comma-separated-files-in-dep5-copyright.tag
new file mode 100644
index 0000000..d72dd55
--- /dev/null
+++ b/tags/c/comma-separated-files-in-dep5-copyright.tag
@@ -0,0 +1,8 @@
+Tag: comma-separated-files-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: A list of files in the machine-readable copyright format appears to be
+ separated by commas. The file list should be whitespace separated instead.
+ .
+ Please note this tag is only emitted once per checked copyright file.
diff --git a/tags/c/command-in-menu-file-and-desktop-file.tag b/tags/c/command-in-menu-file-and-desktop-file.tag
new file mode 100644
index 0000000..fba0aa2
--- /dev/null
+++ b/tags/c/command-in-menu-file-and-desktop-file.tag
@@ -0,0 +1,13 @@
+Tag: command-in-menu-file-and-desktop-file
+Severity: warning
+Check: menu-format
+Explanation: The command is listed both in a <code>menu</code> file and a
+ <code>desktop</code> file
+ .
+ Per decision by the Technical Committee, it is no longer allowed.
+ .
+ Please remove the <code>menu</code> file from the package.
+See-Also:
+ debian-policy 9.6,
+ https://lists.debian.org/debian-devel-announce/2015/09/msg00000.html,
+ Bug#741573
diff --git a/tags/c/command-with-path-in-maintainer-script.tag b/tags/c/command-with-path-in-maintainer-script.tag
new file mode 100644
index 0000000..d7602dc
--- /dev/null
+++ b/tags/c/command-with-path-in-maintainer-script.tag
@@ -0,0 +1,18 @@
+Tag: command-with-path-in-maintainer-script
+Severity: warning
+Check: scripts
+Explanation: The indicated program run in a maintainer script has a prepended
+ path. Programs called from maintainer scripts normally should not have a
+ path prepended. dpkg ensures that the PATH is set to a reasonable value,
+ and prepending a path may prevent the local administrator from using a
+ replacement version of a command for some local reason.
+ .
+ If the path is used to test a program for existence, please use <code>if
+ which $program > /dev/null; then โ€ฆ</code>.
+ .
+ If you intend to override this tag, please make sure that you are in
+ control of the installation path of the according program and that
+ you won't forget to change this maintainer script, too, if you ever
+ move that program around.
+See-Also: debian-policy 6.1, developer-reference 6.4, Bug#769845, Bug#807695,
+ https://lists.debian.org/debian-devel/2014/11/msg00044.html
diff --git a/tags/c/composer-package-without-pkg-php-tools-builddep.tag b/tags/c/composer-package-without-pkg-php-tools-builddep.tag
new file mode 100644
index 0000000..2251ff6
--- /dev/null
+++ b/tags/c/composer-package-without-pkg-php-tools-builddep.tag
@@ -0,0 +1,8 @@
+Tag: composer-package-without-pkg-php-tools-builddep
+Severity: info
+Check: languages/php/pear
+Explanation: The package contains a composer.json file but doesn't build-depend on
+ pkg-php-tools.
+ .
+ pkg-php-tools is the recommended tool for building PHP Composer packages. For
+ more information, install it and read the included README.Composer.
diff --git a/tags/c/composer-prerequisite.tag b/tags/c/composer-prerequisite.tag
new file mode 100644
index 0000000..62cad34
--- /dev/null
+++ b/tags/c/composer-prerequisite.tag
@@ -0,0 +1,22 @@
+Tag: composer-prerequisite
+Severity: warning
+Check: languages/php/composer
+Explanation: A packaging relationship refers to the PHP composer.
+ .
+ The PHP <code>Composer</code> is a tool to install PHP packages similar to
+ <code>pip</code> for Python and <code>npm</code> for Node.js. It should not
+ be pulled in as a packaging relationship.
+ .
+ In Debian, the <code>composer</code> is dealt with in other ways, such as
+ <code>dh_phpcomposer</code> from <code>pkg-php-tools</code> and
+ <code>phpab</code>, which generates a static autoloader.
+ .
+ Maintainers of PHP-related packages may not be aware of all of the conventions
+ since many such packages are maintained by individuals who are not associated
+ with the PHP PEAR Maintainers team.
+See-Also:
+ dh_phpcomposer(1),
+ phpab(1),
+ https://getcomposer.org,
+ https://en.wikipedia.org/wiki/Composer_(software),
+ Bug#977150
diff --git a/tags/c/compressed-documentation.tag b/tags/c/compressed-documentation.tag
new file mode 100644
index 0000000..1a0526b
--- /dev/null
+++ b/tags/c/compressed-documentation.tag
@@ -0,0 +1,10 @@
+Tag: compressed-documentation
+Severity: warning
+Check: documentation
+Renamed-From: file-should-not-be-compressed
+Explanation: The following file should not be compressed.
+ .
+ This file should be excluded from compression during build time.
+ If using debhelper (&lt;&lt; 9.20140227), you may need to use the -X
+ option to dh&lowbar;compress. Newer versions of debhelper handle this
+ correctly by default.
diff --git a/tags/c/compressed-duplicate.tag b/tags/c/compressed-duplicate.tag
new file mode 100644
index 0000000..a6e9a9a
--- /dev/null
+++ b/tags/c/compressed-duplicate.tag
@@ -0,0 +1,8 @@
+Tag: compressed-duplicate
+Severity: info
+Check: files/compressed
+Renamed-From: duplicated-compressed-file
+Explanation: The given, apparently compressed, file is shipped in the package
+ in addition to another file with the same name without the
+ compression-method extension. Normally this indicates a mistake in the
+ installation process of the package.
diff --git a/tags/c/compressed-symlink-with-wrong-ext.tag b/tags/c/compressed-symlink-with-wrong-ext.tag
new file mode 100644
index 0000000..d98d837
--- /dev/null
+++ b/tags/c/compressed-symlink-with-wrong-ext.tag
@@ -0,0 +1,8 @@
+Tag: compressed-symlink-with-wrong-ext
+Severity: error
+Check: files/symbolic-links
+Explanation: The package installs a symbolic link pointing to a compressed file,
+ but the symbolic link does not use the same file extension than the
+ referenced file. In most cases, this can produce troubles when the
+ user or a program tries to access the file through the link.
+See-Also: debian-policy 10.5
diff --git a/tags/c/concatenated-upstream-signatures.tag b/tags/c/concatenated-upstream-signatures.tag
new file mode 100644
index 0000000..4de909e
--- /dev/null
+++ b/tags/c/concatenated-upstream-signatures.tag
@@ -0,0 +1,7 @@
+Tag: concatenated-upstream-signatures
+Severity: warning
+Check: upstream-signature
+Explanation: The packaging includes a detached upstream signature file that contains
+ multiple concatenated signature blocks. That is likely an error.
+ .
+ Please include only one signature block in the indicated signature file.
diff --git a/tags/c/conffile-has-bad-file-type.tag b/tags/c/conffile-has-bad-file-type.tag
new file mode 100644
index 0000000..7b9076f
--- /dev/null
+++ b/tags/c/conffile-has-bad-file-type.tag
@@ -0,0 +1,8 @@
+Tag: conffile-has-bad-file-type
+Severity: error
+Check: conffiles
+See-Also: Bug#690051, Bug#690910
+Explanation: The conffiles lists this path, which is not a file. This will
+ almost certainly not work.
+ .
+ Note that dpkg does not support symlinks being conffiles.
diff --git a/tags/c/config-does-not-load-confmodule.tag b/tags/c/config-does-not-load-confmodule.tag
new file mode 100644
index 0000000..c566c82
--- /dev/null
+++ b/tags/c/config-does-not-load-confmodule.tag
@@ -0,0 +1,4 @@
+Tag: config-does-not-load-confmodule
+Severity: warning
+Check: debian/debconf
+Explanation: The config script must load one of the debconf libraries.
diff --git a/tags/c/config-file-reserved.tag b/tags/c/config-file-reserved.tag
new file mode 100644
index 0000000..78e9768
--- /dev/null
+++ b/tags/c/config-file-reserved.tag
@@ -0,0 +1,5 @@
+Tag: config-file-reserved
+Severity: error
+Check: files/pam
+Explanation: This file is reserved by a specific package. Please email the
+ maintainer of the package in question if you have questions.
diff --git a/tags/c/configure-generated-file-in-source.tag b/tags/c/configure-generated-file-in-source.tag
new file mode 100644
index 0000000..702a3af
--- /dev/null
+++ b/tags/c/configure-generated-file-in-source.tag
@@ -0,0 +1,17 @@
+Tag: configure-generated-file-in-source
+Severity: warning
+Check: build-systems/autotools
+Explanation: Leaving config.cache/status causes autobuilders problems.
+ config.cache and config.status are produced by GNU autoconf's configure
+ scripts. If they are left in the source package, autobuilders may pick
+ up settings for the wrong architecture.
+ .
+ The clean rule in <code>debian/rules</code> should remove this file. This
+ should ideally be done by fixing the upstream build system to do it when
+ you run the appropriate cleaning command (and don't forget to forward the
+ fix to the upstream authors so it doesn't happen in the next release). If
+ that is already implemented, then make sure you are indeed cleaning it in
+ the clean rule. If all else fails, a simple rm -f should work.
+ .
+ Note that Lintian cannot reliably detect the removal in the clean rule,
+ so once you fix this, please ignore or override this warning.
diff --git a/tags/c/conflicting-negation-in-source-relation.tag b/tags/c/conflicting-negation-in-source-relation.tag
new file mode 100644
index 0000000..4d99e52
--- /dev/null
+++ b/tags/c/conflicting-negation-in-source-relation.tag
@@ -0,0 +1,8 @@
+Tag: conflicting-negation-in-source-relation
+Severity: error
+Check: fields/package-relations
+See-Also: debian-policy 7.1
+Explanation: The architecture string in this source relation has some
+ negated architectures (prepended by <code>!</code>) and others that are not
+ negated. This is not permitted by Policy. Either all architectures must
+ be negated or none of them may be.
diff --git a/tags/c/conflicting-test-fields.tag b/tags/c/conflicting-test-fields.tag
new file mode 100644
index 0000000..7136cf8
--- /dev/null
+++ b/tags/c/conflicting-test-fields.tag
@@ -0,0 +1,11 @@
+Tag: conflicting-test-fields
+Severity: warning
+Check: testsuite
+Renamed-from:
+ exclusive-runtime-tests-field
+Explanation: The given section in the <code>debian/tests/control</code> file specifies
+ two conflicting fields.
+ .
+ Please pick one.
+See-Also:
+ https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/c/conflicts-with-dependency.tag b/tags/c/conflicts-with-dependency.tag
new file mode 100644
index 0000000..d6c37db
--- /dev/null
+++ b/tags/c/conflicts-with-dependency.tag
@@ -0,0 +1,6 @@
+Tag: conflicts-with-dependency
+Severity: error
+Check: fields/package-relations
+See-Also: debian-policy 7.4
+Explanation: The package seems to conflict with one of its dependencies,
+ recommendations, or suggestions by listing it in Conflicts or Breaks.
diff --git a/tags/c/conflicts-with-version.tag b/tags/c/conflicts-with-version.tag
new file mode 100644
index 0000000..0692972
--- /dev/null
+++ b/tags/c/conflicts-with-version.tag
@@ -0,0 +1,11 @@
+Tag: conflicts-with-version
+Severity: info
+Check: fields/package-relations
+See-Also: debian-policy 7.4
+Explanation: An earlier-than version clause is normally an indication that Breaks
+ should be used instead of Conflicts. Breaks is a weaker requirement that
+ provides the package manager more leeway to find a valid upgrade path.
+ Conflicts should only be used if two packages can never be unpacked at
+ the same time, or for some situations involving virtual packages (where a
+ version clause is not appropriate). In particular, when moving files
+ between packages, use Breaks plus Replaces, not Conflicts plus Replaces.
diff --git a/tags/c/control-file-contains-dh-make-vcs-comment.tag b/tags/c/control-file-contains-dh-make-vcs-comment.tag
new file mode 100644
index 0000000..744b311
--- /dev/null
+++ b/tags/c/control-file-contains-dh-make-vcs-comment.tag
@@ -0,0 +1,10 @@
+Tag: control-file-contains-dh-make-vcs-comment
+Severity: warning
+Check: template/dh-make/control/vcs
+Renamed-From:
+ control-file-contains-dh_make-vcs-comment
+Explanation: The control file contains <code>VCS-&ast;</code> lines that are
+ commented out. They were most likely placed there by <code>dh&lowbar;make</code>.
+ .
+ If the URLs are valid, they should be uncommented. Otherwise, they should be
+ removed.
diff --git a/tags/c/control-file-has-bad-owner.tag b/tags/c/control-file-has-bad-owner.tag
new file mode 100644
index 0000000..eb713e2
--- /dev/null
+++ b/tags/c/control-file-has-bad-owner.tag
@@ -0,0 +1,5 @@
+Tag: control-file-has-bad-owner
+Severity: error
+Check: control-files
+See-Also: debian-policy 10.9
+Explanation: All control files should be owned by root/root.
diff --git a/tags/c/control-file-has-bad-permissions.tag b/tags/c/control-file-has-bad-permissions.tag
new file mode 100644
index 0000000..336a9f5
--- /dev/null
+++ b/tags/c/control-file-has-bad-permissions.tag
@@ -0,0 +1,7 @@
+Tag: control-file-has-bad-permissions
+Severity: error
+Check: control-files
+See-Also: debian-policy 10.9
+Explanation: The <code>config</code>, <code>postinst</code>, <code>postrm</code>,
+ <code>preinst</code>, and <code>prerm</code> control files should use mode 0755;
+ all other control files should use 0644.
diff --git a/tags/c/control-file-is-empty.tag b/tags/c/control-file-is-empty.tag
new file mode 100644
index 0000000..c1cdb11
--- /dev/null
+++ b/tags/c/control-file-is-empty.tag
@@ -0,0 +1,5 @@
+Tag: control-file-is-empty
+Severity: warning
+Check: control-files
+Explanation: The package contains an empty control file, which is most probably
+ an error.
diff --git a/tags/c/control-file-is-not-a-file.tag b/tags/c/control-file-is-not-a-file.tag
new file mode 100644
index 0000000..67f6887
--- /dev/null
+++ b/tags/c/control-file-is-not-a-file.tag
@@ -0,0 +1,4 @@
+Tag: control-file-is-not-a-file
+Severity: error
+Check: control-files
+Explanation: The package contains a control file that is not a regular file.
diff --git a/tags/c/control-interpreter-in-usr-local.tag b/tags/c/control-interpreter-in-usr-local.tag
new file mode 100644
index 0000000..c914db4
--- /dev/null
+++ b/tags/c/control-interpreter-in-usr-local.tag
@@ -0,0 +1,7 @@
+Tag: control-interpreter-in-usr-local
+Severity: error
+Check: scripts
+Explanation: A control script for this package references an interpreter in a
+ directory in <code>/usr/local</code>. Control scripts must use interpreters
+ provided by Debian packages, and Debian packages do not install anything
+ in <code>/usr/local</code>.
diff --git a/tags/c/control-interpreter-without-depends.tag b/tags/c/control-interpreter-without-depends.tag
new file mode 100644
index 0000000..8b376be
--- /dev/null
+++ b/tags/c/control-interpreter-without-depends.tag
@@ -0,0 +1,7 @@
+Tag: control-interpreter-without-depends
+Severity: error
+Check: scripts
+Explanation: The package contains a maintainer script that uses an unusual and
+ non-essential interpreter but does not declare a <code>Depends</code> on the
+ package that provides this interpreter.
+See-Also: debian-policy 7.2
diff --git a/tags/c/control-interpreter-without-predepends.tag b/tags/c/control-interpreter-without-predepends.tag
new file mode 100644
index 0000000..70bf616
--- /dev/null
+++ b/tags/c/control-interpreter-without-predepends.tag
@@ -0,0 +1,15 @@
+Tag: control-interpreter-without-predepends
+Severity: error
+Check: scripts
+Renamed-From:
+ preinst-interpreter-without-predepends
+Explanation: The package contains a <code>preinst</code> maintainer script that uses
+ an unusual and non-essential interpreter but does not declare a
+ <code>Pre-Depends</code> on the package that provides this interpreter.
+ .
+ <code>preinst</code> scripts should be written using only essential
+ interpreters to avoid additional dependency complexity. Please do not
+ add a <code>Pre-Depends</code> without following the policy section 3.5.
+See-Also:
+ debian-policy 7.2,
+ debian-policy 3.5
diff --git a/tags/c/control-tarball-compression-format.tag b/tags/c/control-tarball-compression-format.tag
new file mode 100644
index 0000000..154decf
--- /dev/null
+++ b/tags/c/control-tarball-compression-format.tag
@@ -0,0 +1,4 @@
+Tag: control-tarball-compression-format
+Severity: classification
+Check: deb-format
+Explanation: This is the compressor format used for the <code>control.tar</code> tarball.
diff --git a/tags/c/copyright-contains-automatically-extracted-boilerplate.tag b/tags/c/copyright-contains-automatically-extracted-boilerplate.tag
new file mode 100644
index 0000000..5c0b147
--- /dev/null
+++ b/tags/c/copyright-contains-automatically-extracted-boilerplate.tag
@@ -0,0 +1,8 @@
+Tag: copyright-contains-automatically-extracted-boilerplate
+Severity: warning
+Check: debian/copyright
+See-Also: debian-policy 12.5
+Explanation: The string "This copyright info was automatically extracted"
+ appears in the copyright file, which indicates that you either didn't
+ check the whole source to find additional copyright/license, or that
+ you didn't remove that paragraph after having done so.
diff --git a/tags/c/copyright-contains-dh_make-todo-boilerplate.tag b/tags/c/copyright-contains-dh_make-todo-boilerplate.tag
new file mode 100644
index 0000000..b9e8590
--- /dev/null
+++ b/tags/c/copyright-contains-dh_make-todo-boilerplate.tag
@@ -0,0 +1,8 @@
+Tag: copyright-contains-dh_make-todo-boilerplate
+Severity: error
+Check: debian/copyright
+See-Also: debian-policy 12.5
+Explanation: The string "Please also look if..." appears in the copyright
+ file, which indicates that you either didn't check the whole source
+ to find additional copyright/license, or that you didn't remove that
+ paragraph after having done so.
diff --git a/tags/c/copyright-does-not-refer-to-common-license-file.tag b/tags/c/copyright-does-not-refer-to-common-license-file.tag
new file mode 100644
index 0000000..483bd87
--- /dev/null
+++ b/tags/c/copyright-does-not-refer-to-common-license-file.tag
@@ -0,0 +1,7 @@
+Tag: copyright-does-not-refer-to-common-license-file
+Severity: warning
+Check: debian/copyright
+Explanation: If your package uses any one of the licenses in
+ <code>/usr/share/common-licenses</code>, the copyright file should refer to
+ files therein.
+See-Also: debian-policy 12.5
diff --git a/tags/c/copyright-file-compressed.tag b/tags/c/copyright-file-compressed.tag
new file mode 100644
index 0000000..258a712
--- /dev/null
+++ b/tags/c/copyright-file-compressed.tag
@@ -0,0 +1,6 @@
+Tag: copyright-file-compressed
+Severity: error
+Check: debian/copyright
+Explanation: The copyright file /usr/share/doc/*pkg*/copyright must not be
+ compressed.
+See-Also: debian-policy 12.5
diff --git a/tags/c/copyright-file-contains-full-apache-2-license.tag b/tags/c/copyright-file-contains-full-apache-2-license.tag
new file mode 100644
index 0000000..54301a8
--- /dev/null
+++ b/tags/c/copyright-file-contains-full-apache-2-license.tag
@@ -0,0 +1,7 @@
+Tag: copyright-file-contains-full-apache-2-license
+Severity: error
+Check: debian/copyright
+Explanation: The copyright file /usr/share/doc/*pkg*/copyright contains the
+ complete text of the Apache 2.0 license. It should refer to the file
+ <code>/usr/share/common-licenses/Apache-2.0</code> instead.
+See-Also: debian-policy 12.5
diff --git a/tags/c/copyright-file-contains-full-gfdl-license.tag b/tags/c/copyright-file-contains-full-gfdl-license.tag
new file mode 100644
index 0000000..09b2dfe
--- /dev/null
+++ b/tags/c/copyright-file-contains-full-gfdl-license.tag
@@ -0,0 +1,7 @@
+Tag: copyright-file-contains-full-gfdl-license
+Severity: error
+Check: debian/copyright
+Explanation: The copyright file /usr/share/doc/*pkg*/copyright contains the
+ complete text of the GFDL v1.2. It should refer to the file
+ <code>/usr/share/common-licenses/GFDL-1.2</code> instead.
+See-Also: debian-policy 12.5
diff --git a/tags/c/copyright-file-contains-full-gpl-license.tag b/tags/c/copyright-file-contains-full-gpl-license.tag
new file mode 100644
index 0000000..ed63564
--- /dev/null
+++ b/tags/c/copyright-file-contains-full-gpl-license.tag
@@ -0,0 +1,8 @@
+Tag: copyright-file-contains-full-gpl-license
+Severity: error
+Check: debian/copyright
+Explanation: The copyright file /usr/share/doc/*pkg*/copyright contains the
+ complete text of the GPL v1, v2, or v3. It should refer to the file
+ <code>/usr/share/common-licenses/GPL-1</code>, <code>GPL-2</code>, or
+ <code>GPL-3</code> instead.
+See-Also: debian-policy 12.5
diff --git a/tags/c/copyright-file-is-symlink.tag b/tags/c/copyright-file-is-symlink.tag
new file mode 100644
index 0000000..c8cab54
--- /dev/null
+++ b/tags/c/copyright-file-is-symlink.tag
@@ -0,0 +1,6 @@
+Tag: copyright-file-is-symlink
+Severity: error
+Check: debian/copyright
+Explanation: The copyright file /usr/share/doc/*pkg*/copyright must not be a
+ symbolic link.
+See-Also: debian-policy 12.5
diff --git a/tags/c/copyright-file-lacks-pointer-to-perl-license.tag b/tags/c/copyright-file-lacks-pointer-to-perl-license.tag
new file mode 100644
index 0000000..9533e6d
--- /dev/null
+++ b/tags/c/copyright-file-lacks-pointer-to-perl-license.tag
@@ -0,0 +1,7 @@
+Tag: copyright-file-lacks-pointer-to-perl-license
+Severity: error
+Check: debian/copyright
+See-Also: debian-policy 12.5
+Explanation: If your package is released under the same terms as Perl itself,
+ it should refer to the Artistic and GPL license files in the
+ <code>/usr/share/common-licenses</code> directory.
diff --git a/tags/c/copyright-has-crs.tag b/tags/c/copyright-has-crs.tag
new file mode 100644
index 0000000..ec8bf1e
--- /dev/null
+++ b/tags/c/copyright-has-crs.tag
@@ -0,0 +1,9 @@
+Tag: copyright-has-crs
+Severity: pedantic
+Check: debian/copyright
+Explanation: The copyright file has lines ending in CRLF instead of just LF.
+ .
+ Running the following command against the given file removes any
+ <code>CR</code> character in the file:
+ .
+ <code>sed -i 's/\r//g' path/to/file</code>
diff --git a/tags/c/copyright-has-url-from-dh_make-boilerplate.tag b/tags/c/copyright-has-url-from-dh_make-boilerplate.tag
new file mode 100644
index 0000000..20732bd
--- /dev/null
+++ b/tags/c/copyright-has-url-from-dh_make-boilerplate.tag
@@ -0,0 +1,9 @@
+Tag: copyright-has-url-from-dh_make-boilerplate
+Severity: warning
+Check: debian/copyright
+See-Also: debian-policy 12.5
+Explanation: There is "url://example.com" in your copyright file. This was most
+ likely a remnant from the dh&lowbar;make template.
+ .
+ Make sure you include the real location where you obtained the
+ upstream sources (if any).
diff --git a/tags/c/copyright-not-using-common-license-for-apache2.tag b/tags/c/copyright-not-using-common-license-for-apache2.tag
new file mode 100644
index 0000000..671121e
--- /dev/null
+++ b/tags/c/copyright-not-using-common-license-for-apache2.tag
@@ -0,0 +1,12 @@
+Tag: copyright-not-using-common-license-for-apache2
+Severity: error
+Check: debian/copyright
+Renamed-From: copyright-should-refer-to-common-license-file-for-apache-2
+See-Also: debian-policy 12.5
+Explanation: The strings "Apache License, Version" or "Apache-2" appear in the
+ copyright file for this package, but the copyright file does not
+ reference <code>/usr/share/common-licenses</code> as the location of the
+ Apache-2 on Debian systems.
+ .
+ If the copyright file must mention the Apache-2 for reasons other than
+ stating the license of the package, please add a Lintian override.
diff --git a/tags/c/copyright-not-using-common-license-for-gfdl.tag b/tags/c/copyright-not-using-common-license-for-gfdl.tag
new file mode 100644
index 0000000..6af2d5d
--- /dev/null
+++ b/tags/c/copyright-not-using-common-license-for-gfdl.tag
@@ -0,0 +1,12 @@
+Tag: copyright-not-using-common-license-for-gfdl
+Severity: error
+Check: debian/copyright
+Renamed-From: copyright-should-refer-to-common-license-file-for-gfdl
+See-Also: debian-policy 12.5
+Explanation: The strings "GNU Free Documentation License" or "GFDL" appear in the
+ copyright file for this package, but the copyright file does not
+ reference <code>/usr/share/common-licenses</code> as the location of the GFDL
+ on Debian systems.
+ .
+ If the copyright file must mention the GFDL for reasons other than stating
+ the license of the package, please add a Lintian override.
diff --git a/tags/c/copyright-not-using-common-license-for-gpl.tag b/tags/c/copyright-not-using-common-license-for-gpl.tag
new file mode 100644
index 0000000..1488849
--- /dev/null
+++ b/tags/c/copyright-not-using-common-license-for-gpl.tag
@@ -0,0 +1,12 @@
+Tag: copyright-not-using-common-license-for-gpl
+Severity: error
+Check: debian/copyright
+Renamed-From: copyright-should-refer-to-common-license-file-for-gpl
+See-Also: debian-policy 12.5
+Explanation: The strings "GNU General Public License" or "GPL" appear in the
+ copyright file for this package, but the copyright file does not
+ reference <code>/usr/share/common-licenses</code> as the location of the GPL
+ on Debian systems.
+ .
+ If the copyright file must mention the GPL for reasons other than stating
+ the license of the package, please add a Lintian override.
diff --git a/tags/c/copyright-not-using-common-license-for-lgpl.tag b/tags/c/copyright-not-using-common-license-for-lgpl.tag
new file mode 100644
index 0000000..7ffd345
--- /dev/null
+++ b/tags/c/copyright-not-using-common-license-for-lgpl.tag
@@ -0,0 +1,13 @@
+Tag: copyright-not-using-common-license-for-lgpl
+Severity: error
+Check: debian/copyright
+Renamed-From: copyright-should-refer-to-common-license-file-for-lgpl
+See-Also: debian-policy 12.5
+Explanation: The strings "GNU Lesser General Public License", "GNU Library
+ General Public License", or "LGPL" appear in the copyright file for this
+ package, but the copyright file does not reference
+ <code>/usr/share/common-licenses</code> as the location of the LGPL on Debian
+ systems.
+ .
+ If the copyright file must mention the LGPL for reasons other than stating
+ the license of the package, please add a Lintian override.
diff --git a/tags/c/copyright-refers-to-compressed-license.tag b/tags/c/copyright-refers-to-compressed-license.tag
new file mode 100644
index 0000000..65ce0e3
--- /dev/null
+++ b/tags/c/copyright-refers-to-compressed-license.tag
@@ -0,0 +1,7 @@
+Tag: copyright-refers-to-compressed-license
+Severity: error
+Check: debian/copyright
+Explanation: The /usr/share/doc/*pkg*/copyright file refers to a standard license
+ /usr/share/common-licenses/{GPL,LGPL,Artistic,BSD}.gz as a compressed
+ file. Please update the reference (the licenses are installed
+ uncompressed).
diff --git a/tags/c/copyright-refers-to-deprecated-bsd-license-file.tag b/tags/c/copyright-refers-to-deprecated-bsd-license-file.tag
new file mode 100644
index 0000000..d81099a
--- /dev/null
+++ b/tags/c/copyright-refers-to-deprecated-bsd-license-file.tag
@@ -0,0 +1,13 @@
+Tag: copyright-refers-to-deprecated-bsd-license-file
+Severity: warning
+Check: debian/copyright
+See-Also: debian-policy 12.5
+Explanation: The copyright file refers to
+ <code>/usr/share/common-licenses/BSD</code>. Due to the brevity of this
+ license, the specificity of this copy to code whose copyright is held by
+ the Regents of the University of California, and the frequency of minor
+ wording changes in the license, its text should be included in the
+ copyright file directly rather than referencing this file.
+ .
+ This file may be removed from a future version of base-files if
+ references to it drop sufficiently.
diff --git a/tags/c/copyright-refers-to-incorrect-directory.tag b/tags/c/copyright-refers-to-incorrect-directory.tag
new file mode 100644
index 0000000..63c4cb6
--- /dev/null
+++ b/tags/c/copyright-refers-to-incorrect-directory.tag
@@ -0,0 +1,6 @@
+Tag: copyright-refers-to-incorrect-directory
+Severity: error
+Check: debian/copyright
+See-Also: debian-policy 12.5
+Explanation: In the directory name /usr/share/common-licenses, licenses is spelled
+ with an "s", not as licences with a "c".
diff --git a/tags/c/copyright-refers-to-nonexistent-license-file.tag b/tags/c/copyright-refers-to-nonexistent-license-file.tag
new file mode 100644
index 0000000..0be8691
--- /dev/null
+++ b/tags/c/copyright-refers-to-nonexistent-license-file.tag
@@ -0,0 +1,7 @@
+Tag: copyright-refers-to-nonexistent-license-file
+Severity: warning
+Check: debian/copyright
+Explanation: The copyright file refers to a license in
+ <code>/usr/share/common-licenses</code> that doesn't exist. Usually this is
+ a typo, such as accidentally omitting the <code>-</code> between the license
+ name and the version number.
diff --git a/tags/c/copyright-refers-to-old-directory.tag b/tags/c/copyright-refers-to-old-directory.tag
new file mode 100644
index 0000000..bb62b58
--- /dev/null
+++ b/tags/c/copyright-refers-to-old-directory.tag
@@ -0,0 +1,7 @@
+Tag: copyright-refers-to-old-directory
+Severity: error
+Check: debian/copyright
+Explanation: The common licenses (GPL, BSD, Artistic, etc) have been moved from
+ /usr/doc/copyright to /usr/share/common-licenses.
+ Copyright files should be updated.
+See-Also: debian-policy 12.5
diff --git a/tags/c/copyright-refers-to-symlink-license.tag b/tags/c/copyright-refers-to-symlink-license.tag
new file mode 100644
index 0000000..5f25220
--- /dev/null
+++ b/tags/c/copyright-refers-to-symlink-license.tag
@@ -0,0 +1,21 @@
+Tag: copyright-refers-to-symlink-license
+Severity: pedantic
+Check: debian/copyright
+Explanation: The copyright file refers to the versionless symlink in
+ <code>/usr/share/common-licenses</code> for the full text of the GPL, LGPL,
+ or GFDL license. This symlink is updated to point to the latest version
+ of the license when a new one is released. The package appears to allow
+ relicensing under later versions of its license, so this is legally
+ consistent, but it implies that Debian will relicense the package under
+ later versions of those licenses as they're released. It is normally
+ better to point to the version of the license the package references in
+ its license statement.
+ .
+ For example, if the package says something like "you may redistribute it
+ and/or modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2, or (at your
+ option) any later version", the <code>debian/copyright</code> file should
+ refer to <code>/usr/share/common-licenses/GPL-2</code>, not <code>/GPL</code>.
+ .
+ For packages released under the same terms as Perl, Perl references the
+ GPL version 1, so point to <code>/usr/share/common-licenses/GPL-1</code>.
diff --git a/tags/c/copyright-refers-to-versionless-license-file.tag b/tags/c/copyright-refers-to-versionless-license-file.tag
new file mode 100644
index 0000000..bf06f4e
--- /dev/null
+++ b/tags/c/copyright-refers-to-versionless-license-file.tag
@@ -0,0 +1,17 @@
+Tag: copyright-refers-to-versionless-license-file
+Severity: warning
+Check: debian/copyright
+Explanation: The copyright file refers to the versionless symlink in
+ <code>/usr/share/common-licenses</code> for the full text of the GPL, LGPL,
+ or GFDL license, but the package does not appear to allow distribution
+ under later versions of the license. This symlink will change with each
+ release of a new version of the license and may therefore point to a
+ different version than the package is released under.
+ <code>debian/copyright</code> should instead refers to the specific version
+ of the license that the package references.
+ .
+ For example, if the package says something like "you can redistribute it
+ and/or modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; version 2 dated June, 1991,"
+ the <code>debian/copyright</code> file should refer to
+ <code>/usr/share/common-licenses/GPL-2</code>, not <code>/GPL</code>.
diff --git a/tags/c/copyright-with-old-dh-make-debian-copyright.tag b/tags/c/copyright-with-old-dh-make-debian-copyright.tag
new file mode 100644
index 0000000..5944afc
--- /dev/null
+++ b/tags/c/copyright-with-old-dh-make-debian-copyright.tag
@@ -0,0 +1,14 @@
+Tag: copyright-with-old-dh-make-debian-copyright
+Severity: pedantic
+Check: debian/copyright
+Explanation: The copyright file contains the incomplete Debian packaging
+ copyright boilerplate from older versions of <code>dh&lowbar;make</code>.
+ <code>(C)</code> alone is not considered a valid copyright notice in some
+ countries. The word <code>Copyright</code> or the ยฉ symbol should be used
+ instead or in addition to <code>(C)</code>.
+ .
+ Copyright notices like this are, in any country that's a signatory to the
+ Berne Convention, not required to claim copyright on a work, but their
+ presence may allow claiming additional damages should a copyright case go
+ to court. If you provide a notice, you may as well provide one that's
+ legally recognized in a broader range of countries.
diff --git a/tags/c/copyright-without-copyright-notice.tag b/tags/c/copyright-without-copyright-notice.tag
new file mode 100644
index 0000000..3ceee44
--- /dev/null
+++ b/tags/c/copyright-without-copyright-notice.tag
@@ -0,0 +1,22 @@
+Tag: copyright-without-copyright-notice
+Severity: warning
+Check: debian/copyright
+See-Also: https://ftp-master.debian.org/REJECT-FAQ.html
+Explanation: The copyright file for this package does not appear to contain a
+ copyright notice. You should copy the copyright notice from the upstream
+ source (or add one of your own for a native package). A copyright notice
+ must consist of Copyright, Copr., or the Unicode symbol of C in a circle
+ followed by the years and the copyright holder. A copyright notice is
+ not required for a work to be copyrighted, but Debian requires the
+ copyright file include the authors and years of copyright, and including
+ a valid copyright notice is the best way to do that. Examples:
+ .
+ Copyright YYYY Firstname Lastname &lt;address@example.com&gt;
+ Copr. YYYY-YYYY Firstname Lastname &lt;address@example.com&gt;
+ ยฉ YYYY,YYYY Firstname Lastname &lt;address@example.com&gt;
+ .
+ If the package is in the public domain rather than copyrighted, be sure
+ to mention "public domain" in the copyright file. Please be aware that
+ this is very rare and not the same as a DFSG-free license. True public
+ domain software is generally limited to such special cases as a work
+ product of a United States government agency.
diff --git a/tags/c/country-in-manual.tag b/tags/c/country-in-manual.tag
new file mode 100644
index 0000000..229f958
--- /dev/null
+++ b/tags/c/country-in-manual.tag
@@ -0,0 +1,10 @@
+Tag: country-in-manual
+Severity: warning
+Check: documentation/manual
+Renamed-From: manpage-locale-dir-country-specific
+Explanation: This package installs a manual page in a locale directory that
+ includes the country name. A country name should not be included in the
+ directory name unless it indicates a significant difference in the
+ language. The known cases where country names are appropriate are pt&lowbar;BR
+ and zh&lowbar;&ast;.
+See-Also: debian-policy 12.1
diff --git a/tags/c/csh-considered-harmful.tag b/tags/c/csh-considered-harmful.tag
new file mode 100644
index 0000000..e2ebe7e
--- /dev/null
+++ b/tags/c/csh-considered-harmful.tag
@@ -0,0 +1,7 @@
+Tag: csh-considered-harmful
+Severity: warning
+Check: shell/csh
+Explanation: The Debian policy for scripts explicitly warns against using
+ <code>csh</code> and <code>tcsh</code> as scripting languages.
+See-Also:
+ debian-policy 10.4
diff --git a/tags/c/ctrl-script.tag b/tags/c/ctrl-script.tag
new file mode 100644
index 0000000..d3304ec
--- /dev/null
+++ b/tags/c/ctrl-script.tag
@@ -0,0 +1,7 @@
+Tag: ctrl-script
+Severity: classification
+Check: control-files
+Explanation: This package has one or more maintainer scripts (or other
+ executable control files).
+ .
+ This flags any control file with the executable bit set.
diff --git a/tags/c/custom-compression-in-debian-rules.tag b/tags/c/custom-compression-in-debian-rules.tag
new file mode 100644
index 0000000..135b0f7
--- /dev/null
+++ b/tags/c/custom-compression-in-debian-rules.tag
@@ -0,0 +1,23 @@
+Tag: custom-compression-in-debian-rules
+Severity: warning
+Check: debian/rules
+Renamed-From: debian-rules-should-not-use-custom-compression-settings
+Explanation: This package calls <code>dh&lowbar;builddeb(1)</code> to select a custom
+ compression level or algorithm in <code>debian/rules</code>. Please remove
+ the call and let dpkg-deb(1) select suitable defaults.
+ .
+ Custom compression settings are usually chosen for one of two
+ reasons:
+ .
+ Higher compression levels or more advanced algorithms shrink the
+ sizes of large files, but they can cause problems in the resource
+ constrained environments used in Debian's buildd infrastructure.
+ For example, higher than expected memory consumption may trigger
+ an FTBFS or a failure to install.
+ .
+ Lower compression levels or less advanced algorithms are sometimes
+ needed to support older Debian version. Unfortunately, they also
+ make it harder to change the defaults on an archive-wide basis.
+ .
+ Some legitimate use cases trigger this tag. Please override it.
+See-Also: Bug#829100, Bug#906614, Bug#909696, dpkg-deb(1)
diff --git a/tags/c/custom-compression-in-debian-source-options.tag b/tags/c/custom-compression-in-debian-source-options.tag
new file mode 100644
index 0000000..a253354
--- /dev/null
+++ b/tags/c/custom-compression-in-debian-source-options.tag
@@ -0,0 +1,23 @@
+Tag: custom-compression-in-debian-source-options
+Severity: warning
+Check: debian/source-dir
+Renamed-From: debian-source-options-has-custom-compression-settings
+Explanation: This package selects a custom compression level or algorithm
+ in <code>debian/source/options</code>. Please remove the call and let
+ dpkg-deb(1) select suitable defaults.
+ .
+ Custom compression settings are usually chosen for one of two
+ reasons:
+ .
+ Higher compression levels or more advanced algorithms shrink the
+ sizes of large files, but they can cause problems in the resource
+ constrained environments used in Debian's buildd infrastructure.
+ For example, higher than expected memory consumption may trigger
+ an FTBFS or a failure to install.
+ .
+ Lower compression levels or less advanced algorithms are sometimes
+ needed to support older Debian version. Unfortunately, they also
+ make it harder to change the defaults on an archive-wide basis.
+ .
+ Some legitimate use cases trigger this tag. Please override it.
+See-Also: Bug#829100, Bug#906614, Bug#909696, dpkg-deb(1)
diff --git a/tags/c/custom-library-search-path.tag b/tags/c/custom-library-search-path.tag
new file mode 100644
index 0000000..76b36ad
--- /dev/null
+++ b/tags/c/custom-library-search-path.tag
@@ -0,0 +1,25 @@
+Tag: custom-library-search-path
+Severity: error
+Check: binaries/rpath
+Renamed-From:
+ binary-or-shlib-defines-rpath
+Explanation: The binary or shared library sets RPATH or RUNPATH. This
+ overrides the normal library search path, possibly interfering with
+ local policy and causing problems for multilib, among other issues.
+ .
+ The only time a binary or shared library in a Debian package should
+ set RPATH or RUNPATH is if it is linked to private shared libraries
+ in the same package. In that case, place those private shared
+ libraries in <code>/usr/lib/*package*</code>. Libraries used by
+ binaries in other packages should be placed in <code>/lib</code> or
+ <code>/usr/lib</code> as appropriate, with a proper SONAME, in which case
+ RPATH/RUNPATH is unnecessary.
+ .
+ To fix this problem, look for link lines like:
+ gcc test.o -o test -Wl,--rpath,/usr/local/lib
+ or
+ gcc test.o -o test -R/usr/local/lib
+ and remove the <code>-Wl,--rpath</code> or <code>-R</code> argument. You can also
+ use the chrpath utility to remove the RPATH.
+See-Also:
+ https://wiki.debian.org/RpathIssue
diff --git a/tags/c/cute-field.tag b/tags/c/cute-field.tag
new file mode 100644
index 0000000..fde8489
--- /dev/null
+++ b/tags/c/cute-field.tag
@@ -0,0 +1,8 @@
+Tag: cute-field
+Severity: pedantic
+Check: fields/style
+Explanation: The named field uses a free-style form of capitalization, which
+ is permitted by policy. The alternative offered is probably a more
+ common variant in the archive.
+See-Also:
+ debian-policy 5.1
diff --git a/tags/continuous-integration/salsa/include.tag b/tags/continuous-integration/salsa/include.tag
new file mode 100644
index 0000000..026cbd2
--- /dev/null
+++ b/tags/continuous-integration/salsa/include.tag
@@ -0,0 +1,5 @@
+Tag: include
+Severity: classification
+Check: continuous-integration/salsa
+Name-Spaced: yes
+Explanation: Include directive in a Salsa CI specification.
diff --git a/tags/continuous-integration/salsa/specification.tag b/tags/continuous-integration/salsa/specification.tag
new file mode 100644
index 0000000..bdd793b
--- /dev/null
+++ b/tags/continuous-integration/salsa/specification.tag
@@ -0,0 +1,5 @@
+Tag: specification
+Severity: classification
+Check: continuous-integration/salsa
+Name-Spaced: yes
+Explanation: File name likely holding a Salsa CI specification.
diff --git a/tags/d/data-tarball-compression-format.tag b/tags/d/data-tarball-compression-format.tag
new file mode 100644
index 0000000..bd8c238
--- /dev/null
+++ b/tags/d/data-tarball-compression-format.tag
@@ -0,0 +1,4 @@
+Tag: data-tarball-compression-format
+Severity: classification
+Check: deb-format
+Explanation: This is the compressor format used for the <code>data.tar</code> tarball.
diff --git a/tags/d/dbg-package-missing-depends.tag b/tags/d/dbg-package-missing-depends.tag
new file mode 100644
index 0000000..bd1a00e
--- /dev/null
+++ b/tags/d/dbg-package-missing-depends.tag
@@ -0,0 +1,16 @@
+Tag: dbg-package-missing-depends
+Severity: warning
+Check: fields/package-relations
+Explanation: The given binary package has a name of the form of "X-dbg", indicating it
+ contains detached debugging symbols for the package X. If so, it should
+ depend on the corresponding package, generally with (= ${binary:Version})
+ since the debugging symbols are only useful with the binaries created by
+ the same build.
+ .
+ Note that the package being depended upon cannot be "Architecture:
+ all".
+ .
+ If this package provides debugging symbols for multiple other
+ packages, it should normally depend on all of those packages as
+ alternatives. In other words, <code>pkga (= ${binary:Version}) | pkgb (=
+ ${binary:Version})</code> and so forth.
diff --git a/tags/d/dbus-policy-at-console.tag b/tags/d/dbus-policy-at-console.tag
new file mode 100644
index 0000000..74f29d4
--- /dev/null
+++ b/tags/d/dbus-policy-at-console.tag
@@ -0,0 +1,28 @@
+Tag: dbus-policy-at-console
+Severity: warning
+Check: desktop/dbus
+Explanation: The package contains D-Bus policy configuration that uses the
+ deprecated <code>at&lowbar;console</code> condition to impose a different policy
+ for users who are "logged in at the console" according to
+ systemd-logind, ConsoleKit or similar APIs, such as:
+ .
+ &lt;policy context="default"&gt;
+ &lt;deny send&lowbar;destination="com.example.PowerManagementDaemon"/&gt;
+ &lt;/policy&gt;
+ &lt;policy at&lowbar;console="true"&gt;
+ &lt;allow send&lowbar;destination="com.example.PowerManagementDaemon"/&gt;
+ &lt;/policy&gt;
+ .
+ The maintainers of D-Bus recommend that services should allow or deny
+ method calls according to broad categories that are not typically altered
+ by the system administrator (usually either "all users", or only root
+ and/or a specified system user).
+ .
+ If finer-grained authorization
+ is required, the service should accept the method call message, then call
+ out to PolicyKit to decide whether to honor the request. PolicyKit can
+ use system-administrator-configurable policies to make that decision,
+ including distinguishing between users who are "at the console" and
+ those who are not.
+See-Also:
+ https://bugs.freedesktop.org/show_bug.cgi?id=39611
diff --git a/tags/d/dbus-policy-excessively-broad.tag b/tags/d/dbus-policy-excessively-broad.tag
new file mode 100644
index 0000000..264a14f
--- /dev/null
+++ b/tags/d/dbus-policy-excessively-broad.tag
@@ -0,0 +1,30 @@
+Tag: dbus-policy-excessively-broad
+Severity: error
+Check: desktop/dbus
+Explanation: The package contains D-Bus policy configuration that
+ matches broad classes of messages. This will cause strange side-effects,
+ is almost certainly unintended, and is a probable security flaw.
+ .
+ For instance,
+ .
+ &lt;policy user="daemon"&gt;
+ &lt;allow send&lowbar;type="method&lowbar;call"/&gt;
+ &lt;allow send&lowbar;destination="com.example.Bees"/&gt;
+ &lt;/policy&gt;
+ .
+ in any system bus policy file would allow the <code>daemon</code> user to send
+ any method call to any service, including method calls which are meant to
+ be restricted to root-only for security, such as
+ <code>org.freedesktop.systemd1.Manager.StartTransientUnit</code>. (In addition,
+ it allows that user to send any message to the <code>com.example.Bees</code>
+ service.)
+ .
+ The intended policy for that particular example was probably more like
+ .
+ &lt;policy user="daemon"&gt;
+ &lt;allow send&lowbar;type="method&lowbar;call" send&lowbar;destination="com.example.Bees"/&gt;
+ &lt;/policy&gt;
+ .
+ which correctly allows method calls to that particular service only.
+See-Also:
+ http://www.openwall.com/lists/oss-security/2015/01/27/25
diff --git a/tags/d/dbus-policy-in-etc.tag b/tags/d/dbus-policy-in-etc.tag
new file mode 100644
index 0000000..b126f87
--- /dev/null
+++ b/tags/d/dbus-policy-in-etc.tag
@@ -0,0 +1,16 @@
+Tag: dbus-policy-in-etc
+Severity: warning
+Check: desktop/dbus
+Explanation: The package contains D-Bus policy configuration and installs it
+ under <code>/etc/dbus-1/system.d</code> or
+ <code>/etc/dbus-1/session.d</code>. These directories are reserved for
+ local configuration, which overrides the default policies in
+ <code>/usr</code>.
+ .
+ The correct directory for system bus policy installed by packages is
+ <code>/usr/share/dbus-1/system.d</code>.
+ .
+ The correct directory for session bus policy installed by packages
+ (not usually needed) is <code>/usr/share/dbus-1/session.d</code>.
+See-Also:
+ dbus-daemon(1)
diff --git a/tags/d/dbus-policy-without-send-destination.tag b/tags/d/dbus-policy-without-send-destination.tag
new file mode 100644
index 0000000..65b2345
--- /dev/null
+++ b/tags/d/dbus-policy-without-send-destination.tag
@@ -0,0 +1,37 @@
+Tag: dbus-policy-without-send-destination
+Severity: warning
+Check: desktop/dbus
+Explanation: The package contains D-Bus policy configuration that uses
+ one of the <code>send&lowbar;&ast;</code> conditions, but does not specify a
+ <code>send&lowbar;destination</code>, and is not specific to root.
+ .
+ Rules of the form
+ .
+ &lt;allow send&lowbar;interface="com.example.MyInterface"/&gt;
+ .
+ allow messages with the given interface to be sent to *any*
+ service, not just the one installing the rule, which is rarely
+ what was intended.
+ .
+ Similarly, on the system bus, rules of the form
+ .
+ &lt;deny send&lowbar;interface="com.example.MyInterface"/&gt;
+ .
+ are redundant with the system bus's default-deny policy, and have
+ unintended effects on other services.
+ .
+ This check ignores rules of the form
+ .
+ &lt;policy user="root"&gt;
+ &lt;allow ... /&gt;
+ &lt;/policy&gt;
+ .
+ which are commonly used for the "agent" pattern seen in services like
+ BlueZ and NetworkManager: a root-privileged daemon calls out to
+ one or more per-user user interface agent processes with no specific
+ name, so <code>send&lowbar;destination</code> is not easily applicable.
+ However, such rules should still be made as specific as possible to
+ avoid undesired side-effects.
+See-Also:
+ https://bugs.freedesktop.org/show_bug.cgi?id=18961,
+ http://lists.freedesktop.org/archives/dbus/2008-February/009401.html
diff --git a/tags/d/dbus-session-service-wrong-name.tag b/tags/d/dbus-session-service-wrong-name.tag
new file mode 100644
index 0000000..d8b7d5c
--- /dev/null
+++ b/tags/d/dbus-session-service-wrong-name.tag
@@ -0,0 +1,14 @@
+Tag: dbus-session-service-wrong-name
+Severity: info
+Check: desktop/dbus
+Explanation: The package contains a D-Bus session service whose filename
+ does not match the <code>Name</code> field found in the file.
+ This makes it possible that two non-conflicting packages could
+ provide the same service name with the same search-path priority
+ (i.e. in the same directory). dbus-daemon will arbitrarily choose
+ one of them, which is unlikely to be the desired result.
+ .
+ Best-practice is that if you implement a session service whose well-known
+ name is <code>com.example.MyService1</code>, and it should be
+ service-activatable, you should achieve that by packaging
+ <code>/usr/share/dbus-1/services/com.example.MyService1.service</code>.
diff --git a/tags/d/dbus-system-service-wrong-name.tag b/tags/d/dbus-system-service-wrong-name.tag
new file mode 100644
index 0000000..eabc9dd
--- /dev/null
+++ b/tags/d/dbus-system-service-wrong-name.tag
@@ -0,0 +1,13 @@
+Tag: dbus-system-service-wrong-name
+Severity: error
+Check: desktop/dbus
+Explanation: The package contains a D-Bus system service whose filename
+ does not match the <code>Name</code> field found in the file.
+ This will not work, because dbus-daemon-launch-helper specifically
+ looks for that filename, in order to keep system-level activation
+ secure and predictable.
+ .
+ If you implement a session service whose well-known name is
+ <code>com.example.MyService1</code>, and it should be service-activatable,
+ you must provide
+ <code>/usr/share/dbus-1/system-services/com.example.MyService1.service</code>.
diff --git a/tags/d/debconf-config-not-executable.tag b/tags/d/debconf-config-not-executable.tag
new file mode 100644
index 0000000..1ec1e57
--- /dev/null
+++ b/tags/d/debconf-config-not-executable.tag
@@ -0,0 +1,5 @@
+Tag: debconf-config-not-executable
+Severity: error
+Check: debian/debconf
+Explanation: The debconf "config" script in the package control area must be
+ executable.
diff --git a/tags/d/debconf-is-not-a-registry.tag b/tags/d/debconf-is-not-a-registry.tag
new file mode 100644
index 0000000..6fdbf4b
--- /dev/null
+++ b/tags/d/debconf-is-not-a-registry.tag
@@ -0,0 +1,17 @@
+Tag: debconf-is-not-a-registry
+Severity: warning
+Check: debian/debconf
+Explanation: In the Unix tradition, Debian packages should have human-readable and
+ human-editable configuration files. This package uses debconf commands
+ outside its maintainer scripts, which often indicates that it is taking
+ configuration information directly from the debconf database. Typically,
+ packages should use debconf-supplied information to generate
+ configuration files, and -- to avoid losing configuration information on
+ upgrades -- should parse these configuration files in the <code>config</code>
+ script if it is necessary to ask the user for changes.
+ .
+ Some standalone programs may legitimately use debconf to prompt the user
+ for questions. If you maintain a package containing such a program,
+ please install an override. Other exceptions to this check include
+ configuration scripts called from the package's post-installation script.
+See-Also: developer-reference 6.5.1, debconf-devel(7)
diff --git a/tags/d/debconf-translation-using-general-list.tag b/tags/d/debconf-translation-using-general-list.tag
new file mode 100644
index 0000000..e3a5322
--- /dev/null
+++ b/tags/d/debconf-translation-using-general-list.tag
@@ -0,0 +1,11 @@
+Tag: debconf-translation-using-general-list
+Severity: warning
+Check: debian/po-debconf
+Explanation: This debconf translation is using the general debconf-i18n list as
+ the address in the Language-Team field.
+ .
+ The intended purpose of the Language-Team field is to be an additional
+ contact for new translation requests in addition to the previous
+ translator (as recorded in Last-Translator). The field should therefore
+ point to a mailing list dedicated to the language of this PO file, not
+ the general list for translation discussions.
diff --git a/tags/d/debhelper-autoscript-in-maintainer-scripts.tag b/tags/d/debhelper-autoscript-in-maintainer-scripts.tag
new file mode 100644
index 0000000..c5c6f11
--- /dev/null
+++ b/tags/d/debhelper-autoscript-in-maintainer-scripts.tag
@@ -0,0 +1,5 @@
+Tag: debhelper-autoscript-in-maintainer-scripts
+Severity: classification
+Check: maintainer-scripts/generated
+Explanation: The maintainer scripts of the package contain one or more
+ auto-generated shell snippets inserted by the listed debhelper tool.
diff --git a/tags/d/debhelper-but-no-misc-depends.tag b/tags/d/debhelper-but-no-misc-depends.tag
new file mode 100644
index 0000000..92df45a
--- /dev/null
+++ b/tags/d/debhelper-but-no-misc-depends.tag
@@ -0,0 +1,10 @@
+Tag: debhelper-but-no-misc-depends
+Severity: warning
+Check: debhelper
+See-Also: debhelper(7)
+Explanation: The source package uses debhelper, but it does not include
+ ${misc:Depends} in the given binary package's debian/control entry. Any
+ debhelper command may add dependencies to ${misc:Depends} that are
+ required for the work that it does, so recommended best practice is to
+ always add ${misc:Depends} to the dependencies of each binary package if
+ debhelper is in use.
diff --git a/tags/d/debhelper-compat-file-contains-multiple-levels.tag b/tags/d/debhelper-compat-file-contains-multiple-levels.tag
new file mode 100644
index 0000000..bfcda33
--- /dev/null
+++ b/tags/d/debhelper-compat-file-contains-multiple-levels.tag
@@ -0,0 +1,11 @@
+Tag: debhelper-compat-file-contains-multiple-levels
+Severity: error
+Check: debhelper
+See-Also: debhelper(7)
+Explanation: The <code>debian/compat</code> file appears to contain multiple
+ compatibility levels.
+ .
+ This was likely due to the use of &gt;&gt; instead of &gt; when
+ updating the level.
+ .
+ Please update the file to specify a single level.
diff --git a/tags/d/debhelper-compat-file-is-empty.tag b/tags/d/debhelper-compat-file-is-empty.tag
new file mode 100644
index 0000000..e88c99d
--- /dev/null
+++ b/tags/d/debhelper-compat-file-is-empty.tag
@@ -0,0 +1,7 @@
+Tag: debhelper-compat-file-is-empty
+Severity: error
+Check: debhelper
+See-Also: debhelper(7)
+Explanation: The source package has an empty debian/compat file. This is an error,
+ the compat level of debhelper should be in there. Note that only the first
+ line of the file is relevant.
diff --git a/tags/d/debhelper-compat-file-is-missing.tag b/tags/d/debhelper-compat-file-is-missing.tag
new file mode 100644
index 0000000..f29c4e9
--- /dev/null
+++ b/tags/d/debhelper-compat-file-is-missing.tag
@@ -0,0 +1,14 @@
+Tag: debhelper-compat-file-is-missing
+Severity: warning
+Check: debhelper
+Explanation: The package build-depends on debhelper but does not ship a compat
+ file. Packages not using an experimental or beta compatibility level
+ may alternatively Build-Depend on the debhelper-compat virtual package,
+ For example:
+ .
+ Build-Depends: debhelper-compat (= 13)
+ .
+ Please refer to the debhelper documentation on how to create the
+ compat file and the differences between each compat level.
+See-Also: https://lists.debian.org/debian-devel-changes/2012/01/msg01335.html,
+ debhelper(7)
diff --git a/tags/d/debhelper-compat-level.tag b/tags/d/debhelper-compat-level.tag
new file mode 100644
index 0000000..b88b4a7
--- /dev/null
+++ b/tags/d/debhelper-compat-level.tag
@@ -0,0 +1,4 @@
+Tag: debhelper-compat-level
+Severity: classification
+Check: debhelper
+Explanation: This is the debhelper compat level used specified by this package.
diff --git a/tags/d/debhelper-compat-not-a-number.tag b/tags/d/debhelper-compat-not-a-number.tag
new file mode 100644
index 0000000..c9cc85c
--- /dev/null
+++ b/tags/d/debhelper-compat-not-a-number.tag
@@ -0,0 +1,6 @@
+Tag: debhelper-compat-not-a-number
+Severity: error
+Check: debhelper
+See-Also: debhelper(7)
+Explanation: The debhelper compatibility level specified in
+ <code>debian/compat</code> is not a number.
diff --git a/tags/d/debhelper-compat-virtual-relation.tag b/tags/d/debhelper-compat-virtual-relation.tag
new file mode 100644
index 0000000..3e22a7b
--- /dev/null
+++ b/tags/d/debhelper-compat-virtual-relation.tag
@@ -0,0 +1,5 @@
+Tag: debhelper-compat-virtual-relation
+Severity: classification
+Check: debhelper
+Explanation: This package is using the <code>debhelper-compat</code> virtual
+ package as a build-dependency.
diff --git a/tags/d/debhelper-tools-from-autotools-dev-are-deprecated.tag b/tags/d/debhelper-tools-from-autotools-dev-are-deprecated.tag
new file mode 100644
index 0000000..251dee9
--- /dev/null
+++ b/tags/d/debhelper-tools-from-autotools-dev-are-deprecated.tag
@@ -0,0 +1,19 @@
+Tag: debhelper-tools-from-autotools-dev-are-deprecated
+Severity: warning
+Check: debhelper
+Explanation: The debhelper tools from autotools-dev has been replaced by the tool
+ <code>dh&lowbar;update&lowbar;autotools&lowbar;config</code>, which was available in
+ debhelper (&gt;= 9.20160114)
+ .
+ The <code>dh&lowbar;update&lowbar;autotools&lowbar;config</code> is run
+ by default via the <code>dh</code>
+ command sequencer. If you are using <code>dh</code>, you can probably just remove
+ the uses of the tooling from autotools-dev without doing any further changes.
+ .
+ If you use the "classic" debhelper style, then please replace all
+ calls to <code>dh&lowbar;autotools-dev&lowbar;updateconfig</code> with
+ <code>dh&lowbar;update&lowbar;autotools&lowbar;config</code>. The calls to
+ <code>dh&lowbar;autotools-dev&lowbar;restoreconfig</code> are replaced by
+ <code>dh&lowbar;clean</code>, so they can most likely just be removed without
+ any further changes.
+See-Also: Bug#878528
diff --git a/tags/d/debian-adds-arch-control-dir.tag b/tags/d/debian-adds-arch-control-dir.tag
new file mode 100644
index 0000000..74f7324
--- /dev/null
+++ b/tags/d/debian-adds-arch-control-dir.tag
@@ -0,0 +1,14 @@
+Tag: debian-adds-arch-control-dir
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-arch-control-dir
+Explanation: The Debian diff or native package contains files in an {arch} or
+ .arch-ids directory or a directory starting with <code>,,</code> (used by baz
+ for debugging traces). These are usually artifacts of the revision
+ control system used by the Debian maintainer and not useful in a diff or
+ native package. <code>dpkg-source</code> will automatically exclude these if
+ it is passed <code>-I</code> or <code>-i</code> for native and non-native
+ packages respectively.
+See-Also:
+ dpkg-source(1)
diff --git a/tags/d/debian-adds-arch-inventory-file.tag b/tags/d/debian-adds-arch-inventory-file.tag
new file mode 100644
index 0000000..328f76f
--- /dev/null
+++ b/tags/d/debian-adds-arch-inventory-file.tag
@@ -0,0 +1,8 @@
+Tag: debian-adds-arch-inventory-file
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-arch-inventory-file
+Explanation: The Debian diff or native package contains an
+ <code>.arch-inventory</code> file. This is Arch metadata that should
+ normally not be distributed.
diff --git a/tags/d/debian-adds-bts-control-dir.tag b/tags/d/debian-adds-bts-control-dir.tag
new file mode 100644
index 0000000..5ee0c1b
--- /dev/null
+++ b/tags/d/debian-adds-bts-control-dir.tag
@@ -0,0 +1,12 @@
+Tag: debian-adds-bts-control-dir
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-bts-control-dir
+Explanation: The Debian diff or native package contains files in a directory
+ used by a bug tracking system, which are not useful in a diff or native
+ package. <code>dpkg-source</code> will automatically exclude these if it
+ is passed <code>-I</code> or <code>-i</code> for native and non-native packages
+ respectively.
+See-Also:
+ dpkg-source(1)
diff --git a/tags/d/debian-adds-bzr-control-dir.tag b/tags/d/debian-adds-bzr-control-dir.tag
new file mode 100644
index 0000000..cecda2f
--- /dev/null
+++ b/tags/d/debian-adds-bzr-control-dir.tag
@@ -0,0 +1,12 @@
+Tag: debian-adds-bzr-control-dir
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-bzr-control-dir
+Explanation: The Debian diff or native package contains files in a .bzr
+ directory. These are usually artifacts of the revision control system
+ used by the Debian maintainer and not useful in a diff or native package.
+ <code>dpkg-source</code> will automatically exclude these if it is passed
+ <code>-I</code> or <code>-i</code> for native and non-native packages respectively.
+See-Also:
+ dpkg-source(1)
diff --git a/tags/d/debian-adds-cvs-conflict-copy.tag b/tags/d/debian-adds-cvs-conflict-copy.tag
new file mode 100644
index 0000000..c2d5e76
--- /dev/null
+++ b/tags/d/debian-adds-cvs-conflict-copy.tag
@@ -0,0 +1,10 @@
+Tag: debian-adds-cvs-conflict-copy
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-cvs-conflict-copy
+Explanation: The Debian diff or native package contains a CVS conflict copy.
+ These have file names like <code>.#file.version</code> and are generated by
+ CVS when a conflict was detected when merging local changes with updates
+ from a source repository. They're useful only while resolving the
+ conflict and should not be included in the package.
diff --git a/tags/d/debian-adds-cvs-control-dir.tag b/tags/d/debian-adds-cvs-control-dir.tag
new file mode 100644
index 0000000..29311eb
--- /dev/null
+++ b/tags/d/debian-adds-cvs-control-dir.tag
@@ -0,0 +1,11 @@
+Tag: debian-adds-cvs-control-dir
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-cvs-control-dir
+Explanation: The Debian diff or native package contains files in a CVS directory.
+ These are usually artifacts of the revision control system used by the
+ Debian maintainer and not useful in a diff or native package.
+ <code>dpkg-source</code> will automatically exclude these if it is passed
+ <code>-I</code> or <code>-i</code> for native and non-native packages respectively.
+See-Also: dpkg-source(1)
diff --git a/tags/d/debian-adds-editor-backup-file.tag b/tags/d/debian-adds-editor-backup-file.tag
new file mode 100644
index 0000000..7cefaf5
--- /dev/null
+++ b/tags/d/debian-adds-editor-backup-file.tag
@@ -0,0 +1,11 @@
+Tag: debian-adds-editor-backup-file
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-editor-backup-file
+Explanation: The Debian diff or native package contains a file ending in
+ <code>~</code> or of the form <code>.xxx.swp</code>, which is normally either an
+ Emacs or vim backup file or a backup file created by programs such as
+ <code>autoheader</code> or <code>debconf-updatepo</code>. This usually causes no
+ harm, but it's messy and bloats the size of the Debian diff to no useful
+ purpose.
diff --git a/tags/d/debian-adds-git-control-dir.tag b/tags/d/debian-adds-git-control-dir.tag
new file mode 100644
index 0000000..2469e4a
--- /dev/null
+++ b/tags/d/debian-adds-git-control-dir.tag
@@ -0,0 +1,12 @@
+Tag: debian-adds-git-control-dir
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-git-control-dir
+Explanation: The Debian diff or native package contains files in a .git
+ directory. These are usually artifacts of the revision control system
+ used by the Debian maintainer and not useful in a diff or native package.
+ <code>dpkg-source</code> will automatically exclude these if it is passed
+ <code>-I</code> or <code>-i</code> for native and non-native packages respectively.
+See-Also:
+ dpkg-source(1)
diff --git a/tags/d/debian-adds-hg-control-dir.tag b/tags/d/debian-adds-hg-control-dir.tag
new file mode 100644
index 0000000..8329d6a
--- /dev/null
+++ b/tags/d/debian-adds-hg-control-dir.tag
@@ -0,0 +1,12 @@
+Tag: debian-adds-hg-control-dir
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-hg-control-dir
+Explanation: The Debian diff or native package contains files in a .hg
+ directory. These are usually artifacts of the revision control system
+ used by the Debian maintainer and not useful in a diff or native package.
+ <code>dpkg-source</code> will automatically exclude these if it is passed
+ <code>-I</code> or <code>-i</code> for native and non-native packages respectively.
+See-Also:
+ dpkg-source(1)
diff --git a/tags/d/debian-adds-hg-tags-file.tag b/tags/d/debian-adds-hg-tags-file.tag
new file mode 100644
index 0000000..84eac9c
--- /dev/null
+++ b/tags/d/debian-adds-hg-tags-file.tag
@@ -0,0 +1,9 @@
+Tag: debian-adds-hg-tags-file
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-hg-tags-file
+Explanation: The Debian diff or native package contains an <code>.hgtags</code>
+ file. This file is Mercurial metadata that should normally not be
+ distributed. It stores hashes of tagged commits in a Mercurial
+ repository and isn't therefore useful without the repository.
diff --git a/tags/d/debian-adds-patch-failure-file.tag b/tags/d/debian-adds-patch-failure-file.tag
new file mode 100644
index 0000000..134c6ff
--- /dev/null
+++ b/tags/d/debian-adds-patch-failure-file.tag
@@ -0,0 +1,10 @@
+Tag: debian-adds-patch-failure-file
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-patch-failure-file
+Explanation: The Debian diff or native package contains a file that looks like
+ the files left behind by the <code>patch</code> utility when it cannot
+ completely apply a diff. This may be left over from a patch applied by
+ the maintainer. Normally such files should not be included in the
+ package.
diff --git a/tags/d/debian-adds-quilt-control-dir.tag b/tags/d/debian-adds-quilt-control-dir.tag
new file mode 100644
index 0000000..3134c4f
--- /dev/null
+++ b/tags/d/debian-adds-quilt-control-dir.tag
@@ -0,0 +1,12 @@
+Tag: debian-adds-quilt-control-dir
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-quilt-control-dir
+Explanation: The Debian diff or native package contains files in a directory
+ used by quilt, which are not useful in a diff or native package.
+ <code>dpkg-source</code> will automatically exclude these if it is passed
+ <code>-I</code> or <code>-i</code> for native and non-native packages
+ respectively.
+See-Also:
+ dpkg-source(1)
diff --git a/tags/d/debian-adds-svk-commit-file.tag b/tags/d/debian-adds-svk-commit-file.tag
new file mode 100644
index 0000000..59175ed
--- /dev/null
+++ b/tags/d/debian-adds-svk-commit-file.tag
@@ -0,0 +1,8 @@
+Tag: debian-adds-svk-commit-file
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-svk-commit-file
+Explanation: The Debian diff or native package contains an
+ <code>svk-commitNNN.tmp</code>, almost certainly a left-over from a failed
+ svk commit by the Debian package maintainer.
diff --git a/tags/d/debian-adds-svn-commit-file.tag b/tags/d/debian-adds-svn-commit-file.tag
new file mode 100644
index 0000000..56db3ef
--- /dev/null
+++ b/tags/d/debian-adds-svn-commit-file.tag
@@ -0,0 +1,8 @@
+Tag: debian-adds-svn-commit-file
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-svn-commit-file
+Explanation: The Debian diff or native package contains an
+ <code>svn-commit(.NNN).tmp</code>, almost certainly a left-over from a failed
+ Subversion commit by the Debian package maintainer.
diff --git a/tags/d/debian-adds-svn-conflict-file.tag b/tags/d/debian-adds-svn-conflict-file.tag
new file mode 100644
index 0000000..fc170c2
--- /dev/null
+++ b/tags/d/debian-adds-svn-conflict-file.tag
@@ -0,0 +1,10 @@
+Tag: debian-adds-svn-conflict-file
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-svn-conflict-file
+Explanation: The Debian diff or native package contains a file that looks like a
+ Subversion conflict file. These are generated by Subversion when a
+ conflict was detected while merging local changes with updates from a
+ source repository. Use <code>svn resolved</code> to remove them and clear
+ the Subversion conflict state after you have resolved the conflict.
diff --git a/tags/d/debian-adds-svn-control-dir.tag b/tags/d/debian-adds-svn-control-dir.tag
new file mode 100644
index 0000000..5c9c73f
--- /dev/null
+++ b/tags/d/debian-adds-svn-control-dir.tag
@@ -0,0 +1,11 @@
+Tag: debian-adds-svn-control-dir
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ diff-contains-svn-control-dir
+Explanation: The Debian diff or native package contains files in an .svn
+ directory. These are usually artifacts of the revision control system
+ used by the Debian maintainer and not useful in a diff or native package.
+ <code>dpkg-source</code> will automatically exclude these if it is passed
+ <code>-I</code> or <code>-i</code> for native and non-native packages respectively.
+See-Also: dpkg-source(1)
diff --git a/tags/d/debian-build-system.tag b/tags/d/debian-build-system.tag
new file mode 100644
index 0000000..70282ea
--- /dev/null
+++ b/tags/d/debian-build-system.tag
@@ -0,0 +1,5 @@
+Tag: debian-build-system
+Severity: classification
+Check: debhelper
+Explanation: This is the build system that Lintian believes the package is
+ using.
diff --git a/tags/d/debian-changelog-file-contains-obsolete-user-emacs-settings.tag b/tags/d/debian-changelog-file-contains-obsolete-user-emacs-settings.tag
new file mode 100644
index 0000000..4b2030e
--- /dev/null
+++ b/tags/d/debian-changelog-file-contains-obsolete-user-emacs-settings.tag
@@ -0,0 +1,8 @@
+Tag: debian-changelog-file-contains-obsolete-user-emacs-settings
+Severity: warning
+Check: debian/changelog
+Explanation: The add-log-mailing-address variable is no longer honored in
+ debian-changelog-mode, and should not appear in packages' changelog
+ files. Instead, put something like this in your ~/.emacs:
+ .
+ (setq debian-changelog-mailing-address "userid@debian.org")
diff --git a/tags/d/debian-changelog-file-is-a-symlink.tag b/tags/d/debian-changelog-file-is-a-symlink.tag
new file mode 100644
index 0000000..a9ec71b
--- /dev/null
+++ b/tags/d/debian-changelog-file-is-a-symlink.tag
@@ -0,0 +1,13 @@
+Tag: debian-changelog-file-is-a-symlink
+Severity: warning
+Check: debian/changelog
+Explanation: The Debian changelog file is a symlink to a file in a different
+ directory or not found in this package. Please don't do this. It makes
+ package checking and manipulation unnecessarily difficult. Because it was
+ a symlink, the Debian changelog file was not checked for other
+ problems. (Symlinks to another file in /usr/share/doc/*pkg* or a
+ subdirectory thereof are fine and should not trigger this warning.)
+ .
+ To refer to the changelog, copyright, and other documentation files of
+ another package that this one depends on, please symlink the entire
+ /usr/share/doc/*pkg* directory rather than individual files.
diff --git a/tags/d/debian-changelog-file-missing-or-wrong-name.tag b/tags/d/debian-changelog-file-missing-or-wrong-name.tag
new file mode 100644
index 0000000..4584e0a
--- /dev/null
+++ b/tags/d/debian-changelog-file-missing-or-wrong-name.tag
@@ -0,0 +1,11 @@
+Tag: debian-changelog-file-missing-or-wrong-name
+Severity: error
+Check: debian/changelog
+Explanation: Each Debian package (which provides a /usr/share/doc/*pkg*
+ directory) must install a Debian changelog file in
+ /usr/share/doc/*pkg*/changelog.Debian.gz
+ .
+ A common error is to name the Debian changelog like an upstream changelog
+ (/usr/share/doc/*pkg*/changelog.gz); therefore, Lintian will apply
+ further checks to such a file if it exists even after issuing this error.
+See-Also: debian-policy 12.7
diff --git a/tags/d/debian-changelog-has-wrong-day-of-week.tag b/tags/d/debian-changelog-has-wrong-day-of-week.tag
new file mode 100644
index 0000000..8df5e05
--- /dev/null
+++ b/tags/d/debian-changelog-has-wrong-day-of-week.tag
@@ -0,0 +1,13 @@
+Tag: debian-changelog-has-wrong-day-of-week
+Severity: warning
+Check: debian/changelog
+Explanation: The date in the changelog entry is not consistent with the actual
+ day of that week. Either the date is wrong or the day of week is wrong.
+ .
+ To avoid problems like this, consider using a tool like dch(1) or
+ date(1) to generate the date. Example:
+ .
+ $ date -R -ud '2013-11-05 23:59:59'
+ Tue, 05 Nov 2013 23:59:59 +0000
+Renamed-From:
+ debian-changelog-has-wrong-weekday
diff --git a/tags/d/debian-changelog-line-too-long.tag b/tags/d/debian-changelog-line-too-long.tag
new file mode 100644
index 0000000..04670c3
--- /dev/null
+++ b/tags/d/debian-changelog-line-too-long.tag
@@ -0,0 +1,7 @@
+Tag: debian-changelog-line-too-long
+Severity: warning
+Check: debian/changelog
+Explanation: The given line of the latest changelog entry is over 80 columns.
+ Such changelog entries may look poor in terminal windows and mail
+ messages and be annoying to read. Please wrap changelog entries at 80
+ columns or less where possible.
diff --git a/tags/d/debian-changelog-line-too-short.tag b/tags/d/debian-changelog-line-too-short.tag
new file mode 100644
index 0000000..79f191a
--- /dev/null
+++ b/tags/d/debian-changelog-line-too-short.tag
@@ -0,0 +1,21 @@
+Tag: debian-changelog-line-too-short
+Severity: pedantic
+Check: debian/changelog
+Explanation: The given line of the latest changelog entry appears to contain a
+ very terse entry.
+ .
+ This can make it hard for others to understand the changelog entry.
+ Please keep in mind that:
+ .
+ - It is not uncommon that people read changelog entries that are more
+ than a decade old to understand why a change was made or why a
+ package works in a specific way.
+ - Many users will read the changelog via
+ <code>apt-listchanges(1)</code>
+ - The information in <code>debian/changelog</code> is permanent.
+ .
+ Examples for entries that are too short include "dh 11" or simply
+ "Rยณ" - these could be expanded to, for example:
+ .
+ - Switch to debhelper compat 11.
+ - Set Rules-Requires-Root: no.
diff --git a/tags/d/debian-control-file-is-a-symlink.tag b/tags/d/debian-control-file-is-a-symlink.tag
new file mode 100644
index 0000000..79304c4
--- /dev/null
+++ b/tags/d/debian-control-file-is-a-symlink.tag
@@ -0,0 +1,11 @@
+Tag: debian-control-file-is-a-symlink
+Severity: warning
+Check: debian/control/link
+Explanation: The <code>debian/control</code> file is a symbolic link.
+ .
+ It is not recommended to use anything other than plain files for the required
+ source files. Using links makes it harder to check and manipulate sources
+ automatically.
+ .
+ If the file must be available under multiple names, please make
+ <code>debian/control</code> the real file and let the other names point to it.
diff --git a/tags/d/debian-control-has-dbgsym-package.tag b/tags/d/debian-control-has-dbgsym-package.tag
new file mode 100644
index 0000000..5ecb70e
--- /dev/null
+++ b/tags/d/debian-control-has-dbgsym-package.tag
@@ -0,0 +1,10 @@
+Tag: debian-control-has-dbgsym-package
+Severity: error
+Check: debug/automatic
+Explanation: The <code>debian/control</code> file declares a <code>-dbgsym</code>
+ package. Those are now generated automatically.
+ .
+ Please remove the declaration and rely on the automatic process.
+See-Also:
+ Bug#858117,
+ https://wiki.debian.org/DebugPackage
diff --git a/tags/d/debian-control-has-empty-field.tag b/tags/d/debian-control-has-empty-field.tag
new file mode 100644
index 0000000..a1f9634
--- /dev/null
+++ b/tags/d/debian-control-has-empty-field.tag
@@ -0,0 +1,8 @@
+Tag: debian-control-has-empty-field
+Severity: info
+Check: debian/control/field/empty
+Explanation: The field on this line of <code>debian/control</code> is empty.
+ It is permitted in the syntax of Debian control files, but the field is
+ ignored.
+ .
+ Please consider removing the empty field.
diff --git a/tags/d/debian-control-has-obsolete-dbg-package.tag b/tags/d/debian-control-has-obsolete-dbg-package.tag
new file mode 100644
index 0000000..0949c2a
--- /dev/null
+++ b/tags/d/debian-control-has-obsolete-dbg-package.tag
@@ -0,0 +1,14 @@
+Tag: debian-control-has-obsolete-dbg-package
+Severity: info
+Check: debug/obsolete
+Explanation: The <code>debian/control</code> file declares a
+ <code>-dbg</code> package.
+ .
+ Debug packages are now generated automatically. It reduces the space requirements
+ for archive mirrors for regular operations.
+ .
+ Please drop the <code>-dbg</code> package the <code>debian/control</code> file.
+ Do not change it to a dummy package that depends on the <code>-dbgsym</code>
+ package.
+See-Also:
+ https://wiki.debian.org/AutomaticDebugPackages
diff --git a/tags/d/debian-control-has-unusual-field-spacing.tag b/tags/d/debian-control-has-unusual-field-spacing.tag
new file mode 100644
index 0000000..5158baf
--- /dev/null
+++ b/tags/d/debian-control-has-unusual-field-spacing.tag
@@ -0,0 +1,10 @@
+Tag: debian-control-has-unusual-field-spacing
+Severity: pedantic
+Check: debian/control/field/spacing
+Explanation: A field in the <code>debian/control</code> file has an unusual
+ amount of whitespace after the colon.
+ .
+ The syntax for Deb822 files permits any kind of space, but according to Policy
+ there is a convention to use a single space after the colon.
+See-Also:
+ debian-policy 5.1
diff --git a/tags/d/debian-control-repeats-field-name-in-value.tag b/tags/d/debian-control-repeats-field-name-in-value.tag
new file mode 100644
index 0000000..af206fe
--- /dev/null
+++ b/tags/d/debian-control-repeats-field-name-in-value.tag
@@ -0,0 +1,9 @@
+Tag: debian-control-repeats-field-name-in-value
+Severity: warning
+Check: debian/control/field/doubled-up
+Explanation: The field on this line of <code>debian/control</code> repeats
+ the field name in the value of the field. As an example:
+ .
+ Maintainer: Maintainer: Some Name &lt;maintainer@mail.example.com&gt;
+See-Also:
+ debian-policy 5.1
diff --git a/tags/d/debian-copyright-is-symlink.tag b/tags/d/debian-copyright-is-symlink.tag
new file mode 100644
index 0000000..c0c9e6d
--- /dev/null
+++ b/tags/d/debian-copyright-is-symlink.tag
@@ -0,0 +1,7 @@
+Tag: debian-copyright-is-symlink
+Severity: warning
+Check: debian/copyright
+Explanation: The file <code>debian/copyright</code> is a symlink instead of a regular
+ file. This makes package checking and manipulation more difficult.
+ .
+ This problem may have prevented Lintian from performing other checks.
diff --git a/tags/d/debian-files-list-in-source.tag b/tags/d/debian-files-list-in-source.tag
new file mode 100644
index 0000000..063c574
--- /dev/null
+++ b/tags/d/debian-files-list-in-source.tag
@@ -0,0 +1,9 @@
+Tag: debian-files-list-in-source
+Severity: error
+Check: debian/files
+Explanation: Leaving <code>debian/files</code> causes problems for the autobuilders,
+ since that file will likely include the list of .deb files for another
+ architecture, which will cause dpkg-buildpackage run by the buildd to fail.
+ .
+ The clean rule for the package should remove this file.
+See-Also: debian-policy 4.12
diff --git a/tags/d/debian-news-entry-has-strange-distribution.tag b/tags/d/debian-news-entry-has-strange-distribution.tag
new file mode 100644
index 0000000..552e89c
--- /dev/null
+++ b/tags/d/debian-news-entry-has-strange-distribution.tag
@@ -0,0 +1,8 @@
+Tag: debian-news-entry-has-strange-distribution
+Severity: warning
+Check: debian/changelog
+Explanation: The latest entry in NEWS.Debian has an unusual distribution name.
+ This field is ignored by the archive software, so its value doesn't truly
+ matter, but it may be confusing to users reading the entry if the
+ distribution doesn't match the distribution for the same entry in the
+ Debian changelog file.
diff --git a/tags/d/debian-news-entry-has-unknown-version.tag b/tags/d/debian-news-entry-has-unknown-version.tag
new file mode 100644
index 0000000..c84fdcb
--- /dev/null
+++ b/tags/d/debian-news-entry-has-unknown-version.tag
@@ -0,0 +1,8 @@
+Tag: debian-news-entry-has-unknown-version
+Severity: warning
+Check: debian/changelog
+Explanation: The version number of the most recent <code>NEWS.Debian</code> entry
+ does not match any of the version numbers in the changelog file for this
+ package. This usually means the version in <code>NEWS.Debian</code> needs to
+ be updated to match a change to package version that happened after the
+ <code>NEWS.Debian</code> entry was written.
diff --git a/tags/d/debian-news-entry-uses-asterisk.tag b/tags/d/debian-news-entry-uses-asterisk.tag
new file mode 100644
index 0000000..ce882b0
--- /dev/null
+++ b/tags/d/debian-news-entry-uses-asterisk.tag
@@ -0,0 +1,8 @@
+Tag: debian-news-entry-uses-asterisk
+Severity: info
+Check: debian/changelog
+Explanation: The latest entry in NEWS.Debian appears to use asterisks to present
+ changes in a bulleted list, similar to the normal changelog syntax. The
+ Debian Developer's Reference recommends using regular paragraphs in
+ NEWS.Debian rather than a bulleted list.
+See-Also: developer-reference 6.3.4
diff --git a/tags/d/debian-news-file-not-compressed.tag b/tags/d/debian-news-file-not-compressed.tag
new file mode 100644
index 0000000..8e2bc67
--- /dev/null
+++ b/tags/d/debian-news-file-not-compressed.tag
@@ -0,0 +1,6 @@
+Tag: debian-news-file-not-compressed
+Severity: warning
+Check: debian/changelog
+Explanation: NEWS.Debian files should be compressed using "gzip -9". The file
+ must always have the same name.
+See-Also: developer-reference 6.3.4
diff --git a/tags/d/debian-pycompat-is-obsolete.tag b/tags/d/debian-pycompat-is-obsolete.tag
new file mode 100644
index 0000000..394495e
--- /dev/null
+++ b/tags/d/debian-pycompat-is-obsolete.tag
@@ -0,0 +1,6 @@
+# Imported from lintian4python (python/helpers)
+Tag: debian-pycompat-is-obsolete
+Severity: info
+Check: languages/python/obsolete
+Explanation: The file <code>debian/pycompat</code> is not used by any modern
+ Python helper. It should be safe to remove the file.
diff --git a/tags/d/debian-pyversions-is-obsolete.tag b/tags/d/debian-pyversions-is-obsolete.tag
new file mode 100644
index 0000000..0efdebd
--- /dev/null
+++ b/tags/d/debian-pyversions-is-obsolete.tag
@@ -0,0 +1,8 @@
+Tag: debian-pyversions-is-obsolete
+Severity: info
+Check: languages/python/obsolete
+Explanation: This package contains a <code>debian/pyversions</code> file. Since
+ dh&lowbar;python2 it has been recommended to use the
+ <code>X-Python3-Version</code> field in <code>debian/control</code> instead.
+See-Also: https://wiki.debian.org/Python/TransitionToDHPython2,
+ https://www.debian.org/doc/packaging-manuals/python-policy/ch-module_packages.html#s-specifying_versions
diff --git a/tags/d/debian-revision-is-zero.tag b/tags/d/debian-revision-is-zero.tag
new file mode 100644
index 0000000..1a4ac6d
--- /dev/null
+++ b/tags/d/debian-revision-is-zero.tag
@@ -0,0 +1,10 @@
+Tag: debian-revision-is-zero
+Severity: error
+Check: fields/version
+Renamed-From: debian-revision-should-not-be-zero
+Explanation: The Debian version part (the part after the -) should start with one,
+ not with zero. This is to ensure that a correctly-done Maintainer Upload will
+ always have a higher version number than a Non-Maintainer upload: a NMU could
+ have been prepared which introduces this upstream version with
+ Debian-revision -0.1
+See-Also: developer-reference 5.11.2
diff --git a/tags/d/debian-revision-not-well-formed.tag b/tags/d/debian-revision-not-well-formed.tag
new file mode 100644
index 0000000..a583890
--- /dev/null
+++ b/tags/d/debian-revision-not-well-formed.tag
@@ -0,0 +1,7 @@
+Tag: debian-revision-not-well-formed
+Severity: warning
+Check: fields/version
+Explanation: The Debian version part (the part after the -) should consist of one
+ or two dot-separated parts: one for a regular maintainer release or two
+ for a source-NMU.
+See-Also: developer-reference 5.11.2, debian-policy 5.6.12
diff --git a/tags/d/debian-rules-calls-debhelper-in-odd-order.tag b/tags/d/debian-rules-calls-debhelper-in-odd-order.tag
new file mode 100644
index 0000000..a768c7e
--- /dev/null
+++ b/tags/d/debian-rules-calls-debhelper-in-odd-order.tag
@@ -0,0 +1,10 @@
+Tag: debian-rules-calls-debhelper-in-odd-order
+Severity: warning
+Check: debian/rules
+Explanation: One of the targets in the <code>debian/rules</code> file for this
+ package calls debhelper programs in an odd order. Normally,
+ dh&lowbar;makeshlibs should be run before dh&lowbar;shlibdeps or dh&lowbar;installdeb, and
+ dh&lowbar;shlibdeps should be run before dh&lowbar;gencontrol. dh&lowbar;builddeb should be
+ the last debhelper action when building the package, after any of the
+ other programs mentioned. Calling these programs in the wrong order may
+ cause incorrect or missing package files and metadata.
diff --git a/tags/d/debian-rules-calls-pwd.tag b/tags/d/debian-rules-calls-pwd.tag
new file mode 100644
index 0000000..c27c79b
--- /dev/null
+++ b/tags/d/debian-rules-calls-pwd.tag
@@ -0,0 +1,13 @@
+Tag: debian-rules-calls-pwd
+Severity: warning
+Check: debian/rules
+Renamed-From: debian-rules-should-not-use-pwd
+Explanation: The <code>debian/rules</code> file for this package appears to use the
+ variable $(PWD) to refer to the current directory. This variable is not
+ set by GNU make and therefore will have whatever value it has in the
+ environment, which may not be the actual current directory. Some ways of
+ building Debian packages (such as through sudo) will clear the PWD
+ environment variable.
+ .
+ Instead of $(PWD), use $(CURDIR), which is set by GNU make, ignores the
+ environment, and is guaranteed to always be set.
diff --git a/tags/d/debian-rules-contains-unnecessary-get-orig-source-target.tag b/tags/d/debian-rules-contains-unnecessary-get-orig-source-target.tag
new file mode 100644
index 0000000..c00865f
--- /dev/null
+++ b/tags/d/debian-rules-contains-unnecessary-get-orig-source-target.tag
@@ -0,0 +1,15 @@
+Tag: debian-rules-contains-unnecessary-get-orig-source-target
+Severity: info
+Check: debian/rules
+Explanation: This package's <code>debian/rules</code> file contains a
+ <code>get-orig-source</code> target that appears to be unnecessary. For
+ example, the package might simply contain a single call to uscan(1).
+ .
+ Such calls are not ideal; maintainers should be able to call uscan with
+ their own choice of options and they additionally encourage the
+ proliferation of boilerplate code across the archive.
+ .
+ Since Debian Policy 4.1.4, packages are encouraged to migrate to uscan
+ and a <code>Files-Excluded</code> header in the <code>debian/copyright</code>
+ file.
+See-Also: uscan(1)
diff --git a/tags/d/debian-rules-ignores-make-clean-error.tag b/tags/d/debian-rules-ignores-make-clean-error.tag
new file mode 100644
index 0000000..b4bc8c4
--- /dev/null
+++ b/tags/d/debian-rules-ignores-make-clean-error.tag
@@ -0,0 +1,19 @@
+Tag: debian-rules-ignores-make-clean-error
+Severity: warning
+Check: debian/rules
+Explanation: A rule in the <code>debian/rules</code> file for this package calls the
+ package's clean or distclean target with a line like:
+ .
+ -$(MAKE) distclean
+ or
+ $(MAKE) -i distclean
+ .
+ The leading "-" or the option -i tells make to ignore all errors.
+ Normally this is done for packages using Autoconf since Makefile may not
+ exist. However, this line ignores all other error messages, not just
+ the missing Makefile error. It's better to use:
+ .
+ [ ! -f Makefile ] || $(MAKE) distclean
+ .
+ so that other error messages from the clean or distclean rule will still
+ be caught (or just remove the "-" if the package uses a static makefile).
diff --git a/tags/d/debian-rules-is-dh_make-template.tag b/tags/d/debian-rules-is-dh_make-template.tag
new file mode 100644
index 0000000..ca95319
--- /dev/null
+++ b/tags/d/debian-rules-is-dh_make-template.tag
@@ -0,0 +1,7 @@
+Tag: debian-rules-is-dh_make-template
+Severity: error
+Check: debian/rules
+Explanation: The debian/rules file appears to be an unmodified or insufficiently
+ modified copy of the dh&lowbar;make template.
+ .
+ Please double-check the rules file.
diff --git a/tags/d/debian-rules-is-symlink.tag b/tags/d/debian-rules-is-symlink.tag
new file mode 100644
index 0000000..509b435
--- /dev/null
+++ b/tags/d/debian-rules-is-symlink.tag
@@ -0,0 +1,11 @@
+Tag: debian-rules-is-symlink
+Severity: warning
+Check: debian/rules
+Explanation: The file <code>debian/rules</code> is a symlink instead of a regular
+ file. This is unnecessary and makes package checking and manipulation
+ more difficult. If the rules file should be available in the source
+ package under multiple names, make <code>debian/rules</code> the real
+ file and the other names symlinks to it.
+ .
+ This problem may have prevented Lintian from performing other checks,
+ leading to undetected changelog errors.
diff --git a/tags/d/debian-rules-missing-recommended-target.tag b/tags/d/debian-rules-missing-recommended-target.tag
new file mode 100644
index 0000000..fcb50b8
--- /dev/null
+++ b/tags/d/debian-rules-missing-recommended-target.tag
@@ -0,0 +1,10 @@
+Tag: debian-rules-missing-recommended-target
+Severity: warning
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package does not
+ provide all recommended targets.
+ .
+ There are currently no recommended targets. Please contact the Lintian
+ maintainers when you encounter this tag.
+See-Also:
+ debian-policy 4.9
diff --git a/tags/d/debian-rules-missing-required-target.tag b/tags/d/debian-rules-missing-required-target.tag
new file mode 100644
index 0000000..7e3c671
--- /dev/null
+++ b/tags/d/debian-rules-missing-required-target.tag
@@ -0,0 +1,33 @@
+Tag: debian-rules-missing-required-target
+Severity: error
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file does not provide all required
+ targets. Both <code>build-arch</code> and <code>build-indep</code> must be
+ provided even if they do nothing.
+ .
+ For sources that do not currently split the building of architecture dependent
+ and independent installables, the following rules will fall back on the
+ <code>build</code> target:
+ .
+ build-arch: build
+ build-indep: build
+ .
+ Some say that the following form is recommended:
+ .
+ build: build-arch build-indep
+ build-arch: build-stamp
+ build-indep: build-stamp
+ build-stamp:
+ build here
+ .
+ As a modern alternative, you may wish to use the <code>dh</code> sequencer
+ instead. Your sources will no longer be affected by this issue.
+ .
+ Policy now requires those targets. Please add them to avoid rejection.
+ .
+ In your next upload, please also close the bug from the mass bug filing you
+ received. Details are described in the message to <code>debian-devel</code>
+ cited below.
+See-Also:
+ debian-policy 4.9,
+ https://lists.debian.org/debian-devel/2021/11/msg00052.html
diff --git a/tags/d/debian-rules-not-a-makefile.tag b/tags/d/debian-rules-not-a-makefile.tag
new file mode 100644
index 0000000..8264890
--- /dev/null
+++ b/tags/d/debian-rules-not-a-makefile.tag
@@ -0,0 +1,8 @@
+Tag: debian-rules-not-a-makefile
+Severity: error
+Check: debian/rules
+See-Also: debian-policy 4.9
+Explanation: The <code>debian/rules</code> file for this package does not appear to
+ be a makefile or does not start with the required line.
+ <code>debian/rules</code> must be a valid makefile and must have
+ "<code>#!/usr/bin/make -f</code>" as its first line.
diff --git a/tags/d/debian-rules-not-executable.tag b/tags/d/debian-rules-not-executable.tag
new file mode 100644
index 0000000..ceb1f9c
--- /dev/null
+++ b/tags/d/debian-rules-not-executable.tag
@@ -0,0 +1,7 @@
+Tag: debian-rules-not-executable
+Severity: pedantic
+See-Also: debian-policy 4.9
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package does not appear to
+ be marked as executable and should be changed via <code>chmod +x</code> or
+ similar.
diff --git a/tags/d/debian-rules-parses-dpkg-parsechangelog.tag b/tags/d/debian-rules-parses-dpkg-parsechangelog.tag
new file mode 100644
index 0000000..4b5a0bd
--- /dev/null
+++ b/tags/d/debian-rules-parses-dpkg-parsechangelog.tag
@@ -0,0 +1,12 @@
+Tag: debian-rules-parses-dpkg-parsechangelog
+Severity: info
+Check: debian/rules
+Explanation: The rules file appears to be parsing the output of dpkg-parsechangelog to
+ determine the current package version name, version, or timestamp, etc.
+ .
+ Since dpkg 1.16.1, this could be replaced by including the
+ /usr/share/dpkg/pkg-info.mk Makefile library and using the
+ DEB&lowbar;{SOURCE,VERSION} or SOURCE&lowbar;DATE&lowbar;EPOCH variables.
+ .
+ Using this library is not only cleaner and more efficient, it handles many
+ corner-cases such as binNMUs, epoch versions, etc.
diff --git a/tags/d/debian-rules-passes-version-info-to-dh_shlibdeps.tag b/tags/d/debian-rules-passes-version-info-to-dh_shlibdeps.tag
new file mode 100644
index 0000000..7682838
--- /dev/null
+++ b/tags/d/debian-rules-passes-version-info-to-dh_shlibdeps.tag
@@ -0,0 +1,10 @@
+Tag: debian-rules-passes-version-info-to-dh_shlibdeps
+Severity: warning
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package has a call to
+ <code>dh&lowbar;shlibdeps(1)</code> with the <code>--version-info</code> or
+ <code>-V</code> option.
+ .
+ However, this has no effect on <code>dh&lowbar;shlibdeps</code>; you probably
+ wanted to pass this option to <code>dh&lowbar;makeshlibs(1)</code> instead.
+See-Also: dh_shlibdeps(1), dh_makeshlibs(1)
diff --git a/tags/d/debian-rules-sets-DEB_BUILD_OPTIONS.tag b/tags/d/debian-rules-sets-DEB_BUILD_OPTIONS.tag
new file mode 100644
index 0000000..381527e
--- /dev/null
+++ b/tags/d/debian-rules-sets-DEB_BUILD_OPTIONS.tag
@@ -0,0 +1,8 @@
+Tag: debian-rules-sets-DEB_BUILD_OPTIONS
+Severity: warning
+Check: debian/rules
+See-Also: dpkg-buildflags(1)
+Explanation: The <code>debian/rules</code> file sets the DEB&lowbar;BUILD&lowbar;OPTIONS variable,
+ which will override any user-specified build profile.
+ .
+ Please replace with DEB&lowbar;BUILD&lowbar;MAINT&lowbar;OPTIONS.
diff --git a/tags/d/debian-rules-sets-DH_COMPAT.tag b/tags/d/debian-rules-sets-DH_COMPAT.tag
new file mode 100644
index 0000000..21e79f0
--- /dev/null
+++ b/tags/d/debian-rules-sets-DH_COMPAT.tag
@@ -0,0 +1,8 @@
+Tag: debian-rules-sets-DH_COMPAT
+Severity: warning
+Check: debian/rules
+See-Also: debhelper(7)
+Explanation: As of debhelper version 4, the DH&lowbar;COMPAT environment variable is
+ only to be used for temporarily overriding <code>debian/compat</code>. Any
+ line in <code>debian/rules</code> that sets it globally should be deleted and
+ a separate <code>debian/compat</code> file created if needed.
diff --git a/tags/d/debian-rules-sets-dpkg-architecture-variable.tag b/tags/d/debian-rules-sets-dpkg-architecture-variable.tag
new file mode 100644
index 0000000..b95718a
--- /dev/null
+++ b/tags/d/debian-rules-sets-dpkg-architecture-variable.tag
@@ -0,0 +1,16 @@
+Tag: debian-rules-sets-dpkg-architecture-variable
+Severity: warning
+Check: debian/rules
+See-Also: dpkg-architecture(1)
+Explanation: The <code>debian/rules</code> file sets one or more
+ <code>dpkg-architecture</code> variables such as <code>DEB&lowbar;BUILD&lowbar;ARCH</code>.
+ .
+ These variables are pre-initialized in the environment when running under
+ <code>dpkg-buildpackage</code> - avoiding these assignments can reduce package
+ build time.
+ .
+ Please use:
+ .
+ include /usr/share/dpkg/architecture.mk
+ .
+ instead, or replace the assignment operator with <code>?=</code>.
diff --git a/tags/d/debian-rules-should-not-set-CFLAGS-from-noopt.tag b/tags/d/debian-rules-should-not-set-CFLAGS-from-noopt.tag
new file mode 100644
index 0000000..390cc70
--- /dev/null
+++ b/tags/d/debian-rules-should-not-set-CFLAGS-from-noopt.tag
@@ -0,0 +1,9 @@
+Tag: debian-rules-should-not-set-CFLAGS-from-noopt
+Severity: warning
+Check: debian/rules
+See-Also: dpkg-buildflags(1)
+Explanation: The <code>debian/rules</code> file for this package appears to set
+ <code>CFLAGS</code> if the value of <code>DEB&lowbar;BUILD&lowbar;OPTIONS</code> contains
+ <code>noopt</code>.
+ .
+ This has been obsoleted in favour of <code>dpkg-buildflags</code>.
diff --git a/tags/d/debian-rules-should-not-use-DH_EXTRA_ADDONS.tag b/tags/d/debian-rules-should-not-use-DH_EXTRA_ADDONS.tag
new file mode 100644
index 0000000..d757fd2
--- /dev/null
+++ b/tags/d/debian-rules-should-not-use-DH_EXTRA_ADDONS.tag
@@ -0,0 +1,7 @@
+Tag: debian-rules-should-not-use-DH_EXTRA_ADDONS
+Severity: warning
+Check: debian/rules
+Explanation: The DH&lowbar;EXTRA&lowbar;ADDONS variable is designed for local or downstream build
+ use and not for use in debian/rules
+ .
+ dh(1)'s <code>--with</code> should be used instead.
diff --git a/tags/d/debian-rules-should-not-use-sanitize-all-buildflag.tag b/tags/d/debian-rules-should-not-use-sanitize-all-buildflag.tag
new file mode 100644
index 0000000..9147ffe
--- /dev/null
+++ b/tags/d/debian-rules-should-not-use-sanitize-all-buildflag.tag
@@ -0,0 +1,17 @@
+Tag: debian-rules-should-not-use-sanitize-all-buildflag
+Severity: error
+Check: debian/rules
+Explanation: This package's <code>debian/rules</code> file contains a
+ <code>DEB&lowbar;BUILD&lowbar;MAINT&lowbar;OPTIONS</code> assignment that enables the
+ <code>sanitize=+all</code> build flag.
+ .
+ This option instructs the compiler to enable options designed to
+ protect the binary against memory corruptions, memory leaks, use after
+ free, threading data races, and undefined behavior bugs.
+ .
+ However, this options should not be used for production Debian binaries
+ as they can reduce reliability for conformant code, reduce security or
+ even functionality.
+ .
+ Please remove the reference to <code>sanitize=+all</code>.
+See-Also: dpkg-buildflags(1), Bug#895811
diff --git a/tags/d/debian-rules-updates-control-automatically.tag b/tags/d/debian-rules-updates-control-automatically.tag
new file mode 100644
index 0000000..5a0c228
--- /dev/null
+++ b/tags/d/debian-rules-updates-control-automatically.tag
@@ -0,0 +1,9 @@
+Tag: debian-rules-updates-control-automatically
+Severity: error
+Check: debian/rules
+Renamed-From: debian-rules-should-not-automatically-update-control
+Explanation: DEB&lowbar;AUTO&lowbar;UPDATE&lowbar;DEBIAN&lowbar;CONTROL
+ appears to be set to <code>yes</code> in
+ the <code>debian/rules</code> file. This activates a feature of CDBS which
+ may not be used in packages uploaded to the Debian archive.
+See-Also: https://ftp-master.debian.org/REJECT-FAQ.html
diff --git a/tags/d/debian-rules-uses-as-needed-linker-flag.tag b/tags/d/debian-rules-uses-as-needed-linker-flag.tag
new file mode 100644
index 0000000..f40e73d
--- /dev/null
+++ b/tags/d/debian-rules-uses-as-needed-linker-flag.tag
@@ -0,0 +1,15 @@
+Tag: debian-rules-uses-as-needed-linker-flag
+Severity: pedantic
+Experimental: yes
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package uses the
+ <code>-Wl,--as-needed</code> linker flag.
+ .
+ The bullseye toolchain defaults to linking with <code>--as-needed</code> and
+ therefore it should no longer be necessary to inject this into the
+ build process.
+ .
+ However, it is not safe to make this change if the package will target
+ the buster distribution such as via backports to the buster-bpo /
+ stable-bpo distribution or, during the bookworm cycle itself, the
+ oldstable-bpo distribution.
diff --git a/tags/d/debian-rules-uses-deb-build-opts.tag b/tags/d/debian-rules-uses-deb-build-opts.tag
new file mode 100644
index 0000000..0457fb3
--- /dev/null
+++ b/tags/d/debian-rules-uses-deb-build-opts.tag
@@ -0,0 +1,7 @@
+Tag: debian-rules-uses-deb-build-opts
+Severity: warning
+Check: debian/rules
+Renamed-From: debian-rules-should-not-use-DEB_BUILD_OPTS
+Explanation: The standard environment variable for build options is
+ DEB&lowbar;BUILD&lowbar;OPTIONS. Usually, referring to DEB&lowbar;BUILD&lowbar;OPTS is a mistake and
+ DEB&lowbar;BUILD&lowbar;OPTIONS was intended instead.
diff --git a/tags/d/debian-rules-uses-deprecated-makefile.tag b/tags/d/debian-rules-uses-deprecated-makefile.tag
new file mode 100644
index 0000000..c02c0d9
--- /dev/null
+++ b/tags/d/debian-rules-uses-deprecated-makefile.tag
@@ -0,0 +1,6 @@
+Tag: debian-rules-uses-deprecated-makefile
+Severity: warning
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package appears to
+ include a Makefile that has been deprecated. Please refer to the
+ documentation of the providing package for a replacement (if any).
diff --git a/tags/d/debian-rules-uses-deprecated-systemd-override.tag b/tags/d/debian-rules-uses-deprecated-systemd-override.tag
new file mode 100644
index 0000000..f0f6d31
--- /dev/null
+++ b/tags/d/debian-rules-uses-deprecated-systemd-override.tag
@@ -0,0 +1,14 @@
+Tag: debian-rules-uses-deprecated-systemd-override
+Severity: error
+Check: debhelper
+Explanation: The <code>debian/rules</code> file for this package has an
+ <code>override&lowbar;dh&lowbar;systemd&lowbar;enable</code> or
+ <code>override&lowbar;dh&lowbar;systemd&lowbar;start</code>
+ target but the package uses debhelper compatibility level 11.
+ .
+ The <code>dh&lowbar;systemd&lowbar;{enable,start}</code> commands were deprecated in this
+ compat level and are no longer called. This is likely to cause your
+ package to not function as intended.
+ .
+ Please replace these with calls to <code>dh&lowbar;installsystemd</code>.
+See-Also: debhelper(7)
diff --git a/tags/d/debian-rules-uses-installed-python-versions.tag b/tags/d/debian-rules-uses-installed-python-versions.tag
new file mode 100644
index 0000000..c25e559
--- /dev/null
+++ b/tags/d/debian-rules-uses-installed-python-versions.tag
@@ -0,0 +1,17 @@
+Tag: debian-rules-uses-installed-python-versions
+Severity: warning
+Check: debian/rules
+Explanation: The package appears to use <code>py3versions -i</code> to determine
+ the "installed" Python versions.
+ .
+ However, this can cause issues if a Python transition is in progress
+ as the <code>-minimal</code> variant of the previous version
+ (eg. <code>python3.X-minimal</code>) remains installed in many environments.
+ This variant then provides enough of an interpreter to count as being
+ "installed" but not enough for the tests themselves to succeed in most
+ cases. This then prevents the overall transition from taking place.
+ .
+ Please replace this will a call to all "supported" packages instead
+ (eg. <code>py3versions -s</code> and ensure <code>python3-all</code> is listed
+ in the build dependencies.
+See-Also: https://lists.debian.org/debian-devel/2020/03/msg00280.html
diff --git a/tags/d/debian-rules-uses-special-shell-variable.tag b/tags/d/debian-rules-uses-special-shell-variable.tag
new file mode 100644
index 0000000..f59f0ed
--- /dev/null
+++ b/tags/d/debian-rules-uses-special-shell-variable.tag
@@ -0,0 +1,20 @@
+Tag: debian-rules-uses-special-shell-variable
+Severity: warning
+Check: debian/rules
+Renamed-From:
+ debian-rules-should-not-use-underscore-variable
+Explanation: The rules file use the make variable $(&lowbar;).
+ .
+ According to Policy 4.9, 'invoking either of <code>make -f debian/rules
+ &lt;...&gt;</code> or <code>./debian/rules
+ &lt;args...&gt;</code>' must result in identical behavior'.
+ The <code>$&lowbar;</code> variable is an easy way to violate that rule
+ unwittingly.
+ .
+ If the <code>rules</code> file uses <code>$(dir $(&lowbar;))</code> to
+ discover the directory containing the source package (for example, in order
+ to implement the <code>get-orig-source</code> target) please replace it
+ with <code>$(dir $(firstword $(MAKEFILE&lowbar;LIST)))</code>.
+See-Also:
+ debian-policy 4.9,
+ https://stackoverflow.com/a/27628164
diff --git a/tags/d/debian-rules-uses-supported-python-versions-without-python-all-build-depends.tag b/tags/d/debian-rules-uses-supported-python-versions-without-python-all-build-depends.tag
new file mode 100644
index 0000000..51385af
--- /dev/null
+++ b/tags/d/debian-rules-uses-supported-python-versions-without-python-all-build-depends.tag
@@ -0,0 +1,12 @@
+Tag: debian-rules-uses-supported-python-versions-without-python-all-build-depends
+Severity: warning
+Check: debian/rules
+Explanation: The package appears to use <code>py3versions -s</code> to determine
+ the "supported" Python versions without specifying <code>python3-all</code>
+ as a build-dependency.
+ .
+ With only the default version of Python installed, the package may
+ build and test successfully but subsequently fail at runtime when
+ another, non-default, Python version is present.
+ .
+ Please add <code>python3-all</code> as a build-dependency.
diff --git a/tags/d/debian-rules-uses-unnecessary-dh-argument.tag b/tags/d/debian-rules-uses-unnecessary-dh-argument.tag
new file mode 100644
index 0000000..d82f9d2
--- /dev/null
+++ b/tags/d/debian-rules-uses-unnecessary-dh-argument.tag
@@ -0,0 +1,9 @@
+Tag: debian-rules-uses-unnecessary-dh-argument
+Severity: warning
+Check: debhelper
+Explanation: The <code>debian/rules</code> file passes the specified argument to
+ <code>dh $@</code> but it is enabled by default from the mentioned debhelper
+ compatibility level onwards.
+ .
+ Please remove the argument from the call to <code>dh(1)</code>.
+See-Also: debhelper(7), dh(1)
diff --git a/tags/d/debian-rules-uses-wrong-environment-variable.tag b/tags/d/debian-rules-uses-wrong-environment-variable.tag
new file mode 100644
index 0000000..41f2013
--- /dev/null
+++ b/tags/d/debian-rules-uses-wrong-environment-variable.tag
@@ -0,0 +1,13 @@
+Tag: debian-rules-uses-wrong-environment-variable
+Severity: warning
+Check: debian/rules
+Renamed-From: debian-rules-should-not-use-or-modify-user-only-variable
+See-Also: Bug#631786
+Explanation: The rules file appears to be reading or modifying a variable not
+ intended for use by package maintainers.
+ .
+ The special variables <code>DEB&lowbar;&ast;FLAGS&lowbar;{SET,APPEND}</code> can be used by
+ users who want to re-compile Debian packages with special (or
+ non-standard) build flags.
+ .
+ Please use the <code>DEB&lowbar;&ast;FLAGS&lowbar;MAINT&lowbar;{SET,APPEND}</code> flags instead.
diff --git a/tags/d/debian-tests-control-autodep8-is-obsolete.tag b/tags/d/debian-tests-control-autodep8-is-obsolete.tag
new file mode 100644
index 0000000..0c03030
--- /dev/null
+++ b/tags/d/debian-tests-control-autodep8-is-obsolete.tag
@@ -0,0 +1,21 @@
+Tag: debian-tests-control-autodep8-is-obsolete
+Severity: warning
+Check: testsuite
+See-Also: autodep8(1)
+Explanation: The specified autopkgtest control file is considered obsolete.
+ .
+ Before autodep8 version 0.17 and autopkgtest version 5.7 if a
+ maintainer wished to add tests to the set of tests generated
+ by autodep8 they provided those tests in a file named
+ <code>debian/tests/control.autodep8</code>.
+ .
+ It is now preferred to declare the additional tests in the regular
+ <code>debian/tests/control</code> file so that <code>dpkg-source</code> can
+ pick up the test dependencies.
+ .
+ When configured to run autodep8 tests, autopkgtest will run the
+ additional tests and the autodep8 tests when <code>debian/control</code>
+ has the proper <code>Testsuite: autopkgtest-&ast;</code> in the source
+ headers.
+ .
+ Please merge the specified file into <code>debian/tests/control</code>.
diff --git a/tags/d/debian-upstream-obsolete-path.tag b/tags/d/debian-upstream-obsolete-path.tag
new file mode 100644
index 0000000..1995444
--- /dev/null
+++ b/tags/d/debian-upstream-obsolete-path.tag
@@ -0,0 +1,15 @@
+Tag: debian-upstream-obsolete-path
+Severity: error
+Check: debian/upstream/metadata
+Explanation: Upstream metadata is stored under an obsolete path.
+ .
+ Upstream MEtadata GAthered with YAml (UMEGAYA) is an effort to collect
+ meta-information about upstream projects from any source package
+ with a publicly accessible VCS via a file called
+ <code>debian/upstream/metadata</code>.
+ .
+ Older versions of this specification used
+ <code>debian/upstream-metadata.yaml</code> or <code>debian/upstream</code>
+ as meta-information storage file.
+ .
+ You should move any such file to <code>debian/upstream/metadata</code>.
diff --git a/tags/d/debian-watch-contains-dh_make-template.tag b/tags/d/debian-watch-contains-dh_make-template.tag
new file mode 100644
index 0000000..049c34a
--- /dev/null
+++ b/tags/d/debian-watch-contains-dh_make-template.tag
@@ -0,0 +1,5 @@
+Tag: debian-watch-contains-dh_make-template
+Severity: info
+Check: debian/watch
+Explanation: The watch file contains a standard template included by dh&lowbar;make.
+ Please remove them once you have implemented the watch file.
diff --git a/tags/d/debian-watch-could-verify-download.tag b/tags/d/debian-watch-could-verify-download.tag
new file mode 100644
index 0000000..a48cd57
--- /dev/null
+++ b/tags/d/debian-watch-could-verify-download.tag
@@ -0,0 +1,9 @@
+Tag: debian-watch-could-verify-download
+Severity: warning
+Check: debian/watch
+See-Also: uscan(1)
+Explanation: One or more upstream signing keys are present in the Debian package
+ but are not being used.
+ .
+ Please enable the cryptographic verification of downloads with the
+ "pgpsigurlmangle" option in your watch file or remove the key.
diff --git a/tags/d/debian-watch-does-not-check-openpgp-signature.tag b/tags/d/debian-watch-does-not-check-openpgp-signature.tag
new file mode 100644
index 0000000..367b522
--- /dev/null
+++ b/tags/d/debian-watch-does-not-check-openpgp-signature.tag
@@ -0,0 +1,21 @@
+Tag: debian-watch-does-not-check-openpgp-signature
+Severity: pedantic
+Check: debian/watch
+Experimental: yes
+See-Also: uscan(1)
+Explanation: This watch file does not specify a means to verify the upstream
+ tarball using a cryptographic signature.
+ .
+ If upstream distributions provides such signatures, please use the
+ <code>pgpsigurlmangle</code> options in this watch file's <code>opts=</code> to
+ generate the URL of an upstream OpenPGP signature. This signature is
+ automatically downloaded and verified against a keyring stored in
+ <code>debian/upstream/signing-key.asc</code>
+ .
+ Of course, not all upstreams provide such signatures but you could
+ request them as a way of verifying that no third party has modified the
+ code after its release (projects such as phpmyadmin, unrealircd, and
+ proftpd have suffered from this kind of attack).
+Renamed-From:
+ debian-watch-does-not-check-gpg-signature
+ debian-watch-may-check-gpg-signature
diff --git a/tags/d/debian-watch-file-in-native-package.tag b/tags/d/debian-watch-file-in-native-package.tag
new file mode 100644
index 0000000..977742b
--- /dev/null
+++ b/tags/d/debian-watch-file-in-native-package.tag
@@ -0,0 +1,8 @@
+Tag: debian-watch-file-in-native-package
+Severity: warning
+Check: debian/watch
+See-Also: https://wiki.debian.org/DEHS
+Explanation: The package ships a watch file although it is a Debian native
+ package. DEHS does not process watch files in native packages based on
+ the reasoning that native packages do not have upstreams to check for new
+ releases.
diff --git a/tags/d/debian-watch-file-is-missing.tag b/tags/d/debian-watch-file-is-missing.tag
new file mode 100644
index 0000000..cc1987d
--- /dev/null
+++ b/tags/d/debian-watch-file-is-missing.tag
@@ -0,0 +1,16 @@
+Tag: debian-watch-file-is-missing
+Severity: info
+Check: debian/watch
+See-Also: debian-policy 4.11, uscan(1)
+Explanation: This source package is not Debian-native but it does not have a
+ <code>debian/watch</code> file. This file is used for automatic detection of
+ new upstream versions by the Debian External Health Status project and
+ other project infrastructure. If this package is maintained upstream,
+ please consider adding a <code>debian/watch</code> file to detect new
+ releases.
+ .
+ If the package is not maintained upstream or if upstream uses a
+ distribution mechanism that cannot be meaningfully monitored by uscan
+ and the Debian External Health Status project, please consider adding a
+ <code>debian/watch</code> file containing only comments documenting the
+ situation.
diff --git a/tags/d/debian-watch-file-pubkey-file-is-missing.tag b/tags/d/debian-watch-file-pubkey-file-is-missing.tag
new file mode 100644
index 0000000..d12d3b0
--- /dev/null
+++ b/tags/d/debian-watch-file-pubkey-file-is-missing.tag
@@ -0,0 +1,10 @@
+Tag: debian-watch-file-pubkey-file-is-missing
+Severity: error
+Check: debian/watch
+See-Also: uscan(1)
+Explanation: This watch file verifies a cryptographic signature but
+ the upstream public key is missing.
+ .
+ Please add upstream public keys in either
+ debian/upstream/signing-key.asc or
+ debian/upstream/signing-key.pgp.
diff --git a/tags/d/debian-watch-file-specifies-old-upstream-version.tag b/tags/d/debian-watch-file-specifies-old-upstream-version.tag
new file mode 100644
index 0000000..05e4715
--- /dev/null
+++ b/tags/d/debian-watch-file-specifies-old-upstream-version.tag
@@ -0,0 +1,10 @@
+Tag: debian-watch-file-specifies-old-upstream-version
+Severity: warning
+Check: debian/watch
+Explanation: The watch file specifies an upstream version number which matches
+ the upstream portion of an old <code>debian/changelog</code> entry, and the
+ current <code>debian/changelog</code> entry specifies a newer upstream
+ version. The version number in the watch file is very likely to be
+ incorrect and probably should be replaced with the current expected
+ upstream version. Otherwise, DEHS and similar projects will think the
+ package is out of date even when it may not be.
diff --git a/tags/d/debian-watch-file-specifies-wrong-upstream-version.tag b/tags/d/debian-watch-file-specifies-wrong-upstream-version.tag
new file mode 100644
index 0000000..cbdbb32
--- /dev/null
+++ b/tags/d/debian-watch-file-specifies-wrong-upstream-version.tag
@@ -0,0 +1,10 @@
+Tag: debian-watch-file-specifies-wrong-upstream-version
+Severity: warning
+Check: debian/watch
+See-Also: uscan(1)
+Explanation: The watch file specifies an upstream version which exactly matches
+ the version of a <code>debian/changelog</code> entry, this is not a
+ native package, and no version mangling is being done. The version
+ field in a watch file should specify the expected upstream version, not
+ the version of the Debian package. Any epochs and Debian revisions
+ should be removed first or mangled away.
diff --git a/tags/d/debian-watch-file-standard.tag b/tags/d/debian-watch-file-standard.tag
new file mode 100644
index 0000000..2b9f387
--- /dev/null
+++ b/tags/d/debian-watch-file-standard.tag
@@ -0,0 +1,6 @@
+Tag: debian-watch-file-standard
+Severity: classification
+Check: debian/watch/standard
+Explanation: The watch file uses this version standard. The currently known
+ watch file versions are 2, 3 and 4. Version 1 means it was undeclared.
+See-Also: uscan(1)
diff --git a/tags/d/debian-watch-file-uses-deprecated-githubredir.tag b/tags/d/debian-watch-file-uses-deprecated-githubredir.tag
new file mode 100644
index 0000000..02235cb
--- /dev/null
+++ b/tags/d/debian-watch-file-uses-deprecated-githubredir.tag
@@ -0,0 +1,12 @@
+Tag: debian-watch-file-uses-deprecated-githubredir
+Severity: error
+Check: debian/watch
+See-Also: https://lists.debian.org/debian-devel-announce/2014/10/msg00000.html
+Explanation: The watch file specifies a githubredir.debian.net URL, which is deprecated
+ Instead, use direct links to the tags page:
+ .
+ version=3
+ https://github.com/&lt;user&gt;/&lt;project&gt;/tags .&ast;/(.&ast;)\.tar\.gz
+ .
+ replacing <code>&lt;user&gt;</code> and <code>&lt;project&gt;</code> with the Github
+ username and project respectively.
diff --git a/tags/d/debian-watch-file-uses-deprecated-sf-redirector-method.tag b/tags/d/debian-watch-file-uses-deprecated-sf-redirector-method.tag
new file mode 100644
index 0000000..5e4c894
--- /dev/null
+++ b/tags/d/debian-watch-file-uses-deprecated-sf-redirector-method.tag
@@ -0,0 +1,7 @@
+Tag: debian-watch-file-uses-deprecated-sf-redirector-method
+Severity: warning
+Check: debian/watch
+Explanation: The watch file seems to be passing arguments to the redirector
+ other than a path. Calling the SourceForge redirector with parameters like
+ <code>project</code> prevents uscan from generating working URIs to the files
+ and thus has been deprecated and is no longer supported by the redirector.
diff --git a/tags/d/debian-watch-lacks-sourceforge-redirector.tag b/tags/d/debian-watch-lacks-sourceforge-redirector.tag
new file mode 100644
index 0000000..55545c1
--- /dev/null
+++ b/tags/d/debian-watch-lacks-sourceforge-redirector.tag
@@ -0,0 +1,16 @@
+Tag: debian-watch-lacks-sourceforge-redirector
+Severity: warning
+Check: debian/watch
+Renamed-From: debian-watch-file-should-use-sf-redirector
+See-Also: uscan(1)
+Explanation: The watch file specifies a SourceForge page or download server
+ directly. This is not recommended; SourceForge changes their download
+ servers and website periodically, requiring watch files to be modified
+ every time. Instead, use the qa.debian.org redirector by using the magic
+ URL:
+ .
+ http://sf.net/&lt;project&gt;/&lt;tar-name&gt;-(.+)\.tar\.gz
+ .
+ replacing <code>&lt;project&gt;</code> with the name of the SourceForge
+ project and <code>&lt;tar-name&gt;</code> with the name of the tarball
+ distributed within that project. Adjust the filename regex as necessary.
diff --git a/tags/d/debian-watch-line-invalid.tag b/tags/d/debian-watch-line-invalid.tag
new file mode 100644
index 0000000..82f2eae
--- /dev/null
+++ b/tags/d/debian-watch-line-invalid.tag
@@ -0,0 +1,6 @@
+Tag: debian-watch-line-invalid
+Severity: warning
+Check: debian/watch
+See-Also: uscan(1)
+Explanation: The indicated line in the <code>debian/watch</code> file in this
+ package does not have a regnized format.
diff --git a/tags/d/debian-watch-mangles-debian-version-improperly.tag b/tags/d/debian-watch-mangles-debian-version-improperly.tag
new file mode 100644
index 0000000..734bda2
--- /dev/null
+++ b/tags/d/debian-watch-mangles-debian-version-improperly.tag
@@ -0,0 +1,12 @@
+Tag: debian-watch-mangles-debian-version-improperly
+Severity: info
+Check: debian/watch
+Renamed-From: debian-watch-file-should-dversionmangle-not-uversionmangle
+See-Also: https://wiki.debian.org/DEHS
+Explanation: The version of this package contains <code>dfsg</code>, <code>ds</code>,
+ or <code>debian</code>, but a misleading upstream version mangling occurs in
+ the <code>debian/watch</code> file. Since the <code>dfsg</code> string is not
+ part of the upstream version and its addition is Debian-specific, the
+ <code>debian/watch</code> file should use the dversionmangle option to
+ remove, instead of adding in uversionmangle, the <code>dfsg</code> before
+ comparing version numbers.
diff --git a/tags/d/debian-watch-mangles-upstream-version-improperly.tag b/tags/d/debian-watch-mangles-upstream-version-improperly.tag
new file mode 100644
index 0000000..aea470d
--- /dev/null
+++ b/tags/d/debian-watch-mangles-upstream-version-improperly.tag
@@ -0,0 +1,10 @@
+Tag: debian-watch-mangles-upstream-version-improperly
+Severity: info
+Check: debian/watch
+Renamed-From: debian-watch-file-should-uversionmangle-not-dversionmangle
+See-Also: https://wiki.debian.org/DEHS
+Explanation: The version of this package contains <code>alpha</code>, <code>beta</code>,
+ or <code>rc</code>, but a misleading Debian version mangling occurs in
+ the <code>debian/watch</code> file. You should use the uversionmangle
+ option instead of dversionmangle so that the prerelease is sorted by
+ uscan before a possible future final release.
diff --git a/tags/d/debian-watch-not-mangling-version.tag b/tags/d/debian-watch-not-mangling-version.tag
new file mode 100644
index 0000000..b436a3a
--- /dev/null
+++ b/tags/d/debian-watch-not-mangling-version.tag
@@ -0,0 +1,13 @@
+Tag: debian-watch-not-mangling-version
+Severity: warning
+Check: debian/watch
+Renamed-From: debian-watch-file-should-mangle-version
+See-Also: uscan(1), https://wiki.debian.org/DEHS
+Explanation: The version of this package contains <code>dfsg</code>, <code>ds</code>,
+ or <code>debian</code>, which normally indicates that the upstream source
+ has been repackaged to comply with the Debian Free Software Guidelines
+ (or similar reason), but there is no version mangling in the
+ <code>debian/watch</code> file. Since the <code>dfsg</code> string is not
+ part of the upstream version, the <code>debian/watch</code> file should
+ use the dversionmangle option to remove the <code>dfsg</code> before
+ version number comparison.
diff --git a/tags/d/debian-watch-upstream-component.tag b/tags/d/debian-watch-upstream-component.tag
new file mode 100644
index 0000000..41c09f0
--- /dev/null
+++ b/tags/d/debian-watch-upstream-component.tag
@@ -0,0 +1,5 @@
+Tag: debian-watch-upstream-component
+Severity: classification
+Check: debian/watch
+See-Also: uscan(1)
+Explanation: Component embedded in debian/watch
diff --git a/tags/d/debian-watch-uses-insecure-uri.tag b/tags/d/debian-watch-uses-insecure-uri.tag
new file mode 100644
index 0000000..2eb935a
--- /dev/null
+++ b/tags/d/debian-watch-uses-insecure-uri.tag
@@ -0,0 +1,9 @@
+Tag: debian-watch-uses-insecure-uri
+Severity: info
+Check: debian/watch
+Explanation: The watch file uses an unencrypted transport protocol for the
+ URI such as http:// or ftp://. It is recommended to use a secure
+ transport such as HTTPS for anonymous read-only access.
+ .
+ Upstream may already provide a HTTPS variant of the URI. If not,
+ please contact them and ask them to consider adding one.
diff --git a/tags/d/debug-file-with-no-debug-symbols.tag b/tags/d/debug-file-with-no-debug-symbols.tag
new file mode 100644
index 0000000..cdd4aa2
--- /dev/null
+++ b/tags/d/debug-file-with-no-debug-symbols.tag
@@ -0,0 +1,12 @@
+Tag: debug-file-with-no-debug-symbols
+Severity: warning
+Check: binaries/debug-symbols/detached
+Explanation: The binary is installed as a detached "debug symbols" ELF file,
+ but it does not appear to have debug information associated with it.
+ .
+ A common cause is not passing <code>-g</code> to GCC when compiling.
+ .
+ Implementation detail: Lintian checks for the ".debug&lowbar;line" and the
+ ".debug&lowbar;str" sections. If either of these are present, the binary
+ is assumed to contain debug information.
+See-Also: Bug#668437
diff --git a/tags/d/debug-package-for-multi-arch-same-pkg-not-coinstallable.tag b/tags/d/debug-package-for-multi-arch-same-pkg-not-coinstallable.tag
new file mode 100644
index 0000000..7a2fddc
--- /dev/null
+++ b/tags/d/debug-package-for-multi-arch-same-pkg-not-coinstallable.tag
@@ -0,0 +1,19 @@
+Tag: debug-package-for-multi-arch-same-pkg-not-coinstallable
+Severity: info
+Check: group-checks
+Explanation: The debug package appear to be containing debug symbols for a
+ "Multi-Arch: same" package, but the debug package itself is not
+ "Multi-Arch: same". If so, it is not possible to have the debug
+ symbols for all architecture variants of the binaries available
+ at the same time.
+ .
+ Making a debug package co-installable with itself is very trivial,
+ when installing the debug symbols beneath:
+ <code>/usr/lib/debug/.build-id/&lt;XX&gt;/&lt;rest-id&gt;.debug</code>
+ .
+ dh&lowbar;strip does this in debhelper compat 9. Otherwise, the expected
+ location of the debug symbols of a given ELF binary can be determined
+ by using:
+ .
+ readelf -n &lt;binary-elf&gt; | \
+ perl -ne 'print if s,^\s&ast;Build ID:\s&ast;(\S\S)(\S+),/usr/lib/debug/.build-id/$1/$2.debug,'
diff --git a/tags/d/debug-suffix-not-dbg.tag b/tags/d/debug-suffix-not-dbg.tag
new file mode 100644
index 0000000..35eefcc
--- /dev/null
+++ b/tags/d/debug-suffix-not-dbg.tag
@@ -0,0 +1,11 @@
+Tag: debug-suffix-not-dbg
+Severity: warning
+Check: files/debug
+Renamed-From:
+ debug-package-should-be-named-dbg
+Explanation: This package provides at least one file in <code>/usr/lib/debug</code>,
+ which is intended for detached debugging symbols, but the package name
+ does not end in "-dbg". Detached debugging symbols should be put into a
+ separate package, Priority: extra, with a package name ending in "-dbg".
+See-Also:
+ developer-reference 6.8.9
diff --git a/tags/d/debug-symbol-migration-possibly-complete.tag b/tags/d/debug-symbol-migration-possibly-complete.tag
new file mode 100644
index 0000000..e71c5f9
--- /dev/null
+++ b/tags/d/debug-symbol-migration-possibly-complete.tag
@@ -0,0 +1,18 @@
+Tag: debug-symbol-migration-possibly-complete
+Severity: pedantic
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package has a call to
+ <code>dh&lowbar;strip(1)</code> with the specified <code>--dbgsym-migration</code> or
+ <code>--ddeb-migration</code> argument.
+ .
+ Such arguments are used to migrate packages to use automatic debug
+ symbols, which first became available in December 2015.
+ .
+ If this command was added to the <code>debian/rules</code> that was
+ included in the current stable release of Debian then it can possibly
+ be removed.
+ .
+ However, if the command was added later (and/or the package was not
+ included in stretch) please wait until it has been included in a stable
+ release before removing it.
+See-Also: dh_strip(1), https://wiki.debian.org/AutomaticDebugPackages
diff --git a/tags/d/debug-symbols-directly-in-usr-lib-debug.tag b/tags/d/debug-symbols-directly-in-usr-lib-debug.tag
new file mode 100644
index 0000000..4d57931
--- /dev/null
+++ b/tags/d/debug-symbols-directly-in-usr-lib-debug.tag
@@ -0,0 +1,11 @@
+Tag: debug-symbols-directly-in-usr-lib-debug
+Severity: error
+Check: binaries/debug-symbols/detached
+Explanation: The given debugging symbols-only object is installed directly in
+ <code>/usr/lib/debug</code>, although it should be installed in a
+ subdirectory. For example, debug symbols of a binary in
+ <code>/usr/bin</code> should be placed in <code>/usr/lib/debug/usr/bin</code>.
+ gdb, when looking for debugging symbols, prepends <code>/usr/lib/debug</code>
+ to whatever path it finds in the .gnu&lowbar;debuglink section, which when using
+ dh&lowbar;strip(1) is either the path to your binary/library or a build-id based
+ path.
diff --git a/tags/d/debug-symbols-not-detached.tag b/tags/d/debug-symbols-not-detached.tag
new file mode 100644
index 0000000..64b2238
--- /dev/null
+++ b/tags/d/debug-symbols-not-detached.tag
@@ -0,0 +1,21 @@
+Tag: debug-symbols-not-detached
+Severity: warning
+Check: binaries/debug-symbols/detached
+Renamed-From:
+ debug-file-should-use-detached-symbols
+Explanation: This file is in a location generally used for detached debugging
+ symbols, but it appears to contain a complete copy of the executable or
+ library instead of only the debugging symbols.
+ .
+ Files in subdirectories of <code>/usr/lib/debug</code> mirroring the main file
+ system should contain only debugging information generated by <code>objcopy
+ --only-keep-debug</code>. Binaries or shared objects built with extra
+ debugging should be installed directly in <code>/usr/lib/debug</code> or in
+ subdirectories corresponding to the package, not in the directories that
+ mirror the main file system.
+ .
+ If you are using dh&lowbar;strip with the --dbg-package flag, don't also install
+ the library in <code>/usr/lib/debug</code>. dh&lowbar;strip does all the work for
+ you.
+See-Also:
+ developer-reference 6.8.9
diff --git a/tags/d/declare-python-versions-for-test.tag b/tags/d/declare-python-versions-for-test.tag
new file mode 100644
index 0000000..a488a2f
--- /dev/null
+++ b/tags/d/declare-python-versions-for-test.tag
@@ -0,0 +1,25 @@
+Tag: declare-python-versions-for-test
+Severity: warning
+Check: testsuite
+Renamed-from:
+ declare-requested-python-versions-for-test
+Explanation: The specified test attempts to query the Python versions
+ <em>requested</em> by your sources with the command
+ <code>py3versions --requested</code> but your sources do not declare
+ any versions with the field <code>X-Python3-Version</code>.
+ .
+ Please choose between two suggested remedies:
+ .
+ In most circumstances, it is probably best to replace the argument
+ <code>--requested</code> with <code>--supported</code>. That will
+ exercise the test with all available Python versions.
+ .
+ Should your installable require only specific Python versions, please add
+ the field <code>X-Python3-Version</code> with the appropriate information
+ to the source stanza in the <code>debian/control</code> file.
+ .
+ No redirection of the output, as in <code>2 &gt; /dev/null</code>, is
+ needed in either case.
+See-Also:
+ py3versions(1),
+ Bug#1001677
diff --git a/tags/d/declares-possibly-conflicting-debhelper-compat-versions.tag b/tags/d/declares-possibly-conflicting-debhelper-compat-versions.tag
new file mode 100644
index 0000000..40e7f0e
--- /dev/null
+++ b/tags/d/declares-possibly-conflicting-debhelper-compat-versions.tag
@@ -0,0 +1,8 @@
+Tag: declares-possibly-conflicting-debhelper-compat-versions
+Severity: error
+Check: debhelper
+See-Also: debhelper(7)
+Explanation: The source package declares the debhelper compatibility version
+ both in the <code>debian/compat</code> file and in the <code>debian/rules</code>
+ file or in <code>debian/control</code>. If these ever get out of
+ synchronisation, the package may not build as expected.
diff --git a/tags/d/default-mta-dependency-does-not-specify-mail-transport-agent.tag b/tags/d/default-mta-dependency-does-not-specify-mail-transport-agent.tag
new file mode 100644
index 0000000..da73bf4
--- /dev/null
+++ b/tags/d/default-mta-dependency-does-not-specify-mail-transport-agent.tag
@@ -0,0 +1,12 @@
+Tag: default-mta-dependency-does-not-specify-mail-transport-agent
+Severity: warning
+Check: fields/package-relations
+Explanation: This package has a relationship with the default-mta virtual
+ package but does not specify the mail-transport-agent as an
+ alternative.
+ .
+ default-mta and mail-transport-agent should only ever be in a set of
+ alternatives together, with default-mta listed first.
+ .
+ Please add a "or" dependency on mail-transport-agent after
+ default-mta.
diff --git a/tags/d/default-mta-dependency-not-listed-first.tag b/tags/d/default-mta-dependency-not-listed-first.tag
new file mode 100644
index 0000000..cc3e62d
--- /dev/null
+++ b/tags/d/default-mta-dependency-not-listed-first.tag
@@ -0,0 +1,13 @@
+Tag: default-mta-dependency-not-listed-first
+Severity: warning
+Check: fields/package-relations
+Explanation: This package has a relationship with the mail-transport-agent
+ or default-mta packages but does not specify the default-mta as an
+ first option.
+ .
+ default-mta and mail-transport-agent should only ever be in a set of
+ alternatives together, with default-mta listed in the primary
+ position.
+ .
+ Please rearrange the dependencies such that default-mta is listed
+ first.
diff --git a/tags/d/dep5-copyright-license-name-not-unique.tag b/tags/d/dep5-copyright-license-name-not-unique.tag
new file mode 100644
index 0000000..f9a25e9
--- /dev/null
+++ b/tags/d/dep5-copyright-license-name-not-unique.tag
@@ -0,0 +1,26 @@
+Tag: dep5-copyright-license-name-not-unique
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: This paragraph defines an already defined license.
+ .
+ According to the specification, short license names are required to be
+ unique within a single copyright file.
+ .
+ This tag could be raised by something like this:
+ .
+ Files: filea ...
+ Copyright: 2009, ...
+ License: LGPL-2.1
+ This program is free software;
+ ...
+ .
+ Files: fileb ...
+ Copyright: 2009, ...
+ License: LGPL-2.1
+ This program is free software;
+ ...
+ .
+ In this case, you redefine LGPL-2.1 license. You should use
+ a stand-alone paragraph or merge the two files (using a single
+ paragraph).
diff --git a/tags/d/dep5-file-paragraph-references-header-paragraph.tag b/tags/d/dep5-file-paragraph-references-header-paragraph.tag
new file mode 100644
index 0000000..fd87ac4
--- /dev/null
+++ b/tags/d/dep5-file-paragraph-references-header-paragraph.tag
@@ -0,0 +1,11 @@
+Tag: dep5-file-paragraph-references-header-paragraph
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The Files paragraph uses a reference to a license which is
+ only defined in the Header paragraph. The copyright specification
+ requires that the Files paragraph either contains the full license
+ itself or references a "stand-alone" License paragraph, and not the
+ Header paragraph.
+Renamed-From:
+ dep5-file-paragraph-reference-header-paragraph
diff --git a/tags/d/dependency-is-not-multi-archified.tag b/tags/d/dependency-is-not-multi-archified.tag
new file mode 100644
index 0000000..05f9400
--- /dev/null
+++ b/tags/d/dependency-is-not-multi-archified.tag
@@ -0,0 +1,6 @@
+Tag: dependency-is-not-multi-archified
+Severity: warning
+Check: group-checks
+Explanation: The package is Multi-Arch "same", but it depends on a package that
+ is neither Multi-Arch "same" nor "foreign".
+See-Also: https://wiki.ubuntu.com/MultiarchSpec
diff --git a/tags/d/dependency-on-python-version-marked-for-end-of-life.tag b/tags/d/dependency-on-python-version-marked-for-end-of-life.tag
new file mode 100644
index 0000000..32cb06e
--- /dev/null
+++ b/tags/d/dependency-on-python-version-marked-for-end-of-life.tag
@@ -0,0 +1,17 @@
+Tag: dependency-on-python-version-marked-for-end-of-life
+Severity: pedantic
+Check: languages/python
+Experimental: yes
+See-Also: https://wiki.debian.org/Python/Python3Port,
+https://www.python.org/dev/peps/pep-0373/, Bug#897213
+Explanation: The package specifies a dependency on Python 2.x which is due for
+ deprecation and will not be maintained upstream past 2020 and will
+ likely be dropped after the release of Debian "buster".
+ .
+ You should not make any changes to your package based on this presence
+ of this tag.
+ .
+ However, please override this tag with a suitably-commented override if
+ it is known that this package will not be migrated to Python 3.x for one
+ reason or another. This is so that developers may ignore the package
+ when looking for software that needs to be ported.
diff --git a/tags/d/depends-exclusively-on-makedev.tag b/tags/d/depends-exclusively-on-makedev.tag
new file mode 100644
index 0000000..0d755ed
--- /dev/null
+++ b/tags/d/depends-exclusively-on-makedev.tag
@@ -0,0 +1,8 @@
+Tag: depends-exclusively-on-makedev
+Severity: warning
+Check: fields/package-relations
+Explanation: This package depends on makedev without a udev alternative. This
+ probably means that it doesn't have udev rules and relies on makedev to
+ create devices, which won't work if udev is installed and running.
+ Alternatively, it may mean that there are udev rules, but udev was not
+ added as an alternative to the makedev dependency.
diff --git a/tags/d/depends-on-essential-package-without-using-version.tag b/tags/d/depends-on-essential-package-without-using-version.tag
new file mode 100644
index 0000000..b1f6dbb
--- /dev/null
+++ b/tags/d/depends-on-essential-package-without-using-version.tag
@@ -0,0 +1,10 @@
+Tag: depends-on-essential-package-without-using-version
+Severity: error
+Check: fields/package-relations
+See-Also: debian-policy 3.5
+Explanation: The package declares a depends on an essential package, e.g. dpkg,
+ without using a versioned depends. Packages do not need to 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/d/depends-on-libdb1-compat.tag b/tags/d/depends-on-libdb1-compat.tag
new file mode 100644
index 0000000..95760ec
--- /dev/null
+++ b/tags/d/depends-on-libdb1-compat.tag
@@ -0,0 +1,7 @@
+Tag: depends-on-libdb1-compat
+Severity: error
+Check: fields/package-relations
+Explanation: The package seems to declare a relation on libdb1-compat.
+ This library exists for compatibility with applications built against
+ glibc 2.0 or 2.1. There is intentionally no corresponding development
+ package. Do not link new applications against this library!
diff --git a/tags/d/depends-on-metapackage.tag b/tags/d/depends-on-metapackage.tag
new file mode 100644
index 0000000..247c77d
--- /dev/null
+++ b/tags/d/depends-on-metapackage.tag
@@ -0,0 +1,9 @@
+Tag: depends-on-metapackage
+Severity: error
+Check: fields/package-relations
+Explanation: This package is one of the packages that Lintian believes is a
+ metapackage: a package that exists for the convenience of users or
+ installers to install a set of related packages. Packages that are not
+ themselves metapackages must not depend on metapackages, since this may
+ prevent the user from removing portions of the package set they don't
+ need.
diff --git a/tags/d/depends-on-misc-pre-depends.tag b/tags/d/depends-on-misc-pre-depends.tag
new file mode 100644
index 0000000..23e631d
--- /dev/null
+++ b/tags/d/depends-on-misc-pre-depends.tag
@@ -0,0 +1,7 @@
+Tag: depends-on-misc-pre-depends
+Severity: warning
+Check: substvars/misc/pre-depends
+Explanation: The <code>Depends</code> field contains the substitution variable
+ <code>${misc:Pre-Depends}</code>.
+ .
+ The variable should be in listed in the <code>Pre-Depends</code> field instead.
diff --git a/tags/d/depends-on-obsolete-package.tag b/tags/d/depends-on-obsolete-package.tag
new file mode 100644
index 0000000..9ce542a
--- /dev/null
+++ b/tags/d/depends-on-obsolete-package.tag
@@ -0,0 +1,6 @@
+Tag: depends-on-obsolete-package
+Severity: error
+Check: fields/package-relations
+Explanation: The package 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/d/depends-on-old-emacs.tag b/tags/d/depends-on-old-emacs.tag
new file mode 100644
index 0000000..c26629e
--- /dev/null
+++ b/tags/d/depends-on-old-emacs.tag
@@ -0,0 +1,11 @@
+Tag: depends-on-old-emacs
+Severity: warning
+Check: fields/package-relations
+Explanation: The package lists an old version of Emacs as its first dependency.
+ It should probably be updated to support the current version of Emacs
+ in the archive and then list that version first in the list of Emacs
+ flavors it supports.
+ .
+ If the package intentionally only supports older versions of Emacs (if,
+ for example, it was included with later versions of Emacs), add a Lintian
+ override.
diff --git a/tags/d/depends-on-packaging-dev.tag b/tags/d/depends-on-packaging-dev.tag
new file mode 100644
index 0000000..b14e955
--- /dev/null
+++ b/tags/d/depends-on-packaging-dev.tag
@@ -0,0 +1,5 @@
+Tag: depends-on-packaging-dev
+Explanation: You depend/recommend/build-depend on packaging-dev, which is
+ only a metapackage to install common packages needed for packaging.
+Severity: warning
+Check: fields/package-relations
diff --git a/tags/d/depends-on-python-minimal.tag b/tags/d/depends-on-python-minimal.tag
new file mode 100644
index 0000000..4620825
--- /dev/null
+++ b/tags/d/depends-on-python-minimal.tag
@@ -0,0 +1,8 @@
+Tag: depends-on-python-minimal
+Severity: error
+Check: fields/package-relations
+Explanation: The python-minimal package (and versioned variants thereof) exists
+ only to possibly become an Essential package. Depending on it is always
+ an error since it should never be installed without python. If it
+ becomes Essential, there is no need to depend on it, and until then,
+ packages that require Python must depend on python.
diff --git a/tags/d/depends-on-python2-and-python3.tag b/tags/d/depends-on-python2-and-python3.tag
new file mode 100644
index 0000000..dadbac9
--- /dev/null
+++ b/tags/d/depends-on-python2-and-python3.tag
@@ -0,0 +1,8 @@
+Tag: depends-on-python2-and-python3
+Severity: info
+Check: languages/python
+Explanation: The specified package has a relation to both the Python 2 and
+ Python 3 interpreters. It may be that the package has only been
+ partially migrated to Python 3 from Python 2.x.
+ .
+ Please check the contents and/or dependencies of this package.
diff --git a/tags/d/depends-on-specific-java-doc-package.tag b/tags/d/depends-on-specific-java-doc-package.tag
new file mode 100644
index 0000000..6d2948a
--- /dev/null
+++ b/tags/d/depends-on-specific-java-doc-package.tag
@@ -0,0 +1,6 @@
+Tag: depends-on-specific-java-doc-package
+Severity: warning
+Check: fields/package-relations
+Explanation: The package should use default-jdk-doc instead of classpath-doc
+ or openjdk-X-doc to ease transitions when the providing doc package
+ is replaced (e.g. openjdk-6-doc being replaced by openjdk-7-doc).
diff --git a/tags/d/deprecated-configure-filename.tag b/tags/d/deprecated-configure-filename.tag
new file mode 100644
index 0000000..86c35dd
--- /dev/null
+++ b/tags/d/deprecated-configure-filename.tag
@@ -0,0 +1,8 @@
+Tag: deprecated-configure-filename
+Severity: info
+Check: build-systems/automake
+Explanation: The use of 'configure.in' with automake is deprecated and will
+ not be supported in future versions of automake. Please consider
+ (helping upstream) migrating to 'configure.ac' instead.
+See-Also: https://lists.gnu.org/archive/html/automake/2013-05/msg00049.html
+Experimental: yes
diff --git a/tags/d/description-contains-dh-make-perl-template.tag b/tags/d/description-contains-dh-make-perl-template.tag
new file mode 100644
index 0000000..ec865fc
--- /dev/null
+++ b/tags/d/description-contains-dh-make-perl-template.tag
@@ -0,0 +1,7 @@
+Tag: description-contains-dh-make-perl-template
+Severity: warning
+Check: fields/description
+Explanation: The extended description contains the statement that it was
+ automagically extracted by dh-make-perl. Please check the description
+ for correctness and usefulness and remove the dh-make-perl statement
+ to signal that you have done so.
diff --git a/tags/d/description-contains-homepage.tag b/tags/d/description-contains-homepage.tag
new file mode 100644
index 0000000..39e000d
--- /dev/null
+++ b/tags/d/description-contains-homepage.tag
@@ -0,0 +1,9 @@
+Tag: description-contains-homepage
+Severity: warning
+Check: fields/description
+Explanation: The extended description contains a "Homepage" pseudo-field
+ following the old Developer's Reference recommendation. As of 1.14.6,
+ dpkg now supports Homepage as a regular field in
+ <code>debian/control</code>. This pseudo-field should be moved from the
+ extended description to the fields for the relevant source or binary
+ packages.
diff --git a/tags/d/description-contains-invalid-control-statement.tag b/tags/d/description-contains-invalid-control-statement.tag
new file mode 100644
index 0000000..f95afb6
--- /dev/null
+++ b/tags/d/description-contains-invalid-control-statement.tag
@@ -0,0 +1,14 @@
+Tag: description-contains-invalid-control-statement
+Severity: error
+Check: fields/description
+Explanation: The description contains an invalid control statement.
+ .
+ A control statement is a line starting with a dot (.). The only
+ control statement is defined by the policy is a single dot denoting
+ an empty line.
+ .
+ The "empty-line" control statement does not permit any characters
+ following it on the same line. Therefore, the line must consist
+ entirely of a space followed by a dot.
+See-Also:
+ debian-policy 5.6.13
diff --git a/tags/d/description-contains-tabs.tag b/tags/d/description-contains-tabs.tag
new file mode 100644
index 0000000..8fa9c7d
--- /dev/null
+++ b/tags/d/description-contains-tabs.tag
@@ -0,0 +1,5 @@
+Tag: description-contains-tabs
+Severity: error
+Check: fields/description
+Explanation: The package "Description:" must not contain tab characters.
+See-Also: debian-policy 5.6.13
diff --git a/tags/d/description-is-debmake-template.tag b/tags/d/description-is-debmake-template.tag
new file mode 100644
index 0000000..fe8e797
--- /dev/null
+++ b/tags/d/description-is-debmake-template.tag
@@ -0,0 +1,5 @@
+Tag: description-is-debmake-template
+Severity: error
+Check: fields/description
+Explanation: The synopsis or the extended description just says "Missing",
+ which is a template provided by debmake.
diff --git a/tags/d/description-is-dh_make-template.tag b/tags/d/description-is-dh_make-template.tag
new file mode 100644
index 0000000..338dbf5
--- /dev/null
+++ b/tags/d/description-is-dh_make-template.tag
@@ -0,0 +1,5 @@
+Tag: description-is-dh_make-template
+Severity: error
+Check: fields/description
+Explanation: The synopsis or the extended description has not been changed
+ from the template provided by dh&lowbar;make.
diff --git a/tags/d/description-is-pkg-name.tag b/tags/d/description-is-pkg-name.tag
new file mode 100644
index 0000000..f3aac2a
--- /dev/null
+++ b/tags/d/description-is-pkg-name.tag
@@ -0,0 +1,6 @@
+Tag: description-is-pkg-name
+Severity: error
+Check: fields/description
+See-Also: developer-reference 6.2.2
+Explanation: The description is the same as the package name.
+ A better description should be provided for the user.
diff --git a/tags/d/description-mentions-planned-features.tag b/tags/d/description-mentions-planned-features.tag
new file mode 100644
index 0000000..200f368
--- /dev/null
+++ b/tags/d/description-mentions-planned-features.tag
@@ -0,0 +1,11 @@
+Tag: description-mentions-planned-features
+Severity: info
+Check: fields/description
+Explanation: This package appears to mention planned or upcoming features of
+ the software.
+ .
+ Package descriptions should not mention features that are not yet implemented
+ as they waste the time of people searching for particular keywords. They are
+ also liable to become outdated quickly.
+ .
+ Please remove such statements from the package description.
diff --git a/tags/d/description-possibly-contains-homepage.tag b/tags/d/description-possibly-contains-homepage.tag
new file mode 100644
index 0000000..535a3c1
--- /dev/null
+++ b/tags/d/description-possibly-contains-homepage.tag
@@ -0,0 +1,7 @@
+Tag: description-possibly-contains-homepage
+Severity: info
+Check: fields/description
+Explanation: This package has no Homepage field but has a URL in the description
+ and wording that might indicate this is the package Homepage. If it is,
+ add a Homepage control field containing it rather than mentioning it in
+ the package description.
diff --git a/tags/d/description-starts-with-leading-spaces.tag b/tags/d/description-starts-with-leading-spaces.tag
new file mode 100644
index 0000000..afd5f46
--- /dev/null
+++ b/tags/d/description-starts-with-leading-spaces.tag
@@ -0,0 +1,7 @@
+Tag: description-starts-with-leading-spaces
+Severity: warning
+Check: fields/description
+Explanation: The package's extended "Description:" paragraph starts with more than
+ one leading space. Usually, leading spaces are used to switch "verbatim
+ display" on (i.e., lines are not wrapped) so this might be a bug in the
+ package.
diff --git a/tags/d/description-starts-with-package-name.tag b/tags/d/description-starts-with-package-name.tag
new file mode 100644
index 0000000..8d2fd54
--- /dev/null
+++ b/tags/d/description-starts-with-package-name.tag
@@ -0,0 +1,7 @@
+Tag: description-starts-with-package-name
+Severity: error
+Check: fields/description
+Explanation: The first line of the "Description:" should not start with the
+ package name. For example, the package <code>foo</code> should not
+ have a description like this: "foo is a program that...".
+See-Also: debian-policy 3.4.1
diff --git a/tags/d/description-synopsis-is-duplicated.tag b/tags/d/description-synopsis-is-duplicated.tag
new file mode 100644
index 0000000..de97cb2
--- /dev/null
+++ b/tags/d/description-synopsis-is-duplicated.tag
@@ -0,0 +1,7 @@
+Tag: description-synopsis-is-duplicated
+Severity: error
+Check: fields/description
+Explanation: The first line of the extended Description: should not repeat the
+ synopsis exactly. This indicates that either the synopsis is badly formed
+ or that the extended description has been wrongly copied and pasted.
+See-Also: debian-policy 3.4.2
diff --git a/tags/d/description-synopsis-is-empty.tag b/tags/d/description-synopsis-is-empty.tag
new file mode 100644
index 0000000..1f42d5f
--- /dev/null
+++ b/tags/d/description-synopsis-is-empty.tag
@@ -0,0 +1,5 @@
+Tag: description-synopsis-is-empty
+Severity: error
+Check: fields/description
+Explanation: The first line in the "Description:" is empty.
+See-Also: debian-policy 3.4
diff --git a/tags/d/description-synopsis-starts-with-article.tag b/tags/d/description-synopsis-starts-with-article.tag
new file mode 100644
index 0000000..c660c17
--- /dev/null
+++ b/tags/d/description-synopsis-starts-with-article.tag
@@ -0,0 +1,10 @@
+Tag: description-synopsis-starts-with-article
+Severity: warning
+Check: fields/description
+Explanation: The first line of the "Description:" should omit any initial indefinite
+ or definite article: "a", "an", or "the". A good heuristic is that it should
+ be possible to substitute the package <code>name</code> and <code>synopsis</code>
+ into this formula:
+ .
+ The package <code>name</code> provides {a,an,the,some} <code>synopsis</code>.
+See-Also: developer-reference 6.2.2
diff --git a/tags/d/description-too-short.tag b/tags/d/description-too-short.tag
new file mode 100644
index 0000000..625df3b
--- /dev/null
+++ b/tags/d/description-too-short.tag
@@ -0,0 +1,6 @@
+Tag: description-too-short
+Severity: error
+Check: fields/description
+See-Also: developer-reference 6.2.2
+Explanation: The description contains only a single word. It is likely that the
+ description won't be very clear for the user.
diff --git a/tags/d/desktop-command-not-in-package.tag b/tags/d/desktop-command-not-in-package.tag
new file mode 100644
index 0000000..96110be
--- /dev/null
+++ b/tags/d/desktop-command-not-in-package.tag
@@ -0,0 +1,11 @@
+Tag: desktop-command-not-in-package
+Severity: warning
+Check: menu-format
+Explanation: The desktop entry specifies a <code>Command</code> that does not
+ match any of the executables shipped in the package.
+ .
+ This condition is often caused by a typo, or the desktop file was not updated
+ after the installed path of the executable was modified.
+ .
+ Packages should ship executables that are used as commands in <code>desktop</code>
+ files.
diff --git a/tags/d/desktop-contains-deprecated-key.tag b/tags/d/desktop-contains-deprecated-key.tag
new file mode 100644
index 0000000..5d57d1a
--- /dev/null
+++ b/tags/d/desktop-contains-deprecated-key.tag
@@ -0,0 +1,13 @@
+Tag: desktop-contains-deprecated-key
+Severity: warning
+Check: menu-format
+Explanation: The key on this line of the desktop entry was deprecated in the
+ FreeDesktop specification.
+ .
+ If that key is <code>KDE Desktop Entry</code>, the fix for this condition is
+ usually to change it to <code>Desktop Entry</code>.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful when checking the syntax of desktop entries.
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/apc.html
diff --git a/tags/d/desktop-entry-contains-deprecated-key.tag b/tags/d/desktop-entry-contains-deprecated-key.tag
new file mode 100644
index 0000000..5094056
--- /dev/null
+++ b/tags/d/desktop-entry-contains-deprecated-key.tag
@@ -0,0 +1,10 @@
+Tag: desktop-entry-contains-deprecated-key
+Severity: warning
+Check: menu-format
+Explanation: The key on this line of the Desktop entry was deprecated by the
+ FreeDesktop specification.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful for checking the syntax of Desktop entries.
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/apc.html
diff --git a/tags/d/desktop-entry-contains-encoding-key.tag b/tags/d/desktop-entry-contains-encoding-key.tag
new file mode 100644
index 0000000..a4e8183
--- /dev/null
+++ b/tags/d/desktop-entry-contains-encoding-key.tag
@@ -0,0 +1,12 @@
+Tag: desktop-entry-contains-encoding-key
+Severity: info
+Check: menu-format
+Explanation: The <code>Encoding</code> key is deprecated in the FreeDesktop
+ standard. Instead, all strings must now be encoded in UTF-8. This desktop entry
+ specifies an <code>Encoding</code> of <code>UTF-8</code>. It is harmless but can
+ be dropped.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful for checking the syntax of desktop entries.
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/apc.html
diff --git a/tags/d/desktop-entry-contains-unknown-key.tag b/tags/d/desktop-entry-contains-unknown-key.tag
new file mode 100644
index 0000000..01d0aa7
--- /dev/null
+++ b/tags/d/desktop-entry-contains-unknown-key.tag
@@ -0,0 +1,13 @@
+Tag: desktop-entry-contains-unknown-key
+Severity: warning
+Check: menu-format
+Explanation: The key on this line of the <code>desktop</code> entry is not listed
+ as being defined by the FreeDesktop specification. It is also not one of the legacy
+ KDE keywords and does not begin with <code>X-</code>.
+ .
+ The key may have been misspelled.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful when checking the syntax of <code>desktop</code> entries.
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s06.html
diff --git a/tags/d/desktop-entry-file-has-crs.tag b/tags/d/desktop-entry-file-has-crs.tag
new file mode 100644
index 0000000..e865b76
--- /dev/null
+++ b/tags/d/desktop-entry-file-has-crs.tag
@@ -0,0 +1,14 @@
+Tag: desktop-entry-file-has-crs
+Severity: warning
+Check: menu-format
+Explanation: The desktop entry file has lines ending in carriage-return and line-feed
+ instead of just a line-feed. The Desktop Entry Specification says that lines should
+ end with line-feed alone.
+ .
+ Some software may mistake the carriage-return as a part of the field value.
+ .
+ You can run the following command to remove any <code>CR</code> character in a file:
+ .
+ <code>sed -i 's/\r//g' path/to/file</code>
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s03.html
diff --git a/tags/d/desktop-entry-invalid-category.tag b/tags/d/desktop-entry-invalid-category.tag
new file mode 100644
index 0000000..869576e
--- /dev/null
+++ b/tags/d/desktop-entry-invalid-category.tag
@@ -0,0 +1,15 @@
+Tag: desktop-entry-invalid-category
+Severity: warning
+Check: menu-format
+Explanation: This <code>desktop</code> entry shows a category that is not
+ among the registered "main" or "additional" categories in the FreeDesktop
+ specification.
+ .
+ The values are case-sensitive. Whitespace is only allowed just before and
+ after the equals sign in the <code>Category</code> key, and nowhere else.
+ .
+ The <code>desktop-file-validate</code> tool in the
+ <code>desktop-file-utils</code> package is useful when checking the syntax
+ of desktop entries.
+See-Also:
+ https://specifications.freedesktop.org/menu-spec/latest/apa.html
diff --git a/tags/d/desktop-entry-lacks-icon-entry.tag b/tags/d/desktop-entry-lacks-icon-entry.tag
new file mode 100644
index 0000000..80d134c
--- /dev/null
+++ b/tags/d/desktop-entry-lacks-icon-entry.tag
@@ -0,0 +1,17 @@
+Tag: desktop-entry-lacks-icon-entry
+Severity: info
+Check: menu-format
+Explanation: This <code>.desktop</code> file does not contain an <code>Icon</code>
+ entry.
+ .
+ The <code>Icon</code> field should contain the name of the icon file, without the
+ extension, that is displayed. The different icon themes are searched to locate it.
+ For absolute paths, the name given will be used. The icon should be sufficiently
+ unique so that the user can recognize the application.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful for checking the syntax of desktop entries.
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s06.html,
+ https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html,
+ Bug#854132
diff --git a/tags/d/desktop-entry-lacks-keywords-entry.tag b/tags/d/desktop-entry-lacks-keywords-entry.tag
new file mode 100644
index 0000000..52d200e
--- /dev/null
+++ b/tags/d/desktop-entry-lacks-keywords-entry.tag
@@ -0,0 +1,18 @@
+Tag: desktop-entry-lacks-keywords-entry
+Severity: info
+Check: menu-format
+Explanation: This <code>.desktop</code> file is either missing a <code>Keywords</code>
+ entry, or it does not contain keywords above and beyond those already present in the
+ <code>Name</code> or <code>GenericName</code> entries.
+ .
+ The <code>Keywords</code> field is intended to show keywords relevant for a
+ <code>.desktop</code> file.
+ .
+ Desktop files are organized in key-value pairs and are similar to INI files.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful when checking the syntax of desktop entries.
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s06.html,
+ Bug#693918,
+ https://wiki.gnome.org/Initiatives/GnomeGoals/DesktopFileKeywords
diff --git a/tags/d/desktop-entry-lacks-main-category.tag b/tags/d/desktop-entry-lacks-main-category.tag
new file mode 100644
index 0000000..8729486
--- /dev/null
+++ b/tags/d/desktop-entry-lacks-main-category.tag
@@ -0,0 +1,11 @@
+Tag: desktop-entry-lacks-main-category
+Severity: warning
+Check: menu-format
+Explanation: The categories for this <code>desktop</code> entry do not contain any
+ "main" categories, but only "additional" ones. Additional categories should only
+ be used on conjunction with one or more main categories.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful when checking the syntax of <code>desktop</code> entries.
+See-Also:
+ https://specifications.freedesktop.org/menu-spec/latest/apa.html
diff --git a/tags/d/desktop-entry-limited-to-environments.tag b/tags/d/desktop-entry-limited-to-environments.tag
new file mode 100644
index 0000000..f13a3a6
--- /dev/null
+++ b/tags/d/desktop-entry-limited-to-environments.tag
@@ -0,0 +1,14 @@
+Tag: desktop-entry-limited-to-environments
+Severity: info
+Check: menu-format
+Explanation: This desktop entry limits the environments in which it is shown
+ via the <code>OnlyShowIn</code> field but lists multiple environments therein.
+ .
+ The condition often indicates that a desktop file was written under the
+ assumption that only GNOME, KDE, or Xfce are being used, and that the desktop
+ file is in fact intended to exclude one of them.
+ .
+ That the application from desktop environments like LXDE where it may work
+ fine. If this application supports any desktop environment except specific
+ ones, it would be better to instead specify the unsupported environments via
+ the <code>NotShowIn</code> field.
diff --git a/tags/d/desktop-entry-missing-required-key.tag b/tags/d/desktop-entry-missing-required-key.tag
new file mode 100644
index 0000000..159ae2b
--- /dev/null
+++ b/tags/d/desktop-entry-missing-required-key.tag
@@ -0,0 +1,10 @@
+Tag: desktop-entry-missing-required-key
+Severity: error
+Check: menu-format
+Explanation: Desktop entries must contain the keys <code>Type</code> and
+ <code>Name</code>.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful when checking the syntax of desktop entries.
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s06.html
diff --git a/tags/d/desktop-entry-unknown-type.tag b/tags/d/desktop-entry-unknown-type.tag
new file mode 100644
index 0000000..de3a534
--- /dev/null
+++ b/tags/d/desktop-entry-unknown-type.tag
@@ -0,0 +1,16 @@
+Tag: desktop-entry-unknown-type
+Severity: warning
+Check: menu-format
+Explanation: This <code>desktop</code> entry uses a <code>Type</code> that is
+ not among the currently recognized values of <code>Application</code>,
+ <code>Link</code> or <code>Directory</code>.
+ .
+ Implementations normally ignore unknown values but this condition is probably
+ not intended.
+ .
+ The values are case-sensitive.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful when checking the syntax of desktop entries.
+See-Also:
+ https://specifications.freedesktop.org/desktop-entry-spec/latest/ar01s06.html
diff --git a/tags/d/desktop-entry-uses-reserved-category.tag b/tags/d/desktop-entry-uses-reserved-category.tag
new file mode 100644
index 0000000..ec58bc3
--- /dev/null
+++ b/tags/d/desktop-entry-uses-reserved-category.tag
@@ -0,0 +1,16 @@
+Tag: desktop-entry-uses-reserved-category
+Severity: warning
+Check: menu-format
+Explanation: This <code>desktop</code> entry uses a <code>Reserved Category</code>
+ as explained below, but does not include an <code>OnlyShowIn</code> key.
+ .
+ Reserved categories like <code>Screensaver</code>, <code>TrayIcon</code>,
+ <code>Applet</code> or <code>Shell</code> have a desktop-specific meaning
+ but have not been standardized yet. Desktop entry files that use such a
+ reserved category must also include an <code>OnlyShowIn</code> key to limit
+ the entry to environments that support the category.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful when checking the syntax of <code>desktop</code> entries.
+See-Also:
+ https://specifications.freedesktop.org/menu-spec/latest/apas03.html
diff --git a/tags/d/desktop-file-in-wrong-dir.tag b/tags/d/desktop-file-in-wrong-dir.tag
new file mode 100644
index 0000000..5fed630
--- /dev/null
+++ b/tags/d/desktop-file-in-wrong-dir.tag
@@ -0,0 +1,9 @@
+Tag: desktop-file-in-wrong-dir
+Severity: warning
+Check: files/desktop
+Explanation: The package contains a <code>.desktop</code> file in an obsolete
+ folder such as <code>/usr/share/gnome/apps</code>.
+ .
+ According to the latest draft of the <code>menu</code> specification available
+ on freedesktop.org, <code>.desktop</code> files intended to create menus should
+ be placed in <code>/usr/share/applications</code>.
diff --git a/tags/d/desktop-mime-but-no-exec-code.tag b/tags/d/desktop-mime-but-no-exec-code.tag
new file mode 100644
index 0000000..7cd48ee
--- /dev/null
+++ b/tags/d/desktop-mime-but-no-exec-code.tag
@@ -0,0 +1,10 @@
+Tag: desktop-mime-but-no-exec-code
+Severity: warning
+Check: menu-format
+Explanation: The named desktop entry indicates support for at least one MIME
+ type, but does not provide a code like %f, %F, %u or %U in the <code>Exec</code>
+ key.
+ .
+ If the application can in fact handle files of the given MIME types, the
+ <code>menu</code> item should somehow pass those filenames as parameters to the
+ executable.
diff --git a/tags/d/development-package-ships-elf-binary-in-path.tag b/tags/d/development-package-ships-elf-binary-in-path.tag
new file mode 100644
index 0000000..535e2ee
--- /dev/null
+++ b/tags/d/development-package-ships-elf-binary-in-path.tag
@@ -0,0 +1,20 @@
+Tag: development-package-ships-elf-binary-in-path
+Severity: info
+Check: binaries/location
+Experimental: yes
+Explanation: This development package (ie. from the <code>libdevel</code> section of
+ the archive) installs an ELF binary within <code>$PATH</code>.
+ .
+ Commonly, executables in development packages provide values that are
+ relevant for using the library. Source packages that use such
+ development packages tend to execute those executables to discover how
+ to use the library.
+ .
+ When performing a cross build, host architecture binaries are generally not
+ executable. However, development packages need to be installed on the host
+ architecture so such files are useless.
+ .
+ An alternative approach is to use <code>pkg-config(1)</code> or potentially
+ splitting architecture-independent development tools into a separate
+ package that can be marked <code>Multi-Arch: foreign</code>.
+See-Also: Bug#794295, Bug#794103
diff --git a/tags/d/dfsg-version-in-native-package.tag b/tags/d/dfsg-version-in-native-package.tag
new file mode 100644
index 0000000..0cf6e6c
--- /dev/null
+++ b/tags/d/dfsg-version-in-native-package.tag
@@ -0,0 +1,13 @@
+Tag: dfsg-version-in-native-package
+Severity: warning
+Check: fields/version/repack/native
+Explanation: The version number contains the string <code>dfsg</code> but
+ the sources are native.
+ .
+ The string <code>dfsg</code> is used in Debian versions to indicate that
+ the sources were repackaged in order to comply with the Debian Free
+ Software Guidelines, but all native packages should comply with the
+ guidelines.
+See-Also:
+ https://wiki.debian.org/DebianFreeSoftwareGuidelines,
+ https://wiki.debian.org/DFSGLicenses
diff --git a/tags/d/dfsg-version-misspelled.tag b/tags/d/dfsg-version-misspelled.tag
new file mode 100644
index 0000000..47c41aa
--- /dev/null
+++ b/tags/d/dfsg-version-misspelled.tag
@@ -0,0 +1,6 @@
+Tag: dfsg-version-misspelled
+Severity: warning
+Check: fields/version/repack/typo
+Explanation: The version contains the string <code>dsfg</code>. You probably
+ meant <code>dfsg</code>. That is the conventional marker for upstream sources
+ that were repackaged in order to comply with the Debian Free Software Guidelines.
diff --git a/tags/d/dfsg-version-with-period.tag b/tags/d/dfsg-version-with-period.tag
new file mode 100644
index 0000000..ed5e9ae
--- /dev/null
+++ b/tags/d/dfsg-version-with-period.tag
@@ -0,0 +1,13 @@
+Tag: dfsg-version-with-period
+Severity: info
+Check: fields/version/repack/period
+Explanation: The version contains the string <code>.dfsg</code>.
+ That versioning may harbor a subtle sorting issue, namely: <code>1.2.dfsg1</code>
+ is a more recent version than <code>1.2.1</code>. It will therefore be difficult
+ to find a nice version string for the next upstream release if it gains another
+ dotted digit at the end.
+ .
+ It is better to use <code>+dfsg</code> instead. The plus sign <code>+</code> sorts
+ before <code>.</code>, so the sorting that is usually desired can take place:
+ .
+ <code>1.2</code> &lt; <code>1.2+dfsg</code> &lt; <code>1.2.1</code>
diff --git a/tags/d/dfsg-version-with-tilde.tag b/tags/d/dfsg-version-with-tilde.tag
new file mode 100644
index 0000000..ada8c12
--- /dev/null
+++ b/tags/d/dfsg-version-with-tilde.tag
@@ -0,0 +1,16 @@
+Tag: dfsg-version-with-tilde
+Severity: info
+Check: fields/version/repack/tilde
+Explanation: The source version string contains a tilde like <code>~dfsg</code>.
+ It is probably in a form like <code>1.0~dfsg-1</code>.
+ .
+ Most people should use a plus sign instead, as in <code>+dfsg</code>. It will
+ ensure proper version sorting.
+ .
+ We can think of two cases for which a tilde makes sense. First, upstream may release
+ a tarball again using the same version, but with the offending files removed. The
+ second case is when all DFSG concerns for a source tarball disappeared. In both cases,
+ repacking is no longer necessary. We think both cases are rare.
+See-Also:
+ https://lists.debian.org/debian-devel/2021/10/msg00012.html,
+ https://salsa.debian.org/lintian/lintian/-/merge_requests/379
diff --git a/tags/d/dh-clean-k-is-deprecated.tag b/tags/d/dh-clean-k-is-deprecated.tag
new file mode 100644
index 0000000..9cdf47c
--- /dev/null
+++ b/tags/d/dh-clean-k-is-deprecated.tag
@@ -0,0 +1,6 @@
+Tag: dh-clean-k-is-deprecated
+Severity: warning
+Check: debhelper
+See-Also: dh_clean(1)
+Explanation: This package calls dh&lowbar;clean -k in its <code>debian/rules</code> file
+ instead of dh&lowbar;prep.
diff --git a/tags/d/dh-exec-install-not-allowed-here.tag b/tags/d/dh-exec-install-not-allowed-here.tag
new file mode 100644
index 0000000..bf444da
--- /dev/null
+++ b/tags/d/dh-exec-install-not-allowed-here.tag
@@ -0,0 +1,8 @@
+Tag: dh-exec-install-not-allowed-here
+Severity: error
+Check: debhelper
+Explanation: The package uses a dh-exec-install construct in a debhelper
+ config file, where it is not permitted.
+ .
+ The dh-exec-install constructs are only allowed in dh&lowbar;install's
+ .install and dh&lowbar;installman's .manpages files, and nowhere else.
diff --git a/tags/d/dh-exec-private-helper.tag b/tags/d/dh-exec-private-helper.tag
new file mode 100644
index 0000000..2071e6f
--- /dev/null
+++ b/tags/d/dh-exec-private-helper.tag
@@ -0,0 +1,8 @@
+Tag: dh-exec-private-helper
+Severity: error
+Check: debhelper
+Explanation: The packaging file uses dh-exec, but it does not use /usr/bin/dh-exec.
+ .
+ If running dh-exec with the default set of helpers is not desired,
+ use its --with or --without options instead of directly using the
+ desired helper.
diff --git a/tags/d/dh-exec-script-without-dh-exec-features.tag b/tags/d/dh-exec-script-without-dh-exec-features.tag
new file mode 100644
index 0000000..e0f887c
--- /dev/null
+++ b/tags/d/dh-exec-script-without-dh-exec-features.tag
@@ -0,0 +1,8 @@
+Tag: dh-exec-script-without-dh-exec-features
+Severity: warning
+Check: debhelper
+Explanation: The package uses dh-exec in at least one of its files, but does
+ not use any of the features provided by dh-exec.
+ .
+ If the features provided by dh-exec is not needed, please remove the
+ executable bit, and the dh-exec usage.
diff --git a/tags/d/dh-exec-subst-unknown-variable.tag b/tags/d/dh-exec-subst-unknown-variable.tag
new file mode 100644
index 0000000..dac9fd7
--- /dev/null
+++ b/tags/d/dh-exec-subst-unknown-variable.tag
@@ -0,0 +1,10 @@
+Tag: dh-exec-subst-unknown-variable
+Severity: info
+Check: debhelper
+Explanation: The package uses a variable in one of its debhelper config
+ files, but the variable is not one known to dpkg-architecture.
+ .
+ It is recommended to use a known subset of variables. If the package
+ needs more than that, and makes sure the variable is exported through
+ the build one way or the other, then this tag can be safely ignored
+ or overridden.
diff --git a/tags/d/dh-exec-useless-usage.tag b/tags/d/dh-exec-useless-usage.tag
new file mode 100644
index 0000000..0670845
--- /dev/null
+++ b/tags/d/dh-exec-useless-usage.tag
@@ -0,0 +1,19 @@
+Tag: dh-exec-useless-usage
+Severity: info
+Check: debhelper
+Explanation: The package uses dh-exec for things it is not needed for.
+ .
+ This typically includes using ${DEB&lowbar;HOST&lowbar;MULTIARCH} in an install
+ target where a wildcard would suffice. For example, if you had:
+ .
+ #! /usr/bin/dh-exec
+ usr/lib/${DEB&lowbar;HOST&lowbar;MULTIARCH}
+ .
+ This could be replaced with the following in most cases, dropping the
+ need for dh-exec:
+ .
+ usr/lib/&ast;
+ .
+ However, there may be other directories that match the wildcard,
+ which one does not wish to install. In that case, this warning should
+ be ignored or overridden.
diff --git a/tags/d/dh-make-template-in-source.tag b/tags/d/dh-make-template-in-source.tag
new file mode 100644
index 0000000..27c9878
--- /dev/null
+++ b/tags/d/dh-make-template-in-source.tag
@@ -0,0 +1,10 @@
+Tag: dh-make-template-in-source
+Severity: warning
+Check: dh-make/template
+Explanation: The named file looks like a <code>dh&lowbar;make</code> template.
+ .
+ Source files like <code>debian/&ast;.ex</code> or <code>debian/ex.&ast;</code>
+ were usually installed by <code>dh&lowbar;make</code>. They are meant to be
+ renamed after they were adapted by the maintainer.
+ .
+ Unused templates should be removed.
diff --git a/tags/d/dh-quilt-addon-but-quilt-source-format.tag b/tags/d/dh-quilt-addon-but-quilt-source-format.tag
new file mode 100644
index 0000000..3e61137
--- /dev/null
+++ b/tags/d/dh-quilt-addon-but-quilt-source-format.tag
@@ -0,0 +1,8 @@
+Tag: dh-quilt-addon-but-quilt-source-format
+Severity: warning
+Check: debhelper
+Explanation: The package uses (for example) <code>dh $@ --with quilt</code> in
+ <code>debian/rules</code> but is already using the <code>3.0 (quilt)</code>
+ source format via the <code>debian/source/format</code> file.
+ .
+ Please remove the <code>--with quilt</code> argument.
diff --git a/tags/d/dh_installmanpages-is-obsolete.tag b/tags/d/dh_installmanpages-is-obsolete.tag
new file mode 100644
index 0000000..4cd0fe5
--- /dev/null
+++ b/tags/d/dh_installmanpages-is-obsolete.tag
@@ -0,0 +1,6 @@
+Tag: dh_installmanpages-is-obsolete
+Severity: warning
+Check: debhelper
+See-Also: dh_installmanpages(1)
+Explanation: This package calls dh&lowbar;installmanpages in its <code>debian/rules</code> file.
+ dh&lowbar;installmanpages is deprecated in favour of dh&lowbar;installman.
diff --git a/tags/d/dir-in-usr-local.tag b/tags/d/dir-in-usr-local.tag
new file mode 100644
index 0000000..ee60f88
--- /dev/null
+++ b/tags/d/dir-in-usr-local.tag
@@ -0,0 +1,13 @@
+Tag: dir-in-usr-local
+Severity: error
+Check: files/hierarchy/standard
+Explanation: The package installs a directory in <code>/usr/local/...</code>. That is
+ not allowed.
+ .
+ If you want to provide an empty directory in <code>/usr/local</code> for
+ convenience of the local system administrator, please follow the rules
+ in the policy manual (section 9.1.2), i.e. create the directories in
+ the <code>postinst</code> maintainer script but do not fail if the operation
+ is unsuccessful (for example, if <code>/usr/local</code> is mounted read-only).
+See-Also:
+ debian-policy 9.1.2
diff --git a/tags/d/dir-or-file-in-build-tree.tag b/tags/d/dir-or-file-in-build-tree.tag
new file mode 100644
index 0000000..84f0bc2
--- /dev/null
+++ b/tags/d/dir-or-file-in-build-tree.tag
@@ -0,0 +1,8 @@
+Tag: dir-or-file-in-build-tree
+Severity: error
+Check: files/build-path
+Explanation: The package installs a file in common build paths.
+ .
+ This often occurs if the package uses regular expressions to
+ strip the build path without properly regex quoting the build
+ path.
diff --git a/tags/d/dir-or-file-in-etc-opt.tag b/tags/d/dir-or-file-in-etc-opt.tag
new file mode 100644
index 0000000..ad278b1
--- /dev/null
+++ b/tags/d/dir-or-file-in-etc-opt.tag
@@ -0,0 +1,6 @@
+Tag: dir-or-file-in-etc-opt
+Severity: error
+Check: files/hierarchy/standard
+Explanation: Debian packages should not install into <code>/etc/opt</code>, because it
+ is reserved for add-on software.
+See-Also: filesystem-hierarchy optaddonapplicationsoftwarepackages
diff --git a/tags/d/dir-or-file-in-home.tag b/tags/d/dir-or-file-in-home.tag
new file mode 100644
index 0000000..1f20163
--- /dev/null
+++ b/tags/d/dir-or-file-in-home.tag
@@ -0,0 +1,5 @@
+Tag: dir-or-file-in-home
+Severity: error
+Check: files/hierarchy/standard
+Explanation: Debian packages should not install into <code>/home</code>, because it
+ is reserved for users.
diff --git a/tags/d/dir-or-file-in-mnt.tag b/tags/d/dir-or-file-in-mnt.tag
new file mode 100644
index 0000000..21a0415
--- /dev/null
+++ b/tags/d/dir-or-file-in-mnt.tag
@@ -0,0 +1,7 @@
+Tag: dir-or-file-in-mnt
+Severity: error
+Check: files/hierarchy/standard
+Explanation: Packages should not install into <code>/mnt</code>. The FHS states that
+ this directory is reserved for the local system administrator for
+ temporary mounts and that it must not be used by installation programs.
+See-Also: filesystem-hierarchy mntmountpointforatemporarilymount
diff --git a/tags/d/dir-or-file-in-opt.tag b/tags/d/dir-or-file-in-opt.tag
new file mode 100644
index 0000000..2028621
--- /dev/null
+++ b/tags/d/dir-or-file-in-opt.tag
@@ -0,0 +1,6 @@
+Tag: dir-or-file-in-opt
+Severity: error
+Check: files/hierarchy/standard
+Explanation: Debian packages should not install into <code>/opt</code>, because it
+ is reserved for add-on software.
+See-Also: filesystem-hierarchy optaddonapplicationsoftwarepackages
diff --git a/tags/d/dir-or-file-in-run.tag b/tags/d/dir-or-file-in-run.tag
new file mode 100644
index 0000000..f36f189
--- /dev/null
+++ b/tags/d/dir-or-file-in-run.tag
@@ -0,0 +1,6 @@
+Tag: dir-or-file-in-run
+Severity: error
+Check: files/hierarchy/standard
+Explanation: <code>/run</code> may be a temporary filesystem, so any directories
+ or files needed there must be created dynamically at boot time.
+See-Also: debian-policy 9.3.2
diff --git a/tags/d/dir-or-file-in-srv.tag b/tags/d/dir-or-file-in-srv.tag
new file mode 100644
index 0000000..afdd4ff
--- /dev/null
+++ b/tags/d/dir-or-file-in-srv.tag
@@ -0,0 +1,18 @@
+Tag: dir-or-file-in-srv
+Severity: error
+Check: files/hierarchy/standard
+Explanation: Debian packages should install nothing into <code>/srv</code>.
+ .
+ The specification for <code>/srv</code> states that its use is at the
+ discretion of the local administrator. No package should rely on a
+ particular layout.
+ .
+ Debian packages that install files there are unable to adjust to any local
+ policy. They force a local administrator's hand.
+ .
+ If a package wishes to place data below <code>/srv</code>, it must do so in
+ a way that permits the local administrator to select the folder (for
+ example, through post-install configuration, setup scripts,
+ <code>debconf</code> prompts, or similar).
+See-Also:
+ filesystem-hierarchy srvdataforservicesprovidedbysystem
diff --git a/tags/d/dir-or-file-in-tmp.tag b/tags/d/dir-or-file-in-tmp.tag
new file mode 100644
index 0000000..7bd4fdc
--- /dev/null
+++ b/tags/d/dir-or-file-in-tmp.tag
@@ -0,0 +1,9 @@
+Tag: dir-or-file-in-tmp
+Severity: error
+Check: files/hierarchy/standard
+Explanation: Packages must not install files into <code>/tmp</code> or
+ <code>/var/tmp</code>. The File Hierarchy Standard specifies that such files
+ may be removed by the administrator and that programs may not depend on
+ any files in <code>/tmp</code> being preserved across invocations, which
+ combined mean that it makes no sense to ship files in these directories.
+See-Also: filesystem-hierarchy tmptemporaryfiles, filesystem-hierarchy vartmptemporaryfilespreservedbetwee
diff --git a/tags/d/dir-or-file-in-var-lock.tag b/tags/d/dir-or-file-in-var-lock.tag
new file mode 100644
index 0000000..2c5b59f
--- /dev/null
+++ b/tags/d/dir-or-file-in-var-lock.tag
@@ -0,0 +1,6 @@
+Tag: dir-or-file-in-var-lock
+Severity: error
+Check: files/hierarchy/standard
+Explanation: <code>/var/lock</code> may be a temporary filesystem, so any directories
+ or files needed there must be created dynamically at boot time.
+See-Also: debian-policy 9.3.2
diff --git a/tags/d/dir-or-file-in-var-run.tag b/tags/d/dir-or-file-in-var-run.tag
new file mode 100644
index 0000000..874a432
--- /dev/null
+++ b/tags/d/dir-or-file-in-var-run.tag
@@ -0,0 +1,6 @@
+Tag: dir-or-file-in-var-run
+Severity: error
+Check: files/hierarchy/standard
+Explanation: <code>/var/run</code> may be a temporary filesystem, so any directories
+ or files needed there must be created dynamically at boot time.
+See-Also: debian-policy 9.3.2
diff --git a/tags/d/dir-or-file-in-var-www.tag b/tags/d/dir-or-file-in-var-www.tag
new file mode 100644
index 0000000..8250fcb
--- /dev/null
+++ b/tags/d/dir-or-file-in-var-www.tag
@@ -0,0 +1,20 @@
+Tag: dir-or-file-in-var-www
+Severity: error
+Check: files/hierarchy/standard
+See-Also: filesystem-hierarchy thevarhierarchy
+Explanation: Debian packages should not install files under <code>/var/www</code>.
+ This is not one of the <code>/var</code> directories in the File Hierarchy
+ Standard and is under the control of the local administrator. Packages
+ should not assume that it is the document root for a web server; it is
+ very common for users to change the default document root and packages
+ should not assume that users will keep any particular setting.
+ .
+ Packages that want to make files available via an installed web server
+ should instead put instructions for the local administrator in a
+ README.Debian file and ideally include configuration fragments for common
+ web servers such as Apache.
+ .
+ As an exception, packages are permitted to create the <code>/var/www</code>
+ directory due to its past history as the default document root, but
+ should at most copy over a default file in postinst for a new install.
+ In this case, please add a Lintian override.
diff --git a/tags/d/direct-changes-in-diff-but-no-patch-system.tag b/tags/d/direct-changes-in-diff-but-no-patch-system.tag
new file mode 100644
index 0000000..91ca08d
--- /dev/null
+++ b/tags/d/direct-changes-in-diff-but-no-patch-system.tag
@@ -0,0 +1,13 @@
+Tag: direct-changes-in-diff-but-no-patch-system
+Severity: pedantic
+Check: debian/patches
+Explanation: The Debian diff.gz contains changes to files or creation of additional
+ files outside the <code>debian</code> directory. Keeping the changes as separate
+ patches under the control of a patch system allows for more fine grained
+ control over them. The package will also more easily support possible
+ future source package formats if all changes outside the <code>debian</code>
+ directory are stored as patches.
+ .
+ If the diff only creates new files that can be copied into place by the
+ package build rules, consider putting them in the <code>debian</code>
+ directory rather than using a patch system.
diff --git a/tags/d/directory-in-etc-sv-directory-without-executable-run-script.tag b/tags/d/directory-in-etc-sv-directory-without-executable-run-script.tag
new file mode 100644
index 0000000..dfbbb5e
--- /dev/null
+++ b/tags/d/directory-in-etc-sv-directory-without-executable-run-script.tag
@@ -0,0 +1,10 @@
+Tag: directory-in-etc-sv-directory-without-executable-run-script
+Severity: error
+Check: init-d
+Explanation: This package provides the specified directory under
+ <code>/etc/sv</code> but it does not ship a <code>run</code> script under this
+ directory.
+ .
+ Please check that you are installing your <code>run</code> script to the
+ right location and that has the correct executable permissions.
+See-Also: dh_runit(1)
diff --git a/tags/d/distant-prerequisite-in-shlibs.tag b/tags/d/distant-prerequisite-in-shlibs.tag
new file mode 100644
index 0000000..e6d908b
--- /dev/null
+++ b/tags/d/distant-prerequisite-in-shlibs.tag
@@ -0,0 +1,18 @@
+Tag: distant-prerequisite-in-shlibs
+Severity: warning
+Check: debian/shlibs
+Renamed-From:
+ shlibs-declares-dependency-on-other-package
+Explanation: This package declares in its shlibs control file either a dependency
+ on some other package not listed in the Provides of this package or on a
+ version of this package that the package version doesn't satisfy.
+ .
+ Packages should normally only list in their shlibs control file the
+ shared libraries included in that package, and therefore the dependencies
+ listed there should normally be satisfied by either the package itself or
+ one of its Provides.
+ .
+ In unusual circumstances where it's necessary to declare more complex
+ dependencies in the shlibs control file, please add a Lintian override
+ for this warning.
+See-Also: debian-policy 8.6
diff --git a/tags/d/distribution-and-changes-mismatch.tag b/tags/d/distribution-and-changes-mismatch.tag
new file mode 100644
index 0000000..47ab397
--- /dev/null
+++ b/tags/d/distribution-and-changes-mismatch.tag
@@ -0,0 +1,12 @@
+Tag: distribution-and-changes-mismatch
+Severity: warning
+Check: fields/distribution
+Explanation: The <code>Distribution</code> in the <code>.changes</code> file indicates
+ that packages should be installed into one distribution (suite), but the
+ distribution in the <code>Changes</code> field copied from
+ <code>debian/changelog</code> indicates that a different distribution
+ was intended.
+ .
+ This is an easy mistake to make when invoking "sbuild ... foo.dsc".
+ Double-check the <code>-d</code> option if using sbuild in this way.
+See-Also: Bug#542747, Bug#529281
diff --git a/tags/d/distribution-and-experimental-mismatch.tag b/tags/d/distribution-and-experimental-mismatch.tag
new file mode 100644
index 0000000..6e84f18
--- /dev/null
+++ b/tags/d/distribution-and-experimental-mismatch.tag
@@ -0,0 +1,11 @@
+Tag: distribution-and-experimental-mismatch
+Severity: error
+Check: fields/distribution
+Explanation: The <code>Distribution</code> in the <code>.changes</code> file indicates
+ that packages should be installed into a non-experimental distribution
+ (suite), but the distribution in the <code>Changes</code> field copied from
+ <code>debian/changelog</code> indicates that experimental was intended.
+ .
+ This is an easy mistake to make when invoking "sbuild ... foo.dsc".
+ Double-check the <code>-d</code> option if using sbuild in this way.
+See-Also: Bug#542747, Bug#529281
diff --git a/tags/d/diversion-for-unknown-file.tag b/tags/d/diversion-for-unknown-file.tag
new file mode 100644
index 0000000..edd4e36
--- /dev/null
+++ b/tags/d/diversion-for-unknown-file.tag
@@ -0,0 +1,5 @@
+Tag: diversion-for-unknown-file
+Severity: error
+Check: maintainer-scripts/diversion
+Explanation: The named maintainer script adds a diversion for a file that
+ is not being provided by this package.
diff --git a/tags/d/django-package-does-not-depend-on-django.tag b/tags/d/django-package-does-not-depend-on-django.tag
new file mode 100644
index 0000000..0f782c4
--- /dev/null
+++ b/tags/d/django-package-does-not-depend-on-django.tag
@@ -0,0 +1,8 @@
+Tag: django-package-does-not-depend-on-django
+Severity: warning
+Check: languages/python
+Explanation: This package appears to be library module for the Django web development
+ framework but it does not specify a binary dependency on the Django package
+ itself.
+ .
+ Please add a Depends on <code>python-django</code> or <code>python3-django</code>.
diff --git a/tags/d/dm-upload-allowed-is-obsolete.tag b/tags/d/dm-upload-allowed-is-obsolete.tag
new file mode 100644
index 0000000..398afeb
--- /dev/null
+++ b/tags/d/dm-upload-allowed-is-obsolete.tag
@@ -0,0 +1,8 @@
+Tag: dm-upload-allowed-is-obsolete
+Severity: warning
+Check: fields/dm-upload-allowed
+Explanation: The implementation of the "Debian Maintainers" GR has changed
+ and the "DM-Upload-Allowed" field is now obsolete.
+ .
+ Instead these permissions are granted via "dak-commands" files.
+See-Also: https://lists.debian.org/debian-devel-announce/2012/09/msg00008.html
diff --git a/tags/d/doc-base-abstract-field-is-template.tag b/tags/d/doc-base-abstract-field-is-template.tag
new file mode 100644
index 0000000..f544f3a
--- /dev/null
+++ b/tags/d/doc-base-abstract-field-is-template.tag
@@ -0,0 +1,8 @@
+Tag: doc-base-abstract-field-is-template
+Severity: warning
+Check: menus
+Explanation: The <code>Abstract</code> field of the <code>doc-base</code>
+ control file contains the phrase "manage online manuals" that likely
+ originated from an sample control file in the <code>doc-base</code> manual.
+See-also:
+ doc-base-manual 2.3.1
diff --git a/tags/d/doc-base-abstract-field-separator-extra-whitespace.tag b/tags/d/doc-base-abstract-field-separator-extra-whitespace.tag
new file mode 100644
index 0000000..57c5a27
--- /dev/null
+++ b/tags/d/doc-base-abstract-field-separator-extra-whitespace.tag
@@ -0,0 +1,10 @@
+Tag: doc-base-abstract-field-separator-extra-whitespace
+Severity: warning
+Check: menus
+Explanation: The line separating two paragraphs in an <code>Abstract</code>
+ field in the given <code>doc-base</code> contains additional whitespace.
+ .
+ The separator line should consist of a single space followed by a single dot,
+ and nothing else.
+See-Also:
+ doc-base-manual 2.3.2
diff --git a/tags/d/doc-base-abstract-might-contain-extra-leading-whitespace.tag b/tags/d/doc-base-abstract-might-contain-extra-leading-whitespace.tag
new file mode 100644
index 0000000..f62ce21
--- /dev/null
+++ b/tags/d/doc-base-abstract-might-contain-extra-leading-whitespace.tag
@@ -0,0 +1,8 @@
+Tag: doc-base-abstract-might-contain-extra-leading-whitespace
+Severity: warning
+Check: menus
+Explanation: Continuation lines in the <code>Abstract</code> field of
+ a <code>doc-base</code> control file should start with a single space,
+ except when the spaces are meant to be shown by frontends.
+See-Also:
+ doc-base-manual 2.3.2
diff --git a/tags/d/doc-base-document-field-ends-in-whitespace.tag b/tags/d/doc-base-document-field-ends-in-whitespace.tag
new file mode 100644
index 0000000..5526004
--- /dev/null
+++ b/tags/d/doc-base-document-field-ends-in-whitespace.tag
@@ -0,0 +1,9 @@
+Tag: doc-base-document-field-ends-in-whitespace
+Severity: error
+Check: menus
+Explanation: The <code>Document</code> field in a <code>doc-base</code>
+ file should not end in whitespace. Versions of <code>doc-base</code> as
+ recent as 0.8.5 cannot deal gracefully with such fields.
+ .
+ Also, Ddebhelper versions 5.0.57 or earlier may create files that end in
+ whitespace when such files are installed.
diff --git a/tags/d/doc-base-document-field-not-in-first-line.tag b/tags/d/doc-base-document-field-not-in-first-line.tag
new file mode 100644
index 0000000..66f896a
--- /dev/null
+++ b/tags/d/doc-base-document-field-not-in-first-line.tag
@@ -0,0 +1,10 @@
+Tag: doc-base-document-field-not-in-first-line
+Severity: error
+Check: menus
+Explanation: The <code>Document</code> field must be located in the first line
+ of the given <code>doc-base</code> control file.
+ .
+ For performance reasons, versions 0.8 and later of <code>doc-base</code>
+ parse only the first line of the file when unregistering documents.
+See-Also:
+ doc-base-manual 2.3.2.1
diff --git a/tags/d/doc-base-file-lacks-required-field.tag b/tags/d/doc-base-file-lacks-required-field.tag
new file mode 100644
index 0000000..4e23a99
--- /dev/null
+++ b/tags/d/doc-base-file-lacks-required-field.tag
@@ -0,0 +1,8 @@
+Tag: doc-base-file-lacks-required-field
+Severity: error
+Check: menus
+Explanation: The named field is required in that particular section but
+ missing from the given <code>doc-base</code> control file.
+See-Also:
+ doc-base-manual 2.3.2.1,
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-file-no-format-section.tag b/tags/d/doc-base-file-no-format-section.tag
new file mode 100644
index 0000000..9a0ea12
--- /dev/null
+++ b/tags/d/doc-base-file-no-format-section.tag
@@ -0,0 +1,7 @@
+Tag: doc-base-file-no-format-section
+Severity: error
+Check: menus
+Explanation: The given <code>doc-base</code> control file does specify
+ a <code>Format</code> section.
+See-Also:
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-file-no-format.tag b/tags/d/doc-base-file-no-format.tag
new file mode 100644
index 0000000..db0066c
--- /dev/null
+++ b/tags/d/doc-base-file-no-format.tag
@@ -0,0 +1,9 @@
+Tag: doc-base-file-no-format
+Severity: error
+Check: menus
+Explanation: A <code>Format</code> sections in the given <code>doc-base</code>
+ control file does not actually specify a format.
+ .
+ Each section, except the first, must specify a format.
+See-Also:
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-file-no-index.tag b/tags/d/doc-base-file-no-index.tag
new file mode 100644
index 0000000..3852ab6
--- /dev/null
+++ b/tags/d/doc-base-file-no-index.tag
@@ -0,0 +1,11 @@
+Tag: doc-base-file-no-index
+Severity: error
+Check: menus
+Explanation: The <code>Format</code> sections in the given <code>doc-base</code>
+ control files for <code>HTML</code> or <code>Info</code> documents must also
+ contain an <code>Index</code> field that shows an appropriate starting point
+ for the document series.
+ .
+ The field must be present even if the documentation is a single file.
+See-Also:
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-file-references-missing-file.tag b/tags/d/doc-base-file-references-missing-file.tag
new file mode 100644
index 0000000..52b8924
--- /dev/null
+++ b/tags/d/doc-base-file-references-missing-file.tag
@@ -0,0 +1,9 @@
+Tag: doc-base-file-references-missing-file
+Severity: error
+Check: menus
+Explanation: One of the files mentioned in an <code>Index</code> or
+ <code>Files</code> field in this <code>doc-base</code> control file
+ does not exist in the package.
+ .
+ This issue can occur when installable packages attempt to register
+ documentation that is actually shipped in a related package.
diff --git a/tags/d/doc-base-file-references-wrong-path.tag b/tags/d/doc-base-file-references-wrong-path.tag
new file mode 100644
index 0000000..8c1002c
--- /dev/null
+++ b/tags/d/doc-base-file-references-wrong-path.tag
@@ -0,0 +1,8 @@
+Tag: doc-base-file-references-wrong-path
+Severity: error
+Check: menus
+Explanation: The given <code>doc-base</code> control file references a
+ file in an <code>Index</code> or <code>Files</code> field that does not
+ start with <code>/usr/share/doc</code> or <code>/usr/share/info</code>.
+See-Also:
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-file-separator-extra-whitespace.tag b/tags/d/doc-base-file-separator-extra-whitespace.tag
new file mode 100644
index 0000000..35a7e7e
--- /dev/null
+++ b/tags/d/doc-base-file-separator-extra-whitespace.tag
@@ -0,0 +1,11 @@
+Tag: doc-base-file-separator-extra-whitespace
+Severity: warning
+Check: menus
+Explanation: The separating line between two <code>File</code> sections
+ in the given <code>doc-base</code> control file contains additional
+ whitespace.
+ .
+ The section separator should be just an empty line without any other
+ whitespace.
+See-Also:
+ doc-base-manual 2.3.2
diff --git a/tags/d/doc-base-file-syntax-error.tag b/tags/d/doc-base-file-syntax-error.tag
new file mode 100644
index 0000000..783a44c
--- /dev/null
+++ b/tags/d/doc-base-file-syntax-error.tag
@@ -0,0 +1,7 @@
+Tag: doc-base-file-syntax-error
+Severity: error
+Check: menus
+Explanation: Lintian found a syntax error in the give <code>doc-base</code>
+ control file.
+See-Also:
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-file-unknown-field.tag b/tags/d/doc-base-file-unknown-field.tag
new file mode 100644
index 0000000..78e19ef
--- /dev/null
+++ b/tags/d/doc-base-file-unknown-field.tag
@@ -0,0 +1,12 @@
+Tag: doc-base-file-unknown-field
+Severity: error
+Check: menus
+Explanation: The <code>doc-base</code> control file contains a field that
+ is either unknown or invalid in the section in which it appears.
+ .
+ Possible reasons are a typo in field name, a missing empty line between
+ sections in the <doc-base> control file, or an extra empty line between
+ sections.
+See-Also:
+ doc-base-manual 2.3.2.1,
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-file-unknown-format.tag b/tags/d/doc-base-file-unknown-format.tag
new file mode 100644
index 0000000..c2d5da9
--- /dev/null
+++ b/tags/d/doc-base-file-unknown-format.tag
@@ -0,0 +1,13 @@
+Tag: doc-base-file-unknown-format
+Severity: warning
+Check: menus
+Explanation: The <code>Format</code> field in this <code>doc-base</code>
+ control file declares an unsupported format.
+ .
+ Recognized formats are <code>HTML</code>, <code>Text</code>, <code>PDF</code>,
+ <code>PostScript</code>, <code>Info</code>, <code>DVI</code>,
+ and <code>DebianDoc-SGML</code>.
+ .
+ All of those are case-insensitive.
+See-Also:
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-index-references-multiple-files.tag b/tags/d/doc-base-index-references-multiple-files.tag
new file mode 100644
index 0000000..d202966
--- /dev/null
+++ b/tags/d/doc-base-index-references-multiple-files.tag
@@ -0,0 +1,10 @@
+Tag: doc-base-index-references-multiple-files
+Severity: error
+Check: menus
+Explanation: The <code>Index</code> field in a <code>doc-base</code> file
+ should reference the single index file for that document.
+ .
+ Any other files belonging to the same document should be listed in the
+ <code>Files</code> field.
+See-Also:
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/doc-base-invalid-document-field.tag b/tags/d/doc-base-invalid-document-field.tag
new file mode 100644
index 0000000..d6c0cb1
--- /dev/null
+++ b/tags/d/doc-base-invalid-document-field.tag
@@ -0,0 +1,10 @@
+Tag: doc-base-invalid-document-field
+Severity: error
+Check: menus
+Explanation: The <code>Document</code> field should consist only of lowercase letters
+ (<code>a-z</code>), digits (<code>0-9</code>), the plus sign (<code>+</code>),
+ the minus sign (<code>-</code>) sign, or dots (<code>.</code>).
+ .
+ Uppercase letters are not allowed.
+See-Also:
+ doc-base-manual 2.2
diff --git a/tags/d/doc-base-unknown-section.tag b/tags/d/doc-base-unknown-section.tag
new file mode 100644
index 0000000..a08800b
--- /dev/null
+++ b/tags/d/doc-base-unknown-section.tag
@@ -0,0 +1,11 @@
+Tag: doc-base-unknown-section
+Severity: warning
+Check: menus
+Explanation: The section name indicated in the given <code>doc-base</code>
+ control file is outside the <code>doc-base</code> standard.
+ .
+ The <code>doc-base</code> section names are loosely based on <code>menu</code>
+ sections, but are not the same.
+See-Also:
+ doc-base-manual 2.3.3,
+ file:///usr/share/doc/doc-base/doc-base.html/index.html
diff --git a/tags/d/doc-base-uses-applications-section.tag b/tags/d/doc-base-uses-applications-section.tag
new file mode 100644
index 0000000..a0f9f47
--- /dev/null
+++ b/tags/d/doc-base-uses-applications-section.tag
@@ -0,0 +1,12 @@
+Tag: doc-base-uses-applications-section
+Severity: warning
+Check: menus
+Explanation: The section indicated in the given <code>doc-base</code>
+ control file uses a top-level section named <code>Apps</code> or
+ <code>Applications</code>. Those names are only used in <code>menu</code>,
+ but not in <code>doc-base</code>.
+ .
+ You may just be able to drop the <code>Applications/</code> part in the
+ section.
+See-Also:
+ doc-base-manual 2.3.3
diff --git a/tags/d/doc-package-depends-on-main-package.tag b/tags/d/doc-package-depends-on-main-package.tag
new file mode 100644
index 0000000..4f63af0
--- /dev/null
+++ b/tags/d/doc-package-depends-on-main-package.tag
@@ -0,0 +1,9 @@
+Tag: doc-package-depends-on-main-package
+Severity: warning
+Check: fields/package-relations
+Explanation: The name of this package suggests that it is a documentation package.
+ It is usually not desirable for documentation packages to depend on the
+ packages they document, because users may want to install the docs before
+ they decide whether they want to install the package. Also, documentation
+ packages are often architecture-independent, so on other architectures
+ the package on which it depends may not even exist.
diff --git a/tags/d/documentation-package-not-architecture-independent.tag b/tags/d/documentation-package-not-architecture-independent.tag
new file mode 100644
index 0000000..2dd7c63
--- /dev/null
+++ b/tags/d/documentation-package-not-architecture-independent.tag
@@ -0,0 +1,5 @@
+Tag: documentation-package-not-architecture-independent
+Severity: warning
+Check: fields/architecture
+Explanation: Documentation packages usually shouldn't carry anything that requires
+ recompiling on various architectures, in order to save space on mirrors.
diff --git a/tags/d/dot-before-repack-count.tag b/tags/d/dot-before-repack-count.tag
new file mode 100644
index 0000000..db39328
--- /dev/null
+++ b/tags/d/dot-before-repack-count.tag
@@ -0,0 +1,15 @@
+Tag: dot-before-repack-count
+Severity: info
+Check: fields/version/repack/count
+Explanation: The source version contains a repack count that is prefaced by a dot,
+ like <code>+dfsg.N</code>.
+ .
+ For proper version sorting, please use <code>+dfsgN</code> instead.
+ .
+ Please note, however, that a version containing the dot <code>+dfsg.N-1</code> (here
+ with a Debian revision) should not change to <code>+dfsgN-1</code> (without the dot)
+ for the same upstream release. That is because <code>1.0+dfsgN-1</code> always appears
+ less recent than the original <code>1.0+dfsg.1-1</code>. Please consider the new
+ format when upstream cuts the next release.
+See-Also:
+ https://lists.debian.org/debian-devel/2021/10/msg00026.html
diff --git a/tags/d/doubly-armored-upstream-signature.tag b/tags/d/doubly-armored-upstream-signature.tag
new file mode 100644
index 0000000..14705f3
--- /dev/null
+++ b/tags/d/doubly-armored-upstream-signature.tag
@@ -0,0 +1,8 @@
+Tag: doubly-armored-upstream-signature
+Severity: error
+Check: upstream-signature
+Explanation: The packaging includes a detached upstream signature file that was armored
+ twice (or more) using <code>gpg --enarmor</code>. That is an error.
+ .
+ Please armor the signature just once. You can also use standard tools such as
+ <code>gpg --armor --detach-sig</code>.
diff --git a/tags/d/dpatch-build-dep-but-no-patch-list.tag b/tags/d/dpatch-build-dep-but-no-patch-list.tag
new file mode 100644
index 0000000..d2159c8
--- /dev/null
+++ b/tags/d/dpatch-build-dep-but-no-patch-list.tag
@@ -0,0 +1,11 @@
+Tag: dpatch-build-dep-but-no-patch-list
+Severity: warning
+Check: debian/patches/dpatch
+Explanation: Using dpatch requires you to explicitly list all patches you want
+ to apply in debian/patches/00list. This package build-depends on dpatch,
+ but does not provide a patch list. You should either remove the dpatch
+ build dependency or add a patch list.
+ .
+ Note that an empty file cannot be represented in the Debian diff, so an
+ empty patch list will disappear in the source package. If you intended
+ for the series file to be empty, add a comment line.
diff --git a/tags/d/dpatch-index-references-non-existent-patch.tag b/tags/d/dpatch-index-references-non-existent-patch.tag
new file mode 100644
index 0000000..685c0e3
--- /dev/null
+++ b/tags/d/dpatch-index-references-non-existent-patch.tag
@@ -0,0 +1,5 @@
+Tag: dpatch-index-references-non-existent-patch
+Severity: error
+Check: debian/patches/dpatch
+Explanation: In the 00list file listing all your dpatches, you referenced a file
+ that does not exist. This will lead to a fatal error when calling dpatch.
diff --git a/tags/d/dpatch-missing-description.tag b/tags/d/dpatch-missing-description.tag
new file mode 100644
index 0000000..2930c74
--- /dev/null
+++ b/tags/d/dpatch-missing-description.tag
@@ -0,0 +1,14 @@
+Tag: dpatch-missing-description
+Severity: info
+Check: debian/patches/dpatch
+Explanation: dpatch files should carry a description of the included patch.
+ Description lines start with "## DP:".
+ .
+ As well as a description of the purpose and function of the patch, the
+ description should ideally contain author information, a URL for the bug
+ report (if any), Debian or upstream bugs fixed by it, upstream status,
+ the Debian version and date the patch was first included, and any other
+ information that would be useful if someone were investigating the
+ patch and underlying problem. Please consider using the DEP 3 format for
+ this information.
+See-Also: https://dep-team.pages.debian.net/deps/dep3/
diff --git a/tags/d/drop-python-version-declaration.tag b/tags/d/drop-python-version-declaration.tag
new file mode 100644
index 0000000..67c0317
--- /dev/null
+++ b/tags/d/drop-python-version-declaration.tag
@@ -0,0 +1,16 @@
+Tag: drop-python-version-declaration
+Severity: warning
+Check: testsuite
+Renamed-From:
+ query-requested-python-versions-in-test
+ query-declared-python-versions-in-test
+Explanation:
+ Your sources request a specific set of Python versions via the control field
+ <code>X-Python3-Version</code> but all declared autopkgtests exercise all supported
+ Python versions by using the command <code>py3versions --supported</code>.
+ .
+ The <code>X-Python3-Version</code> control field is not needed when sources work
+ with all Python versions currently supported.
+See-Also:
+ py3versions(1),
+ Bug#1001677
diff --git a/tags/d/duplicate-changelog-files.tag b/tags/d/duplicate-changelog-files.tag
new file mode 100644
index 0000000..13f675c
--- /dev/null
+++ b/tags/d/duplicate-changelog-files.tag
@@ -0,0 +1,9 @@
+Tag: duplicate-changelog-files
+Severity: warning
+Check: files/duplicates
+Explanation: The package appears to be shipping two copies of the changelog.
+ .
+ If the second copy is really needed, consider making it a symlink to
+ the canonical place for the relevant changelog.
+ .
+ Both upstream and Debian changelogs are checked with this tag.
diff --git a/tags/d/duplicate-conffile.tag b/tags/d/duplicate-conffile.tag
new file mode 100644
index 0000000..79baba9
--- /dev/null
+++ b/tags/d/duplicate-conffile.tag
@@ -0,0 +1,7 @@
+Tag: duplicate-conffile
+Severity: error
+Check: conffiles
+Explanation: The file is listed more than once in your <code>debian/conffiles</code> file.
+ Usually, this is because debhelper (dh&lowbar;installdeb, compat level 3 or higher)
+ will add any files in your package located in /etc automatically to the list
+ of conffiles, so if you do that manually too, you'll get duplicates.
diff --git a/tags/d/duplicate-contact.tag b/tags/d/duplicate-contact.tag
new file mode 100644
index 0000000..8e0cfb2
--- /dev/null
+++ b/tags/d/duplicate-contact.tag
@@ -0,0 +1,5 @@
+Tag: duplicate-contact
+Severity: warning
+Check: fields/mail-address
+Explanation: The contact appears more than once in the named field.
+ The duplicate information should be removed.
diff --git a/tags/d/duplicate-entry-in-symbols-control-file.tag b/tags/d/duplicate-entry-in-symbols-control-file.tag
new file mode 100644
index 0000000..f00b056
--- /dev/null
+++ b/tags/d/duplicate-entry-in-symbols-control-file.tag
@@ -0,0 +1,4 @@
+Tag: duplicate-entry-in-symbols-control-file
+Severity: error
+Check: debian/shlibs
+Explanation: The symbols control file contains a duplicate entry.
diff --git a/tags/d/duplicate-field-in-doc-base.tag b/tags/d/duplicate-field-in-doc-base.tag
new file mode 100644
index 0000000..e9b9ba0
--- /dev/null
+++ b/tags/d/duplicate-field-in-doc-base.tag
@@ -0,0 +1,5 @@
+Tag: duplicate-field-in-doc-base
+Severity: error
+Check: menus
+Renamed-From: doc-base-file-duplicated-field
+Explanation: The <code>doc-base</code> control file contains the given field twice.
diff --git a/tags/d/duplicate-files.tag b/tags/d/duplicate-files.tag
new file mode 100644
index 0000000..a39eeea
--- /dev/null
+++ b/tags/d/duplicate-files.tag
@@ -0,0 +1,16 @@
+Tag: duplicate-files
+Severity: pedantic
+Check: files/duplicates
+Experimental: yes
+See-Also: jdupes(1)
+Explanation: The package ships the two (or more) files with the exact same
+ contents.
+ .
+ Duplicates can often be replaced with symlinks by running:
+ .
+ jdupes -rl debian/${binary}/usr
+ .
+ ... after they are installed, eg. in <code>override&lowbar;dh&lowbar;link</code>. In
+ addition, please consider reporting this upstream.
+ .
+ Note: empty files are exempt from this check.
diff --git a/tags/d/duplicate-font-file.tag b/tags/d/duplicate-font-file.tag
new file mode 100644
index 0000000..641acd7
--- /dev/null
+++ b/tags/d/duplicate-font-file.tag
@@ -0,0 +1,16 @@
+Tag: duplicate-font-file
+Severity: warning
+Check: fonts
+Explanation: This package appears to include a font file that is already provided
+ by another package in Debian. Ideally it should instead depend on the
+ relevant font package. If the application in this package loads the font
+ file by name, you may need to include a symlink pointing to the file name
+ of the font in its Debian package.
+ .
+ Sometimes the font package containing the font is huge and you only need
+ one font. In that case, you have a few options: modify the package (in
+ conjunction with upstream) to use libfontconfig to find the font that you
+ prefer but fall back on whatever installed font is available, ask that
+ the font package be split apart into packages of a more reasonable size,
+ or add an override and be aware of the duplication when new versions of
+ the font are released.
diff --git a/tags/d/duplicate-format-in-doc-base.tag b/tags/d/duplicate-format-in-doc-base.tag
new file mode 100644
index 0000000..d57df93
--- /dev/null
+++ b/tags/d/duplicate-format-in-doc-base.tag
@@ -0,0 +1,11 @@
+Tag: duplicate-format-in-doc-base
+Severity: error
+Check: menus
+Renamed-From:
+ doc-base-file-duplicated-format
+Explanation: The <code>doc-base</code> control file contains the same file in
+ two different formats.
+ .
+ The files listed in <code>doc-base</code> must have distinct contents.
+See-Also:
+ doc-base-manual 2.3.2.2
diff --git a/tags/d/duplicate-globbing-patterns.tag b/tags/d/duplicate-globbing-patterns.tag
new file mode 100644
index 0000000..96976d5
--- /dev/null
+++ b/tags/d/duplicate-globbing-patterns.tag
@@ -0,0 +1,10 @@
+Tag: duplicate-globbing-patterns
+Severity: error
+Check: debian/copyright/dep5
+Explanation: A globbing pattern was used again in <code>debian/copyright</code>.
+ It always an error and may indicate confusion about the applicable
+ license for the author or any reader of the file.
+ .
+ Please remove all but one of the identical globbing patterns.
+See-Also: Bug#90574,
+ https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/d/duplicate-in-shlibs.tag b/tags/d/duplicate-in-shlibs.tag
new file mode 100644
index 0000000..6e1ae9e
--- /dev/null
+++ b/tags/d/duplicate-in-shlibs.tag
@@ -0,0 +1,6 @@
+Tag: duplicate-in-shlibs
+Severity: error
+Check: debian/shlibs
+Renamed-From:
+ duplicate-entry-in-shlibs-control-file
+Explanation: The shlibs control file contains a duplicate entry.
diff --git a/tags/d/duplicate-key-in-desktop.tag b/tags/d/duplicate-key-in-desktop.tag
new file mode 100644
index 0000000..164ed2c
--- /dev/null
+++ b/tags/d/duplicate-key-in-desktop.tag
@@ -0,0 +1,9 @@
+Tag: duplicate-key-in-desktop
+Severity: warning
+Check: menu-format
+Renamed-From: duplicated-key-in-desktop-entry
+Explanation: The <code>desktop</code> entry contains the same key twice. The
+ standard does not define the behavior of such entries.
+ .
+ The <code>desktop-file-validate</code> tool in the <code>desktop-file-utils</code>
+ package may be useful when checking the syntax of <code>desktop</code> entries.
diff --git a/tags/d/duplicate-long-description-in-template.tag b/tags/d/duplicate-long-description-in-template.tag
new file mode 100644
index 0000000..066d9c6
--- /dev/null
+++ b/tags/d/duplicate-long-description-in-template.tag
@@ -0,0 +1,6 @@
+Tag: duplicate-long-description-in-template
+Severity: warning
+Check: debian/debconf
+Explanation: The long description of one of the templates provided by this package
+ is a duplicate of the short description. If you cannot provide a good
+ extended description, it is better to leave it blank.
diff --git a/tags/d/duplicate-long-description.tag b/tags/d/duplicate-long-description.tag
new file mode 100644
index 0000000..dea1baf
--- /dev/null
+++ b/tags/d/duplicate-long-description.tag
@@ -0,0 +1,10 @@
+Tag: duplicate-long-description
+Severity: info
+Check: debian/control/field/description/duplicate
+Explanation: The listed binary packages all share the same extended description.
+ .
+ Please add some additional, useful information to the extended descriptions
+ that explain what is in each package and how it differs from the next.
+ .
+ It is not okay to rely only on package naming conventions to indicate what
+ is inside.
diff --git a/tags/d/duplicate-override-context.tag b/tags/d/duplicate-override-context.tag
new file mode 100644
index 0000000..77074c1
--- /dev/null
+++ b/tags/d/duplicate-override-context.tag
@@ -0,0 +1,12 @@
+Tag: duplicate-override-context
+Severity: warning
+Show-Always: yes
+Check: debian/lintian-overrides/duplicate
+Explanation: The named lines in the given <code>override</code> file
+ refer to the same tag with the same context. It is redundant, and
+ may indicate outdated overrides.
+ .
+ This condition is also flagged for renamed tags, for which it occurs
+ perhaps more often when the overrides are adjusted for new tag names.
+ .
+ Please remove one of the overrides or adjust in some way.
diff --git a/tags/d/duplicate-p3dist-override.tag b/tags/d/duplicate-p3dist-override.tag
new file mode 100644
index 0000000..a97f3d6
--- /dev/null
+++ b/tags/d/duplicate-p3dist-override.tag
@@ -0,0 +1,28 @@
+Tag: duplicate-p3dist-override
+Severity: error
+Check: languages/python/dist-overrides
+Explanation:
+ <code>dh_python3</code> has an override mechanism
+ (<code>debian/py3dist-overrides</code>) that lets you specify different
+ prerequisites for particular Python
+ imports.
+ .
+ <code>debian/py3dist-overrides</code> is mainly used for Python programs
+ that use GObject introspection, since <code>dh_python3</code> cannot yet
+ detect that the packages <code>gir1.2-*-*</code> map to Python imports,
+ so overrides are needed.
+ .
+ When the same import appears twice in the file, the information from the
+ first one is used but all the others are discarded. That can lead to
+ missing prerequisites.
+ .
+ An example of a second line that gets ignored:
+ .
+ gi.repository.Gst gir1.2-gst-plugins-base-1.0
+ gi.repository.Gst gir1.2-gstreamer-1.0
+ .
+ An example of a double dependency that gets kept:
+ .
+ gi.repository.Gst gir1.2-gst-plugins-base-1.0, gir1.2-gstreamer-1.0
+See-Also:
+ Bug#980987
diff --git a/tags/d/duplicate-packaging-file.tag b/tags/d/duplicate-packaging-file.tag
new file mode 100644
index 0000000..dab412c
--- /dev/null
+++ b/tags/d/duplicate-packaging-file.tag
@@ -0,0 +1,14 @@
+Tag: duplicate-packaging-file
+Severity: warning
+Check: debian/filenames
+Explanation: Some packaging files obtain different names when they are copied
+ from source to installation packages. Debhelper sometimes adds &ast;.Debian
+ extensions to NEWS, README and TODO files. That can be confusing.
+ .
+ Debhelper's behavior also depends on the filename.
+ .
+ This source package contains both a file with the proper name and also
+ a file with incorrect name. Please remove the file as indicated.
+ .
+ Please merge all relevant information into the surviving file.
+See-Also: Bug#429510, Bug#946126
diff --git a/tags/d/duplicate-short-description.tag b/tags/d/duplicate-short-description.tag
new file mode 100644
index 0000000..9694230
--- /dev/null
+++ b/tags/d/duplicate-short-description.tag
@@ -0,0 +1,11 @@
+Tag: duplicate-short-description
+Severity: info
+Check: debian/control/field/description/duplicate
+Explanation: The listed binary packages all share the same short description,
+ i.e. the first line of the Description field in <code>debian/control</code>.
+ .
+ Please add a word or two, in parentheses if needed, to describe to users what
+ they are installing.
+ .
+ It is not okay to rely solely on package naming conventions to indicate what
+ is inside.
diff --git a/tags/d/duplicate-tag-in-menu.tag b/tags/d/duplicate-tag-in-menu.tag
new file mode 100644
index 0000000..3dc8462
--- /dev/null
+++ b/tags/d/duplicate-tag-in-menu.tag
@@ -0,0 +1,9 @@
+Tag: duplicate-tag-in-menu
+Severity: warning
+Check: menu-format
+Renamed-From:
+ duplicated-tag-in-menu-item
+Explanation: The <code>menu</code> item contains the same tag twice. At best, it is
+ a waste of space. The <code>menu</code> system will only use one of them.
+See-Also:
+ menu-manual 3.2
diff --git a/tags/d/duplicate-updaterc.d-calls-in-postinst.tag b/tags/d/duplicate-updaterc.d-calls-in-postinst.tag
new file mode 100644
index 0000000..ab763b7
--- /dev/null
+++ b/tags/d/duplicate-updaterc.d-calls-in-postinst.tag
@@ -0,0 +1,5 @@
+Tag: duplicate-updaterc.d-calls-in-postinst
+Severity: error
+Check: init-d
+Explanation: The <code>postinst</code> script calls <code>update-rc.d</code> several
+ times for the same <code>/etc/init.d</code> script.
diff --git a/tags/d/duplicate-updaterc.d-calls-in-postrm.tag b/tags/d/duplicate-updaterc.d-calls-in-postrm.tag
new file mode 100644
index 0000000..88910a4
--- /dev/null
+++ b/tags/d/duplicate-updaterc.d-calls-in-postrm.tag
@@ -0,0 +1,5 @@
+Tag: duplicate-updaterc.d-calls-in-postrm
+Severity: error
+Check: init-d
+Explanation: The <code>postrm</code> script calls <code>update-rc.d</code> several
+ times for the same <code>/etc/init.d</code> script.
diff --git a/tags/e/elevated-privileges.tag b/tags/e/elevated-privileges.tag
new file mode 100644
index 0000000..f38357e
--- /dev/null
+++ b/tags/e/elevated-privileges.tag
@@ -0,0 +1,16 @@
+Tag: elevated-privileges
+Severity: warning
+Check: files/permissions
+Renamed-From:
+ setuid-binary
+ setgid-binary
+ setuid-gid-binary
+Explanation: This executable does not run with the identity of the user
+ who executes it. It runs instead with its owner ID in the file system
+ or with its group ID, or both.
+ .
+ This security-relevant setting is intentional for programs that
+ regularly acquire elevated privileges, such as <code>/bin/su</code>,
+ but can be a significant risk when it the setting is not intended.
+ .
+ Please override if needed.
diff --git a/tags/e/elf-error.tag b/tags/e/elf-error.tag
new file mode 100644
index 0000000..040aaeb
--- /dev/null
+++ b/tags/e/elf-error.tag
@@ -0,0 +1,14 @@
+Tag: elf-error
+Severity: warning
+Check: binaries/corrupted
+Renamed-From:
+ apparently-corrupted-elf-binary
+Explanation: The file appears to be in ELF format but readelf produced the indicated
+ error when parsing it.
+ .
+ In case of a false positive, you may need to install <code>binutils-multiarch</code>
+ so that ELF files from other architectures are handled correctly. It is also possible
+ that the file is not actually in ELF format but was misidentified as such.
+See-Also:
+ https://refspecs.linuxfoundation.org/elf/elf.pdf,
+ readelf(1)
diff --git a/tags/e/elf-maintainer-script.tag b/tags/e/elf-maintainer-script.tag
new file mode 100644
index 0000000..0b78b7e
--- /dev/null
+++ b/tags/e/elf-maintainer-script.tag
@@ -0,0 +1,4 @@
+Tag: elf-maintainer-script
+Severity: classification
+Check: scripts
+Explanation: The maintainer script is an ELF binary.
diff --git a/tags/e/elf-warning.tag b/tags/e/elf-warning.tag
new file mode 100644
index 0000000..c7eb964
--- /dev/null
+++ b/tags/e/elf-warning.tag
@@ -0,0 +1,13 @@
+Tag: elf-warning
+Severity: pedantic
+Experimental: yes
+Check: binaries/corrupted
+Explanation: The file appears to be in ELF format but readelf produced the indicated
+ warning when parsing it.
+ .
+ In case of a false positive, you may need to install <code>binutils-multiarch</code>
+ so that ELF files from other architectures are handled correctly. It is also possible
+ that the file is not actually in ELF format but was misidentified as such.
+See-Also:
+ https://refspecs.linuxfoundation.org/elf/elf.pdf,
+ readelf(1)
diff --git a/tags/e/emacsen-common-without-dh-elpa.tag b/tags/e/emacsen-common-without-dh-elpa.tag
new file mode 100644
index 0000000..ad0a598
--- /dev/null
+++ b/tags/e/emacsen-common-without-dh-elpa.tag
@@ -0,0 +1,15 @@
+Tag: emacsen-common-without-dh-elpa
+Severity: warning
+Check: emacs/elpa
+Explanation: The package uses the emacsen-common infrastructure but the
+ package was not built with dh-elpa. Please consider transitioning
+ the package build to use dh-elpa, unless the package is required to
+ work with XEmacs.
+ .
+ dh-elpa centralises the emacsen-common maintscripts, which makes for
+ fewer bugs, and significantly easier cross-archive updates to emacsen
+ packages.
+ .
+ In addition, a package built with dh-elpa integrates with the GNU
+ Emacs package manager, for a better user experience.
+See-Also: dh_elpa(1), dh-make-elpa(1), https://wiki.debian.org/Teams/DebianEmacsenTeam/elpa-hello
diff --git a/tags/e/embedded-feedparser-library.tag b/tags/e/embedded-feedparser-library.tag
new file mode 100644
index 0000000..9a15f02
--- /dev/null
+++ b/tags/e/embedded-feedparser-library.tag
@@ -0,0 +1,7 @@
+Tag: embedded-feedparser-library
+Severity: warning
+Check: languages/python/feedparser
+Explanation: This package contains an embedded copy of Mark Pilgrim's Universal
+ Feed Parser. Please depend on the "python-feedparser" package and use
+ the normal Python import mechanism to load it.
+See-Also: debian-policy 4.13
diff --git a/tags/e/embedded-javascript-library.tag b/tags/e/embedded-javascript-library.tag
new file mode 100644
index 0000000..4601c8a
--- /dev/null
+++ b/tags/e/embedded-javascript-library.tag
@@ -0,0 +1,8 @@
+Tag: embedded-javascript-library
+Severity: warning
+Check: languages/javascript/embedded
+Explanation: This package contains an embedded copy of JavaScript libraries
+ that are now available in their own packages (for example, JQuery,
+ Prototype, Mochikit or "Cropper"). Please depend on the appropriate
+ package and symlink the library into the appropriate location.
+See-Also: debian-policy 4.13
diff --git a/tags/e/embedded-library.tag b/tags/e/embedded-library.tag
new file mode 100644
index 0000000..378ad8d
--- /dev/null
+++ b/tags/e/embedded-library.tag
@@ -0,0 +1,12 @@
+Tag: embedded-library
+Severity: error
+Check: libraries/embedded
+Explanation: The given ELF object appears to have been statically linked to
+ a library. Doing this is strongly discouraged due to the extra work
+ needed by the security team to fix all the extra embedded copies or
+ trigger the package rebuilds, as appropriate.
+ .
+ If the package uses a modified version of the given library it is highly
+ recommended to coordinate with the library's maintainer to include the
+ changes on the system version of the library.
+See-Also: debian-policy 4.13
diff --git a/tags/e/embedded-pear-module.tag b/tags/e/embedded-pear-module.tag
new file mode 100644
index 0000000..990a839
--- /dev/null
+++ b/tags/e/embedded-pear-module.tag
@@ -0,0 +1,8 @@
+Tag: embedded-pear-module
+Severity: warning
+Check: languages/php/pear/embedded
+Experimental: yes
+Explanation: This package appears to contain an embedded copy of a PEAR module.
+ Please depend on the respective PEAR package providing the module and
+ make sure the library can be found by the scripts via the include&lowbar;path.
+See-Also: debian-policy 4.13
diff --git a/tags/e/embedded-php-library.tag b/tags/e/embedded-php-library.tag
new file mode 100644
index 0000000..d1bb917
--- /dev/null
+++ b/tags/e/embedded-php-library.tag
@@ -0,0 +1,7 @@
+Tag: embedded-php-library
+Severity: warning
+Check: languages/php/embedded
+Explanation: This package appears to contain an embedded copy of a PHP library.
+ Please depend on the respective package providing the library and
+ make sure it can be found by the scripts via the include&lowbar;path.
+See-Also: debian-policy 4.13
diff --git a/tags/e/embedded-script-includes-copyright-statement.tag b/tags/e/embedded-script-includes-copyright-statement.tag
new file mode 100644
index 0000000..fd24489
--- /dev/null
+++ b/tags/e/embedded-script-includes-copyright-statement.tag
@@ -0,0 +1,11 @@
+Tag: embedded-script-includes-copyright-statement
+Severity: pedantic
+Check: cruft
+Explanation: The specified file includes an embedded script with a copyright
+ statement.
+ .
+ The script was likely copy-pasted and likely needs to be rebuilt from
+ the original source.
+ .
+ This script may be also outdated and may need to be updated from a
+ security point of view.
diff --git a/tags/e/empty-binary-package.tag b/tags/e/empty-binary-package.tag
new file mode 100644
index 0000000..c3ef358
--- /dev/null
+++ b/tags/e/empty-binary-package.tag
@@ -0,0 +1,17 @@
+Tag: empty-binary-package
+Severity: warning
+Check: files/empty-package
+Explanation: This binary package appears to be empty, and its description does
+ not say that it's a metapackage or a transitional package. This is
+ often due to problems with updating debhelper &ast;.install files during
+ package renames or similar problems where installation rules don't put
+ files in the correct place.
+ .
+ If the package is deliberately empty, please mention in the package long
+ description one of the phrases "metapackage", "dummy", "dependency
+ package", or "empty package".
+ .
+ Previously, Lintian also accepted the use of "virtual package". This
+ was removed to avoid overloading the term. If you have been relying on
+ the phrase "virtual package" to avoid this warning, please replace it
+ with one of the others.
diff --git a/tags/e/empty-debian-tests-control.tag b/tags/e/empty-debian-tests-control.tag
new file mode 100644
index 0000000..0deb12e
--- /dev/null
+++ b/tags/e/empty-debian-tests-control.tag
@@ -0,0 +1,6 @@
+Tag: empty-debian-tests-control
+Severity: error
+Check: testsuite
+Explanation:
+ The debian/tests/control is empty when any comments are removed.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/e/empty-field.tag b/tags/e/empty-field.tag
new file mode 100644
index 0000000..6c72752
--- /dev/null
+++ b/tags/e/empty-field.tag
@@ -0,0 +1,6 @@
+Tag: empty-field
+Severity: warning
+Check: fields/empty
+Explanation: The named field in this package's control file is empty
+ or consists only of whitespace.
+See-Also: debian-policy 2.4, Bug#879809
diff --git a/tags/e/empty-manual-page.tag b/tags/e/empty-manual-page.tag
new file mode 100644
index 0000000..a38ef1e
--- /dev/null
+++ b/tags/e/empty-manual-page.tag
@@ -0,0 +1,4 @@
+Tag: empty-manual-page
+Severity: error
+Check: documentation/manual
+Explanation: The referenced manual page is empty.
diff --git a/tags/e/empty-rust-library-declares-provides.tag b/tags/e/empty-rust-library-declares-provides.tag
new file mode 100644
index 0000000..77ac2f6
--- /dev/null
+++ b/tags/e/empty-rust-library-declares-provides.tag
@@ -0,0 +1,24 @@
+Tag: empty-rust-library-declares-provides
+Severity: error
+Check: languages/rust
+Explanation: For some time, Rust libraries used empty installation packages
+ with long Provides lines in their control files to deal with peculiarities
+ in Rust packaging. It is no longer considered acceptable because it strains
+ our archive infrastructure.
+ .
+ Rust packages should not be empty and merely declare a Provides control
+ field. Instead, please merge such packages into the main installation
+ package. When using <code>debcargo</code>, this can usually be achieved by
+ adding <code>collapse_features = true</code> to the
+ <code>debcargo.toml</code> file.
+ .
+ You can see some examples here:
+ .
+ - https://sources.debian.org/src/rust-dbus/0.9.0-2/debian/control/
+ - https://sources.debian.org/src/rust-x11rb/0.7.0-1/debian/control/
+ .
+ The decision to burden the Rust packaging team with that extra step was
+ made after weighing all possible alternatives.
+See-Also:
+ Bug#942898, Bug#945542,
+ http://meetbot.debian.net/debian-rust/2020/debian-rust.2020-10-28-18.58.log.html#l-150
diff --git a/tags/e/empty-shared-library-symbols.tag b/tags/e/empty-shared-library-symbols.tag
new file mode 100644
index 0000000..c93fb59
--- /dev/null
+++ b/tags/e/empty-shared-library-symbols.tag
@@ -0,0 +1,13 @@
+Tag: empty-shared-library-symbols
+Severity: error
+Check: debian/shlibs
+Renamed-From:
+ pkg-has-symbols-control-file-but-no-shared-libs
+Explanation: Although the package does not include any shared libraries, it does
+ have a symbols control file. If you did include a shared library, check that
+ the SONAME of the library is set and that it matches the contents of the
+ symbols file.
+ .
+ SONAMEs are set with something like <code>gcc -Wl,-soname,libfoo.so.0</code>,
+ where 0 is the major version of the library. If your package uses libtool,
+ then libtool invoked with the right options should be doing this.
diff --git a/tags/e/empty-shlibs.tag b/tags/e/empty-shlibs.tag
new file mode 100644
index 0000000..34390e7
--- /dev/null
+++ b/tags/e/empty-shlibs.tag
@@ -0,0 +1,17 @@
+Tag: empty-shlibs
+Severity: error
+Check: debian/shlibs
+Renamed-From:
+ pkg-has-shlibs-control-file-but-no-actual-shared-libs
+Explanation: Although the package does not include any shared libraries, it does
+ have a shlibs control file. If you did include a shared library, check that
+ the SONAME of the library is set and that it matches the contents of the
+ shlibs file.
+ .
+ SONAMEs are set with something like <code>gcc -Wl,-soname,libfoo.so.0</code>,
+ where 0 is the major version of the library. If your package uses libtool,
+ then libtool invoked with the right options should be doing this.
+ .
+ Note this is sometimes triggered for packages with a private shared
+ library due to a bug in Debhelper.
+See-Also: Bug#204975, Bug#633853
diff --git a/tags/e/empty-short-license-in-dep5-copyright.tag b/tags/e/empty-short-license-in-dep5-copyright.tag
new file mode 100644
index 0000000..f7646c2
--- /dev/null
+++ b/tags/e/empty-short-license-in-dep5-copyright.tag
@@ -0,0 +1,6 @@
+Tag: empty-short-license-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The short license field in the machine readable copyright file
+ is empty.
diff --git a/tags/e/empty-translated-choices.tag b/tags/e/empty-translated-choices.tag
new file mode 100644
index 0000000..ffb26e1
--- /dev/null
+++ b/tags/e/empty-translated-choices.tag
@@ -0,0 +1,6 @@
+Tag: empty-translated-choices
+Severity: error
+Check: debian/debconf
+Explanation: When the translation of a Choices: field is empty, the whole question
+ is skipped (and nothing is selected). Please verify that the translation
+ you're using is valid.
diff --git a/tags/e/empty-udeb-package.tag b/tags/e/empty-udeb-package.tag
new file mode 100644
index 0000000..a9ee919
--- /dev/null
+++ b/tags/e/empty-udeb-package.tag
@@ -0,0 +1,13 @@
+Tag: empty-udeb-package
+Severity: info
+Check: files/empty-package
+Experimental: yes
+Explanation: This udeb package appears to be empty, and its description does
+ not say that it's a metapackage or a package. This is often due to
+ problems with updating debhelper &ast;.install files during package
+ renames or similar problems where installation rules don't put files
+ in the correct place.
+ .
+ If the package is deliberately empty, you can avoid this tag by
+ using one of the following phrases "metapackage", "dummy", "dependency
+ package", or "empty package" in the long description of the udeb.
diff --git a/tags/e/empty-upstream-sources.tag b/tags/e/empty-upstream-sources.tag
new file mode 100644
index 0000000..86e1d36
--- /dev/null
+++ b/tags/e/empty-upstream-sources.tag
@@ -0,0 +1,5 @@
+Tag: empty-upstream-sources
+Severity: error
+Check: origtar
+Explanation: The .orig.tar.gz file is empty.
+See-Also: Bug#471537
diff --git a/tags/e/epoch-change-without-comment.tag b/tags/e/epoch-change-without-comment.tag
new file mode 100644
index 0000000..b5ed4bb
--- /dev/null
+++ b/tags/e/epoch-change-without-comment.tag
@@ -0,0 +1,26 @@
+Tag: epoch-change-without-comment
+Severity: warning
+Check: debian/changelog
+Explanation: The previous version of this package had a different version epoch
+ (eg. 2:1.0-1) to the current version but there's no reference to this in
+ the changelog entry.
+ .
+ Epochs exist to cope with changes to the upstream version numbering
+ scheme. Whilst they are a powerful tool, increasing or adding an epoch
+ has many downsides including causing issues with versioned dependencies,
+ being misleading to users and being aesthetically unappealing. Whilst
+ they should be avoided, valid reasons to add or increment the epoch
+ include:
+ .
+ - Upstream changed their versioning scheme in a way that makes the
+ latest version lower than the previous one.
+ - You need to permanently revert to a lower upstream version.
+ .
+ Temporary revertions (eg. after an NMU) should use not modify or
+ introduce an epoch - please use the <code>CURRENT+reallyFORMER</code> until
+ you can upload the latest version again.
+ .
+ If you are unsure whether you need to increase the epoch for a package,
+ please consult the debian-devel mailing list.
+ .
+ Lintian looks in this version's changelog entry for the phrase "epoch".
diff --git a/tags/e/epoch-changed-but-upstream-version-did-not-go-backwards.tag b/tags/e/epoch-changed-but-upstream-version-did-not-go-backwards.tag
new file mode 100644
index 0000000..83a8de7
--- /dev/null
+++ b/tags/e/epoch-changed-but-upstream-version-did-not-go-backwards.tag
@@ -0,0 +1,27 @@
+Tag: epoch-changed-but-upstream-version-did-not-go-backwards
+Severity: error
+Check: debian/changelog
+Explanation: The previous version of this package had a different version epoch
+ to the current version but the upstream version did not go "backwards".
+ For example, the previous package version was "1:1.0-1" and the current
+ version is "2:2.0-1".
+ .
+ This was likely an accidental bump or addition of an epoch.
+ .
+ Epochs exist to cope with changes to the upstream version numbering
+ scheme. Whilst they are a powerful tool, increasing or adding an epoch
+ has many downsides including causing issues with versioned dependencies,
+ being misleading to users and being aesthetically unappealing. Whilst
+ they should be avoided, valid reasons to add or increment the epoch
+ include:
+ .
+ - Upstream changed their versioning scheme in a way that makes the
+ latest version lower than the previous one.
+ - You need to permanently revert to a lower upstream version.
+ .
+ Temporary revertions (eg. after an NMU) should use not modify or
+ introduce an epoch - please use the <code>CURRENT+reallyFORMER</code> until
+ you can upload the latest version again.
+ .
+ If you are unsure whether you need to increase the epoch for a package,
+ please consult the debian-devel mailing list.
diff --git a/tags/e/essential-in-source-package.tag b/tags/e/essential-in-source-package.tag
new file mode 100644
index 0000000..b13a894
--- /dev/null
+++ b/tags/e/essential-in-source-package.tag
@@ -0,0 +1,5 @@
+Tag: essential-in-source-package
+Severity: error
+Check: fields/essential
+Explanation: This field should only appear in binary packages.
+See-Also: debian-policy 5.6.9
diff --git a/tags/e/essential-no-not-needed.tag b/tags/e/essential-no-not-needed.tag
new file mode 100644
index 0000000..2c82180
--- /dev/null
+++ b/tags/e/essential-no-not-needed.tag
@@ -0,0 +1,6 @@
+Tag: essential-no-not-needed
+Severity: warning
+Check: fields/essential
+Explanation: Having "Essential: no" is the same as not having the field at all,
+ so it just makes the Packages file longer with no benefit.
+See-Also: debian-policy 5.6.9
diff --git a/tags/e/example-incorrect-path-for-interpreter.tag b/tags/e/example-incorrect-path-for-interpreter.tag
new file mode 100644
index 0000000..0607a4d
--- /dev/null
+++ b/tags/e/example-incorrect-path-for-interpreter.tag
@@ -0,0 +1,14 @@
+Tag: example-incorrect-path-for-interpreter
+Severity: info
+Check: scripts
+Explanation: The interpreter used by this example script is installed at another
+ location on Debian systems. Normally the path should be updated to match
+ the Debian location.
+ .
+ Whilst the script may work, it is in violation of Debian Policy. This
+ may have been caused by usrmerge.
+ .
+ Note that, as a particular exception, Debian Policy ยง 10.4 states that
+ Perl scripts should use <code>/usr/bin/perl</code> directly and not
+ <code>/usr/bin/env</code>, etc.
+See-Also: debian-policy 10.4, https://wiki.debian.org/UsrMerge
diff --git a/tags/e/example-interpreter-in-usr-local.tag b/tags/e/example-interpreter-in-usr-local.tag
new file mode 100644
index 0000000..9952f8d
--- /dev/null
+++ b/tags/e/example-interpreter-in-usr-local.tag
@@ -0,0 +1,7 @@
+Tag: example-interpreter-in-usr-local
+Severity: pedantic
+Check: scripts
+Explanation: This package contains an example script that looks for an
+ interpreter in a directory in /usr/local. Since Debian does not install
+ anything in /usr/local, the example script would probably need
+ modifications before a user could run it.
diff --git a/tags/e/example-interpreter-not-absolute.tag b/tags/e/example-interpreter-not-absolute.tag
new file mode 100644
index 0000000..a35e21b
--- /dev/null
+++ b/tags/e/example-interpreter-not-absolute.tag
@@ -0,0 +1,9 @@
+Tag: example-interpreter-not-absolute
+Severity: info
+Check: scripts
+Explanation: This example script uses a relative path to locate its interpreter.
+ This path will be taken relative to the caller's current directory, not
+ the script's, so a user will probably not be able to run the example
+ without modification. This tag can also be caused by script headers like
+ <code>#!@BASH@</code>, which usually mean that the examples were copied out
+ of the source tree before proper Autoconf path substitution.
diff --git a/tags/e/example-script-uses-bin-env.tag b/tags/e/example-script-uses-bin-env.tag
new file mode 100644
index 0000000..3b8aab8
--- /dev/null
+++ b/tags/e/example-script-uses-bin-env.tag
@@ -0,0 +1,7 @@
+Tag: example-script-uses-bin-env
+Severity: info
+Check: scripts
+Explanation: This example script uses /bin/env as its interpreter (used to find
+ the actual interpreter on the user's path). There is no /bin/env on
+ Debian systems; env is instead installed as /usr/bin/env. Usually, the
+ path to env in the script should be changed.
diff --git a/tags/e/example-script-uses-deprecated-nodejs-location.tag b/tags/e/example-script-uses-deprecated-nodejs-location.tag
new file mode 100644
index 0000000..5009bd8
--- /dev/null
+++ b/tags/e/example-script-uses-deprecated-nodejs-location.tag
@@ -0,0 +1,14 @@
+Tag: example-script-uses-deprecated-nodejs-location
+Severity: warning
+Check: scripts
+Explanation: You used <code>/usr/bin/nodejs</code> or <code>/usr/bin/env nodejs</code> as an
+ interpreter for an example script.
+ .
+ The <code>/usr/bin/node</code> binary was previously provided by
+ <code>ax25-node</code> and packages were required to use <code>/usr/bin/nodejs</code>
+ instead. <code>ax25-node</code> has since been removed from the archive and the
+ <code>nodejs</code> package now ships the <code>/usr/bin/node</code> binary to match
+ the rest of the Node.js ecosystem.
+ .
+ Please update your package to use the <code>node</code> variant.
+See-Also: Bug#614907, Bug#862051
diff --git a/tags/e/example-script-without-interpreter.tag b/tags/e/example-script-without-interpreter.tag
new file mode 100644
index 0000000..4766194
--- /dev/null
+++ b/tags/e/example-script-without-interpreter.tag
@@ -0,0 +1,5 @@
+Tag: example-script-without-interpreter
+Severity: info
+Check: scripts
+Explanation: This example file starts with the #! sequence that identifies
+ scripts, but it does not name an interpreter.
diff --git a/tags/e/example-shell-script-fails-syntax-check.tag b/tags/e/example-shell-script-fails-syntax-check.tag
new file mode 100644
index 0000000..54ac0b8
--- /dev/null
+++ b/tags/e/example-shell-script-fails-syntax-check.tag
@@ -0,0 +1,12 @@
+Tag: example-shell-script-fails-syntax-check
+Severity: pedantic
+Check: script/syntax
+Explanation: Running this shell script with the shell's -n option set fails,
+ which means that the script has syntax errors. The most common cause of
+ this problem is a script expecting <code>/bin/sh</code> to be bash checked on
+ a system using dash as <code>/bin/sh</code>.
+ .
+ Run e.g. <code>sh -n yourscript</code> to see the errors yourself.
+ .
+ Note this can have false-positives, for an example with bash scripts
+ using "extglob".
diff --git a/tags/e/example-unusual-interpreter.tag b/tags/e/example-unusual-interpreter.tag
new file mode 100644
index 0000000..4081a98
--- /dev/null
+++ b/tags/e/example-unusual-interpreter.tag
@@ -0,0 +1,6 @@
+Tag: example-unusual-interpreter
+Severity: pedantic
+Check: scripts
+Explanation: This package contains an example script for an interpreter that
+ is not shipped in the package and is not known to Lintian. It is
+ possible that there is a typo or the interpreter is not executable.
diff --git a/tags/e/example-wrong-path-for-interpreter.tag b/tags/e/example-wrong-path-for-interpreter.tag
new file mode 100644
index 0000000..b507908
--- /dev/null
+++ b/tags/e/example-wrong-path-for-interpreter.tag
@@ -0,0 +1,10 @@
+Tag: example-wrong-path-for-interpreter
+Severity: info
+Check: scripts
+Explanation: The interpreter used by this example script is installed at another
+ location on Debian systems. Normally the path should be updated to match
+ the Debian location.
+ .
+ Note that, as a particular exception, Debian Policy ยง 10.4 states that
+ Perl scripts should use <code>/usr/bin/perl</code> directly and not
+ <code>/usr/bin/env</code>, etc.
diff --git a/tags/e/excessive-debhelper-overrides.tag b/tags/e/excessive-debhelper-overrides.tag
new file mode 100644
index 0000000..7b396e3
--- /dev/null
+++ b/tags/e/excessive-debhelper-overrides.tag
@@ -0,0 +1,24 @@
+Tag: excessive-debhelper-overrides
+Severity: warning
+Check: debhelper
+Explanation: The <code>debian/rules</code> file appears to include a suspiciously
+ high number of <code>override&lowbar;dh&lowbar;</code>-style overrides.
+ .
+ It is likely that is this was intended to optimise package builds by
+ introducing "no-op" overrides that avoid specific debhelper commands.
+ .
+ However, whilst using overrides are not a problem per-se, such a list
+ is usually subject to constant revision, prevents future debhelper
+ versions fixing archive-wide problems, adds unnecessary
+ noise/distraction for anyone reviewing the package, and increases the
+ package's "bus factor". It is, in addition, aesthetically displeasing.
+ .
+ Furthermore, this is typically a premature optimisation. debhelper already
+ includes optimizations to avoid running commands when unnecessary. If you find
+ a debhelper command taking unnecessarily long when it has no work to do,
+ please work with the debhelper developers to help debhelper skip that command
+ in more circumstances, optimizing not only your package build but everyone
+ else's as well.
+ .
+ Please remove the unnecessary overrides.
+See-Also: debhelper(7), dh(1)
diff --git a/tags/e/excessive-priority-for-library-package.tag b/tags/e/excessive-priority-for-library-package.tag
new file mode 100644
index 0000000..e887f26
--- /dev/null
+++ b/tags/e/excessive-priority-for-library-package.tag
@@ -0,0 +1,12 @@
+Tag: excessive-priority-for-library-package
+Severity: warning
+Check: fields/priority
+Explanation: The given package appears to be a library package, but it has "Priority"
+ of "required", "important", or "standard".
+ .
+ In general, a library package should only get pulled in on a system because
+ some other package depends on it; no library package needs installation on a
+ system where nothing uses it.
+ .
+ Please update <code>debian/control</code> and downgrade the severity to, for
+ example, <code>Priority: optional</code>.
diff --git a/tags/e/executable-debhelper-file-without-being-executable.tag b/tags/e/executable-debhelper-file-without-being-executable.tag
new file mode 100644
index 0000000..f5e2760
--- /dev/null
+++ b/tags/e/executable-debhelper-file-without-being-executable.tag
@@ -0,0 +1,8 @@
+Tag: executable-debhelper-file-without-being-executable
+Severity: error
+Check: debhelper
+Explanation: The packaging file is marked executable, but it does not appear to be
+ executable (e.g. it has no #! line).
+ .
+ If debhelper file is not supposed to be executable, please remove the
+ executable bit from it.
diff --git a/tags/e/executable-desktop-file.tag b/tags/e/executable-desktop-file.tag
new file mode 100644
index 0000000..b74be86
--- /dev/null
+++ b/tags/e/executable-desktop-file.tag
@@ -0,0 +1,7 @@
+Tag: executable-desktop-file
+Severity: error
+Check: menu-format
+Explanation: The desktop entry file is marked executable.
+ .
+ Desktop entries are regular files. They should be installed with file permissions of
+ mode <code>0644</code>.
diff --git a/tags/e/executable-in-usr-lib.tag b/tags/e/executable-in-usr-lib.tag
new file mode 100644
index 0000000..307ba7f
--- /dev/null
+++ b/tags/e/executable-in-usr-lib.tag
@@ -0,0 +1,41 @@
+Tag: executable-in-usr-lib
+Severity: pedantic
+Experimental: yes
+Check: files/permissions/usr-lib
+Explanation: The package ships an executable file in /usr/lib.
+ .
+ Please move the file to <code>/usr/libexec</code>.
+ .
+ With policy revision 4.1.5, Debian adopted the Filesystem
+ Hierarchy Specification (FHS) version 3.0.
+ .
+ The FHS 3.0 describes <code>/usr/libexec</code>. Please use that
+ location for executables.
+See-Also:
+ debian-policy 9.1.1,
+ filesystem-hierarchy,
+ https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s07.html,
+ Bug#954149
+
+Screen: emacs/elpa/scripts
+Advocates: David Bremner <bremner@debian.org>
+Reason: The <code>emacsen-common</code> package places installation
+ and removal scripts, which for ELPA packages are executable,
+ in the folder <code>/usr/lib/emacsen-common/packages</code>.
+ .
+ About four hundred installation packages are affected. All of
+ them declare <code>emacsen-common</code> as an installation
+ prerequisite.
+See-Also:
+ Bug#974175,
+ Bug#954149
+
+Screen: web/cgi/scripts
+Advocates: Andrius Merkys <merkys@debian.org>
+Reason: The folder <code>/usr/lib/cgi-bin/</code> is designated for
+ scripts in the Common Gateway Interface (CGI). They require the
+ executable bit so the server can run them.
+See-Also:
+ https://en.wikipedia.org/wiki/Common_Gateway_Interface,
+ https://datatracker.ietf.org/doc/html/rfc3875.html,
+ Bug#1003941
diff --git a/tags/e/executable-in-usr-share-doc.tag b/tags/e/executable-in-usr-share-doc.tag
new file mode 100644
index 0000000..b3a15f3
--- /dev/null
+++ b/tags/e/executable-in-usr-share-doc.tag
@@ -0,0 +1,6 @@
+Tag: executable-in-usr-share-doc
+Severity: error
+Check: documentation
+Explanation: Usually, documentation files in <code>/usr/share/doc</code> should have mode
+ 0644. If the executable is an example, it should go in
+ <code>/usr/share/doc/*pkg*/examples</code>.
diff --git a/tags/e/executable-in-usr-share-docbase.tag b/tags/e/executable-in-usr-share-docbase.tag
new file mode 100644
index 0000000..5b7f72c
--- /dev/null
+++ b/tags/e/executable-in-usr-share-docbase.tag
@@ -0,0 +1,4 @@
+Tag: executable-in-usr-share-docbase
+Severity: error
+Check: menus
+Explanation: Files in <code>/usr/share/doc-base</code> may not be marked as executables.
diff --git a/tags/e/executable-is-not-world-readable.tag b/tags/e/executable-is-not-world-readable.tag
new file mode 100644
index 0000000..517ea3b
--- /dev/null
+++ b/tags/e/executable-is-not-world-readable.tag
@@ -0,0 +1,9 @@
+Tag: executable-is-not-world-readable
+Severity: warning
+Check: files/permissions
+Explanation: All executables should be readable by any user. Since anyone can
+ download the Debian package and obtain a copy of the executable, no
+ security is gained by making the executable unreadable even for setuid
+ binaries. If only members of a certain group may execute this file,
+ remove execute permission for world, but leave read permission.
+See-Also: debian-policy 10.9
diff --git a/tags/e/executable-jar-without-main-class.tag b/tags/e/executable-jar-without-main-class.tag
new file mode 100644
index 0000000..4f4d92d
--- /dev/null
+++ b/tags/e/executable-jar-without-main-class.tag
@@ -0,0 +1,5 @@
+Tag: executable-jar-without-main-class
+Severity: error
+Check: languages/java
+See-Also: java-policy 2.2
+Explanation: An executable JAR must have a Main-Class set in its manifest.
diff --git a/tags/e/executable-manual-page.tag b/tags/e/executable-manual-page.tag
new file mode 100644
index 0000000..873f16d
--- /dev/null
+++ b/tags/e/executable-manual-page.tag
@@ -0,0 +1,5 @@
+Tag: executable-manual-page
+Severity: error
+Check: documentation/manual
+Renamed-From: executable-manpage
+Explanation: Manual pages are not meant to be executed.
diff --git a/tags/e/executable-menu-file.tag b/tags/e/executable-menu-file.tag
new file mode 100644
index 0000000..fae9ad2
--- /dev/null
+++ b/tags/e/executable-menu-file.tag
@@ -0,0 +1,6 @@
+Tag: executable-menu-file
+Severity: warning
+Check: menus
+Explanation: Menu files should not be marked as executables.
+ .
+ Packages only need to do that when menu entries are generated on the fly.
diff --git a/tags/e/executable-not-elf-or-script.tag b/tags/e/executable-not-elf-or-script.tag
new file mode 100644
index 0000000..cdf56ed
--- /dev/null
+++ b/tags/e/executable-not-elf-or-script.tag
@@ -0,0 +1,13 @@
+Tag: executable-not-elf-or-script
+Severity: warning
+Check: executable
+Explanation: This executable file is not an ELF format binary, and does not start
+ with the #! sequence that marks interpreted scripts. It might be a sh
+ script that fails to name /bin/sh as its shell, or it may be incorrectly
+ marked as executable. Sometimes upstream files developed on Windows are
+ marked unnecessarily as executable on other systems.
+ .
+ If you are using debhelper to build your package, running dh&lowbar;fixperms will
+ often correct this problem for you.
+See-Also:
+ debian-policy 10.4
diff --git a/tags/e/executable-stack-in-shared-library.tag b/tags/e/executable-stack-in-shared-library.tag
new file mode 100644
index 0000000..bc5544b
--- /dev/null
+++ b/tags/e/executable-stack-in-shared-library.tag
@@ -0,0 +1,20 @@
+Tag: executable-stack-in-shared-library
+Severity: warning
+Check: libraries/shared/stack
+Renamed-From:
+ shlib-with-executable-stack
+Explanation: The listed shared library declares the stack as executable.
+ .
+ Executable stack is usually an error as it is only needed if the code
+ contains GCC trampolines or similar constructs which uses code on the
+ stack. One possible source for false positives are object files built
+ from assembler files which don't define a proper .note.GNU-stack
+ section.
+ .
+ To see the permissions on the stack, run <code>readelf -l</code> on the
+ shared library and look for the program header of type GNU&lowbar;STACK. In the
+ flag column, there should not be an E flag set.
+ .
+ This tag is currently not emitted on MIPS architectures.
+See-Also: https://bugs.debian.org/1025436,
+ https://bugs.debian.org/1022787
diff --git a/tags/e/exit-in-shared-library.tag b/tags/e/exit-in-shared-library.tag
new file mode 100644
index 0000000..9e0657a
--- /dev/null
+++ b/tags/e/exit-in-shared-library.tag
@@ -0,0 +1,15 @@
+Tag: exit-in-shared-library
+Severity: info
+Check: libraries/shared/exit
+Experimental: yes
+Renamed-From:
+ shlib-calls-exit
+Explanation: The listed shared library calls the C library exit() or &lowbar;exit()
+ functions.
+ .
+ In the case of an error, the library should instead return an appropriate
+ error code to the calling program which can then determine how to handle
+ the error, including performing any required clean-up.
+ .
+ In most cases, removing the call should be discussed with upstream,
+ particularly as it may produce an ABI change.
diff --git a/tags/e/experimental-to-unstable-without-comment.tag b/tags/e/experimental-to-unstable-without-comment.tag
new file mode 100644
index 0000000..67a4725
--- /dev/null
+++ b/tags/e/experimental-to-unstable-without-comment.tag
@@ -0,0 +1,13 @@
+Tag: experimental-to-unstable-without-comment
+Severity: pedantic
+Check: debian/changelog
+Explanation: The previous version of this package had a distribution of
+ "experimental", this version has a distribution of "unstable", and there's
+ apparently no comment about the change of distributions.
+ .
+ Lintian looks in this version's changelog entry for the phrase "to
+ unstable" or "to sid", with or without quotation marks around the
+ distribution name.
+ .
+ This may indicate a mistake in setting the distribution and an accidental
+ upload to unstable of a package intended for experimental.
diff --git a/tags/e/explicit-default-in-package-type.tag b/tags/e/explicit-default-in-package-type.tag
new file mode 100644
index 0000000..57dbb84
--- /dev/null
+++ b/tags/e/explicit-default-in-package-type.tag
@@ -0,0 +1,7 @@
+Tag: explicit-default-in-package-type
+Severity: warning
+Check: fields/package-type
+Explanation: Having <code>Package-Type: deb</code> is the same as not having
+ the field at all, so it makes the Packages file longer with no
+ benefit. Policy also discourages it.
+See-Also: debian-policy 5.6.28
diff --git a/tags/e/explicitly-armored-upstream-signature.tag b/tags/e/explicitly-armored-upstream-signature.tag
new file mode 100644
index 0000000..1b9a601
--- /dev/null
+++ b/tags/e/explicitly-armored-upstream-signature.tag
@@ -0,0 +1,7 @@
+Tag: explicitly-armored-upstream-signature
+Severity: warning
+Check: upstream-signature
+Explanation: The packaging includes a detached upstream signature file that was armored
+ explicitly using <code>gpg --enarmor</code>. That is likely an error.
+ .
+ Please generate the signature with <code>gpg --armor --detach-sig</code> instead.
diff --git a/tags/e/extended-description-contains-empty-paragraph.tag b/tags/e/extended-description-contains-empty-paragraph.tag
new file mode 100644
index 0000000..e1567ce
--- /dev/null
+++ b/tags/e/extended-description-contains-empty-paragraph.tag
@@ -0,0 +1,5 @@
+Tag: extended-description-contains-empty-paragraph
+Severity: warning
+Check: fields/description
+Explanation: The extended description (the lines after the first line of the
+ "Description:" field) contains an empty paragraph.
diff --git a/tags/e/extended-description-is-empty.tag b/tags/e/extended-description-is-empty.tag
new file mode 100644
index 0000000..16bf9df
--- /dev/null
+++ b/tags/e/extended-description-is-empty.tag
@@ -0,0 +1,6 @@
+Tag: extended-description-is-empty
+Severity: error
+Check: fields/description
+Explanation: The extended description (the lines after the first line of the
+ "Description:" field) is empty.
+See-Also: debian-policy 3.4
diff --git a/tags/e/extended-description-is-probably-too-short.tag b/tags/e/extended-description-is-probably-too-short.tag
new file mode 100644
index 0000000..9401072
--- /dev/null
+++ b/tags/e/extended-description-is-probably-too-short.tag
@@ -0,0 +1,10 @@
+Tag: extended-description-is-probably-too-short
+Severity: info
+Check: fields/description
+See-Also: developer-reference 6.2.1, developer-reference 6.2.3
+Explanation: The extended description (the lines after the first line of the
+ "Description:" field) is only one or two lines long. The extended
+ description should provide a user with enough information to decide
+ whether they want to install this package, what it contains, and how it
+ compares to similar packages. One or two lines is normally not enough to
+ do this.
diff --git a/tags/e/extended-description-line-too-long.tag b/tags/e/extended-description-line-too-long.tag
new file mode 100644
index 0000000..a9ce1c2
--- /dev/null
+++ b/tags/e/extended-description-line-too-long.tag
@@ -0,0 +1,8 @@
+Tag: extended-description-line-too-long
+Severity: warning
+Check: fields/description
+Explanation: One or more lines in the extended part of the "Description:" field
+ have been found to contain more than 80 characters. For the benefit of
+ users of 80x25 terminals, it is recommended that the lines do not exceed
+ 80 characters.
+See-Also: debian-policy 3.4.1
diff --git a/tags/e/extra-license-file.tag b/tags/e/extra-license-file.tag
new file mode 100644
index 0000000..dc23680
--- /dev/null
+++ b/tags/e/extra-license-file.tag
@@ -0,0 +1,7 @@
+Tag: extra-license-file
+Severity: info
+Check: files/licenses
+See-Also: debian-policy 12.5
+Explanation: All license information should be collected in the
+ <code>debian/copyright</code> file. This usually makes it unnecessary
+ for the package to install this information in other places as well.
diff --git a/tags/e/extra-whitespace-around-name-in-changelog-trailer.tag b/tags/e/extra-whitespace-around-name-in-changelog-trailer.tag
new file mode 100644
index 0000000..b427ee2
--- /dev/null
+++ b/tags/e/extra-whitespace-around-name-in-changelog-trailer.tag
@@ -0,0 +1,10 @@
+Tag: extra-whitespace-around-name-in-changelog-trailer
+Severity: warning
+Check: nmu
+Explanation: There is too much whitespace around the name in debian/changelog.
+ .
+ The format is:
+ -- NAME &lt;EMAIL&gt; DATE
+ .
+ Note that there must be exactly 1 space after the "--" and exactly
+ 2 spaces before the "DATE".
diff --git a/tags/f/FSSTND-dir-in-manual-page.tag b/tags/f/FSSTND-dir-in-manual-page.tag
new file mode 100644
index 0000000..67b08dd
--- /dev/null
+++ b/tags/f/FSSTND-dir-in-manual-page.tag
@@ -0,0 +1,10 @@
+Tag: FSSTND-dir-in-manual-page
+Severity: info
+Check: documentation/manual
+Explanation: The manual page references a directory that is specified
+ in the FSSTND but not in the FHS which is used by Debian.
+ This can be an indicator of a mismatch of the location of
+ files as installed for Debian and as described by the manual page.
+ .
+ If you have to change file locations to abide by Debian Policy
+ please also patch the manual page to mention these new locations.
diff --git a/tags/f/FSSTND-dir-in-usr.tag b/tags/f/FSSTND-dir-in-usr.tag
new file mode 100644
index 0000000..91e9e11
--- /dev/null
+++ b/tags/f/FSSTND-dir-in-usr.tag
@@ -0,0 +1,9 @@
+Tag: FSSTND-dir-in-usr
+Severity: error
+Check: files/hierarchy/standard
+Explanation: As of policy version 3.0.0.0, Debian no longer follows the FSSTND.
+ .
+ Instead, we use the Filesystem Hierarchy Standard (FHS).
+See-Also:
+ debian-policy 9.1.1,
+ filesystem-hierarchy
diff --git a/tags/f/FSSTND-dir-in-var.tag b/tags/f/FSSTND-dir-in-var.tag
new file mode 100644
index 0000000..aca3d42
--- /dev/null
+++ b/tags/f/FSSTND-dir-in-var.tag
@@ -0,0 +1,10 @@
+Tag: FSSTND-dir-in-var
+Severity: error
+Check: files/hierarchy/standard
+Explanation: As of policy version 3.0.0.0, Debian no longer follows the FSSTND.
+ .
+ Instead, the Filesystem Hierarchy Standard (FHS), version 2.3, is
+ used. You can find it in /usr/share/doc/debian-policy/fhs/ .
+See-Also:
+ debian-policy 9.1.1,
+ filesystem-hierarchy
diff --git a/tags/f/faulty-debian-qa-group-address.tag b/tags/f/faulty-debian-qa-group-address.tag
new file mode 100644
index 0000000..5883ec2
--- /dev/null
+++ b/tags/f/faulty-debian-qa-group-address.tag
@@ -0,0 +1,10 @@
+Tag: faulty-debian-qa-group-address
+Severity: error
+Check: fields/mail-address
+Renamed-From: wrong-debian-qa-address-set-as-maintainer
+Explanation: Orphaned packages should no longer have the address
+ &lt;debian-qa@lists.debian.org&gt; in the Maintainer field.
+ .
+ The correct Maintainer field for orphaned packages is
+ Debian QA Group &lt;packages@qa.debian.org&gt;.
+See-Also: developer-reference 5.9.4
diff --git a/tags/f/faulty-debian-qa-group-phrase.tag b/tags/f/faulty-debian-qa-group-phrase.tag
new file mode 100644
index 0000000..4406eee
--- /dev/null
+++ b/tags/f/faulty-debian-qa-group-phrase.tag
@@ -0,0 +1,6 @@
+Tag: faulty-debian-qa-group-phrase
+Severity: error
+Check: fields/mail-address
+Explanation: Orphaned packages should have "Debian QA Group
+ &lt;packages@qa.debian.org&gt;" in the maintainer field.
+See-Also: developer-reference 5.9.4
diff --git a/tags/f/field-too-long.tag b/tags/f/field-too-long.tag
new file mode 100644
index 0000000..45f943d
--- /dev/null
+++ b/tags/f/field-too-long.tag
@@ -0,0 +1,11 @@
+Tag: field-too-long
+Severity: error
+Check: fields/length
+Explanation: The length of the specified field is too long.
+ .
+ Overly-long fields not only can break some tools (e.g.
+ <code>reprepro(1)</code>) they can waste space as they are shipped to all
+ users.
+ .
+ Please reduce the number of characters.
+See-Also: Bug#942493
diff --git a/tags/f/file-contains-fixme-placeholder.tag b/tags/f/file-contains-fixme-placeholder.tag
new file mode 100644
index 0000000..ddc638a
--- /dev/null
+++ b/tags/f/file-contains-fixme-placeholder.tag
@@ -0,0 +1,9 @@
+Tag: file-contains-fixme-placeholder
+Severity: info
+Check: dh-make
+Explanation: This file appears to be incomplete or insufficiently modified as it
+ contains a "FIXME" placeholder text. These can often be generated by
+ package generation tools such as dh&lowbar;make or npm2deb.
+ .
+ Please double-check the file and replace the placeholder with the required
+ command or information.
diff --git a/tags/f/file-directly-in-usr-share-doc.tag b/tags/f/file-directly-in-usr-share-doc.tag
new file mode 100644
index 0000000..c11d863
--- /dev/null
+++ b/tags/f/file-directly-in-usr-share-doc.tag
@@ -0,0 +1,6 @@
+Tag: file-directly-in-usr-share-doc
+Severity: error
+Check: documentation
+Explanation: Documentation files have to be installed in
+ <code>/usr/share/doc/*pkg*</code>.
+See-Also: debian-policy 12.3
diff --git a/tags/f/file-directly-in-usr-share.tag b/tags/f/file-directly-in-usr-share.tag
new file mode 100644
index 0000000..c0822fb
--- /dev/null
+++ b/tags/f/file-directly-in-usr-share.tag
@@ -0,0 +1,8 @@
+Tag: file-directly-in-usr-share
+Severity: error
+Check: files/hierarchy/standard
+Explanation: Packages should not install files directly in <code>/usr/share</code>,
+ i.e., without a subdirectory.
+ .
+ You should either create a subdirectory <code>/usr/share/...</code> for your
+ package or place the file in <code>/usr/share/misc</code>.
diff --git a/tags/f/file-in-discouraged-x11-font-directory.tag b/tags/f/file-in-discouraged-x11-font-directory.tag
new file mode 100644
index 0000000..2b814a6
--- /dev/null
+++ b/tags/f/file-in-discouraged-x11-font-directory.tag
@@ -0,0 +1,10 @@
+Tag: file-in-discouraged-x11-font-directory
+Severity: warning
+Check: desktop/x11
+See-Also: debian-policy 11.8.5
+Explanation: For historical reasons, use of <code>PEX</code>, <code>CID</code>,
+ <code>Speedo</code>, and <code>cyrillic</code> subdirectories of
+ <code>/usr/share/fonts/X11</code> are permitted, but installation of files
+ into these directories is discouraged. Support for the first three font
+ types is deprecated or no longer available, and Cyrillic fonts should use
+ the normal font directories where possible.
diff --git a/tags/f/file-in-etc-not-marked-as-conffile.tag b/tags/f/file-in-etc-not-marked-as-conffile.tag
new file mode 100644
index 0000000..80d35fb
--- /dev/null
+++ b/tags/f/file-in-etc-not-marked-as-conffile.tag
@@ -0,0 +1,6 @@
+Tag: file-in-etc-not-marked-as-conffile
+Severity: error
+Check: conffiles
+See-Also: debian-policy 10.7
+Explanation: Files in <code>/etc</code> must be marked conffiles if they are included
+ in a package. Otherwise they should be created by maintainer scripts.
diff --git a/tags/f/file-in-etc-rc.d-marked-as-conffile.tag b/tags/f/file-in-etc-rc.d-marked-as-conffile.tag
new file mode 100644
index 0000000..63e8363
--- /dev/null
+++ b/tags/f/file-in-etc-rc.d-marked-as-conffile.tag
@@ -0,0 +1,5 @@
+Tag: file-in-etc-rc.d-marked-as-conffile
+Severity: error
+Check: conffiles
+See-Also: debian-policy 9.3.3
+Explanation: The symbolic links in <code>/etc/rc?.d</code> may not be marked as conffiles.
diff --git a/tags/f/file-in-root-and-usr.tag b/tags/f/file-in-root-and-usr.tag
new file mode 100644
index 0000000..ecf4401
--- /dev/null
+++ b/tags/f/file-in-root-and-usr.tag
@@ -0,0 +1,12 @@
+Tag: file-in-root-and-usr
+Severity: error
+Check: usrmerge
+Explanation: The package ships two files with the same name installed both in
+ /{bin,sbin,lib&ast;}/ and /usr/{bin,sbin,lib&ast;}/.
+ This is incompatible with the merged /usr directories scheme.
+ .
+ Packages with conflicting files must remove one of them if possible or
+ make it a symlink to the other and manage the links in the maintainer
+ scripts.
+See-Also: https://wiki.debian.org/UsrMerge,
+ https://anonscm.debian.org/cgit/users/md/usrmerge.git/plain/debian/README.Debian
diff --git a/tags/f/file-in-unknown-x11-font-directory.tag b/tags/f/file-in-unknown-x11-font-directory.tag
new file mode 100644
index 0000000..0632c31
--- /dev/null
+++ b/tags/f/file-in-unknown-x11-font-directory.tag
@@ -0,0 +1,9 @@
+Tag: file-in-unknown-x11-font-directory
+Severity: error
+Check: desktop/x11
+See-Also: debian-policy 11.8.5
+Explanation: Subdirectories of <code>/usr/share/fonts/X11</code> other than
+ <code>100dpi</code>, <code>75dpi</code>, <code>misc</code>, <code>Type1</code>, and some
+ historic exceptions must be neither created nor used. (The directories
+ <code>encodings</code> and <code>util</code>, used by some X Window System
+ packages, are also permitted by Lintian.)
diff --git a/tags/f/file-in-unusual-dir.tag b/tags/f/file-in-unusual-dir.tag
new file mode 100644
index 0000000..74ee428
--- /dev/null
+++ b/tags/f/file-in-unusual-dir.tag
@@ -0,0 +1,5 @@
+Tag: file-in-unusual-dir
+Severity: warning
+Check: files/hierarchy/standard
+Explanation: This file or symbolic link is in a directory where files are not
+ normally installed by Debian packages.
diff --git a/tags/f/file-in-usr-lib-sgml.tag b/tags/f/file-in-usr-lib-sgml.tag
new file mode 100644
index 0000000..c741348
--- /dev/null
+++ b/tags/f/file-in-usr-lib-sgml.tag
@@ -0,0 +1,7 @@
+Tag: file-in-usr-lib-sgml
+Severity: warning
+Check: files/sgml
+See-Also: filesystem-hierarchy theusrhierarchy
+Explanation: This package installs a file in <code>/usr/lib/sgml</code>. This was
+ the old location for SGML catalogs and similar flies. All those files
+ should now go into <code>/usr/share/sgml</code>.
diff --git a/tags/f/file-in-usr-lib-site-python.tag b/tags/f/file-in-usr-lib-site-python.tag
new file mode 100644
index 0000000..549df64
--- /dev/null
+++ b/tags/f/file-in-usr-lib-site-python.tag
@@ -0,0 +1,9 @@
+Tag: file-in-usr-lib-site-python
+Severity: error
+Check: languages/python
+See-Also: python-policy 2.5
+Explanation: The directory /usr/lib/site-python has been deprecated as a
+ location for installing Python modules and may be dropped from Python's
+ module search path in a future version. Most likely this module is a
+ private module and should be packaged in a directory outside of Python's
+ default search path.
diff --git a/tags/f/file-in-usr-local.tag b/tags/f/file-in-usr-local.tag
new file mode 100644
index 0000000..8b08157
--- /dev/null
+++ b/tags/f/file-in-usr-local.tag
@@ -0,0 +1,6 @@
+Tag: file-in-usr-local
+Severity: error
+Check: files/hierarchy/standard
+Explanation: The package installs a file in <code>/usr/local/...</code> which is
+ not allowed.
+See-Also: debian-policy 9.1.2
diff --git a/tags/f/file-in-usr-marked-as-conffile.tag b/tags/f/file-in-usr-marked-as-conffile.tag
new file mode 100644
index 0000000..8d68d1c
--- /dev/null
+++ b/tags/f/file-in-usr-marked-as-conffile.tag
@@ -0,0 +1,8 @@
+Tag: file-in-usr-marked-as-conffile
+Severity: error
+Check: conffiles
+See-Also: debian-policy 10.7.2
+Explanation: All configuration files must reside in <code>/etc</code>. Files below
+ <code>/usr</code> may not be marked as conffiles since <code>/usr</code> might be
+ mounted read-only. The local system administrator would therefore not
+ have a chance to modify this configuration file.
diff --git a/tags/f/file-included-already.tag b/tags/f/file-included-already.tag
new file mode 100644
index 0000000..7ef8067
--- /dev/null
+++ b/tags/f/file-included-already.tag
@@ -0,0 +1,11 @@
+Tag: file-included-already
+Severity: error
+Check: debian/copyright/dep5
+Explanation: The Debian <code>copyright</code> notes included files with the
+ <code>Files-Included</code> field, but the given file would have been shipped
+ without it.
+ .
+ The wildcards in the field may be too broad. Please narrow the criteria for
+ files included in the field <code>Files-Included</code>.
+See-also:
+ https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/f/file-missing-in-md5sums.tag b/tags/f/file-missing-in-md5sums.tag
new file mode 100644
index 0000000..c79efa0
--- /dev/null
+++ b/tags/f/file-missing-in-md5sums.tag
@@ -0,0 +1,9 @@
+Tag: file-missing-in-md5sums
+Severity: warning
+Check: md5sums
+Explanation: The package contains a file which isn't listed in the md5sums control
+ file.
+ .
+ Usually, this error occurs during the package build process if the
+ <code>debian/tmp/</code> directory is touched after <code>dh&lowbar;md5sums</code>
+ is run.
diff --git a/tags/f/file-name-contains-wildcard-character.tag b/tags/f/file-name-contains-wildcard-character.tag
new file mode 100644
index 0000000..9bb82a5
--- /dev/null
+++ b/tags/f/file-name-contains-wildcard-character.tag
@@ -0,0 +1,7 @@
+Tag: file-name-contains-wildcard-character
+Severity: warning
+Check: files/names
+Explanation: The file name contains shell wildcard characters.
+ .
+ These are most likely unexpanded wildcard characters from (for example)
+ <code>debian/&ast;.install</code> files, or it may have been installed by accident.
diff --git a/tags/f/file-name-ends-in-whitespace.tag b/tags/f/file-name-ends-in-whitespace.tag
new file mode 100644
index 0000000..ebf50ad
--- /dev/null
+++ b/tags/f/file-name-ends-in-whitespace.tag
@@ -0,0 +1,10 @@
+Tag: file-name-ends-in-whitespace
+Severity: warning
+Check: files/names
+Explanation: This package installs a file or directory whose name ends in
+ whitespace. This might be intentional but it's normally a mistake. If
+ it is intentional, add a Lintian override.
+ .
+ One possible cause is using Debhelper 5.0.57 or earlier to install a
+ <code>doc-base</code> file with a <code>Document</code> field that ends
+ in whitespace.
diff --git a/tags/f/file-name-in-PATH-is-not-ASCII.tag b/tags/f/file-name-in-PATH-is-not-ASCII.tag
new file mode 100644
index 0000000..d40a587
--- /dev/null
+++ b/tags/f/file-name-in-PATH-is-not-ASCII.tag
@@ -0,0 +1,8 @@
+Tag: file-name-in-PATH-is-not-ASCII
+Severity: error
+Check: files/names
+See-Also: debian-policy 10.10
+Explanation: The given file is in PATH but consists of non-ASCII characters.
+ .
+ Note that Lintian may be unable to display the filename accurately.
+ Unprintable characters may have been replaced.
diff --git a/tags/f/file-references-package-build-path.tag b/tags/f/file-references-package-build-path.tag
new file mode 100644
index 0000000..5e8c533
--- /dev/null
+++ b/tags/f/file-references-package-build-path.tag
@@ -0,0 +1,18 @@
+Tag: file-references-package-build-path
+Severity: info
+Check: files/contents
+Explanation: The listed file or maintainer script appears to reference
+ the build path used to build the package as specified in the
+ <code>Build-Path</code> field of the <code>.buildinfo</code> file.
+ .
+ This is likely to cause the package to be unreproducible, but it may
+ also indicate that the package will not work correctly outside of the
+ maintainer's own system.
+ .
+ Please note that this tag will not appear unless the
+ <code>.buildinfo</code> file contains a <code>Build-Path</code> field. That
+ field is optional. You may have to set
+ <code>DEB&lowbar;BUILD&lowbar;OPTIONS=buildinfo=+path</code> or use
+ <code>--buildinfo-option=--always-include-path</code> with
+ <code>dpkg-buildpackage</code> when building.
+See-Also: https://reproducible-builds.org/, https://wiki.debian.org/ReproducibleBuilds/BuildinfoFiles, dpkg-genbuildinfo(1)
diff --git a/tags/f/file-size-mismatch-in-changes-file.tag b/tags/f/file-size-mismatch-in-changes-file.tag
new file mode 100644
index 0000000..cbaf49a
--- /dev/null
+++ b/tags/f/file-size-mismatch-in-changes-file.tag
@@ -0,0 +1,6 @@
+Tag: file-size-mismatch-in-changes-file
+Severity: error
+Check: changes-file
+Explanation: The actual file size does not match what's listed in the
+ <code>.changes</code> file.
+See-Also: debian-policy 5.6.21, debian-policy 5.6.24
diff --git a/tags/f/file-without-copyright-information.tag b/tags/f/file-without-copyright-information.tag
new file mode 100644
index 0000000..5ac3b34
--- /dev/null
+++ b/tags/f/file-without-copyright-information.tag
@@ -0,0 +1,7 @@
+Tag: file-without-copyright-information
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The source tree contains a file which was not matched by any of
+ the <code>Files</code> paragraphs in debian/copyright. Either adjust existing
+ wildcards to match that file or add a new <code>Files</code> paragraph.
diff --git a/tags/f/files-excluded-without-copyright-format-1.0.tag b/tags/f/files-excluded-without-copyright-format-1.0.tag
new file mode 100644
index 0000000..a49b47a
--- /dev/null
+++ b/tags/f/files-excluded-without-copyright-format-1.0.tag
@@ -0,0 +1,15 @@
+Tag: files-excluded-without-copyright-format-1.0
+Severity: error
+Check: debian/copyright/dep5
+Explanation: The <code>Files-Excluded</code> field in <code>debian/copyright</code> is
+ used to exclude files from upstream source packages such as when they
+ violate the Debian Free Software Guidelines
+ .
+ However, this field will be ignored by uscan(1) if the <code>copyright</code>
+ file is not declared as following the <code>1.0</code> format.
+ .
+ Please ensure your <code>debian/copyright</code> file starts with the
+ following line:
+ .
+ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+See-Also: uscan(1)
diff --git a/tags/f/font-in-non-font-package.tag b/tags/f/font-in-non-font-package.tag
new file mode 100644
index 0000000..7308ac3
--- /dev/null
+++ b/tags/f/font-in-non-font-package.tag
@@ -0,0 +1,11 @@
+Tag: font-in-non-font-package
+Severity: info
+Check: fonts
+Explanation: This package contains a &ast;.ttf, &ast;.otf, or &ast;.pfb file, file
+ extensions used by TrueType, OpenType, or Type 1 fonts, but the package
+ does not appear to be a dedicated font package. Dedicated font package
+ names should begin with <code>fonts-</code>. (Type 1 fonts are also allowed
+ in packages starting with <code>xfonts-</code>.) If the font is already
+ packaged, you should depend on that package instead. Otherwise, normally
+ the font should be packaged separately, since fonts are usually useful
+ outside of the package that embeds them.
diff --git a/tags/f/font-outside-font-dir.tag b/tags/f/font-outside-font-dir.tag
new file mode 100644
index 0000000..6df6def
--- /dev/null
+++ b/tags/f/font-outside-font-dir.tag
@@ -0,0 +1,6 @@
+Tag: font-outside-font-dir
+Severity: info
+Check: fonts
+Explanation: This package contains a TrueType, OpenType, or Type 1 fonts,
+ but the package does not install this file under <code>/usr/share/fonts/</code>.
+See-Also: https://wiki.debian.org/Fonts/PackagingPolicy
diff --git a/tags/f/font-package-not-multi-arch-foreign.tag b/tags/f/font-package-not-multi-arch-foreign.tag
new file mode 100644
index 0000000..eae3589
--- /dev/null
+++ b/tags/f/font-package-not-multi-arch-foreign.tag
@@ -0,0 +1,10 @@
+Tag: font-package-not-multi-arch-foreign
+Severity: warning
+Check: fields/multi-arch
+Explanation: This package is architecture all and hence requires a Multi-Arch
+ foreign value.
+ .
+ An Architecture: all package to satisfy the dependencies of a
+ foreign-architecture package, it must be marked Multi-Arch: foreign
+ or Multi-Arch: allowed.
+See-Also: https://wiki.ubuntu.com/MultiarchSpec#Dependencies_involving_Architecture:_all_packages
diff --git a/tags/f/forbidden-config-interpreter.tag b/tags/f/forbidden-config-interpreter.tag
new file mode 100644
index 0000000..e48ca3c
--- /dev/null
+++ b/tags/f/forbidden-config-interpreter.tag
@@ -0,0 +1,7 @@
+Tag: forbidden-config-interpreter
+Severity: error
+Check: scripts
+Explanation: This package contains a <code>config</code> script for pre-configuring
+ the package. During pre-configuration, however, only essential packages
+ are guaranteed to be installed, so you cannot use a non-essential
+ interpreter.
diff --git a/tags/f/forbidden-postrm-interpreter.tag b/tags/f/forbidden-postrm-interpreter.tag
new file mode 100644
index 0000000..622a75b
--- /dev/null
+++ b/tags/f/forbidden-postrm-interpreter.tag
@@ -0,0 +1,9 @@
+Tag: forbidden-postrm-interpreter
+Severity: error
+Check: scripts
+Explanation: This package contains a <code>postrm</code> maintainer script that uses
+ an interpreter that isn't essential. The <code>purge</code> action of
+ <code>postrm</code> can only rely on essential packages, which means the
+ interpreter used by <code>postrm</code> must be one of the essential ones
+ (<code>sh</code>, <code>bash</code>, or <code>perl</code>).
+See-Also: debian-policy 7.2
diff --git a/tags/f/format-3.0-but-debian-changes-patch.tag b/tags/f/format-3.0-but-debian-changes-patch.tag
new file mode 100644
index 0000000..40cc5a0
--- /dev/null
+++ b/tags/f/format-3.0-but-debian-changes-patch.tag
@@ -0,0 +1,12 @@
+Tag: format-3.0-but-debian-changes-patch
+Severity: warning
+Check: debian/patches/quilt
+Explanation: This package declares source format 3.0 (quilt), but the Debian
+ .debian.tar.gz file contains a debian-changes-VERSION patch, which represents
+ direct changes to files outside of the <code>debian</code> directory. This often
+ indicates accidental changes that weren't meant to be in the package or changes
+ that were supposed to be separated out into a patch.
+ .
+ If this is intentional, you may wish to consider adding
+ <code>single-debian-patch</code> to <code>debian/source/options</code>, and/or a patch
+ header to <code>debian/source/patch-header</code> explaining why this is done.
diff --git a/tags/g/game-outside-section.tag b/tags/g/game-outside-section.tag
new file mode 100644
index 0000000..2a087e2
--- /dev/null
+++ b/tags/g/game-outside-section.tag
@@ -0,0 +1,7 @@
+Tag: game-outside-section
+Severity: warning
+Check: games
+Renamed-From: games-package-should-be-section-games
+Explanation: All the executables in this package are in <code>/usr/games</code>, but
+ the package is not in section games. This can be intentional but is
+ usually a mistake.
diff --git a/tags/g/gawk-script-but-no-gawk-dep.tag b/tags/g/gawk-script-but-no-gawk-dep.tag
new file mode 100644
index 0000000..81eaf4b
--- /dev/null
+++ b/tags/g/gawk-script-but-no-gawk-dep.tag
@@ -0,0 +1,9 @@
+Tag: gawk-script-but-no-gawk-dep
+Severity: error
+Check: scripts
+Explanation: Packages that use gawk scripts must depend on the gawk package.
+ If they don't need gawk-specific features, and can just as easily work
+ with mawk, then they should be awk scripts instead.
+ .
+ In some cases a weaker relationship, such as Suggests or Recommends, will
+ be more appropriate.
diff --git a/tags/g/generated-file.tag b/tags/g/generated-file.tag
new file mode 100644
index 0000000..af3ef04
--- /dev/null
+++ b/tags/g/generated-file.tag
@@ -0,0 +1,12 @@
+Tag: generated-file
+Severity: classification
+Check: files/generated
+Explanation: This file contains a common marker for generated files.
+ .
+ Some examples are:
+ .
+ - <code>DO NOT EDIT BY HAND</code>
+ - <code>file was autogenerated</code>
+ .
+ In general, Debian likes to ship only true source files. Please consider
+ asking upstream to generate the file during the build process instead.
diff --git a/tags/g/gfortran-module-does-not-declare-version.tag b/tags/g/gfortran-module-does-not-declare-version.tag
new file mode 100644
index 0000000..38ae3e0
--- /dev/null
+++ b/tags/g/gfortran-module-does-not-declare-version.tag
@@ -0,0 +1,9 @@
+Tag: gfortran-module-does-not-declare-version
+Severity: warning
+Check: languages/fortran/gfortran
+Explanation: The installation package ships a GFORTRAN module which does not
+ declare a module version number. That number is needed to establish the
+ proper prerequisites for binary rebuilds.
+See-Also: Bug#796352,
+ Bug#714730,
+ https://salsa.debian.org/science-team/dh-fortran-mod/blob/debian/master/dh_fortran_mod.in
diff --git a/tags/g/gir-in-arch-all-package.tag b/tags/g/gir-in-arch-all-package.tag
new file mode 100644
index 0000000..74276f6
--- /dev/null
+++ b/tags/g/gir-in-arch-all-package.tag
@@ -0,0 +1,8 @@
+Tag: gir-in-arch-all-package
+Severity: warning
+Check: desktop/gnome/gir
+Explanation: GObject-Introspection XML files
+ (<code>/usr/share/gir-1.0/Foo-23.gir</code>) must be made available in
+ an architecture-dependent package of the same source.
+See-Also:
+ /usr/share/doc/gobject-introspection/policy.txt
diff --git a/tags/g/gir-missing-typelib-dependency.tag b/tags/g/gir-missing-typelib-dependency.tag
new file mode 100644
index 0000000..1b467b8
--- /dev/null
+++ b/tags/g/gir-missing-typelib-dependency.tag
@@ -0,0 +1,25 @@
+Tag: gir-missing-typelib-dependency
+Severity: warning
+Check: desktop/gnome/gir
+Explanation: Development packages that contain GObject-Introspection XML files
+ (<code>/usr/share/gir-1.0/Foo-23.gir</code>) must depend on the package
+ containing the corresponding binary typelib, which is conventionally named
+ <code>gir1.2-foo-23</code>. The dependency must be strictly versioned
+ (for example <code>gir1.2-foo-23 (= ${binary:Version})</code> when using
+ debhelper).
+ .
+ If multiple typelibs are shipped in the same package, then that package
+ should have versioned <code>Provides</code> for the names that would have been
+ used for separate packages. In this case, Lintian does not emit this tag
+ when a group of binary packages from the same source is checked together.
+ .
+ For example, <code>libgtk-3-dev</code> contains <code>Gtk-3.0.gir</code>,
+ <code>Gdk-3.0.gir</code> and <code>GdkX11-3.0.gir</code>.
+ <code>gir1.2-gtk-3.0</code> contains all three corresponding typelibs,
+ so it is sufficient for <code>libgtk-3-dev</code> to depend on
+ <code>gir1.2-gtk-3.0</code>. Giving <code>gir1.2-gtk-3.0</code> <code>Provides</code>
+ entries for <code>gir1.2-gdk-3.0 (= ${binary:Version})</code>
+ and <code>gir1.2-gdkx11-3.0 (= ${binary:Version})</code> signals this
+ situation to Lintian.
+See-Also:
+ /usr/share/doc/gobject-introspection/policy.txt
diff --git a/tags/g/gir-section-not-libdevel.tag b/tags/g/gir-section-not-libdevel.tag
new file mode 100644
index 0000000..8e050ea
--- /dev/null
+++ b/tags/g/gir-section-not-libdevel.tag
@@ -0,0 +1,10 @@
+Tag: gir-section-not-libdevel
+Severity: warning
+Check: desktop/gnome/gir
+Explanation: GObject-Introspection XML files
+ (<code>/usr/share/gir-1.0/Foo-23.gir</code>) must be made available in
+ a development package in the <code>libdevel</code> section of the archive.
+ This is normally the same <code>libfoo-dev</code> package that contains
+ other development files.
+See-Also:
+ /usr/share/doc/gobject-introspection/policy.txt
diff --git a/tags/g/git-patches-not-exported.tag b/tags/g/git-patches-not-exported.tag
new file mode 100644
index 0000000..deb14ad
--- /dev/null
+++ b/tags/g/git-patches-not-exported.tag
@@ -0,0 +1,15 @@
+Tag: git-patches-not-exported
+Severity: error
+Check: debian/source-dir
+Explanation: The source package contains files in
+ <code>debian/source/git-patches</code>. These patches should have been exported
+ via the <code>quilt-patches-deb-export-hook</code> of <code>gitpkg</code>.
+ .
+ It does not look like the patches were exported for this source package.
+ .
+ You will see this tag when you generate a source package without
+ <code>gitpkg</code> (or with a misconfigured version) unless the patches
+ were exported manually.
+ .
+ See the above mentioned hook file (in <code>/usr/share/gitpkg/hooks</code>)
+ for information on how to export patches manually.
diff --git a/tags/g/global-data-in-games-directory.tag b/tags/g/global-data-in-games-directory.tag
new file mode 100644
index 0000000..dabec16
--- /dev/null
+++ b/tags/g/global-data-in-games-directory.tag
@@ -0,0 +1,14 @@
+Tag: global-data-in-games-directory
+Severity: error
+Check: games
+Explanation: This package contains files under <code>/usr/share/games</code>, such as
+ desktop files, icons, pixmaps, or MIME type entries, that are global
+ system data. The user's desktop environment will only check in the
+ directories directly under <code>/usr/share</code> and this information
+ should be put in the global directory even if it is for games.
+ .
+ The most common cause of this problem is using a
+ <code>--datadir=/usr/share/games</code> argument to configure or an
+ equivalent and using the upstream installation rules. These files need
+ to be moved into the corresponding directories directly under
+ <code>/usr/share</code>.
diff --git a/tags/g/global-files-wildcard-not-first-paragraph-in-dep5-copyright.tag b/tags/g/global-files-wildcard-not-first-paragraph-in-dep5-copyright.tag
new file mode 100644
index 0000000..7f4e0b9
--- /dev/null
+++ b/tags/g/global-files-wildcard-not-first-paragraph-in-dep5-copyright.tag
@@ -0,0 +1,15 @@
+Tag: global-files-wildcard-not-first-paragraph-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+Explanation: The specified paragraph in the machine readable copyright file references
+ all possible files but is not the first paragraph. For example:
+ .
+ Files: filea
+ Copyright: 2009, ...
+ .
+ Files: &ast;
+ Copyright: 2010, ...
+ .
+ As the paragraphs is matched on a "last match wins" principle, all proceeding
+ paragraphs are overridden.
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/g/globbing-patterns-out-of-order.tag b/tags/g/globbing-patterns-out-of-order.tag
new file mode 100644
index 0000000..88237d2
--- /dev/null
+++ b/tags/g/globbing-patterns-out-of-order.tag
@@ -0,0 +1,13 @@
+Tag: globbing-patterns-out-of-order
+Severity: warning
+Check: debian/copyright/dep5
+Explanation: The <code>Files</code> sections in debian/copyright are out of order.
+ The relative directory depth should increase from one section to the next.
+ That is the general pattern of the specification, with &ast; at the top.
+ .
+ When sections are in another order, some files may be associated
+ with the wrong license.
+ .
+ Please reorder the sections.
+See-Also: Bug#905747,
+ https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/g/gobject-introspection-package-missing-depends-on-gir-depends.tag b/tags/g/gobject-introspection-package-missing-depends-on-gir-depends.tag
new file mode 100644
index 0000000..0cf432c
--- /dev/null
+++ b/tags/g/gobject-introspection-package-missing-depends-on-gir-depends.tag
@@ -0,0 +1,11 @@
+Tag: gobject-introspection-package-missing-depends-on-gir-depends
+Severity: error
+Check: desktop/gnome/gir/substvars
+Explanation: The package in <code>debian/control</code> is a GObject Introspection
+ installation package but does not declare its prerequisites using the
+ <code>${gir:Depends}</code> substvar.
+ .
+ Without proper runtime prerequisites, a program usually aborts.
+ .
+ This tag can often be fixed by adding the <code>--with=gir</code> Debhelper
+ sequence.
diff --git a/tags/g/groff-message.tag b/tags/g/groff-message.tag
new file mode 100644
index 0000000..767a486
--- /dev/null
+++ b/tags/g/groff-message.tag
@@ -0,0 +1,39 @@
+Tag: groff-message
+Severity: warning
+Check: documentation/manual
+Renamed-From: manpage-has-errors-from-man
+Explanation: A manual page provoked warnings or errors from the <code>man</code>
+ program. Here are some common ones:
+ .
+ "cannot adjust" or "can't break" are issues with paragraph filling. They
+ are usually related to long lines. Justifying text on the left hand side
+ can help with adjustments. Hyphenation can help with breaks.
+ .
+ For more information, please see "Manipulating Filling and Adjusting"
+ and "Manipulating Hyphenation" in the Groff manual (see <code>info groff</code>).
+ .
+ "can't find numbered character" usually means that the input was in a
+ national legacy encoding. The warning means that some characters were
+ dropped. Please use escapes such as <code>\[:a]</code> as described on the
+ <code>groff&lowbar;char</code> manual page.
+ .
+ Other common warnings are formatting typos. String arguments to
+ <code>.IP</code> require quotes. Usually, some text is lost or mangled. See
+ the <code>groff&lowbar;man</code> (or <code>groff&lowbar;mdoc</code> if using <code>mdoc</code>)
+ manual page for details on macros.
+ .
+ The check for manual pages uses the <code>--warnings</code> option to
+ <code>man</code> to catch common problems, like a <code>.</code> or a <code>'</code>
+ at the beginning of a line as literal text. They are interpreted as
+ Groff commands. Just reformat the paragraph so the characters are not at
+ the beginning of a line. You can also add a zero-width space (<code>\&</code>)
+ in front of them.
+ .
+ Aside from overrides, warnings can be disabled with the <code>.warn</code>
+ directive. Please see "Debugging" in the Groff manual.
+ .
+ You can see the warnings yourself by running the command used by Lintian:
+ .
+ <code>LC&lowbar;ALL=C.UTF-8 MANROFFSEQ='' MANWIDTH=80 \
+ man --warnings -E UTF-8 -l -Tutf8 -Z &lt;file&gt; &gt;/dev/null</code>
+See-Also: groff_man(7), groff_mdoc(7)
diff --git a/tags/g/gzip-file-is-not-multi-arch-same-safe.tag b/tags/g/gzip-file-is-not-multi-arch-same-safe.tag
new file mode 100644
index 0000000..1c2f0d2
--- /dev/null
+++ b/tags/g/gzip-file-is-not-multi-arch-same-safe.tag
@@ -0,0 +1,8 @@
+Tag: gzip-file-is-not-multi-arch-same-safe
+Severity: error
+Check: files/compressed/gz
+Explanation: The gzip file contains a timestamp that will differ between
+ architectures. Multi-Arch: same implies all shared files must be
+ byte-for-byte identical.
+ .
+ This can usually be fixed by passing -n to gzip.
diff --git a/tags/h/hardening-no-bindnow.tag b/tags/h/hardening-no-bindnow.tag
new file mode 100644
index 0000000..c12e705
--- /dev/null
+++ b/tags/h/hardening-no-bindnow.tag
@@ -0,0 +1,17 @@
+Tag: hardening-no-bindnow
+Severity: info
+Check: binaries/hardening
+Explanation: This package provides an ELF binary that lacks the "bindnow"
+ linker flag.
+ .
+ This is needed (together with "relro") to make the "Global Offset
+ Table" (GOT) fully read-only. The bindnow feature trades startup
+ time for improved security. Please consider enabling this feature
+ or consider overriding the tag (possibly with a comment about why).
+ .
+ If you use <code>dpkg-buildflags</code>, you may have to add
+ <code>hardening=+bindnow</code> or <code>hardening=+all</code> to
+ <code>DEB&lowbar;BUILD&lowbar;MAINT&lowbar;OPTIONS</code>.
+ .
+ The relevant compiler flags are set in <code>LDFLAGS</code>.
+See-Also: https://wiki.debian.org/Hardening
diff --git a/tags/h/hardening-no-fortify-functions.tag b/tags/h/hardening-no-fortify-functions.tag
new file mode 100644
index 0000000..63833f0
--- /dev/null
+++ b/tags/h/hardening-no-fortify-functions.tag
@@ -0,0 +1,13 @@
+Tag: hardening-no-fortify-functions
+Severity: info
+Check: binaries/hardening
+Explanation: This package provides an ELF binary that lacks the use of fortified
+ libc functions. Either there are no potentially unfortified functions
+ called by any routines, all unfortified calls have already been fully
+ validated at compile-time, or the package was not built with the default
+ Debian compiler flags defined by <code>dpkg-buildflags</code>. If built using
+ <code>dpkg-buildflags</code> directly, be sure to import <code>CPPFLAGS</code>.
+ .
+ NB: Due to false-positives, Lintian ignores some unprotected functions
+ (e.g. memcpy).
+See-Also: https://wiki.debian.org/Hardening, Bug#673112
diff --git a/tags/h/hardening-no-pie.tag b/tags/h/hardening-no-pie.tag
new file mode 100644
index 0000000..06a5eff
--- /dev/null
+++ b/tags/h/hardening-no-pie.tag
@@ -0,0 +1,23 @@
+Tag: hardening-no-pie
+Severity: warning
+Check: binaries/hardening
+Explanation: This package provides an ELF executable that was not compiled
+ as a position independent executable (PIE).
+ .
+ In Debian, since version 6.2.0-7 of the gcc-6 package GCC will
+ compile ELF binaries with PIE by default. In most cases a simple
+ rebuild will be sufficient to remove this tag.
+ .
+ PIE is required for fully enabling Address Space Layout
+ Randomization (ASLR), which makes "Return-oriented" attacks more
+ difficult.
+ .
+ Historically, PIE has been associated with noticeable performance
+ overhead on i386. However, GCC &gt;= 5 has implemented an optimization
+ that can reduce the overhead significantly.
+ .
+ If you use <code>dpkg-buildflags</code> with <code>hardening=+all,-pie</code>
+ in <code>DEB&lowbar;BUILD&lowbar;MAINT&lowbar;OPTIONS</code>, remove the <code>-pie</code>.
+See-Also: https://wiki.debian.org/Hardening,
+ https://gcc.gnu.org/gcc-5/changes.html,
+ https://software.intel.com/en-us/blogs/2014/12/26/new-optimizations-for-x86-in-upcoming-gcc-50-32bit-pic-mode
diff --git a/tags/h/hardening-no-relro.tag b/tags/h/hardening-no-relro.tag
new file mode 100644
index 0000000..e1bb69c
--- /dev/null
+++ b/tags/h/hardening-no-relro.tag
@@ -0,0 +1,9 @@
+Tag: hardening-no-relro
+Severity: warning
+Check: binaries/hardening
+Explanation: This package provides an ELF binary that lacks the "read-only
+ relocation" link flag. This package was likely not built with the
+ default Debian compiler flags defined by <code>dpkg-buildflags</code>.
+ If built using <code>dpkg-buildflags</code> directly, be sure to import
+ <code>LDFLAGS</code>.
+See-Also: https://wiki.debian.org/Hardening
diff --git a/tags/h/header-has-overly-generic-name.tag b/tags/h/header-has-overly-generic-name.tag
new file mode 100644
index 0000000..7b27787
--- /dev/null
+++ b/tags/h/header-has-overly-generic-name.tag
@@ -0,0 +1,8 @@
+Tag: header-has-overly-generic-name
+Severity: error
+Check: files/includes
+Explanation: This package installs a header to the <code>/usr/include</code> global
+ namespace with an overly generic name.
+ .
+ This was either a mistake and/or likely to cause conflicts with other
+ packages.
diff --git a/tags/h/helper-templates-in-copyright.tag b/tags/h/helper-templates-in-copyright.tag
new file mode 100644
index 0000000..4fb0066
--- /dev/null
+++ b/tags/h/helper-templates-in-copyright.tag
@@ -0,0 +1,8 @@
+Tag: helper-templates-in-copyright
+Severity: error
+Check: debian/copyright
+Explanation: The /usr/share/doc/*pkg*/copyright file still contains
+ template markers from a packaging helper. Please fill in the actual
+ license, upstream copyright holders, and download information about the
+ package and remove any remaining templates generated by the packaging
+ helper.
diff --git a/tags/h/homepage-field-uses-insecure-uri.tag b/tags/h/homepage-field-uses-insecure-uri.tag
new file mode 100644
index 0000000..abd4da2
--- /dev/null
+++ b/tags/h/homepage-field-uses-insecure-uri.tag
@@ -0,0 +1,5 @@
+Tag: homepage-field-uses-insecure-uri
+Severity: pedantic
+Check: fields/homepage
+Explanation: The Homepage field uses an unencrypted transport protocol for the
+ URI.
diff --git a/tags/h/homepage-for-bioconductor-package-not-canonical.tag b/tags/h/homepage-for-bioconductor-package-not-canonical.tag
new file mode 100644
index 0000000..0f47059
--- /dev/null
+++ b/tags/h/homepage-for-bioconductor-package-not-canonical.tag
@@ -0,0 +1,14 @@
+Tag: homepage-for-bioconductor-package-not-canonical
+Severity: info
+Check: fields/homepage
+Explanation: The Homepage field for this package points to an uncanonical Bioconductor URL.
+ Please update to use the current canonical URL instead. The canonical URL is
+ recommended for use in publications, etc., will always redirect to current
+ release version (or devel if package is not in release yet). For example, the
+ link for the package "foo" should be:
+ .
+ https://bioconductor.org/packages/foo/
+ .
+ not:
+ .
+ https://www.bioconductor.org/packages/(release|devel|&ast;)/bioc/html/foo.html
diff --git a/tags/h/homepage-for-cpan-package-contains-version.tag b/tags/h/homepage-for-cpan-package-contains-version.tag
new file mode 100644
index 0000000..ab8668a
--- /dev/null
+++ b/tags/h/homepage-for-cpan-package-contains-version.tag
@@ -0,0 +1,17 @@
+Tag: homepage-for-cpan-package-contains-version
+Severity: warning
+Check: fields/homepage
+Explanation: The Homepage field for this package points to CPAN and the URL
+ includes the version. It's better to link to the unversioned CPAN page
+ so that the URL doesn't have to be updated for each new release. For
+ example, use:
+ .
+ http://search.cpan.org/dist/HTML-Template/
+ .
+ or
+ .
+ https://metacpan.org/release/HTML-Template/
+ .
+ not:
+ .
+ http://search.cpan.org/~samtregar/HTML-Template-2.9/
diff --git a/tags/h/homepage-for-cran-package-not-canonical.tag b/tags/h/homepage-for-cran-package-not-canonical.tag
new file mode 100644
index 0000000..d0286e4
--- /dev/null
+++ b/tags/h/homepage-for-cran-package-not-canonical.tag
@@ -0,0 +1,14 @@
+Tag: homepage-for-cran-package-not-canonical
+Severity: info
+Check: fields/homepage
+Explanation: The Homepage field for this package points to an uncanonical CRAN URL.
+ Please update to use the current canonical URL instead. The canonical URL is
+ recommended for use in publications, etc., will always redirect to current
+ release version (or devel if package is not in release yet). For example, the
+ link for the package "foo" should be:
+ .
+ https://cran.r-project.org/package=foo
+ .
+ not:
+ .
+ https://cran.r-project.org/web/packages/foo/index.html
diff --git a/tags/h/homepage-github-url-ends-with-dot-git.tag b/tags/h/homepage-github-url-ends-with-dot-git.tag
new file mode 100644
index 0000000..32fc033
--- /dev/null
+++ b/tags/h/homepage-github-url-ends-with-dot-git.tag
@@ -0,0 +1,12 @@
+Tag: homepage-github-url-ends-with-dot-git
+Severity: info
+Check: fields/homepage
+Explanation: The Homepage field contains a GitHub URL that ends with .git
+ Please update to use the canonical URL, without .git at the end, for the
+ GitHub repository instead.
+ .
+ https://github.com/foo/bar
+ .
+ not:
+ .
+ https://github.com/foo/bar.git
diff --git a/tags/h/homepage-gitlab-url-ends-with-dot-git.tag b/tags/h/homepage-gitlab-url-ends-with-dot-git.tag
new file mode 100644
index 0000000..7055298
--- /dev/null
+++ b/tags/h/homepage-gitlab-url-ends-with-dot-git.tag
@@ -0,0 +1,12 @@
+Tag: homepage-gitlab-url-ends-with-dot-git
+Severity: info
+Check: fields/homepage
+Explanation: The Homepage field contains a GitLab URL that ends with .git
+ Please update to use the canonical URL, without .git at the end, for the
+ GitLab repository instead.
+ .
+ https://gitlab.com/foo/bar
+ .
+ not:
+ .
+ https://gitlab.com/foo/bar.git
diff --git a/tags/h/homepage-in-binary-package.tag b/tags/h/homepage-in-binary-package.tag
new file mode 100644
index 0000000..174f32c
--- /dev/null
+++ b/tags/h/homepage-in-binary-package.tag
@@ -0,0 +1,13 @@
+Tag: homepage-in-binary-package
+Severity: info
+Check: fields/homepage
+Explanation: This non-native source package produces at least one binary package
+ with a <code>Homepage</code> field. However, the source package itself has
+ no <code>Homepage</code> field. Unfortunately, this results in some
+ source-based tools/services (e.g. the PTS) not linking to the homepage
+ of the upstream project.
+ .
+ If you move the <code>Homepage</code> field to the source paragraph in
+ <code>debian/control</code> then all binary packages from this source
+ will inherit the value by default.
+See-Also: debian-policy 5.6.23
diff --git a/tags/h/homepage-refers-to-filesystem-listing.tag b/tags/h/homepage-refers-to-filesystem-listing.tag
new file mode 100644
index 0000000..04d0e4d
--- /dev/null
+++ b/tags/h/homepage-refers-to-filesystem-listing.tag
@@ -0,0 +1,7 @@
+Tag: homepage-refers-to-filesystem-listing
+Severity: info
+Check: fields/homepage
+Explanation: The <code>Homepage</code> field for this package points to a
+ download directory / filesystem listing.
+ .
+ Please update the field to point to the project's regular homepage.
diff --git a/tags/h/homepage-refers-to-obsolete-debian-infrastructure.tag b/tags/h/homepage-refers-to-obsolete-debian-infrastructure.tag
new file mode 100644
index 0000000..a20c385
--- /dev/null
+++ b/tags/h/homepage-refers-to-obsolete-debian-infrastructure.tag
@@ -0,0 +1,13 @@
+Tag: homepage-refers-to-obsolete-debian-infrastructure
+Severity: warning
+Check: fields/homepage
+Explanation: The <code>Homepage</code> field for this package points to an area
+ within the &ast;.debian.org infrastructure that has been deprecated.
+ .
+ After 1st May 2018, the Alioth service became read-only in May 2018.
+ Packages should migrate to website hosting on https://salsa.debian.org.
+ .
+ For further information about salsa.debian.org, including how to add
+ HTTP redirects from alioth, please consult the Debian Wiki.
+See-Also: https://lists.debian.org/debian-devel-announce/2017/08/msg00008.html,
+ https://wiki.debian.org/Salsa
diff --git a/tags/h/homepage-salsa-url-ends-with-dot-git.tag b/tags/h/homepage-salsa-url-ends-with-dot-git.tag
new file mode 100644
index 0000000..4dce9b2
--- /dev/null
+++ b/tags/h/homepage-salsa-url-ends-with-dot-git.tag
@@ -0,0 +1,12 @@
+Tag: homepage-salsa-url-ends-with-dot-git
+Severity: info
+Check: fields/homepage
+Explanation: The Homepage field contains a Salsa URL that ends with .git
+ Please update to use the canonical URL, without .git at the end, for the
+ Salsa repository instead.
+ .
+ https://salsa.debian.org/foo/bar
+ .
+ not:
+ .
+ https://salsa.debian.org/foo/bar.git
diff --git a/tags/h/html-changelog-without-text-version.tag b/tags/h/html-changelog-without-text-version.tag
new file mode 100644
index 0000000..9ea1465
--- /dev/null
+++ b/tags/h/html-changelog-without-text-version.tag
@@ -0,0 +1,7 @@
+Tag: html-changelog-without-text-version
+Severity: error
+Check: debian/changelog
+Explanation: If the upstream changelog file is HTML formatted, a text version
+ should also be accessible as "changelog.gz". (This can be created by
+ "lynx -dump -nolist")
+See-Also: debian-policy 12.7
diff --git a/tags/h/hyphen-file.tag b/tags/h/hyphen-file.tag
new file mode 100644
index 0000000..e8c8e5a
--- /dev/null
+++ b/tags/h/hyphen-file.tag
@@ -0,0 +1,7 @@
+Tag: hyphen-file
+Severity: error
+Check: files/names
+Explanation: The given file is literally installed as <code>-</code> (hyphen
+ symbol). Normally this indicates a mistake in the package when
+ attempting to write to standard output.
+See-Also: Bug#882638
diff --git a/tags/h/hyphen-in-upstream-part-of-debian-changelog-version.tag b/tags/h/hyphen-in-upstream-part-of-debian-changelog-version.tag
new file mode 100644
index 0000000..ed451eb
--- /dev/null
+++ b/tags/h/hyphen-in-upstream-part-of-debian-changelog-version.tag
@@ -0,0 +1,7 @@
+Tag: hyphen-in-upstream-part-of-debian-changelog-version
+Severity: pedantic
+Check: debian/changelog
+Explanation: The upstream version in the debian changelog contains one or more
+ hyphens. While that is okay according to Debian Policy, some tools may
+ croak.
+See-Also: debian-policy 5.6.12
diff --git a/tags/i/icon-size-and-directory-name-mismatch.tag b/tags/i/icon-size-and-directory-name-mismatch.tag
new file mode 100644
index 0000000..2865a35
--- /dev/null
+++ b/tags/i/icon-size-and-directory-name-mismatch.tag
@@ -0,0 +1,6 @@
+Tag: icon-size-and-directory-name-mismatch
+Severity: warning
+Check: desktop/icons
+Explanation: The icon has a size that differs from the size specified by the name
+ of the directory under which it was installed. The icon was probably
+ mistakenly installed into the wrong directory.
diff --git a/tags/i/illegal-multi-arch-value.tag b/tags/i/illegal-multi-arch-value.tag
new file mode 100644
index 0000000..0911275
--- /dev/null
+++ b/tags/i/illegal-multi-arch-value.tag
@@ -0,0 +1,7 @@
+Tag: illegal-multi-arch-value
+Severity: error
+Check: fields/multi-arch
+Explanation: The package is architecture all and has the Multi-Arch same value.
+ .
+ This combination is not allowed by the Multi-Arch specification.
+See-Also: https://wiki.ubuntu.com/MultiarchSpec
diff --git a/tags/i/illegal-runtime-test-name.tag b/tags/i/illegal-runtime-test-name.tag
new file mode 100644
index 0000000..315a84d
--- /dev/null
+++ b/tags/i/illegal-runtime-test-name.tag
@@ -0,0 +1,7 @@
+Tag: illegal-runtime-test-name
+Severity: warning
+Check: testsuite
+Explanation: Runtime test names in debian/tests/control are only allowed to
+ contain decimal digits, lowercase ASCII letters, plus or minus signs,
+ dots or slashes.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/i/illegal-variable.tag b/tags/i/illegal-variable.tag
new file mode 100644
index 0000000..74dd973
--- /dev/null
+++ b/tags/i/illegal-variable.tag
@@ -0,0 +1,21 @@
+Tag: illegal-variable
+Severity: error
+Check: debian/variables
+Explanation: With debhelper compatibility level &gt;= 13 (and also
+ <code>dh-exec</code> before it) several files in the
+ <code>./debian</code> folder support the expansion of variables.
+ Unfortunately, people sometimes confuse the
+ <code>DEB&lowbar;BUILD&lowbar;&ast;</code>
+ variables with the similarly-named
+ <code>DEB&lowbar;HOST&lowbar;&ast;</code> variables.
+ .
+ Some conditions are difficult to detect but it is never correct
+ to use <code>DEB&lowbar;BUILD&lowbar;MULTIARCH</code> in
+ <code>debian/&ast;.install</code> or in
+ <code>debian/&ast;.links</code>.
+ .
+ Please use <code>DEB&lowbar;HOST&lowbar;MULTIARCH</code> instead
+ of <code>DEB&lowbar;BUILD&lowbar;MULTIARCH</code>.
+See-Also:
+ https://wiki.debian.org/Multiarch/Implementation#Recipes_for_converting_packages,
+ Bug#983219
diff --git a/tags/i/image-file-has-conflicting-name.tag b/tags/i/image-file-has-conflicting-name.tag
new file mode 100644
index 0000000..092e590
--- /dev/null
+++ b/tags/i/image-file-has-conflicting-name.tag
@@ -0,0 +1,6 @@
+Tag: image-file-has-conflicting-name
+Severity: info
+Check: images/filenames
+Explanation: An image file in this package has a name that is
+ usually associated with another image format.
+See-Also: Bug#717818
diff --git a/tags/i/image-file-has-unexpected-name.tag b/tags/i/image-file-has-unexpected-name.tag
new file mode 100644
index 0000000..0bbfc2b
--- /dev/null
+++ b/tags/i/image-file-has-unexpected-name.tag
@@ -0,0 +1,6 @@
+Tag: image-file-has-unexpected-name
+Severity: pedantic
+Check: images/filenames
+Explanation: An image file in this package has a name not generally
+ associated with its format.
+See-Also: Bug#717818
diff --git a/tags/i/image-file-in-usr-lib.tag b/tags/i/image-file-in-usr-lib.tag
new file mode 100644
index 0000000..666bb56
--- /dev/null
+++ b/tags/i/image-file-in-usr-lib.tag
@@ -0,0 +1,6 @@
+Tag: image-file-in-usr-lib
+Severity: pedantic
+Check: images
+Explanation: This package installs a pixmap or a bitmap within <code>/usr/lib</code>.
+ According to the Filesystem Hierarchy Standard, architecture-independent
+ files should be placed within <code>/usr/share</code> instead.
diff --git a/tags/i/improbable-bug-number-in-closes.tag b/tags/i/improbable-bug-number-in-closes.tag
new file mode 100644
index 0000000..26f5a04
--- /dev/null
+++ b/tags/i/improbable-bug-number-in-closes.tag
@@ -0,0 +1,6 @@
+Tag: improbable-bug-number-in-closes
+Severity: warning
+Check: debian/changelog
+Explanation: The most recent changelog closes a low-numbered bug number.
+ While this is distantly possible, it's more likely a typo or a
+ placeholder value that mistakenly wasn't filled in.
diff --git a/tags/i/incompatible-java-bytecode-format.tag b/tags/i/incompatible-java-bytecode-format.tag
new file mode 100644
index 0000000..aea1761
--- /dev/null
+++ b/tags/i/incompatible-java-bytecode-format.tag
@@ -0,0 +1,7 @@
+Tag: incompatible-java-bytecode-format
+Severity: warning
+Check: languages/java
+Explanation: The package contains Java class files with a minimum requirement on the
+ listed Java version. This Java version is not supported by the default JVM
+ in Debian and is therefore likely to be a mistake.
+See-Also: Bug#673276
diff --git a/tags/i/incomplete-creative-commons-license.tag b/tags/i/incomplete-creative-commons-license.tag
new file mode 100644
index 0000000..86be15b
--- /dev/null
+++ b/tags/i/incomplete-creative-commons-license.tag
@@ -0,0 +1,23 @@
+Tag: incomplete-creative-commons-license
+Severity: warning
+Check: debian/copyright/dep5
+Explanation: The package appears to be licensed under a Creative Commons
+ license but only includes the human-readable summary in the
+ debian/copyright file which is not the actual licence. The Creative
+ Commons webpages contains the following disclaimer:
+ .
+ This deed highlights only some of the key features and terms of the
+ actual license. It is not a license and has no legal value. You should
+ carefully review all of the terms and conditions of the actual license
+ before using the licensed material.
+ .
+ Creative Commons is not a law firm and does not provide legal
+ services. Distributing, displaying, or linking to this deed or the
+ license that it summarizes does not create a lawyer-client or any
+ other relationship.
+ .
+ Please use the full, plain-text version of the license text which may
+ be found here:
+ .
+ https://creativecommons.org/2014/01/07/plaintext-versions-of-creative-commons-4-0-licenses/
+See-Also: Bug#903470, Bug#795402
diff --git a/tags/i/inconsistent-appstream-metadata-license.tag b/tags/i/inconsistent-appstream-metadata-license.tag
new file mode 100644
index 0000000..03680a9
--- /dev/null
+++ b/tags/i/inconsistent-appstream-metadata-license.tag
@@ -0,0 +1,10 @@
+Tag: inconsistent-appstream-metadata-license
+Severity: warning
+Check: debian/copyright/dep5
+Explanation: The specified AppStream metadata file specifies a
+ <code>metadata&lowbar;license</code> field but this does not match
+ its entry (possibly via the <code>Files: *</code> stanza) in
+ <code>debian/copyright</code>.
+See-Also: https://wiki.debian.org/AppStream/Guidelines,
+ https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/,
+ https://www.freedesktop.org/software/appstream/docs/chap-Metadata.html#tag-metadata_license
diff --git a/tags/i/inconsistent-maintainer.tag b/tags/i/inconsistent-maintainer.tag
new file mode 100644
index 0000000..ea85a19
--- /dev/null
+++ b/tags/i/inconsistent-maintainer.tag
@@ -0,0 +1,10 @@
+Tag: inconsistent-maintainer
+Severity: error
+Check: fields/maintainer
+Explanation: The Maintainer address in a group of related processables is
+ inconsistent as indicated.
+ .
+ This sometimes happens when environmental variables like <code>DEBEMAIL</code>
+ are set to different values when building sources and changes separately.
+ Please use the same maintainer everywhere.
+See-Also: Bug#546525, https://wiki.ubuntu.com/DebianMaintainerField, Ubuntu Bug#1862787
diff --git a/tags/i/incorrect-libdir-in-la-file.tag b/tags/i/incorrect-libdir-in-la-file.tag
new file mode 100644
index 0000000..a09daa9
--- /dev/null
+++ b/tags/i/incorrect-libdir-in-la-file.tag
@@ -0,0 +1,8 @@
+Tag: incorrect-libdir-in-la-file
+Severity: error
+Check: build-systems/libtool/la-file
+Explanation: The given .la file points to a libdir other than the path where it is
+ installed. This can be caused by resetting <code>prefix</code> at make install
+ time instead of using <code>DESTDIR</code>. The incorrect path will cause
+ packages linking to this library using libtool to build incorrectly (adding
+ incorrect paths to RPATH, for example).
diff --git a/tags/i/incorrect-locale-code.tag b/tags/i/incorrect-locale-code.tag
new file mode 100644
index 0000000..f4cdb53
--- /dev/null
+++ b/tags/i/incorrect-locale-code.tag
@@ -0,0 +1,15 @@
+Tag: incorrect-locale-code
+Severity: warning
+Check: files/locales
+Explanation: The package appears to ship locales for a language but uses an
+ incorrect locale code as a subdirectory of <code>/usr/share/locale</code>.
+ This usually results in users of the intended target language not
+ finding the locale. The language codes used in the locale directories
+ are those from the ISO 639-1 and ISO 639-2 standards, not those
+ usually used as TLDs (which are from the ISO 3166 standard).
+ .
+ When both standards define a language code for a given language, the
+ ISO 639-1 code should be used (i.e. the two lettered code).
+ .
+ Lintian only knows about some commonly-mistaken set of incorrect
+ locale codes.
diff --git a/tags/i/incorrect-naming-of-pkcs11-module.tag b/tags/i/incorrect-naming-of-pkcs11-module.tag
new file mode 100644
index 0000000..4e5477f
--- /dev/null
+++ b/tags/i/incorrect-naming-of-pkcs11-module.tag
@@ -0,0 +1,11 @@
+Tag: incorrect-naming-of-pkcs11-module
+Severity: error
+Check: files/p11-kit
+Explanation: This package ships a PKCS#11 module configuration file under
+ <code>/usr/share/p11-kit/modules</code>, but its naming doesn't conform
+ to what <code>p11-kit</code> expects. Files in that directory should
+ respect the following convention, case insensitive:
+ [a-z0-9][a-z0-9&lowbar;.-]&ast;.module
+ .
+ p11-kit currently warns on every file that does not follow the
+ convention and may ignore them in the future.
diff --git a/tags/i/incorrect-packaging-filename.tag b/tags/i/incorrect-packaging-filename.tag
new file mode 100644
index 0000000..6a1045b
--- /dev/null
+++ b/tags/i/incorrect-packaging-filename.tag
@@ -0,0 +1,16 @@
+Tag: incorrect-packaging-filename
+Severity: warning
+Check: debian/filenames
+Explanation: Some packaging files obtain different names when they are copied
+ from source to installation packages. Debhelper sometimes adds &ast;.Debian
+ extensions to NEWS, README and TODO files. That can be confusing.
+ .
+ Debhelper's behavior also depends on the filename.
+ .
+ This source package contains a file that debhelper will not find. The
+ file will not be included in your installation packages. Important
+ information, such as incompatibilties on upgrades, may not reach your
+ users.
+ .
+ Please rename the file as indicated.
+See-Also: Bug#429510, Bug#946126, Bug#946041
diff --git a/tags/i/incorrect-path-for-interpreter.tag b/tags/i/incorrect-path-for-interpreter.tag
new file mode 100644
index 0000000..4425dff
--- /dev/null
+++ b/tags/i/incorrect-path-for-interpreter.tag
@@ -0,0 +1,13 @@
+Tag: incorrect-path-for-interpreter
+Severity: warning
+Check: scripts
+Explanation: The interpreter you used is installed at another location on Debian
+ systems.
+ .
+ Whilst the script may work, it is in violation of Debian Policy. This
+ may have been caused by usrmerge.
+ .
+ Note that, as a particular exception, Debian Policy ยง 10.4 states that
+ Perl scripts should use <code>/usr/bin/perl</code> directly and not
+ <code>/usr/bin/env</code>, etc.
+See-Also: debian-policy 10.4, https://wiki.debian.org/UsrMerge
diff --git a/tags/i/info-document-has-wrong-extension.tag b/tags/i/info-document-has-wrong-extension.tag
new file mode 100644
index 0000000..f0f6eda
--- /dev/null
+++ b/tags/i/info-document-has-wrong-extension.tag
@@ -0,0 +1,4 @@
+Tag: info-document-has-wrong-extension
+Severity: warning
+Check: documentation/texinfo
+Explanation: The info document has an extension other than info&ast;.gz.
diff --git a/tags/i/info-document-missing-dir-entry.tag b/tags/i/info-document-missing-dir-entry.tag
new file mode 100644
index 0000000..62115e3
--- /dev/null
+++ b/tags/i/info-document-missing-dir-entry.tag
@@ -0,0 +1,16 @@
+Tag: info-document-missing-dir-entry
+Severity: error
+Check: documentation/texinfo
+Explanation: This info document has no directory entry. This is text between
+ START-INFO-DIR-ENTRY and END-INFO-DIR-ENTRY lines which is copied into
+ the <code>dir</code> file in <code>/usr/share/info</code> by
+ <code>install-info</code>. The best solution is to add lines like:
+ .
+ @dircategory Software development
+ @direntry
+ &ast; foo: (foo). Foo creator and editor
+ @end direntry
+ .
+ to the texinfo source so that the generated info file will contain an
+ appropriate entry. You will have to ensure that the build process builds
+ new info files rather than using ones built by upstream.
diff --git a/tags/i/info-document-missing-dir-section.tag b/tags/i/info-document-missing-dir-section.tag
new file mode 100644
index 0000000..3d7eb88
--- /dev/null
+++ b/tags/i/info-document-missing-dir-section.tag
@@ -0,0 +1,13 @@
+Tag: info-document-missing-dir-section
+Severity: error
+Check: documentation/texinfo
+Explanation: This info document has no INFO-DIR-SECTION line.
+ <code>install-info</code> will be unable to determine the section into which
+ this info page should be put. The best solution is to add a line like:
+ .
+ @dircategory Software development
+ .
+ to the texinfo source so that the generated info file will contain a
+ section. See <code>/usr/share/info/dir</code> for sections to choose from.
+ You will have to ensure that the build process builds new info files
+ rather than using ones built by upstream.
diff --git a/tags/i/info-document-missing-image-file.tag b/tags/i/info-document-missing-image-file.tag
new file mode 100644
index 0000000..469a67a
--- /dev/null
+++ b/tags/i/info-document-missing-image-file.tag
@@ -0,0 +1,19 @@
+Tag: info-document-missing-image-file
+Severity: warning
+Check: documentation/texinfo
+Explanation: This info document contains an "[image]" but the image file it
+ specifies is missing. Texinfo <code>@image{}</code> becomes
+ .
+ [image src="filename.png"]
+ .
+ in the <code>.info</code>. Emacs 22 and up info
+ mode can display this in a GUI if filename.png is in
+ <code>/usr/share/info</code> or if the src gives a path to the file
+ elsewhere.
+ .
+ If you put an image file in <code>/usr/share/info</code> then please name
+ it like the document so as to avoid name clashes. Eg. foo.info might
+ call an image foo-example1.png. If upstream does not do this already
+ then it may be easier to <code>sed</code> the <code>src=""</code> to a path
+ elsewhere, perhaps to share with an HTML rendition under say
+ <code>/usr/share/doc/foo/html/</code>.
diff --git a/tags/i/info-document-not-compressed-with-gzip.tag b/tags/i/info-document-not-compressed-with-gzip.tag
new file mode 100644
index 0000000..e06929c
--- /dev/null
+++ b/tags/i/info-document-not-compressed-with-gzip.tag
@@ -0,0 +1,7 @@
+Tag: info-document-not-compressed-with-gzip
+Severity: error
+Check: documentation/texinfo
+Explanation: Info documents should be compressed with <code>gzip -9n</code>. This
+ file ends in <code>.gz</code> but doesn't appear to be a gzip-compressed
+ file.
+See-Also: debian-policy 12.2
diff --git a/tags/i/info-document-not-compressed-with-max-compression.tag b/tags/i/info-document-not-compressed-with-max-compression.tag
new file mode 100644
index 0000000..7326198
--- /dev/null
+++ b/tags/i/info-document-not-compressed-with-max-compression.tag
@@ -0,0 +1,6 @@
+Tag: info-document-not-compressed-with-max-compression
+Severity: error
+Check: documentation/texinfo
+Explanation: Info documents should be compressed with <code>gzip -9n</code>. This
+ file is compressed with gzip, but without using maximum compression.
+See-Also: debian-policy 12.2
diff --git a/tags/i/info-document-not-compressed.tag b/tags/i/info-document-not-compressed.tag
new file mode 100644
index 0000000..bc1f982
--- /dev/null
+++ b/tags/i/info-document-not-compressed.tag
@@ -0,0 +1,5 @@
+Tag: info-document-not-compressed
+Severity: error
+Check: documentation/texinfo
+Explanation: Info documents should be compressed with <code>gzip -9n</code>.
+See-Also: debian-policy 12.2
diff --git a/tags/i/init-d-script-stops-in-s-runlevel.tag b/tags/i/init-d-script-stops-in-s-runlevel.tag
new file mode 100644
index 0000000..5f6dd27
--- /dev/null
+++ b/tags/i/init-d-script-stops-in-s-runlevel.tag
@@ -0,0 +1,8 @@
+Tag: init-d-script-stops-in-s-runlevel
+Severity: warning
+Check: init-d
+Explanation: This <code>/etc/init.d</code> script specifies the S runlevel in
+ Default-Stop in its LSB keyword section. The S runlevel is not a real
+ runlevel and is only used during boot. There is no way to switch to it
+ and hence no use for stop scripts for it, so S should be removed from
+ Default-Stop.
diff --git a/tags/i/init-script-is-not-a-file.tag b/tags/i/init-script-is-not-a-file.tag
new file mode 100644
index 0000000..20cd1bf
--- /dev/null
+++ b/tags/i/init-script-is-not-a-file.tag
@@ -0,0 +1,5 @@
+Tag: init-script-is-not-a-file
+Severity: error
+Check: systemd
+Explanation: The package contains an init script that is not a regular file or
+ resolvable symlink.
diff --git a/tags/i/init.d-script-contains-skeleton-template-content.tag b/tags/i/init.d-script-contains-skeleton-template-content.tag
new file mode 100644
index 0000000..bc06f66
--- /dev/null
+++ b/tags/i/init.d-script-contains-skeleton-template-content.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-contains-skeleton-template-content
+Severity: error
+Check: init-d
+Explanation: The given init script appears to contain content from the
+ <code>/etc/init.d/skeleton</code> example.
+ .
+ Please double-check the script and/or replace it with content suitable to
+ this binary package.
diff --git a/tags/i/init.d-script-depends-on-all-virtual-facility.tag b/tags/i/init.d-script-depends-on-all-virtual-facility.tag
new file mode 100644
index 0000000..6b7e304
--- /dev/null
+++ b/tags/i/init.d-script-depends-on-all-virtual-facility.tag
@@ -0,0 +1,9 @@
+Tag: init.d-script-depends-on-all-virtual-facility
+Severity: error
+Check: init-d
+Explanation: The given init script declares a dependency on the virtual
+ facility "$all". This virtual facility is reserved for very special
+ cases, that work specifically with init system.
+ .
+ Regular services should not use this facility.
+See-Also: https://wiki.debian.org/LSBInitScripts
diff --git a/tags/i/init.d-script-depends-on-unknown-virtual-facility.tag b/tags/i/init.d-script-depends-on-unknown-virtual-facility.tag
new file mode 100644
index 0000000..de3ff7c
--- /dev/null
+++ b/tags/i/init.d-script-depends-on-unknown-virtual-facility.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-depends-on-unknown-virtual-facility
+Severity: error
+Check: init-d
+Explanation: The given init script declares a dependency on a virtual facility
+ that is not known to be provided by any init.d script in the archive.
+ If the dependency cannot be satisfied upon the package's
+ installation, insserv will refuse the activation of the init.d script.
+See-Also: https://wiki.debian.org/LSBInitScripts
diff --git a/tags/i/init.d-script-does-not-implement-required-option.tag b/tags/i/init.d-script-does-not-implement-required-option.tag
new file mode 100644
index 0000000..0d1653e
--- /dev/null
+++ b/tags/i/init.d-script-does-not-implement-required-option.tag
@@ -0,0 +1,6 @@
+Tag: init.d-script-does-not-implement-required-option
+Severity: error
+Check: init-d
+See-Also: debian-policy 9.3.2
+Explanation: The <code>/etc/init.d</code> scripts have to support the following
+ command line arguments: start, stop, restart, force-reload.
diff --git a/tags/i/init.d-script-does-not-implement-status-option.tag b/tags/i/init.d-script-does-not-implement-status-option.tag
new file mode 100644
index 0000000..a693edd
--- /dev/null
+++ b/tags/i/init.d-script-does-not-implement-status-option.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-does-not-implement-status-option
+Severity: info
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: The specified <code>/etc/init.d</code> script does not implement the
+ <code>status</code> option. This is actually required by LSB, often
+ requested by users and will be required by the Debian Policy in
+ the future.
diff --git a/tags/i/init.d-script-does-not-provide-itself.tag b/tags/i/init.d-script-does-not-provide-itself.tag
new file mode 100644
index 0000000..e9bc72a
--- /dev/null
+++ b/tags/i/init.d-script-does-not-provide-itself.tag
@@ -0,0 +1,9 @@
+Tag: init.d-script-does-not-provide-itself
+Severity: info
+Check: init-d
+Explanation: This <code>/etc/init.d</code> script indicates it provides one or
+ more facilities, but none of the provided facilities match the name of
+ the init script. In certain cases, it may be necessary to not follow
+ that convention, but normally init scripts should always provide a
+ facility matching the name of the init script.
+See-Also: https://wiki.debian.org/LSBInitScripts
diff --git a/tags/i/init.d-script-does-not-source-init-functions.tag b/tags/i/init.d-script-does-not-source-init-functions.tag
new file mode 100644
index 0000000..9b7a823
--- /dev/null
+++ b/tags/i/init.d-script-does-not-source-init-functions.tag
@@ -0,0 +1,11 @@
+Tag: init.d-script-does-not-source-init-functions
+Severity: warning
+Check: systemd
+Explanation: The <code>/etc/init.d</code> script does not source
+ <code>/lib/lsb/init-functions</code>. The <code>systemd</code> package provides
+ <code>/lib/lsb/init-functions.d/40-systemd</code> to redirect
+ <code>/etc/init.d/$script</code> calls to systemctl.
+ .
+ Please add a line like this to your <code>/etc/init.d</code> script:
+ .
+ . /lib/lsb/init-functions
diff --git a/tags/i/init.d-script-has-bad-lsb-line.tag b/tags/i/init.d-script-has-bad-lsb-line.tag
new file mode 100644
index 0000000..e2bab8e
--- /dev/null
+++ b/tags/i/init.d-script-has-bad-lsb-line.tag
@@ -0,0 +1,10 @@
+Tag: init.d-script-has-bad-lsb-line
+Severity: warning
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: This line in the LSB keyword section of an <code>/etc/init.d</code>
+ script doesn't match the required formatting of that section. Note that
+ keyword settings must start with <code>#</code>, a single space, the keyword,
+ a colon, and some whitespace, followed by the value (if any). Only the
+ Description keyword allows continuation lines, and continuation lines
+ must begin with <code>#</code> and either a tab or two or more spaces.
diff --git a/tags/i/init.d-script-has-bad-start-runlevel.tag b/tags/i/init.d-script-has-bad-start-runlevel.tag
new file mode 100644
index 0000000..8f7652f
--- /dev/null
+++ b/tags/i/init.d-script-has-bad-start-runlevel.tag
@@ -0,0 +1,7 @@
+Tag: init.d-script-has-bad-start-runlevel
+Severity: warning
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: The given runlevel specified in the Default-Start keyword of the LSB
+ keyword section of this <code>/etc/init.d</code> script isn't one of the
+ recognized standard runlevels (S, 0, 1, 2, 3, 4, 5, and 6).
diff --git a/tags/i/init.d-script-has-bad-stop-runlevel.tag b/tags/i/init.d-script-has-bad-stop-runlevel.tag
new file mode 100644
index 0000000..9fec931
--- /dev/null
+++ b/tags/i/init.d-script-has-bad-stop-runlevel.tag
@@ -0,0 +1,7 @@
+Tag: init.d-script-has-bad-stop-runlevel
+Severity: warning
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: The given runlevel specified in the Default-Stop keyword of the LSB
+ keyword section of this <code>/etc/init.d</code> script isn't one of the
+ recognized standard runlevels (0, 1, 2, 3, 4, 5, and 6).
diff --git a/tags/i/init.d-script-has-conflicting-start-stop.tag b/tags/i/init.d-script-has-conflicting-start-stop.tag
new file mode 100644
index 0000000..6d027b5
--- /dev/null
+++ b/tags/i/init.d-script-has-conflicting-start-stop.tag
@@ -0,0 +1,9 @@
+Tag: init.d-script-has-conflicting-start-stop
+Severity: warning
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: The given runlevel was included in both the Default-Start and
+ Default-Stop keywords of the LSB keyword section of this
+ <code>/etc/init.d</code> script. Since it doesn't make sense to both start
+ and stop a service in the same runlevel, there is probably an error in
+ one or the other of these keywords.
diff --git a/tags/i/init.d-script-has-duplicate-lsb-keyword.tag b/tags/i/init.d-script-has-duplicate-lsb-keyword.tag
new file mode 100644
index 0000000..3006758
--- /dev/null
+++ b/tags/i/init.d-script-has-duplicate-lsb-keyword.tag
@@ -0,0 +1,7 @@
+Tag: init.d-script-has-duplicate-lsb-keyword
+Severity: warning
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: The given keyword was set twice in the LSB keyword section in this
+ <code>/etc/init.d</code> script. This is probably a mistake; the behavior of
+ setting the same keyword twice is undefined.
diff --git a/tags/i/init.d-script-has-duplicate-lsb-section.tag b/tags/i/init.d-script-has-duplicate-lsb-section.tag
new file mode 100644
index 0000000..4e32eb3
--- /dev/null
+++ b/tags/i/init.d-script-has-duplicate-lsb-section.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-has-duplicate-lsb-section
+Severity: error
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: This <code>/etc/init.d</code> script has more than one LSB keyword
+ section. These sections start with <code>### BEGIN INIT INFO</code> and end
+ with <code>### END INIT INFO</code>. There should be only one such section
+ per init script.
diff --git a/tags/i/init.d-script-has-unknown-lsb-keyword.tag b/tags/i/init.d-script-has-unknown-lsb-keyword.tag
new file mode 100644
index 0000000..f743f17
--- /dev/null
+++ b/tags/i/init.d-script-has-unknown-lsb-keyword.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-has-unknown-lsb-keyword
+Severity: warning
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: The given keyword was set in the LSB keyword section in this
+ <code>/etc/init.d</code> script but isn't one of the known LSB keywords and
+ doesn't begin with <code>X-</code>. One of the standard keywords may have
+ been misspelled.
diff --git a/tags/i/init.d-script-has-unterminated-lsb-section.tag b/tags/i/init.d-script-has-unterminated-lsb-section.tag
new file mode 100644
index 0000000..7e2d22b
--- /dev/null
+++ b/tags/i/init.d-script-has-unterminated-lsb-section.tag
@@ -0,0 +1,11 @@
+Tag: init.d-script-has-unterminated-lsb-section
+Severity: error
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: This <code>/etc/init.d</code> script has an LSB keyword section starting
+ with <code>### BEGIN INIT INFO</code> but either has no matching <code>### END
+ INIT INFO</code> or has lines between those two markers that are not
+ comments. The line number given is the first line that doesn't look like
+ part of an LSB keyword section. There must be an end marker after all
+ the keyword settings and there must not be any lines between those
+ markers that do not begin with <code>#</code>.
diff --git a/tags/i/init.d-script-missing-dependency-on-local_fs.tag b/tags/i/init.d-script-missing-dependency-on-local_fs.tag
new file mode 100644
index 0000000..eb3c34b
--- /dev/null
+++ b/tags/i/init.d-script-missing-dependency-on-local_fs.tag
@@ -0,0 +1,12 @@
+Tag: init.d-script-missing-dependency-on-local_fs
+Severity: error
+Check: init-d
+Explanation: The given init script seems to refer to <code>/var</code>, possibly
+ using a file from there. Without a dependency on <code>$local&lowbar;fs</code> in
+ Required-Start or Required-Stop, as appropriate, the init script might be
+ run before <code>/var</code> is mounted or after it's unmounted.
+ .
+ Using Should-Start or Should-Stop to declare the dependency is
+ conceptually incorrect since the $local&lowbar;fs facility is always
+ available. Required-Start or Required-Stop should be used instead.
+See-Also: https://wiki.debian.org/LSBInitScripts
diff --git a/tags/i/init.d-script-missing-lsb-keyword.tag b/tags/i/init.d-script-missing-lsb-keyword.tag
new file mode 100644
index 0000000..bef14ef
--- /dev/null
+++ b/tags/i/init.d-script-missing-lsb-keyword.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-missing-lsb-keyword
+Severity: warning
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: This <code>/etc/init.d</code> script has an LSB keyword section, but it
+ is missing the given required LSB keyword. If the value of this keyword
+ should be empty, please still include it in the LSB keyword section with
+ an empty value.
diff --git a/tags/i/init.d-script-missing-lsb-section.tag b/tags/i/init.d-script-missing-lsb-section.tag
new file mode 100644
index 0000000..0fe9111
--- /dev/null
+++ b/tags/i/init.d-script-missing-lsb-section.tag
@@ -0,0 +1,9 @@
+Tag: init.d-script-missing-lsb-section
+Severity: warning
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: This <code>/etc/init.d</code> script does not have an LSB keyword
+ section (or the <code>### BEGIN INIT INFO</code> tag is incorrect). This
+ section provides description and runlevel information in a standard
+ format and provides dependency information that can be used to
+ parallelize the boot process. Please consider adding it.
diff --git a/tags/i/init.d-script-missing-lsb-short-description.tag b/tags/i/init.d-script-missing-lsb-short-description.tag
new file mode 100644
index 0000000..a1bbd81
--- /dev/null
+++ b/tags/i/init.d-script-missing-lsb-short-description.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-missing-lsb-short-description
+Severity: info
+Check: init-d
+See-Also: https://wiki.debian.org/LSBInitScripts
+Explanation: This <code>/etc/init.d</code> script has an LSB keyword section, but it
+ is missing a Short-Description LSB keyword. This field isn't directly
+ used currently, but adding it is still a good idea for documentation
+ purposes.
diff --git a/tags/i/init.d-script-missing-start.tag b/tags/i/init.d-script-missing-start.tag
new file mode 100644
index 0000000..518c96d
--- /dev/null
+++ b/tags/i/init.d-script-missing-start.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-missing-start
+Severity: warning
+Check: init-d
+Explanation: The given <code>/etc/init.d</code> script indicates it should be
+ started at one of the runlevels 2-5 but not at all of them. This is a
+ mistake. The system administrators should be given the opportunity to
+ customize the runlevels at their will.
+See-Also: debian-policy 9.3.3.1
diff --git a/tags/i/init.d-script-not-included-in-package.tag b/tags/i/init.d-script-not-included-in-package.tag
new file mode 100644
index 0000000..79af697
--- /dev/null
+++ b/tags/i/init.d-script-not-included-in-package.tag
@@ -0,0 +1,5 @@
+Tag: init.d-script-not-included-in-package
+Severity: error
+Check: init-d
+Explanation: The <code>/etc/init.d</code> script is registered in the
+ <code>postinst</code> script, but is not included in the package.
diff --git a/tags/i/init.d-script-not-marked-as-conffile.tag b/tags/i/init.d-script-not-marked-as-conffile.tag
new file mode 100644
index 0000000..3d5a5d3
--- /dev/null
+++ b/tags/i/init.d-script-not-marked-as-conffile.tag
@@ -0,0 +1,8 @@
+Tag: init.d-script-not-marked-as-conffile
+Severity: warning
+Check: init-d
+See-Also: debian-policy 9.3.2
+Explanation: <code>/etc/init.d</code> scripts should be marked as conffiles.
+ .
+ This is usually an error, but the Policy allows for managing these files
+ manually in maintainer scripts and Lintian cannot reliably detect that.
diff --git a/tags/i/init.d-script-possible-missing-stop.tag b/tags/i/init.d-script-possible-missing-stop.tag
new file mode 100644
index 0000000..ee1a2da
--- /dev/null
+++ b/tags/i/init.d-script-possible-missing-stop.tag
@@ -0,0 +1,15 @@
+Tag: init.d-script-possible-missing-stop
+Severity: warning
+Check: init-d
+Explanation: The given <code>/etc/init.d</code> script indicates it should be
+ stopped at one of the runlevels 0, 1, or 6 but not at all of them.
+ This is usually a mistake. Normally, facilities that need to be stopped
+ at any of those runlevels need to be stopped at all of them.
+ .
+ For example, if it is safe for the facility provided by this init script
+ to be stopped by <code>sendsigs</code> at runlevels 0 and 6, there should be
+ no reason to special case runlevel 1, where <code>killprocs</code> would
+ stop it. If the facility needs special shutdown handling when rebooting
+ the system (runlevel 6), it probably needs the same handling when
+ halting the system (runlevel 0) or switching to single-user mode
+ (runlevel 1).
diff --git a/tags/i/init.d-script-provides-virtual-facility.tag b/tags/i/init.d-script-provides-virtual-facility.tag
new file mode 100644
index 0000000..89c10f6
--- /dev/null
+++ b/tags/i/init.d-script-provides-virtual-facility.tag
@@ -0,0 +1,16 @@
+Tag: init.d-script-provides-virtual-facility
+Severity: warning
+Check: init-d
+Explanation: This <code>/etc/init.d</code> script indicates in its LSB headers that
+ it provides a virtual facility, denoted by the dollar sign in front of
+ the name.
+ .
+ This is not the correct way to provide a virtual facility. Instead, the
+ package should include a file in <code>/etc/insserv.conf.d</code>, usually
+ named after the package, containing:
+ .
+ $virtual&lowbar;facility&lowbar;name +init-script-name
+ .
+ to declare that the named init script provides the named virtual
+ facility.
+See-Also: https://wiki.debian.org/LSBInitScripts/DebianVirtualFacilities
diff --git a/tags/i/init.d-script-should-always-start-service.tag b/tags/i/init.d-script-should-always-start-service.tag
new file mode 100644
index 0000000..c26c24a
--- /dev/null
+++ b/tags/i/init.d-script-should-always-start-service.tag
@@ -0,0 +1,19 @@
+Tag: init.d-script-should-always-start-service
+Severity: error
+Check: init-d
+Explanation: The specified file under <code>/etc/default/</code> includes a line
+ such as <code>ENABLED=</code>, <code>DISABLED=</code>, <code>RUN=</code>, etc.
+ .
+ This is an older practice used so that the package's init script would
+ not start the service until the local system administrator changed this
+ value.
+ .
+ However, this hides from the underlying init system whether or not the
+ daemon should actually be started leading to confusing behavior
+ including <code>service package start</code> returning success without the
+ service actually starting.
+ .
+ Please remove this mechanism and disable enabling the daemon on install
+ via <code>dh&lowbar;installinit --no-enable</code> or move to automatically
+ starting it.
+See-Also: debian-policy 9.3.3.1, update-rc.d(8), dh_installinit(1)
diff --git a/tags/i/init.d-script-sourcing-without-test.tag b/tags/i/init.d-script-sourcing-without-test.tag
new file mode 100644
index 0000000..8998372
--- /dev/null
+++ b/tags/i/init.d-script-sourcing-without-test.tag
@@ -0,0 +1,11 @@
+Tag: init.d-script-sourcing-without-test
+Severity: error
+Check: init-d
+Explanation: The given <code>/etc/init.d</code> script seems to be sourcing an
+ <code>/etc/default/</code> file without checking for its existence first.
+ Files in <code>/etc/default/</code> can be deleted by the administrator at
+ any time, and init scripts are required to handle the situation
+ gracefully. For example:
+ .
+ [ -r /etc/default/foo ] && . /etc/default/foo
+See-Also: debian-policy 9.3.2
diff --git a/tags/i/init.d-script-starts-in-stop-runlevel.tag b/tags/i/init.d-script-starts-in-stop-runlevel.tag
new file mode 100644
index 0000000..9943d1b
--- /dev/null
+++ b/tags/i/init.d-script-starts-in-stop-runlevel.tag
@@ -0,0 +1,9 @@
+Tag: init.d-script-starts-in-stop-runlevel
+Severity: error
+Check: init-d
+Explanation: This <code>/etc/init.d</code> script specifies the 0 or 6 runlevels in
+ Default-Start in its LSB keyword section. The 0 and 6 runlevels are
+ meant to only stop services, not to start them. Even if the init script
+ is doing something that isn't exactly stopping a service, the run-level
+ should be listed in Default-Stop, not Default-Start, and the script
+ should perform those actions when passed the <code>stop</code> argument.
diff --git a/tags/i/init.d-script-uses-usr-interpreter.tag b/tags/i/init.d-script-uses-usr-interpreter.tag
new file mode 100644
index 0000000..203c765
--- /dev/null
+++ b/tags/i/init.d-script-uses-usr-interpreter.tag
@@ -0,0 +1,15 @@
+Tag: init.d-script-uses-usr-interpreter
+Severity: warning
+Check: init-d
+Explanation: The given <code>/etc/init.d</code> script specifies an interpreter in
+ its shebang located under <code>/usr</code>.
+ .
+ It indicates that the init script may be using a non-essential
+ interpreter. Since init scripts are configuration files, they may be
+ left on the system after their package has been removed but not purged.
+ At that point, the package dependencies are not guaranteed to exist and
+ the interpreter may therefore not be available.
+ .
+ It's generally best to write init scripts using <code>/bin/sh</code> or
+ <code>/bin/bash</code> where possible, since they are guaranteed to always be
+ available.
diff --git a/tags/i/initial-upload-closes-no-bugs.tag b/tags/i/initial-upload-closes-no-bugs.tag
new file mode 100644
index 0000000..4651ddc
--- /dev/null
+++ b/tags/i/initial-upload-closes-no-bugs.tag
@@ -0,0 +1,12 @@
+Tag: initial-upload-closes-no-bugs
+Severity: warning
+Check: debian/changelog
+Renamed-From: new-package-should-close-itp-bug
+Explanation: This package appears to be the first packaging of a new upstream
+ software package (there is only one changelog entry and the Debian
+ revision is 1), but it does not close any bugs. The initial upload of a
+ new package should close the corresponding ITP bug for that package.
+ .
+ This warning can be ignored if the package is not intended for Debian or
+ if it is a split of an existing Debian package.
+See-Also: developer-reference 5.1
diff --git a/tags/i/insecure-copyright-format-uri.tag b/tags/i/insecure-copyright-format-uri.tag
new file mode 100644
index 0000000..0f19843
--- /dev/null
+++ b/tags/i/insecure-copyright-format-uri.tag
@@ -0,0 +1,11 @@
+Tag: insecure-copyright-format-uri
+Severity: pedantic
+Check: debian/copyright/dep5
+Explanation: Format URI of the machine-readable copyright file uses the plain HTTP
+ unencrypted transport protocol. Since policy version 4.0.0, using HTTPS is preferred.
+ .
+ Please use
+ <code>https://www.debian.org/doc/packaging-manuals/copyright-format/*version*/</code>
+ as the format URI instead.
+See-Also:
+ https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/i/install-info-used-in-maintainer-script.tag b/tags/i/install-info-used-in-maintainer-script.tag
new file mode 100644
index 0000000..8151360
--- /dev/null
+++ b/tags/i/install-info-used-in-maintainer-script.tag
@@ -0,0 +1,10 @@
+Tag: install-info-used-in-maintainer-script
+Severity: error
+Check: scripts
+Explanation: This script apparently runs <code>install-info</code>. Updating the
+ <code>/usr/share/info/dir</code> file is now handled automatically by
+ triggers, so running <code>install-info</code> from maintainer scripts is no
+ longer necessary.
+ .
+ If debhelper generated the maintainer script fragment, rebuilding the
+ package with debhelper 7.2.17 or later will fix this problem.
diff --git a/tags/i/installable-field-mirrors-source.tag b/tags/i/installable-field-mirrors-source.tag
new file mode 100644
index 0000000..f91ceeb
--- /dev/null
+++ b/tags/i/installable-field-mirrors-source.tag
@@ -0,0 +1,11 @@
+Tag: installable-field-mirrors-source
+Severity: info
+Check: debian/control/field/redundant
+Renamed-From:
+ binary-control-field-duplicates-source
+Explanation: The named field for an installation package in
+ <code>debian/control</code> has the same value as the one inherited
+ from the source paragraph.
+ .
+ In the interest of shorter and clearer files, you may wish to take advantage
+ of the inheritance rules. This field is redundant.
diff --git a/tags/i/interpreter-in-usr-local.tag b/tags/i/interpreter-in-usr-local.tag
new file mode 100644
index 0000000..8caceae
--- /dev/null
+++ b/tags/i/interpreter-in-usr-local.tag
@@ -0,0 +1,6 @@
+Tag: interpreter-in-usr-local
+Severity: error
+Check: scripts
+Explanation: This package contains a script that looks for an interpreter in a
+ directory in /usr/local. Since Debian does not install anything in
+ /usr/local, this is the wrong place to look.
diff --git a/tags/i/interpreter-not-absolute.tag b/tags/i/interpreter-not-absolute.tag
new file mode 100644
index 0000000..7e62d1e
--- /dev/null
+++ b/tags/i/interpreter-not-absolute.tag
@@ -0,0 +1,6 @@
+Tag: interpreter-not-absolute
+Severity: warning
+Check: scripts
+Explanation: This script uses a relative path to locate its interpreter.
+ This path will be taken relative to the caller's current directory, not
+ the script's, so it is not likely to be what was intended.
diff --git a/tags/i/intra-source-package-circular-dependency.tag b/tags/i/intra-source-package-circular-dependency.tag
new file mode 100644
index 0000000..e1d5ad4
--- /dev/null
+++ b/tags/i/intra-source-package-circular-dependency.tag
@@ -0,0 +1,14 @@
+Tag: intra-source-package-circular-dependency
+Severity: warning
+Check: group-checks
+Explanation: The listed packages from the same source circularly depend
+ (or pre-depend) on each other. This makes it difficult for tools
+ to properly handle install/upgrade sequences. Furthermore this
+ complicates automated removal of unused packages.
+ .
+ If possible, consider removing or reducing one of the depends.
+ .
+ Note: This check is limited to packages created from the same
+ source package. Full circular dependencies between binaries from
+ different source packages is beyond the scope of Lintian.
+See-Also: debian-policy 7.2
diff --git a/tags/i/invalid-arch-string-in-source-relation.tag b/tags/i/invalid-arch-string-in-source-relation.tag
new file mode 100644
index 0000000..db8cc03
--- /dev/null
+++ b/tags/i/invalid-arch-string-in-source-relation.tag
@@ -0,0 +1,9 @@
+Tag: invalid-arch-string-in-source-relation
+Severity: error
+Check: fields/package-relations
+See-Also: debian-policy 5.6.8
+Explanation: The architecture string in the source relation includes an unknown
+ architecture. This may be a typo, or it may be an architecture that dpkg
+ doesn't know about yet. A common problem is incorrectly separating
+ architectures with a comma, such as <code>[i386, m68k]</code>. Architectures
+ are separated by spaces; this should instead be <code>[i386 m68k]</code>.
diff --git a/tags/i/invalid-date-in-debian-changelog.tag b/tags/i/invalid-date-in-debian-changelog.tag
new file mode 100644
index 0000000..0c6de55
--- /dev/null
+++ b/tags/i/invalid-date-in-debian-changelog.tag
@@ -0,0 +1,16 @@
+Tag: invalid-date-in-debian-changelog
+Severity: error
+Check: debian/changelog
+Explanation: The date format in the latest changelog entry file appears to be invalid.
+ .
+ Dates should use the following format (compatible and with the same semantics
+ of RFC 2822 and RFC 5322):
+ .
+ day-of-week, dd month yyyy hh:mm:ss +zzzz
+ .
+ To avoid problems like this, consider using a tool like dch(1) or
+ date(1) to generate the date. Example:
+ .
+ $ date -R -ud '2013-11-05 23:59:59'
+ Tue, 05 Nov 2013 23:59:59 +0000
+See-Also: debian-policy 4.4
diff --git a/tags/i/invalid-escape-sequence-in-dep5-copyright.tag b/tags/i/invalid-escape-sequence-in-dep5-copyright.tag
new file mode 100644
index 0000000..347cdb1
--- /dev/null
+++ b/tags/i/invalid-escape-sequence-in-dep5-copyright.tag
@@ -0,0 +1,9 @@
+Tag: invalid-escape-sequence-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The only allowed escape sequences are "\&ast;", "\?" and "\\" (without
+ quotes) to produce a literal star, question mark and backslash, respectively.
+ Without the escaping backslash, the star and question mark take the role of
+ globbing operators similar to shell globs which is why they have to be
+ escaped. No other escapable characters than "&ast;", "?" and "\" exist.
diff --git a/tags/i/invalid-field-for-derivative.tag b/tags/i/invalid-field-for-derivative.tag
new file mode 100644
index 0000000..89d59c7
--- /dev/null
+++ b/tags/i/invalid-field-for-derivative.tag
@@ -0,0 +1,17 @@
+Tag: invalid-field-for-derivative
+Severity: error
+Check: fields/derivatives
+Explanation: The specified field in <code>debian/control</code> does not match the
+ required format for this Debian derivative.
+ .
+ Derivative distributions of Debian may enforce additional restrictions
+ on such fields for many reasons including ensuring that:
+ .
+ - Debian maintainers are not contacted for forked or packages that
+ are otherwise modified by the derivative.
+ - The original maintainer is still credited for their work (eg. in a
+ <code>XSBC-Original-Maintainer</code> field).
+ - References to revision control systems (eg. <code>Vcs-Git</code>) are
+ pointing to the correct, updated location.
+ - Fields that become misleading in the context of a derivative are
+ removed.
diff --git a/tags/i/invalid-override-restriction.tag b/tags/i/invalid-override-restriction.tag
new file mode 100644
index 0000000..26ea506
--- /dev/null
+++ b/tags/i/invalid-override-restriction.tag
@@ -0,0 +1,8 @@
+Tag: invalid-override-restriction
+Severity: error
+Show-Always: yes
+Check: debian/lintian-overrides/restricted
+Explanation: The architecture restriction in the given <code>override</code>
+ line is invalid for the reason indicated.
+See-Also:
+ lintian-manual 2.4.1
diff --git a/tags/i/invalid-po-file.tag b/tags/i/invalid-po-file.tag
new file mode 100644
index 0000000..69e8117
--- /dev/null
+++ b/tags/i/invalid-po-file.tag
@@ -0,0 +1,6 @@
+Tag: invalid-po-file
+Severity: warning
+Check: debian/po-debconf
+Explanation: Errors were found in the listed PO file that will cause its content
+ to be discarded. Run <code>msgfmt</code> on the file to see the error
+ messages.
diff --git a/tags/i/invalid-potfiles-in.tag b/tags/i/invalid-potfiles-in.tag
new file mode 100644
index 0000000..5f6bb1c
--- /dev/null
+++ b/tags/i/invalid-potfiles-in.tag
@@ -0,0 +1,11 @@
+Tag: invalid-potfiles-in
+Severity: warning
+Check: debian/po-debconf
+Explanation: Errors were found in the <code>debian/po/POTFILES.in</code> file.
+ .
+ Please make sure that all strings marked for translation are in uniform
+ encoding (say UTF-8) then prepend the following line to POTFILES.in and
+ rerun intltool-update.
+ .
+ [encoding: UTF-8]
+See-Also: Bug#849912, Bug#883653
diff --git a/tags/i/invalid-profile-name-in-build-profiles-field.tag b/tags/i/invalid-profile-name-in-build-profiles-field.tag
new file mode 100644
index 0000000..e14ce77
--- /dev/null
+++ b/tags/i/invalid-profile-name-in-build-profiles-field.tag
@@ -0,0 +1,28 @@
+Tag: invalid-profile-name-in-build-profiles-field
+Severity: error
+Check: debian/control/field/build-profiles
+Explanation: The restriction formula in the <code>Build-Profiles</code> field
+ includes an unknown build profile. The only allowed build profiles are:
+ .
+ - <code>cross</code>
+ - <code>nobiarch</code>
+ - <code>nocheck</code>
+ - <code>nocil</code>
+ - <code>nodoc</code>
+ - <code>nogolang</code>
+ - <code>noguile</code>
+ - <code>noinsttest</code>
+ - <code>nojava</code>
+ - <code>nolua</code>
+ - <code>noocaml</code>
+ - <code>noperl</code>
+ - <code>nopython</code>
+ - <code>noruby</code>
+ - <code>noudeb</code>
+ - <code>nowasm</code>
+ - <code>nowindows</code>
+ - <code>stage1</code>
+ - <code>stage2</code>
+ - <code>pkg.&ast;srcpkg&ast;.&ast;anything&ast;</code>
+See-Also:
+ https://wiki.debian.org/BuildProfileSpec#Registered_profile_names
diff --git a/tags/i/invalid-profile-name-in-source-relation.tag b/tags/i/invalid-profile-name-in-source-relation.tag
new file mode 100644
index 0000000..613d130
--- /dev/null
+++ b/tags/i/invalid-profile-name-in-source-relation.tag
@@ -0,0 +1,26 @@
+Tag: invalid-profile-name-in-source-relation
+Severity: error
+Check: fields/package-relations
+Explanation: The restriction formula in the source relation includes an unknown build
+ profile. The only allowed build profiles are
+ "cross",
+ "nobiarch",
+ "nocheck",
+ "nocil",
+ "nodoc",
+ "nogolang",
+ "noguile",
+ "noinsttest",
+ "nojava",
+ "nolua",
+ "noocaml",
+ "noperl",
+ "nopython",
+ "noruby",
+ "noudeb",
+ "nowasm",
+ "nowindows",
+ "stage1",
+ "stage2"
+ and "pkg.*srcpkg*.*anything*".
+See-Also: https://wiki.debian.org/BuildProfileSpec#Registered_profile_names
diff --git a/tags/i/invalid-restriction-formula-in-build-profiles-field.tag b/tags/i/invalid-restriction-formula-in-build-profiles-field.tag
new file mode 100644
index 0000000..8375d87
--- /dev/null
+++ b/tags/i/invalid-restriction-formula-in-build-profiles-field.tag
@@ -0,0 +1,8 @@
+Tag: invalid-restriction-formula-in-build-profiles-field
+Severity: error
+Check: debian/control/field/build-profiles
+Explanation: The restriction formula in the <code>Build-Profiles</code> field
+ must be in the same format as the restriction formula in the
+ <code>Build-Depends</code> field (with angle brackets).
+See-Also:
+ https://wiki.debian.org/BuildProfileSpec#The_Build-Profiles_field
diff --git a/tags/i/invalid-short-name-in-dep5-copyright.tag b/tags/i/invalid-short-name-in-dep5-copyright.tag
new file mode 100644
index 0000000..f9b5ec3
--- /dev/null
+++ b/tags/i/invalid-short-name-in-dep5-copyright.tag
@@ -0,0 +1,6 @@
+Tag: invalid-short-name-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 observed to be a
+ misspelling of one of the standard short names.
diff --git a/tags/i/invalid-standards-version.tag b/tags/i/invalid-standards-version.tag
new file mode 100644
index 0000000..5051291
--- /dev/null
+++ b/tags/i/invalid-standards-version.tag
@@ -0,0 +1,6 @@
+Tag: invalid-standards-version
+Severity: error
+Check: fields/standards-version
+Explanation: The source package refers to a Standards-Version which never
+ existed. Please update your package to latest Policy and set this
+ control field appropriately.
diff --git a/tags/i/invalid-systemd-documentation.tag b/tags/i/invalid-systemd-documentation.tag
new file mode 100644
index 0000000..a4d126c
--- /dev/null
+++ b/tags/i/invalid-systemd-documentation.tag
@@ -0,0 +1,25 @@
+Tag: invalid-systemd-documentation
+Severity: info
+Check: systemd
+Explanation: The named systemd service file contains a <code>Documentation</code>
+ field that is not a URI.
+ .
+ The field should contain a space-separated list of URIs referencing documentation
+ for the unit or its configuration. Accepted are only URIs of the types
+ <code>http://</code>, <code>https://</code>, <code>file:</code>, <code>info:</code>,
+ <code>man:</code>.
+ .
+ For more information about the syntax of these URIs, see <code>uri(7)</code>. The URIs
+ should be listed in order of relevance, starting with the most relevant. It is a good
+ idea to first reference documentation that explains what the unit's purpose is,
+ followed by how it is configured, followed by any other related documentation.
+ .
+ The <code>Documentation</code> key may be specified more than once, in which case the
+ specified list of URIs is merged. If the empty string is assigned to this option, the
+ list is reset and prior assignments have no effect.
+ .
+ Documentation for systemd service files can be automatically viewed using
+ <code>systemctl help servicename</code> if this field is present.
+See-Also:
+ systemd.unit(5),
+ uri(7)
diff --git a/tags/i/invalid-template-id-in-symbols-file.tag b/tags/i/invalid-template-id-in-symbols-file.tag
new file mode 100644
index 0000000..577ebd5
--- /dev/null
+++ b/tags/i/invalid-template-id-in-symbols-file.tag
@@ -0,0 +1,9 @@
+Tag: invalid-template-id-in-symbols-file
+Severity: error
+Check: debian/shlibs
+Explanation: The symbol definition refers to an alternative dependency template
+ which is not defined for the library containing the symbol.
+ .
+ The first alternative dependency template for a library the id number
+ of 1, with the ids of subsequent alternative templates increasing in
+ sequence.
diff --git a/tags/i/invalid-value-in-built-using-field.tag b/tags/i/invalid-value-in-built-using-field.tag
new file mode 100644
index 0000000..c8fab8f
--- /dev/null
+++ b/tags/i/invalid-value-in-built-using-field.tag
@@ -0,0 +1,11 @@
+Tag: invalid-value-in-built-using-field
+Severity: error
+Check: fields/built-using
+Explanation: The Built-Using field contains invalid fields.
+ .
+ The Built-Using field must consist of simple <code>source (=
+ version)</code> clauses. Notably, it must use a strictly equal in the
+ relation.
+ .
+ Only first issue is shown.
+See-Also: debian-policy 7.8
diff --git a/tags/i/invalid-version-number-for-derivative.tag b/tags/i/invalid-version-number-for-derivative.tag
new file mode 100644
index 0000000..ebea535
--- /dev/null
+++ b/tags/i/invalid-version-number-for-derivative.tag
@@ -0,0 +1,9 @@
+Tag: invalid-version-number-for-derivative
+Severity: error
+Check: fields/version/derivative
+Explanation: The version does not comply with the format required for that Debian
+ derivative.
+ .
+ Derivative distributions may enforce additional restrictions on version strings
+ in order to ensure that packages modified specifically for that derivative can
+ be so identified.
diff --git a/tags/i/invalid-versioned-provides.tag b/tags/i/invalid-versioned-provides.tag
new file mode 100644
index 0000000..fd79895
--- /dev/null
+++ b/tags/i/invalid-versioned-provides.tag
@@ -0,0 +1,8 @@
+Tag: invalid-versioned-provides
+Severity: error
+Check: fields/package-relations
+See-Also: debian-policy 7.1, Bug#761219
+Explanation: The package declares a provides relation with an invalid version
+ operator (e.g. "&gt;=").
+ .
+ If a provides is versioned, it must use "=".
diff --git a/tags/i/isdefault-flag-is-deprecated.tag b/tags/i/isdefault-flag-is-deprecated.tag
new file mode 100644
index 0000000..a53f0bf
--- /dev/null
+++ b/tags/i/isdefault-flag-is-deprecated.tag
@@ -0,0 +1,12 @@
+Tag: isdefault-flag-is-deprecated
+Severity: warning
+Check: debian/debconf
+Explanation: The "isdefault" flag on debconf questions is deprecated as of debconf
+ 0.5.00, and has been replaced by "seen" with the inverse meaning. From
+ debconf 0.5 onwards there should be very few reasons to use isdefault/seen
+ anyway, as backing up works much better now. See
+ /usr/share/doc/debconf-doc/changelog.gz for more information.
+ .
+ The misuse of isdefault often leads to questions being asked twice in one
+ installation run, or, worse, on every upgrade. Please test your package
+ carefully to make sure this does not happen.
diff --git a/tags/j/jar-contains-source.tag b/tags/j/jar-contains-source.tag
new file mode 100644
index 0000000..94be210
--- /dev/null
+++ b/tags/j/jar-contains-source.tag
@@ -0,0 +1,12 @@
+Tag: jar-contains-source
+Severity: warning
+Check: languages/java
+Explanation: The package ships the specified Jar file containing a
+ <code>.java</code> file alongside a corresponding <code>.class</code> file.
+ .
+ This wastes disk space as the source is always available via <code>apt
+ source</code>.
+ .
+ Please ensure that the specified <code>.java</code> files are not shipped in
+ the Jar file.
+See-Also: java-policy 2.4
diff --git a/tags/j/jar-not-in-usr-share.tag b/tags/j/jar-not-in-usr-share.tag
new file mode 100644
index 0000000..c031fad
--- /dev/null
+++ b/tags/j/jar-not-in-usr-share.tag
@@ -0,0 +1,14 @@
+Tag: jar-not-in-usr-share
+Severity: warning
+Check: languages/java
+See-Also: java-policy 2.2, java-policy 2.3
+Explanation: The classpath listed in some of the files references files outside
+ of /usr/share, while all installed JAR files must be within
+ /usr/share/java for libraries or /usr/share/*package* for JARs for
+ private use.
+ .
+ The rationale is that jar files are in almost all cases architecture
+ independent and therefore should be in /usr/share. If the jar file is
+ truly architecture dependent or it cannot be moved since symlinked jar
+ files are not accepted by the application, then please override this
+ tag.
diff --git a/tags/j/javalib-but-no-public-jars.tag b/tags/j/javalib-but-no-public-jars.tag
new file mode 100644
index 0000000..4de9b60
--- /dev/null
+++ b/tags/j/javalib-but-no-public-jars.tag
@@ -0,0 +1,10 @@
+Tag: javalib-but-no-public-jars
+Severity: info
+Check: languages/java
+Explanation: The name of the package suggests it contains a java library but
+ the package does not ship any JAR files in <code>/usr/share/java</code>.
+ .
+ The java policy mandates that JAR files outside <code>/usr/share/java</code>
+ are for private use.
+See-Also:
+ java-policy
diff --git a/tags/k/kill-mode-none.tag b/tags/k/kill-mode-none.tag
new file mode 100644
index 0000000..e182905
--- /dev/null
+++ b/tags/k/kill-mode-none.tag
@@ -0,0 +1,13 @@
+Tag: kill-mode-none
+Severity: warning
+Check: systemd
+Explanation: The named systemd unit is configured to use <code>KillMode=none</code>.
+ That is unsafe because it disables systemd's process lifecycle management for the
+ service.
+ .
+ Please update your service to use a safer <code>KillMode</code>, such as
+ <code>mixed</code> or <code>control-group</code>.
+ .
+ Support for <code>KillMode=none</code> is deprecated and will eventually be removed.
+See-also:
+ systemd.kill(5)
diff --git a/tags/k/killall-is-dangerous.tag b/tags/k/killall-is-dangerous.tag
new file mode 100644
index 0000000..05b8a1d
--- /dev/null
+++ b/tags/k/killall-is-dangerous.tag
@@ -0,0 +1,9 @@
+Tag: killall-is-dangerous
+Severity: warning
+Check: maintainer-scripts/killall
+Explanation: The maintainer script seems to call <code>killall</code>. Since the
+ program terminates processes by name, it may accidentally affect unrelated
+ processes.
+ .
+ Most uses of <code>killall</code> should use <code>invoke-rc.d</code>
+ instead.
diff --git a/tags/l/lacks-ldconfig-trigger.tag b/tags/l/lacks-ldconfig-trigger.tag
new file mode 100644
index 0000000..b38f236
--- /dev/null
+++ b/tags/l/lacks-ldconfig-trigger.tag
@@ -0,0 +1,20 @@
+Tag: lacks-ldconfig-trigger
+Severity: error
+Check: libraries/shared/trigger/ldconfig
+Renamed-From:
+ package-must-activate-ldconfig-trigger
+Explanation: The package installs shared libraries in a directory controlled by
+ the dynamic library loader. Therefore, the package must trigger libc's
+ "ldconfig" trigger to ensure the ldconfig cache is updated.
+ .
+ If the package is using debhelper, <code>dh&lowbar;makeshlibs</code> should
+ automatically discover this and add the trigger itself.
+ Otherwise, please add <code>activate-noawait ldconfig</code> to the
+ <code>triggers</code> file in the control member.
+ .
+ Note this tag may trigger for packages built with debhelper before
+ version 9.20151004. In such case, a simple rebuild will often be
+ sufficient to fix this issue.
+See-Also:
+ debian-policy 8.1.1,
+ https://lists.debian.org/debian-devel/2015/08/msg00412.html
diff --git a/tags/l/lacks-unversioned-link-to-shared-library.tag b/tags/l/lacks-unversioned-link-to-shared-library.tag
new file mode 100644
index 0000000..92ad571
--- /dev/null
+++ b/tags/l/lacks-unversioned-link-to-shared-library.tag
@@ -0,0 +1,26 @@
+Tag: lacks-unversioned-link-to-shared-library
+Severity: warning
+Check: libraries/shared/links
+Renamed-From:
+ dev-pkg-without-shlib-symlink
+Explanation: A <code>-dev</code> package is supposed to install an unversioned
+ symbolic link that references the shared library by name.
+ .
+ There is no requirement that the names are otherwise related.
+ .
+ The dynamic linker uses the link to load the executable into memory.
+ .
+ In most cases, the symbolic link should be in the same folder as the library itself.
+ A major exception are libraries installed under <code>/lib</code>. In those cases,
+ the links should go into the corresponding folders under <code>/usr</code>.
+ .
+ For a library installed as <code>/lib/i386-linux-gnu/libXYZ.so.V</code>, a good link
+ would be <code>/usr/lib/i386-linux-gnu/libXYZ.so</code>.
+ .
+ This tag is emitted for the library package and not for the <code>-dev</code> package.
+ That is because Lintian looks for links after locating the library. The links can be
+ in any of several installables, but there is only one library for each set of links
+ pointing to it.
+See-Also:
+ debian-policy 8.4
+ Bug#963099
diff --git a/tags/l/lacks-versioned-link-to-shared-library.tag b/tags/l/lacks-versioned-link-to-shared-library.tag
new file mode 100644
index 0000000..f2316ff
--- /dev/null
+++ b/tags/l/lacks-versioned-link-to-shared-library.tag
@@ -0,0 +1,12 @@
+Tag: lacks-versioned-link-to-shared-library
+Severity: error
+Check: libraries/shared/links
+Renamed-From:
+ ldconfig-symlink-missing-for-shlib
+Explanation: The package should not only include the shared library itself, but also
+ the symbolic link which ldconfig would produce. (This is necessary, so
+ that the link gets removed by dpkg automatically when the package
+ gets removed.) If the symlink is in the package, check that the SONAME of the
+ library matches the info in the shlibs file.
+See-Also:
+ debian-policy 8.1
diff --git a/tags/l/latest-changelog-entry-without-new-date.tag b/tags/l/latest-changelog-entry-without-new-date.tag
new file mode 100644
index 0000000..bc724cd
--- /dev/null
+++ b/tags/l/latest-changelog-entry-without-new-date.tag
@@ -0,0 +1,9 @@
+Tag: latest-changelog-entry-without-new-date
+Severity: error
+Check: debian/changelog
+Explanation: The latest Debian changelog entry has either the same or even an
+ older date as the entry before.
+ .
+ This can result in subtle bugs due to the <code>SOURCE&lowbar;DATE&lowbar;EPOCH</code>
+ environment variable being the same between the older and newer
+ versions.
diff --git a/tags/l/latest-debian-changelog-entry-reuses-existing-version.tag b/tags/l/latest-debian-changelog-entry-reuses-existing-version.tag
new file mode 100644
index 0000000..b69254a
--- /dev/null
+++ b/tags/l/latest-debian-changelog-entry-reuses-existing-version.tag
@@ -0,0 +1,15 @@
+Tag: latest-debian-changelog-entry-reuses-existing-version
+Severity: warning
+Check: debian/changelog
+Explanation: The latest changelog entry has a version that matches one used in
+ the specified previous entry. All versions of a source package must be
+ unique even after a leading epoch has been stripped off.
+ .
+ Files generated by the current version of this source package would
+ conflict with some historical files. This is because the Debian archive
+ does not allow multiple files with the same name and different contents
+ and the generated .dsc, .deb, etc. do not embed the epoch in their
+ filenames.
+ .
+ Please pick another version, for example by increasing the Debian
+ revision.
diff --git a/tags/l/latest-debian-changelog-entry-without-new-date.tag b/tags/l/latest-debian-changelog-entry-without-new-date.tag
new file mode 100644
index 0000000..a5058a3
--- /dev/null
+++ b/tags/l/latest-debian-changelog-entry-without-new-date.tag
@@ -0,0 +1,9 @@
+Tag: latest-debian-changelog-entry-without-new-date
+Severity: error
+Check: debian/changelog
+Explanation: The latest Debian changelog entry has either the same or even an
+ older date as the entry before.
+ .
+ This can result in subtle bugs due to the <code>SOURCE&lowbar;DATE&lowbar;EPOCH</code>
+ environment variable being the same between the older and newer
+ versions.
diff --git a/tags/l/ldconfig-escape.tag b/tags/l/ldconfig-escape.tag
new file mode 100644
index 0000000..bfe1522
--- /dev/null
+++ b/tags/l/ldconfig-escape.tag
@@ -0,0 +1,14 @@
+Tag: ldconfig-escape
+Severity: info
+Check: files/hierarchy/links
+Renamed-From:
+ breakout-link
+Explanation: The named link is located in the load path for the dynamic
+ linker but points outside that group of folders.
+ .
+ Packages should install public shared libraries into the load path.
+See-Also:
+ Bug#243158,
+ Bug#964111,
+ Bug#971707,
+ Bug#968525
diff --git a/tags/l/ldconfig-symlink-is-not-a-symlink.tag b/tags/l/ldconfig-symlink-is-not-a-symlink.tag
new file mode 100644
index 0000000..4338258
--- /dev/null
+++ b/tags/l/ldconfig-symlink-is-not-a-symlink.tag
@@ -0,0 +1,7 @@
+Tag: ldconfig-symlink-is-not-a-symlink
+Severity: error
+Check: libraries/shared/links
+Explanation: The package installs a file with the name, ldconfig would use for
+ the symbolic link to reference the shared library.
+See-Also:
+ debian-policy 8.1
diff --git a/tags/l/ldconfig-symlink-referencing-wrong-file.tag b/tags/l/ldconfig-symlink-referencing-wrong-file.tag
new file mode 100644
index 0000000..f62db2a
--- /dev/null
+++ b/tags/l/ldconfig-symlink-referencing-wrong-file.tag
@@ -0,0 +1,7 @@
+Tag: ldconfig-symlink-referencing-wrong-file
+Severity: error
+Check: libraries/shared/links
+Explanation: The symbolic link references the wrong file. (It should reference
+ the shared library.)
+See-Also:
+ debian-policy 8.1
diff --git a/tags/l/lengthy-symlink.tag b/tags/l/lengthy-symlink.tag
new file mode 100644
index 0000000..6fd022b
--- /dev/null
+++ b/tags/l/lengthy-symlink.tag
@@ -0,0 +1,10 @@
+Tag: lengthy-symlink
+Severity: error
+Check: files/symbolic-links
+Explanation: This link goes up, and then back down into the same subdirectory.
+ Making it shorter will improve its chances of finding the right file
+ if the user's system has lots of symlinked directories.
+ .
+ If you use debhelper, running dh&lowbar;link after creating the package structure
+ will fix this problem for you.
+See-Also: debian-policy 10.5
diff --git a/tags/l/lib-recommends-documentation.tag b/tags/l/lib-recommends-documentation.tag
new file mode 100644
index 0000000..c487a7a
--- /dev/null
+++ b/tags/l/lib-recommends-documentation.tag
@@ -0,0 +1,12 @@
+Tag: lib-recommends-documentation
+Severity: warning
+Check: fields/package-relations
+Explanation: The given package appears to be a library package, but it recommends
+ a documentation package. Doing this can pull in unwanted (and often
+ large) documentation packages since recommends are installed by default
+ and library packages are pulled by applications that use them. Users
+ usually only care about the library documentation if they're developing
+ against the library, not just using it, so the development package should
+ recommend the documentation instead. If there is no development package
+ (for modules for scripting languages, for example), consider Suggests
+ instead of Recommends.
diff --git a/tags/l/libapp-perl-package-name.tag b/tags/l/libapp-perl-package-name.tag
new file mode 100644
index 0000000..7c9904f
--- /dev/null
+++ b/tags/l/libapp-perl-package-name.tag
@@ -0,0 +1,12 @@
+Tag: libapp-perl-package-name
+Severity: error
+Check: application-not-library
+Explanation: This package contains a program in $PATH and is named
+ libapp-&ast;-perl which usually implies that the upstream project on CPAN
+ is under the App:: hierarchy for applications. Instead of
+ libfoo-bar-perl it should be named foo-bar.
+ .
+ People tend to skip library-like named packages when looking for
+ applications in the package list and hence wouldn't notice this
+ package.
+See-Also: https://perl-team.pages.debian.net/policy.html#Package_Naming_Policy
diff --git a/tags/l/libmodule-build-perl-needs-to-be-in-build-depends.tag b/tags/l/libmodule-build-perl-needs-to-be-in-build-depends.tag
new file mode 100644
index 0000000..c88e835
--- /dev/null
+++ b/tags/l/libmodule-build-perl-needs-to-be-in-build-depends.tag
@@ -0,0 +1,7 @@
+# Imported from pkg-perl-tools
+Tag: libmodule-build-perl-needs-to-be-in-build-depends
+Severity: error
+Check: fields/package-relations
+Experimental: yes
+Explanation: libmodule-build-perl needs to be in <code>Build-Depends</code>, not in
+ Build-Depends-Indep, since it's used in the clean target.
diff --git a/tags/l/libmodule-build-tiny-perl-needs-to-be-in-build-depends.tag b/tags/l/libmodule-build-tiny-perl-needs-to-be-in-build-depends.tag
new file mode 100644
index 0000000..d5a983d
--- /dev/null
+++ b/tags/l/libmodule-build-tiny-perl-needs-to-be-in-build-depends.tag
@@ -0,0 +1,7 @@
+# Imported from pkg-perl-tools
+Tag: libmodule-build-tiny-perl-needs-to-be-in-build-depends
+Severity: error
+Check: fields/package-relations
+Experimental: yes
+Explanation: libmodule-build-tiny-perl needs to be in <code>Build-Depends</code>, not
+ in Build-Depends-Indep, since it's used in the clean target.
diff --git a/tags/l/library-in-root-and-usr.tag b/tags/l/library-in-root-and-usr.tag
new file mode 100644
index 0000000..5698bfb
--- /dev/null
+++ b/tags/l/library-in-root-and-usr.tag
@@ -0,0 +1,12 @@
+Tag: library-in-root-and-usr
+Severity: error
+Check: usrmerge
+Explanation: The package ships two files with the same name installed both in
+ /lib&ast;/ and /usr/lib&ast;/ (or their subdirectories).
+ This is not useful and is incompatible with the merged /usr directories
+ scheme.
+ .
+ Shared library files, both static and dynamic, must be installed in
+ the correct directories as documented in Policy 8.1.
+See-Also: https://wiki.debian.org/UsrMerge,
+ debian-policy 8.1
diff --git a/tags/l/library-not-linked-against-libc.tag b/tags/l/library-not-linked-against-libc.tag
new file mode 100644
index 0000000..63d4a5c
--- /dev/null
+++ b/tags/l/library-not-linked-against-libc.tag
@@ -0,0 +1,14 @@
+Tag: library-not-linked-against-libc
+Severity: error
+Check: binaries/prerequisites
+Explanation: The package installs a library which is not dynamically linked
+ against libc.
+ .
+ It is theoretically possible to have a library which doesn't use any
+ symbols from libc, but it is far more likely that this is a violation
+ of the requirement that "shared libraries must be linked against all
+ libraries that they use symbols from in the same way that binaries
+ are".
+See-Also:
+ debian-policy 10.2,
+ Bug#698720
diff --git a/tags/l/library-package-name-for-application.tag b/tags/l/library-package-name-for-application.tag
new file mode 100644
index 0000000..4287b27
--- /dev/null
+++ b/tags/l/library-package-name-for-application.tag
@@ -0,0 +1,15 @@
+Tag: library-package-name-for-application
+Severity: info
+Check: application-not-library
+Experimental: yes
+Explanation: This package contains a program in $PATH but is named like a
+ library. E.g. instead of libfoo-bar-perl it should be named just
+ foo-bar.
+ .
+ People tend to skip library-like named packages when looking for
+ applications in the package list and hence wouldn't notice this
+ package. See the reference for some (not perl-specific) reasoning.
+ .
+ In case the program in $PATH is only a helper tool and the package is
+ primarily a library, please add a Lintian override for this tag.
+See-Also: https://perl-team.pages.debian.net/policy.html#Package_Naming_Policy
diff --git a/tags/l/license-file-listed-in-debian-copyright.tag b/tags/l/license-file-listed-in-debian-copyright.tag
new file mode 100644
index 0000000..b6dcaeb
--- /dev/null
+++ b/tags/l/license-file-listed-in-debian-copyright.tag
@@ -0,0 +1,6 @@
+Tag: license-file-listed-in-debian-copyright
+Severity: info
+Check: debian/copyright/dep5
+Explanation: A file containing a software license is listed in
+ <code>debian/copyright</code>. That is not necessary. Please remove
+ the entry referring to the license file.
diff --git a/tags/l/license-problem-bad-php-license.tag b/tags/l/license-problem-bad-php-license.tag
new file mode 100644
index 0000000..014fa64
--- /dev/null
+++ b/tags/l/license-problem-bad-php-license.tag
@@ -0,0 +1,10 @@
+Tag: license-problem-bad-php-license
+Severity: error
+Check: cruft
+Explanation: This package appears to be covered by version 2.x of the PHP license,
+ which is not appropriate for anything other than the PHP interpreter
+ itself.
+ .
+ Note that PEAR modules are not a part of the PHP interpreter and cannot
+ use this license.
+See-Also: https://ftp-master.debian.org/REJECT-FAQ.html, Bug#616436
diff --git a/tags/l/license-problem-cc-by-nc-sa.tag b/tags/l/license-problem-cc-by-nc-sa.tag
new file mode 100644
index 0000000..7a4e512
--- /dev/null
+++ b/tags/l/license-problem-cc-by-nc-sa.tag
@@ -0,0 +1,5 @@
+Tag: license-problem-cc-by-nc-sa
+Severity: error
+Check: cruft
+Explanation: The given source file is copyrighted under the non-free
+ Creative Commons Non-Commercial Share-Alike (CC-NC-SA) license.
diff --git a/tags/l/license-problem-convert-utf-code.tag b/tags/l/license-problem-convert-utf-code.tag
new file mode 100644
index 0000000..7983c6f
--- /dev/null
+++ b/tags/l/license-problem-convert-utf-code.tag
@@ -0,0 +1,15 @@
+Tag: license-problem-convert-utf-code
+Severity: error
+Check: cruft
+Explanation: The following file source files include material under a
+ non-free license from Unicode Inc. Therefore, it is
+ not possible to ship this in main or contrib.
+ .
+ This license does not grant any permission
+ to modify the files (thus failing DFSG#3). Moreover, the license grant
+ seems to attempt to restrict use to "products supporting the Unicode
+ Standard" (thus failing DFSG#6).
+ .
+ In this case a solution is to use libicu and to remove this code
+ by repacking.
+See-Also: Bug#823100
diff --git a/tags/l/license-problem-font-adobe-copyrighted-fragment-no-credit.tag b/tags/l/license-problem-font-adobe-copyrighted-fragment-no-credit.tag
new file mode 100644
index 0000000..5583002
--- /dev/null
+++ b/tags/l/license-problem-font-adobe-copyrighted-fragment-no-credit.tag
@@ -0,0 +1,12 @@
+Tag: license-problem-font-adobe-copyrighted-fragment-no-credit
+Severity: error
+Check: fonts/postscript/type1
+Explanation: This type 1 font file includes some postscript fragment with a
+ non-free license of Adobe. In order to check if this tag is genuine
+ please follow the procedure described in the reference.
+ .
+ Moreover the fragment was likely verbatim copied from black
+ book without any credit to Adobe.
+ .
+ Should this be a false-positive, please override the tag.
+See-Also: https://wiki.debian.org/qa.debian.org/type1nondfsg
diff --git a/tags/l/license-problem-font-adobe-copyrighted-fragment.tag b/tags/l/license-problem-font-adobe-copyrighted-fragment.tag
new file mode 100644
index 0000000..6c7667c
--- /dev/null
+++ b/tags/l/license-problem-font-adobe-copyrighted-fragment.tag
@@ -0,0 +1,9 @@
+Tag: license-problem-font-adobe-copyrighted-fragment
+Severity: error
+Check: fonts/postscript/type1
+Explanation: This type 1 font file includes some postscript fragment with a
+ non-free license of Adobe. In order to check if this tag is genuine
+ please follow the procedure described in the reference.
+ .
+ Should this be a false-positive, please override the tag.
+See-Also: https://wiki.debian.org/qa.debian.org/type1nondfsg
diff --git a/tags/l/license-problem-gfdl-invariants-empty.tag b/tags/l/license-problem-gfdl-invariants-empty.tag
new file mode 100644
index 0000000..3689372
--- /dev/null
+++ b/tags/l/license-problem-gfdl-invariants-empty.tag
@@ -0,0 +1,11 @@
+Tag: license-problem-gfdl-invariants-empty
+Severity: info
+Check: cruft
+Explanation: The given source file is licensed under GFDL, but without any
+ precision about the presence of invariant sections, front-cover or
+ back-cover text.
+ .
+ GFDL license explicitly requests you to document this non-presence.
+ .
+See-Also: https://wiki.debian.org/qa.debian.org/gfdlinvariant,
+ https://www.debian.org/vote/2006/vote_001
diff --git a/tags/l/license-problem-gfdl-invariants.tag b/tags/l/license-problem-gfdl-invariants.tag
new file mode 100644
index 0000000..81abe73
--- /dev/null
+++ b/tags/l/license-problem-gfdl-invariants.tag
@@ -0,0 +1,12 @@
+Tag: license-problem-gfdl-invariants
+Severity: error
+Check: cruft
+Explanation: The given source file is licensed under GFDL with invariant
+ section or front-cover or back-cover text.
+ .
+ GFDL with invariant sections, front-cover or back-cover texts are not
+ suitable for main.
+ .
+ If this file be multi-licensed, please override the tag.
+See-Also: https://wiki.debian.org/qa.debian.org/gfdlinvariant,
+ https://www.debian.org/vote/2006/vote_001
diff --git a/tags/l/license-problem-gfdl-non-official-text.tag b/tags/l/license-problem-gfdl-non-official-text.tag
new file mode 100644
index 0000000..d1dc70f
--- /dev/null
+++ b/tags/l/license-problem-gfdl-non-official-text.tag
@@ -0,0 +1,8 @@
+Tag: license-problem-gfdl-non-official-text
+Severity: pedantic
+Check: cruft
+Explanation: The given source file is licensed under GFDL, but using a
+ non-official text for the "no invariant sections" part.
+ .
+ Please ask upstream to always use (case insensitive):
+ with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
diff --git a/tags/l/license-problem-json-evil.tag b/tags/l/license-problem-json-evil.tag
new file mode 100644
index 0000000..867abed
--- /dev/null
+++ b/tags/l/license-problem-json-evil.tag
@@ -0,0 +1,7 @@
+Tag: license-problem-json-evil
+Severity: error
+Check: cruft
+Explanation: The given source file is copyrighted under the non-free
+ license of json and the infamous clause:
+ The Software shall be used for Good, not Evil.
+See-Also: https://wiki.debian.org/qa.debian.org/jsonevil
diff --git a/tags/l/license-problem-md5sum-non-distributable-file.tag b/tags/l/license-problem-md5sum-non-distributable-file.tag
new file mode 100644
index 0000000..8dca00a
--- /dev/null
+++ b/tags/l/license-problem-md5sum-non-distributable-file.tag
@@ -0,0 +1,12 @@
+Tag: license-problem-md5sum-non-distributable-file
+Severity: error
+Check: files/banned
+Explanation: The following file is not distributable even in the non-free
+ archive.
+ .
+ Please re-package the package without the file (if possible)
+ or ask the FTP-masters to remove the package.
+ .
+ If the package has been uploaded to Debian before, please
+ remember to also notify snapshot.debian.org about this
+ package containing a non-distributable file.
diff --git a/tags/l/license-problem-md5sum-non-free-file.tag b/tags/l/license-problem-md5sum-non-free-file.tag
new file mode 100644
index 0000000..f55f3db
--- /dev/null
+++ b/tags/l/license-problem-md5sum-non-free-file.tag
@@ -0,0 +1,10 @@
+Tag: license-problem-md5sum-non-free-file
+Severity: error
+Check: files/non-free
+Explanation: The following file is not suitable for main or contrib.
+ .
+ Please re-package the package without the file (if possible)
+ or ask the FTP-masters to remove the package.
+ .
+ You could also split this package and move this file into the
+ non-free archive.
diff --git a/tags/l/license-problem-non-free-RFC-BCP78.tag b/tags/l/license-problem-non-free-RFC-BCP78.tag
new file mode 100644
index 0000000..9d020d5
--- /dev/null
+++ b/tags/l/license-problem-non-free-RFC-BCP78.tag
@@ -0,0 +1,11 @@
+Tag: license-problem-non-free-RFC-BCP78
+Severity: error
+Check: cruft
+Explanation: The given source file is licensed under the non-free RFC
+ license (BCP78).
+ .
+ The majority of IETF documents, such as RFCs, are not licensed
+ under DFSG-free terms, and should thus not be included in Debian main.
+ .
+ If this file is multi-licensed, please override the tag.
+See-Also: https://wiki.debian.org/NonFreeIETFDocuments
diff --git a/tags/l/license-problem-non-free-RFC.tag b/tags/l/license-problem-non-free-RFC.tag
new file mode 100644
index 0000000..72f0059
--- /dev/null
+++ b/tags/l/license-problem-non-free-RFC.tag
@@ -0,0 +1,11 @@
+Tag: license-problem-non-free-RFC
+Severity: error
+Check: cruft
+Explanation: The given source file is licensed under the newer RFC
+ license.
+ .
+ The majority of IETF documents, such as RFCs, are not licensed
+ under DFSG-free terms, and should thus not be included in Debian main.
+ .
+ If this file is multi-licensed, please override the tag.
+See-Also: https://wiki.debian.org/NonFreeIETFDocuments
diff --git a/tags/l/license-problem-non-free-img-lenna.tag b/tags/l/license-problem-non-free-img-lenna.tag
new file mode 100644
index 0000000..4f2ad80
--- /dev/null
+++ b/tags/l/license-problem-non-free-img-lenna.tag
@@ -0,0 +1,23 @@
+Tag: license-problem-non-free-img-lenna
+Severity: error
+Check: files/banned/lenna
+See-Also: https://en.wikipedia.org/wiki/Lenna, https://www.debian.org/vote/2012/vote_002, Bug#771191
+Explanation: The given source file is cropped from a Playboy centerfold.
+ .
+ This image is a picture of Lena Sรถderberg,
+ shot by photographer Dwight Hooker, cropped from
+ the centerfold of the November 1972 issue of Playboy magazine.
+ .
+ According to Hutchison, Jamie (May-June 2001). "Culture,
+ Communication, and an Information Age Madonna" (PDF).
+ IEEE Professional Communication Society Newsletter 45 (3).
+ (page 5 second column second paragraph), this image is
+ distributable but not free.
+ .
+ Moreover, Lenna photo has been pointed to as an example
+ of sexism in the sciences, reinforcing gender stereotypes.
+ .
+ Please use well known and free test images.
+ .
+ Please also submit the md5sum, sha1sum, and sha256 of this file
+ as a bug report for Lintian.
diff --git a/tags/l/license-problem-nvidia-intellectual.tag b/tags/l/license-problem-nvidia-intellectual.tag
new file mode 100644
index 0000000..474b34b
--- /dev/null
+++ b/tags/l/license-problem-nvidia-intellectual.tag
@@ -0,0 +1,14 @@
+Tag: license-problem-nvidia-intellectual
+Severity: error
+Check: cruft
+Explanation: The following source files include material under a
+ non-distributable license from Nvidia. Therefore, it is
+ not even possible to ship this in non-free.
+ .
+ Please re-package the package without the file (if possible)
+ or ask the FTP-masters to remove the package.
+ .
+ If the package has been uploaded to Debian before, please
+ remember to also notify snapshot.debian.org about this
+ package containing a non-distributable file.
+See-Also: https://bugs.debian.org/724930#27
diff --git a/tags/l/license-problem-php-license.tag b/tags/l/license-problem-php-license.tag
new file mode 100644
index 0000000..5746f28
--- /dev/null
+++ b/tags/l/license-problem-php-license.tag
@@ -0,0 +1,11 @@
+Tag: license-problem-php-license
+Severity: error
+Check: cruft
+Explanation: This package appears to be covered by version 3.0 (exactly) of the
+ PHP license. This license is not applicable to anything that is not PHP
+ and has no contributions from the PHP Group.
+ .
+ This tag is not emitted for packages from pecl.php.net or pear.php.net as determined by
+ the <code>Source:</code> field in <code>debian/copyright</code>.
+See-Also: https://ftp-master.debian.org/php-license.html,
+ https://ftp-master.debian.org/REJECT-FAQ.html
diff --git a/tags/l/license-problem-undefined-license.tag b/tags/l/license-problem-undefined-license.tag
new file mode 100644
index 0000000..d85235d
--- /dev/null
+++ b/tags/l/license-problem-undefined-license.tag
@@ -0,0 +1,20 @@
+Tag: license-problem-undefined-license
+Severity: error
+Check: debian/copyright/dep5
+See-Also: https://ftp-master.debian.org/REJECT-FAQ.html
+Explanation: Your copyright file references a license that is not defined.
+ Due to copyright law or treaties, files that are not available under
+ a defined license are non-free and non-re-distributable.
+ .
+ Referencing an undefined license could mean the file cannot be
+ distributed in Debian or it could simply mean that the existing
+ license needs to be documented. In both cases,
+ the copyright file should be updated to reflect reality.
+ .
+ Please re-package the package without the file (if possible)
+ or ask the FTP-masters to remove the package.
+ .
+ If the package has been uploaded to Debian before, and if
+ affected files cannot be distributed in Debian please
+ remember to also notify snapshot.debian.org about this
+ package containing a non-distributable file.
diff --git a/tags/l/link-to-shared-library-in-wrong-package.tag b/tags/l/link-to-shared-library-in-wrong-package.tag
new file mode 100644
index 0000000..1e09451
--- /dev/null
+++ b/tags/l/link-to-shared-library-in-wrong-package.tag
@@ -0,0 +1,19 @@
+Tag: link-to-shared-library-in-wrong-package
+Severity: warning
+Check: libraries/shared/links
+Renamed-From:
+ non-dev-pkg-with-shlib-symlink
+Explanation: Although this package is not a "-dev" package, it installs a
+ "libsomething.so" symbolic link referencing the corresponding shared
+ library. When the link doesn't include the version number, it is used by
+ the linker when other programs are built against this shared library.
+ .
+ Shared libraries are supposed to place such symbolic links in their
+ respective "-dev" packages, so it is a bug to include it with the main
+ library package.
+ .
+ However, if this is a small package which includes the runtime and the
+ development libraries, this is not a bug. In the latter case, please
+ override this warning.
+See-Also:
+ debian-policy 8.4
diff --git a/tags/l/linked-with-obsolete-library.tag b/tags/l/linked-with-obsolete-library.tag
new file mode 100644
index 0000000..c9a09a0
--- /dev/null
+++ b/tags/l/linked-with-obsolete-library.tag
@@ -0,0 +1,20 @@
+Tag: linked-with-obsolete-library
+Severity: info
+Check: libraries/shared/obsolete
+Explanation: This tag is currently only issued for libcblas.so. For an explanation,
+ please continue below.
+ .
+ The symbols in <code>libcblas.so</code>, which represent the <code>CBLAS</code> API,
+ were merged into <code>libblas.so</code>. (Note the missing letter <code>C</code>.)
+ Please use <code>libblas.so</code> instead.
+ .
+ The old library is still being shipped until all packages have modified
+ their build systems, but it is not managed by <code>update-alternatives</code>
+ and may result in poor performance. Please do not use it anymore.
+ .
+ Some packages may require functionality specific to Atlas3, which is not
+ implemented by other <code>BLAS/CBLAS</code> alternatives. Please override the
+ tag if your package falls into that category.
+See-Also: https://wiki.debian.org/DebianScience/LinearAlgebraLibraries ,
+ https://lists.debian.org/debian-devel/2019/10/msg00273.html ,
+ https://salsa.debian.org/science-team/lapack/-/blob/master/debian/README.if-you-look-for-libcblas.so.3
diff --git a/tags/l/loads-obsolete-confmodule.tag b/tags/l/loads-obsolete-confmodule.tag
new file mode 100644
index 0000000..fa0e3d4
--- /dev/null
+++ b/tags/l/loads-obsolete-confmodule.tag
@@ -0,0 +1,7 @@
+Tag: loads-obsolete-confmodule
+Severity: warning
+Check: debian/debconf
+Explanation: The maintainer script uses an obsolete name for a debconf confmodule.
+ Shell scripts should source <code>/usr/share/debconf/confmodule</code>, while
+ Perl scripts should use <code>Debconf::Client::ConfModule</code>.
+See-Also: debconf-devel(7)
diff --git a/tags/l/lzma-deb-archive.tag b/tags/l/lzma-deb-archive.tag
new file mode 100644
index 0000000..abb81a6
--- /dev/null
+++ b/tags/l/lzma-deb-archive.tag
@@ -0,0 +1,6 @@
+Tag: lzma-deb-archive
+Severity: error
+Check: deb-format
+Explanation: The data portion of this binary package is compressed with lzma.
+ This is supported by dpkg but not yet permitted in the Debian archive.
+ Such a package will be rejected by DAK.
diff --git a/tags/m/macos-ds-store-file-in-package.tag b/tags/m/macos-ds-store-file-in-package.tag
new file mode 100644
index 0000000..07d0ff3
--- /dev/null
+++ b/tags/m/macos-ds-store-file-in-package.tag
@@ -0,0 +1,8 @@
+Tag: macos-ds-store-file-in-package
+Severity: warning
+Check: foreign-operating-systems
+Explanation: There is a file in the package named <code>.DS&lowbar;Store</code> or
+ <code>.DS&lowbar;Store.gz</code>, the file name used by Mac OS X to store folder
+ attributes. Such files are generally useless in Debian packages and were
+ usually accidentally included by copying complete directories from the
+ source tarball.
diff --git a/tags/m/macos-resource-fork-file-in-package.tag b/tags/m/macos-resource-fork-file-in-package.tag
new file mode 100644
index 0000000..aa4a696
--- /dev/null
+++ b/tags/m/macos-resource-fork-file-in-package.tag
@@ -0,0 +1,8 @@
+Tag: macos-resource-fork-file-in-package
+Severity: warning
+Check: foreign-operating-systems
+Explanation: There is a file in the package with a name starting with
+ <code>.&lowbar;</code>, the file name pattern used by Mac OS X to store resource
+ forks in non-native file systems. Such files are generally useless in
+ Debian packages and were usually accidentally included by copying
+ complete directories from the source tarball.
diff --git a/tags/m/magic-arch-in-arch-list.tag b/tags/m/magic-arch-in-arch-list.tag
new file mode 100644
index 0000000..3ba0441
--- /dev/null
+++ b/tags/m/magic-arch-in-arch-list.tag
@@ -0,0 +1,8 @@
+Tag: magic-arch-in-arch-list
+Severity: error
+Check: fields/architecture
+Explanation: The special architecture value "any" only makes sense if it occurs
+ alone or (in a &ast;.dsc file) together with "all". The value "all" may
+ appear together with other architectures in a &ast;.dsc file but must
+ occur alone if used in a binary package.
+See-Also: debian-policy 5.6.8, Bug#626775
diff --git a/tags/m/mail-address-loops-or-bounces.tag b/tags/m/mail-address-loops-or-bounces.tag
new file mode 100644
index 0000000..fc07912
--- /dev/null
+++ b/tags/m/mail-address-loops-or-bounces.tag
@@ -0,0 +1,17 @@
+Tag: mail-address-loops-or-bounces
+Severity: error
+Check: fields/mail-address
+Renamed-From:
+ maintainer-address-causes-mail-loops-or-bounces
+ uploader-address-causes-mail-loops-or-bounces
+Explanation: The contact's mail address either loops back to itself or is known
+ to bounce.
+ .
+ Loops happen because an address is <code>package@packages.debian.org</code>
+ or to <code>package@packages.qa.debian.org</code>. Bounces happen when the
+ recipient, typically a mailing list, is known to bounce mails.
+ .
+ The mail address must accept messages from role accounts used to send
+ automated mails regarding the package, including those from the bug
+ tracking system.
+See-Also: debian-policy 3.3
diff --git a/tags/m/mail-contact.tag b/tags/m/mail-contact.tag
new file mode 100644
index 0000000..ee84799
--- /dev/null
+++ b/tags/m/mail-contact.tag
@@ -0,0 +1,7 @@
+Tag: mail-contact
+Severity: classification
+Check: fields/mail-address
+Renamed-From:
+ maintainer
+ uploader
+Explanation: This person is a contact in the named group for this package.
diff --git a/tags/m/mail-transport-agent-dependency-does-not-specify-default-mta.tag b/tags/m/mail-transport-agent-dependency-does-not-specify-default-mta.tag
new file mode 100644
index 0000000..7bf2857
--- /dev/null
+++ b/tags/m/mail-transport-agent-dependency-does-not-specify-default-mta.tag
@@ -0,0 +1,12 @@
+Tag: mail-transport-agent-dependency-does-not-specify-default-mta
+Severity: warning
+Check: fields/package-relations
+Explanation: This package has a relationship with the mail-transport-agent
+ virtual package but does not specify the default-mta as an
+ alternative.
+ .
+ default-mta and mail-transport-agent should only ever be in a set of
+ alternatives together, with default-mta listed first.
+ .
+ Please add a "or" dependency on default-mta before
+ mail-transport-agent.
diff --git a/tags/m/mailing-list-on-alioth.tag b/tags/m/mailing-list-on-alioth.tag
new file mode 100644
index 0000000..f41b481
--- /dev/null
+++ b/tags/m/mailing-list-on-alioth.tag
@@ -0,0 +1,10 @@
+Tag: mailing-list-on-alioth
+Severity: classification
+Check: fields/mail-address
+Explanation: The specified email address uses lists.alioth.debian.org. That
+ system was migrated to a separate debian.net system run by DDs.
+ Teams were encouraged to migrate to the new system, but they are
+ also free to use the old address going forward if they like.
+ .
+ For further information, please consult the Debian Wiki.
+See-Also: https://wiki.debian.org/Alioth/MailingListContinuation, Bug#962448
diff --git a/tags/m/maintainer-also-in-uploaders.tag b/tags/m/maintainer-also-in-uploaders.tag
new file mode 100644
index 0000000..de1cf54
--- /dev/null
+++ b/tags/m/maintainer-also-in-uploaders.tag
@@ -0,0 +1,8 @@
+Tag: maintainer-also-in-uploaders
+Severity: warning
+Check: fields/uploaders
+Explanation: The maintainer value also appears on the <code>Uploaders</code> field.
+ There were some reasons why this was useful when Uploaders support was
+ first introduced, but those have long-since been fixed and there is no
+ longer any need to list the maintainer in Uploaders. The duplicate
+ information should probably be removed.
diff --git a/tags/m/maintainer-desktop-entry.tag b/tags/m/maintainer-desktop-entry.tag
new file mode 100644
index 0000000..e14c9c0
--- /dev/null
+++ b/tags/m/maintainer-desktop-entry.tag
@@ -0,0 +1,10 @@
+Tag: maintainer-desktop-entry
+Severity: pedantic
+Check: debian/desktop-entries
+Explanation: The maintainer keeps a desktop entry in ./debian. Please forward
+ the desktop entry upstream and ask them to include it in their version
+ control system, and in their next release.
+ .
+ If the desktop entry was already forwarded or rejected, or the upstream
+ is gone, please override the tag and annotate it with a suitable comment.
+See-Also: social contract item 2, developer-reference 3.1.4, debian-policy 4.3
diff --git a/tags/m/maintainer-manual-page.tag b/tags/m/maintainer-manual-page.tag
new file mode 100644
index 0000000..b825102
--- /dev/null
+++ b/tags/m/maintainer-manual-page.tag
@@ -0,0 +1,11 @@
+Tag: maintainer-manual-page
+Severity: pedantic
+Check: debian/manual-pages
+Renamed-From: maintainer-manpage
+Explanation: The maintainer keeps a manual page in ./debian. Please forward the
+ manual page upstream and ask them to include in their version control
+ system, and in their next release.
+ .
+ If the manual page was already forwarded or rejected, or the upstream is
+ gone, please override the tag and annotate it with a suitable comment.
+See-Also: social contract item 2, developer-reference 3.1.4, debian-policy 4.3
diff --git a/tags/m/maintainer-script-calls-chown-improperly.tag b/tags/m/maintainer-script-calls-chown-improperly.tag
new file mode 100644
index 0000000..a2d593d
--- /dev/null
+++ b/tags/m/maintainer-script-calls-chown-improperly.tag
@@ -0,0 +1,9 @@
+Tag: maintainer-script-calls-chown-improperly
+Severity: warning
+Check: scripts
+Renamed-From: maintainer-script-should-not-use-deprecated-chown-usage
+Explanation: <code>chown user.group</code> is called in one of the maintainer
+ scripts. The correct syntax is <code>chown user:group</code>. Using "." as a
+ separator is still supported by the GNU tools, but it will fail as soon
+ as a system uses the "." in user or group names.
+See-Also: chown(1)
diff --git a/tags/m/maintainer-script-calls-gconftool.tag b/tags/m/maintainer-script-calls-gconftool.tag
new file mode 100644
index 0000000..d21bc70
--- /dev/null
+++ b/tags/m/maintainer-script-calls-gconftool.tag
@@ -0,0 +1,6 @@
+Tag: maintainer-script-calls-gconftool
+Severity: warning
+Check: scripts
+Renamed-From: maintainer-script-should-not-use-gconftool
+Explanation: This script apparently runs gconftool or gconftool-2. It should
+ probably be calling gconf-schemas or update-gconf-defaults instead.
diff --git a/tags/m/maintainer-script-calls-init-script-directly.tag b/tags/m/maintainer-script-calls-init-script-directly.tag
new file mode 100644
index 0000000..fb33495
--- /dev/null
+++ b/tags/m/maintainer-script-calls-init-script-directly.tag
@@ -0,0 +1,11 @@
+Tag: maintainer-script-calls-init-script-directly
+Severity: error
+Check: init-d/maintainer-script
+Explanation: The named maintainer script appear to run an <code>init</code> script in
+ <code>/etc/init.d/&ast;</code> directly and not via <code>invoke-rc.d</code>, but
+ the use of <code>invoke-rc.d</code> is required.
+ .
+ Maintainer scripts may call an init script directly only when <code>invoke-rc.d</code>
+ is not available.
+See-Also:
+ debian-policy 9.3.3.2
diff --git a/tags/m/maintainer-script-calls-install-sgmlcatalog.tag b/tags/m/maintainer-script-calls-install-sgmlcatalog.tag
new file mode 100644
index 0000000..e4f57af
--- /dev/null
+++ b/tags/m/maintainer-script-calls-install-sgmlcatalog.tag
@@ -0,0 +1,9 @@
+Tag: maintainer-script-calls-install-sgmlcatalog
+Severity: error
+Check: scripts
+Renamed-From: maintainer-script-should-not-use-install-sgmlcatalog
+Explanation: The maintainer script apparently runs install-sgmlcatalog.
+ install-sgmlcatalog is deprecated and should only have been used
+ in postinst or prerm to remove the entries from earlier packages.
+ Given how long ago this transition was, consider removing it
+ entirely.
diff --git a/tags/m/maintainer-script-calls-service.tag b/tags/m/maintainer-script-calls-service.tag
new file mode 100644
index 0000000..77e7345
--- /dev/null
+++ b/tags/m/maintainer-script-calls-service.tag
@@ -0,0 +1,14 @@
+Tag: maintainer-script-calls-service
+Severity: error
+Check: scripts
+Experimental: yes
+Renamed-From: maintainer-script-should-not-use-service
+Explanation: The maintainer script apparently runs the service command. This
+ command is reserved for local administrators and must never be used
+ by a Debian package.
+ .
+ Please replace with calls to <code>update-rc.d(8)</code> and
+ <code>invoke-rc.d(8)</code>. If your package installs this service, this
+ can be automated using <code>dh&lowbar;installinit(1)</code> or
+ <code>dh&lowbar;installsystemd(1)</code>.
+See-Also: debian-policy 9.3.3
diff --git a/tags/m/maintainer-script-calls-start-stop-daemon.tag b/tags/m/maintainer-script-calls-start-stop-daemon.tag
new file mode 100644
index 0000000..dcae214
--- /dev/null
+++ b/tags/m/maintainer-script-calls-start-stop-daemon.tag
@@ -0,0 +1,9 @@
+Tag: maintainer-script-calls-start-stop-daemon
+Severity: warning
+Check: scripts
+Renamed-From: maintainer-script-should-not-use-start-stop-daemon
+Explanation: The maintainer script seems to call <code>start-stop-daemon</code>
+ directly. Long-running daemons should be started and stopped via init
+ scripts using <code>invoke-rc.d</code> rather than directly in maintainer
+ scripts.
+See-Also: debian-policy 9.3.3.2
diff --git a/tags/m/maintainer-script-calls-systemctl.tag b/tags/m/maintainer-script-calls-systemctl.tag
new file mode 100644
index 0000000..adbaf3a
--- /dev/null
+++ b/tags/m/maintainer-script-calls-systemctl.tag
@@ -0,0 +1,13 @@
+Tag: maintainer-script-calls-systemctl
+Severity: warning
+Check: maintainer-scripts/systemctl
+Explanation: The maintainer script calls systemctl directly. Actions such as enabling
+ a unit file should be done using <code>deb-systemd-helper</code> so that they work
+ on machines with or without systemd. Starting a service should be done via
+ <code>invoke-rc.d</code> if the service has a corresponding sysvinit script or
+ <code>deb-systemd-invoke</code> if it does not.
+ .
+ If you are using debhelper, please use the <code>systemd</code> debhelper
+ addon, which is provided by <code>debhelper (&gt;= 9.20160709~)</code>.
+See-Also:
+ https://wiki.debian.org/Teams/pkg-systemd/Packaging
diff --git a/tags/m/maintainer-script-changes-ld-so-conf.tag b/tags/m/maintainer-script-changes-ld-so-conf.tag
new file mode 100644
index 0000000..45af7ad
--- /dev/null
+++ b/tags/m/maintainer-script-changes-ld-so-conf.tag
@@ -0,0 +1,17 @@
+Tag: maintainer-script-changes-ld-so-conf
+Severity: error
+Check: scripts
+Renamed-From: maintainer-script-should-not-modify-ld-so-conf
+Explanation: This package appears to modify <code>/etc/ld.so.conf</code> and does not
+ appear to be part of libc. Packages installing shared libraries in
+ non-standard locations were previously permitted to modify
+ /etc/ld.so.conf to add the non-standard path, but this permission was
+ removed in Policy 3.8.3.
+ .
+ Packages containing shared libraries should either install them into
+ <code>/usr/lib</code> or should require binaries built against them to set
+ RPATH to find the library at run-time. Installing libraries in a
+ different directory and modifying the run-time linker path is equivalent
+ to installing them into <code>/usr/lib</code> except now conflicting library
+ packages may cause random segfaults and difficult-to-debug problems
+ instead of conflicts in the package manager.
diff --git a/tags/m/maintainer-script-changes-netbase.tag b/tags/m/maintainer-script-changes-netbase.tag
new file mode 100644
index 0000000..b11a1c2
--- /dev/null
+++ b/tags/m/maintainer-script-changes-netbase.tag
@@ -0,0 +1,9 @@
+Tag: maintainer-script-changes-netbase
+Severity: error
+Check: scripts
+Renamed-From: maintainer-script-should-not-modify-netbase-managed-file
+Explanation: The maintainer script modifies at least one of the files
+ <code>/etc/services</code>, <code>/etc/protocols</code>, and <code>/etc/rpc</code>,
+ which are managed by the netbase package. Instead of doing this, please
+ file a wishlist bug against netbase to have an appropriate entry added.
+See-Also: debian-policy 11.2
diff --git a/tags/m/maintainer-script-does-not-check-for-existence-of-installdocs.tag b/tags/m/maintainer-script-does-not-check-for-existence-of-installdocs.tag
new file mode 100644
index 0000000..7bac250
--- /dev/null
+++ b/tags/m/maintainer-script-does-not-check-for-existence-of-installdocs.tag
@@ -0,0 +1,12 @@
+Tag: maintainer-script-does-not-check-for-existence-of-installdocs
+Severity: error
+Check: menus
+Explanation: The maintainer script calls the <code>install-docs</code> command without
+ checking that it exists, but the <code>doc-base</code> package, which provides
+ the command, is not an <code>essential</code> package and may not be available.
+ .
+ For example, you can use the following code in your maintainer script:
+ .
+ if which install-docs &gt; /dev/null; then
+ install-docs -i /usr/share/doc-base/&lt;your-package&gt;
+ fi
diff --git a/tags/m/maintainer-script-does-not-check-for-existence-of-updatemenus.tag b/tags/m/maintainer-script-does-not-check-for-existence-of-updatemenus.tag
new file mode 100644
index 0000000..8fc6caf
--- /dev/null
+++ b/tags/m/maintainer-script-does-not-check-for-existence-of-updatemenus.tag
@@ -0,0 +1,14 @@
+Tag: maintainer-script-does-not-check-for-existence-of-updatemenus
+Severity: error
+Check: menus
+Explanation: The given maintainer script calls the <code>update-menus</code>
+ command but does not check if it exists.
+ .
+ The <code>menu</code> package that provides the command is not an "essential"
+ package.
+ .
+ For example, you can use the following code in your maintainer script:
+ .
+ if which update-menus &gt; /dev/null; then
+ update-menus
+ fi
diff --git a/tags/m/maintainer-script-empty.tag b/tags/m/maintainer-script-empty.tag
new file mode 100644
index 0000000..613f77e
--- /dev/null
+++ b/tags/m/maintainer-script-empty.tag
@@ -0,0 +1,13 @@
+Tag: maintainer-script-empty
+Severity: warning
+Check: maintainer-scripts/empty
+Explanation: The named maintainer script does not appear to contain code
+ other than comments or boilerplate such as <code>set -e</code>,
+ <code>exit</code> statements, or a <code>case</code> statement
+ to parse options.
+ .
+ While harmless in most cases, it is not needed. The package may also leave
+ files behind until purged, and can contribute to rare problems when
+ <code>dpkg</code> fails because no maintainer scripts are present.
+ .
+ Please do not ship the maintainer script unless it does something useful.
diff --git a/tags/m/maintainer-script-has-invalid-update-inetd-options.tag b/tags/m/maintainer-script-has-invalid-update-inetd-options.tag
new file mode 100644
index 0000000..a16542b
--- /dev/null
+++ b/tags/m/maintainer-script-has-invalid-update-inetd-options.tag
@@ -0,0 +1,16 @@
+Tag: maintainer-script-has-invalid-update-inetd-options
+Severity: warning
+Check: scripts
+See-Also: update-inetd(1), Bug#909758, Bug#909506
+Explanation: The specified maintainer script seems to call
+ <code>update-inetd(1)</code> with an invalid option combination.
+ .
+ For example, the <code>--group</code> parameter is only valid in
+ combination with <code>--add</code> and <code>--pattern</code> is only valid
+ without <code>--add</code>.
+ .
+ Whilst these have been ignored in the past they now emit a warning
+ which will become an error in the future, resulting in upgrade/removal
+ failures.
+ .
+ Please correct the call to <code>update-inetd(1)</code>.
diff --git a/tags/m/maintainer-script-has-unexpanded-debhelper-token.tag b/tags/m/maintainer-script-has-unexpanded-debhelper-token.tag
new file mode 100644
index 0000000..949bdf5
--- /dev/null
+++ b/tags/m/maintainer-script-has-unexpanded-debhelper-token.tag
@@ -0,0 +1,9 @@
+Tag: maintainer-script-has-unexpanded-debhelper-token
+Severity: warning
+Check: build-systems/debhelper/maintainer-script/token
+Explanation: The named maintainer script contains a <code>#DEBHELPER#</code>
+ token. Normally, <code>dh&lowbar;installdeb</code> removes those tokens
+ when it makes substitutions in a script.
+ .
+ Please note that <code>dh&lowbar;installdeb</code> does <strong>not</strong>
+ substitute the <code>#DEBHELPER#</code> token in <code>udebs</code>.
diff --git a/tags/m/maintainer-script-hides-init-failure.tag b/tags/m/maintainer-script-hides-init-failure.tag
new file mode 100644
index 0000000..cbbc848
--- /dev/null
+++ b/tags/m/maintainer-script-hides-init-failure.tag
@@ -0,0 +1,12 @@
+Tag: maintainer-script-hides-init-failure
+Severity: warning
+Check: scripts
+Renamed-From: maintainer-script-should-not-hide-init-failure
+Explanation: This script calls invoke-rc.d to run an init script but then, if the
+ init script fails, exits successfully (using || exit 0). If the init
+ script fails, the maintainer script should probably fail.
+ .
+ The most likely cause of this problem is that the package was built with
+ a debhelper version suffering from Bug#337664 that inserted incorrect
+ invoke-rc.d code in the generated maintainer script. The package needs to
+ be reuploaded (could be bin-NMUd, no source changes needed).
diff --git a/tags/m/maintainer-script-ignores-errors.tag b/tags/m/maintainer-script-ignores-errors.tag
new file mode 100644
index 0000000..767dd7a
--- /dev/null
+++ b/tags/m/maintainer-script-ignores-errors.tag
@@ -0,0 +1,7 @@
+Tag: maintainer-script-ignores-errors
+Severity: warning
+Check: scripts
+See-Also: debian-policy 10.4
+Explanation: The maintainer script doesn't seem to set the <code>-e</code> flag which
+ ensures that the script's execution is aborted when any executed command
+ fails.
diff --git a/tags/m/maintainer-script-interpreter.tag b/tags/m/maintainer-script-interpreter.tag
new file mode 100644
index 0000000..2247ad8
--- /dev/null
+++ b/tags/m/maintainer-script-interpreter.tag
@@ -0,0 +1,4 @@
+Tag: maintainer-script-interpreter
+Severity: classification
+Check: scripts
+Explanation: Interpreter used in maintainer script or ELF
diff --git a/tags/m/maintainer-script-lacks-debhelper-token.tag b/tags/m/maintainer-script-lacks-debhelper-token.tag
new file mode 100644
index 0000000..3168b35
--- /dev/null
+++ b/tags/m/maintainer-script-lacks-debhelper-token.tag
@@ -0,0 +1,8 @@
+Tag: maintainer-script-lacks-debhelper-token
+Severity: warning
+Check: debhelper
+Explanation: This package is built using debhelper commands that may modify
+ maintainer scripts, but the maintainer scripts do not contain
+ the "#DEBHELPER#" token debhelper uses to modify them.
+ .
+ Adding the token to the scripts is recommended.
diff --git a/tags/m/maintainer-script-lacks-home-in-adduser.tag b/tags/m/maintainer-script-lacks-home-in-adduser.tag
new file mode 100644
index 0000000..ce372cb
--- /dev/null
+++ b/tags/m/maintainer-script-lacks-home-in-adduser.tag
@@ -0,0 +1,18 @@
+Tag: maintainer-script-lacks-home-in-adduser
+Severity: error
+Check: scripts
+Renamed-From: maintainer-script-should-not-use-adduser-system-without-home
+Explanation: The maintainer script apparently runs 'adduser --system'
+ but hardcodes a path under '/home' for the '--home' option or
+ does not use the '--home' option.
+ .
+ The FHS says: /home is a fairly standard concept, but it
+ is clearly a site-specific filesystem. The setup will differ
+ from host to host. Therefore, no program should rely on this
+ location.
+ .
+ Note that passing --no-create-home alone does not solve the issue
+ because home field of passwd file point to a non existing
+ /home subdirectory. Please use
+ <code>adduser --no-create-home --home /nonexistent</code> instead.
+See-Also: filesystem-hierarchy homeuserhomedirectories, adduser(8)
diff --git a/tags/m/maintainer-script-modifies-inetd-conf.tag b/tags/m/maintainer-script-modifies-inetd-conf.tag
new file mode 100644
index 0000000..6127937
--- /dev/null
+++ b/tags/m/maintainer-script-modifies-inetd-conf.tag
@@ -0,0 +1,7 @@
+Tag: maintainer-script-modifies-inetd-conf
+Severity: error
+Check: scripts
+Explanation: The maintainer script modifies <code>/etc/inetd.conf</code> directly.
+ This file must not be modified directly; instead, use the
+ <code>update-inetd</code> script or the <code>DebianNet.pm</code> Perl module.
+See-Also: debian-policy 11.2
diff --git a/tags/m/maintainer-script-needs-depends-on-adduser.tag b/tags/m/maintainer-script-needs-depends-on-adduser.tag
new file mode 100644
index 0000000..4cc9141
--- /dev/null
+++ b/tags/m/maintainer-script-needs-depends-on-adduser.tag
@@ -0,0 +1,5 @@
+Tag: maintainer-script-needs-depends-on-adduser
+Severity: warning
+Check: scripts
+Explanation: This script calls adduser, but the package does not depend or
+ pre-depend on the adduser package.
diff --git a/tags/m/maintainer-script-needs-depends-on-gconf2.tag b/tags/m/maintainer-script-needs-depends-on-gconf2.tag
new file mode 100644
index 0000000..b5a6c3a
--- /dev/null
+++ b/tags/m/maintainer-script-needs-depends-on-gconf2.tag
@@ -0,0 +1,7 @@
+Tag: maintainer-script-needs-depends-on-gconf2
+Severity: warning
+Check: scripts
+Explanation: This script calls gconf-schemas, which comes from the gconf2 package,
+ but does not depend or pre-depend on gconf2. If you are using dh&lowbar;gconf,
+ add a dependency on ${misc:Depends} and dh&lowbar;gconf will take care of this
+ for you.
diff --git a/tags/m/maintainer-script-needs-depends-on-ucf.tag b/tags/m/maintainer-script-needs-depends-on-ucf.tag
new file mode 100644
index 0000000..972e040
--- /dev/null
+++ b/tags/m/maintainer-script-needs-depends-on-ucf.tag
@@ -0,0 +1,5 @@
+Tag: maintainer-script-needs-depends-on-ucf
+Severity: warning
+Check: scripts
+Explanation: This script calls ucf, but the package does not depend or pre-depend
+ on the ucf package.
diff --git a/tags/m/maintainer-script-needs-depends-on-update-inetd.tag b/tags/m/maintainer-script-needs-depends-on-update-inetd.tag
new file mode 100644
index 0000000..c7ffaff
--- /dev/null
+++ b/tags/m/maintainer-script-needs-depends-on-update-inetd.tag
@@ -0,0 +1,10 @@
+Tag: maintainer-script-needs-depends-on-update-inetd
+Severity: warning
+Check: scripts
+Explanation: This script calls update-inetd, but the package does not depend or
+ pre-depend on inet-superserver, any of the providers of inet-superserver
+ which provide it, or update-inetd.
+ .
+ update-inetd has been moved from netbase into a separate package, so a
+ dependency on netbase should be updated to depend on "openbsd-inetd |
+ inet-superserver".
diff --git a/tags/m/maintainer-script-needs-depends-on-xfonts-utils.tag b/tags/m/maintainer-script-needs-depends-on-xfonts-utils.tag
new file mode 100644
index 0000000..4a5ab1e
--- /dev/null
+++ b/tags/m/maintainer-script-needs-depends-on-xfonts-utils.tag
@@ -0,0 +1,11 @@
+Tag: maintainer-script-needs-depends-on-xfonts-utils
+Severity: warning
+Check: scripts
+Explanation: This script calls a utility provided by the xfonts-utils package
+ but does not depend or pre-depend on this package.
+ .
+ Packages that call update-fonts-scale, update-fonts-dir (etc.) need to
+ depend on xfonts-utils.If you are using debhelper.
+ .
+ Please add a dependency on ${misc:Depends} and dh&lowbar;installxfonts will
+ take care of this for you.
diff --git a/tags/m/maintainer-script-needs-depends-on-xml-core.tag b/tags/m/maintainer-script-needs-depends-on-xml-core.tag
new file mode 100644
index 0000000..779484c
--- /dev/null
+++ b/tags/m/maintainer-script-needs-depends-on-xml-core.tag
@@ -0,0 +1,8 @@
+Tag: maintainer-script-needs-depends-on-xml-core
+Severity: warning
+Check: scripts
+Explanation: This script calls update-xmlcatalog, which comes from the xml-core
+ package, but does not depend or pre-depend on xml-core. Packages that call
+ update-xmlcatalog need to depend on xml-core. If you are using
+ dh&lowbar;installxmlcatalogs, add a dependency on ${misc:Depends} and
+ dh&lowbar;installxmlcatalogs will take care of this for you.
diff --git a/tags/m/maintainer-script-removes-device-files.tag b/tags/m/maintainer-script-removes-device-files.tag
new file mode 100644
index 0000000..5000d30
--- /dev/null
+++ b/tags/m/maintainer-script-removes-device-files.tag
@@ -0,0 +1,6 @@
+Tag: maintainer-script-removes-device-files
+Severity: error
+Check: scripts
+See-Also: debian-policy 10.6
+Explanation: Maintainer scripts must not remove device files. This is left to
+ the system administrator.
diff --git a/tags/m/maintainer-script-sets-alternative-improperly.tag b/tags/m/maintainer-script-sets-alternative-improperly.tag
new file mode 100644
index 0000000..203875d
--- /dev/null
+++ b/tags/m/maintainer-script-sets-alternative-improperly.tag
@@ -0,0 +1,12 @@
+Tag: maintainer-script-sets-alternative-improperly
+Severity: warning
+Check: scripts
+Renamed-From: maintainer-script-should-not-use-update-alternatives-set
+Explanation: The maintainer script calls <code>update-alternatives --set
+ &lt;alternative&gt; foo</code> or <code>update-alternatives --config
+ &lt;alternative&gt;</code> or <code>update-alternatives --set-selections</code>.
+ .
+ This makes it impossible to distinguish between an alternative that's
+ manually set because the user set it and one that's manually set because
+ the package set it.
+See-Also: update-alternatives(8)
diff --git a/tags/m/maintainer-script-should-not-parse-etc-passwd-or-group.tag b/tags/m/maintainer-script-should-not-parse-etc-passwd-or-group.tag
new file mode 100644
index 0000000..1da9065
--- /dev/null
+++ b/tags/m/maintainer-script-should-not-parse-etc-passwd-or-group.tag
@@ -0,0 +1,10 @@
+Tag: maintainer-script-should-not-parse-etc-passwd-or-group
+Severity: warning
+Check: scripts
+See-Also: getent(1), nss(5)
+Explanation: The maintainer script appears to manually parse <code>/etc/passwd</code>
+ or <code>/etc/group</code> instead of using the <code>getent(1)</code> utility
+ to display entries.
+ .
+ This bypasses the Name Service Switch (NSS), avoiding querying
+ centralised or networked user databases such as LDAP, etc.
diff --git a/tags/m/maintainer-script-should-not-use-dpkg-maintscript-helper.tag b/tags/m/maintainer-script-should-not-use-dpkg-maintscript-helper.tag
new file mode 100644
index 0000000..bd28c61
--- /dev/null
+++ b/tags/m/maintainer-script-should-not-use-dpkg-maintscript-helper.tag
@@ -0,0 +1,10 @@
+Tag: maintainer-script-should-not-use-dpkg-maintscript-helper
+Severity: warning
+Check: scripts
+Explanation: The maintainer script seems to make manual calls to the
+ <code>dpkg-maintscript-helper(1)</code> utility.
+ .
+ Please use <code>package.maintscript</code> files instead; the
+ <code>dh&lowbar;installdeb(1)</code> tool will do some basic validation of some of
+ the commands listed in this file to catch common mistakes.
+See-Also: dpkg-maintscript-helper(1), dh_installdeb(1)
diff --git a/tags/m/maintainer-script-should-not-use-piuparts-variable.tag b/tags/m/maintainer-script-should-not-use-piuparts-variable.tag
new file mode 100644
index 0000000..6c1b2c8
--- /dev/null
+++ b/tags/m/maintainer-script-should-not-use-piuparts-variable.tag
@@ -0,0 +1,12 @@
+Tag: maintainer-script-should-not-use-piuparts-variable
+Severity: warning
+Check: scripts
+See-Also: piuparts(1), https://piuparts.debian.org/doc/README.html
+Explanation: The maintainer script appears to reference one of the
+ <code>PIUPARTS&lowbar;&ast;</code> variables such as <code>PIUPARTS&lowbar;TEST</code> or
+ <code>PIUPARTS&lowbar;PHASE</code>.
+ .
+ These variables are intended to be used by custom <code>piuparts(1)</code>
+ scripts and not by maintainer scripts themselves.
+ .
+ Please remove the references to this variable.
diff --git a/tags/m/maintainer-script-supports-ancient-package-version.tag b/tags/m/maintainer-script-supports-ancient-package-version.tag
new file mode 100644
index 0000000..f523bd4
--- /dev/null
+++ b/tags/m/maintainer-script-supports-ancient-package-version.tag
@@ -0,0 +1,8 @@
+Tag: maintainer-script-supports-ancient-package-version
+Severity: info
+Check: maintainer-scripts/ancient-version
+Experimental: yes
+Explanation: The named maintainer script appears to look for a package version
+ that is older than the current <code>oldstable</code> release.
+ .
+ Please remove the check for that version. Such upgrades are not supported.
diff --git a/tags/m/maintainer-script-switches-dir-to-symlink-unsafely.tag b/tags/m/maintainer-script-switches-dir-to-symlink-unsafely.tag
new file mode 100644
index 0000000..1b4c715
--- /dev/null
+++ b/tags/m/maintainer-script-switches-dir-to-symlink-unsafely.tag
@@ -0,0 +1,11 @@
+Tag: maintainer-script-switches-dir-to-symlink-unsafely
+Severity: error
+Check: scripts
+Experimental: yes
+Renamed-From: maintainer-script-may-use-dir_to_symlink_helper
+Explanation: The maintainer script apparently change a directory to a symlink
+ not using dir&lowbar;to&lowbar;symlink command of dpkg-maintscript-helper, that take
+ great care to avoid a lot of problems.
+ .
+ Please use the dpkg-maintscript-helper dir&lowbar;to&lowbar;symlink command.
+See-Also: dpkg-maintscript-helper(1)
diff --git a/tags/m/maintainer-script-updates-fontconfig-cache-improperly.tag b/tags/m/maintainer-script-updates-fontconfig-cache-improperly.tag
new file mode 100644
index 0000000..463c4ba
--- /dev/null
+++ b/tags/m/maintainer-script-updates-fontconfig-cache-improperly.tag
@@ -0,0 +1,7 @@
+Tag: maintainer-script-updates-fontconfig-cache-improperly
+Severity: warning
+Check: scripts
+Renamed-From: maintainer-script-should-not-use-fc-cache
+Explanation: This script apparently runs fc-cache. Updating of the fontconfig
+ cache files is now handled automatically by triggers, so running fc-cache
+ from maintainer scripts is no longer necessary.
diff --git a/tags/m/maintainer-script-without-set-e.tag b/tags/m/maintainer-script-without-set-e.tag
new file mode 100644
index 0000000..1bd32f6
--- /dev/null
+++ b/tags/m/maintainer-script-without-set-e.tag
@@ -0,0 +1,10 @@
+Tag: maintainer-script-without-set-e
+Severity: pedantic
+Check: scripts
+See-Also: debian-policy 10.4
+Explanation: The maintainer script passes <code>-e</code> to the shell on the
+ <code>#!</code> line rather than using <code>set -e</code> in the body of the
+ script. This is fine for normal operation, but if the script is run by
+ hand with <code>sh /path/to/script</code> (common in debugging), <code>-e</code>
+ will not be in effect. It's therefore better to use <code>set -e</code> in
+ the body of the script.
diff --git a/tags/m/maintainer-shell-script-fails-syntax-check.tag b/tags/m/maintainer-shell-script-fails-syntax-check.tag
new file mode 100644
index 0000000..51fe715
--- /dev/null
+++ b/tags/m/maintainer-shell-script-fails-syntax-check.tag
@@ -0,0 +1,8 @@
+Tag: maintainer-shell-script-fails-syntax-check
+Severity: error
+Check: script/syntax
+Explanation: Running this shell script with the shell's -n option set fails,
+ which means that the script has syntax errors. This will likely make
+ the package uninstallable.
+ .
+ Run e.g. <code>sh -n yourscript</code> to see the errors yourself.
diff --git a/tags/m/maintainer-upload-has-incorrect-version-number.tag b/tags/m/maintainer-upload-has-incorrect-version-number.tag
new file mode 100644
index 0000000..6e4109d
--- /dev/null
+++ b/tags/m/maintainer-upload-has-incorrect-version-number.tag
@@ -0,0 +1,7 @@
+Tag: maintainer-upload-has-incorrect-version-number
+Severity: warning
+Check: nmu
+Explanation: A maintainer upload should have a Debian revision without dots.
+ Revisions with dots are reserved for Non-Maintainer Uploads (NMUs). If you
+ do a maintainer-upload with dots a potential NMU'er has problems choosing a
+ correct version number.
diff --git a/tags/m/maintscript-calls-ldconfig.tag b/tags/m/maintscript-calls-ldconfig.tag
new file mode 100644
index 0000000..19287cd
--- /dev/null
+++ b/tags/m/maintscript-calls-ldconfig.tag
@@ -0,0 +1,24 @@
+Tag: maintscript-calls-ldconfig
+Severity: warning
+Check: maintainer-scripts/ldconfig
+Explanation: The given maintainer script calls <code>ldconfig</code>,
+ but such calls in maintainer scripts should be replaced instead by a
+ <code>dpkg</code> trigger.
+ .
+ Please replace the <code>ldconfig</code> call with an <code>activate-noawait
+ ldconfig</code> trigger. With Debhelper, it is usually sufficient
+ to add that line to <code>debian/&lt;package&gt;.triggers</code>.
+ .
+ This warning may appear if the package was compiled with Debhelper older than
+ version 9.20151004. Assuming all <code>ldconfig</code> invocations were added
+ by Debhelper, this tag should disappear when the package is rebuilt with a
+ newer version of Debhelper.
+See-Also:
+ https://lists.debian.org/debian-devel/2015/08/msg00412.html
+
+Screen: glibc/control/ldconfig
+Advocates: Debian Lintian Maintainers <lintian-maint@debian.org>
+Reason: The packages built from <code>glibc</code> (notably <code>libc-bin</code>)
+ need to call <code>ldconfig</code> in order to implement the <code>ldconfig</code> trigger.
+ .
+ Transferred from the check.
diff --git a/tags/m/maintscript-includes-maint-script-parameters.tag b/tags/m/maintscript-includes-maint-script-parameters.tag
new file mode 100644
index 0000000..1c7d20d
--- /dev/null
+++ b/tags/m/maintscript-includes-maint-script-parameters.tag
@@ -0,0 +1,9 @@
+Tag: maintscript-includes-maint-script-parameters
+Severity: warning
+Check: debian/maintscript
+Explanation: The named <code>debian/&ast;.maintscript</code> file uses commands
+ or parameters from <code>dpkg-maintscript-helper(1)</code>.
+ .
+ Debhelper will add them automatically. Please do not include them manually.
+See-Also:
+ dh_installdeb(1)
diff --git a/tags/m/making-assumptions-about-interfaces-in-templates.tag b/tags/m/making-assumptions-about-interfaces-in-templates.tag
new file mode 100644
index 0000000..162e694
--- /dev/null
+++ b/tags/m/making-assumptions-about-interfaces-in-templates.tag
@@ -0,0 +1,8 @@
+Tag: making-assumptions-about-interfaces-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: Template text should not make reference to widgets belonging to
+ some debconf interfaces. Sentences like "If you answer Yes..." have no
+ meaning for users of graphical interfaces which use checkboxes for
+ boolean questions.
+See-Also: developer-reference 6.5.2.4
diff --git a/tags/m/malformed-changes-file.tag b/tags/m/malformed-changes-file.tag
new file mode 100644
index 0000000..74f0ed1
--- /dev/null
+++ b/tags/m/malformed-changes-file.tag
@@ -0,0 +1,11 @@
+Tag: malformed-changes-file
+Severity: error
+Check: fields/format
+Explanation: There is no "Format" field in your .changes file. This probably
+ indicates some serious problem with the file. Perhaps it's not actually
+ a changes file, or it's not in the proper format, or it's PGP-signed
+ twice.
+ .
+ Since Lintian was unable to parse this .changes file, any further checks
+ on it were skipped.
+See-Also: debian-policy 5.5
diff --git a/tags/m/malformed-contact.tag b/tags/m/malformed-contact.tag
new file mode 100644
index 0000000..24e5ad2
--- /dev/null
+++ b/tags/m/malformed-contact.tag
@@ -0,0 +1,17 @@
+Tag: malformed-contact
+Severity: error
+Check: fields/mail-address
+Renamed-From:
+ maintainer-address-missing
+ changed-by-address-missing
+ malformed-maintainer-field
+ malformed-uploaders-field
+ malformed-changed-by-field
+ maintainer-address-malformed
+ uploader-address-malformed
+ changed-by-address-malformed
+Explanation: The named field identifying contact persons could not be
+ parsed according to the rules in the Policy Manual.
+See-Also: debian-policy 5.6.2,
+ debian-policy 5.6.3,
+ debian-policy 5.6.4
diff --git a/tags/m/malformed-deb-archive.tag b/tags/m/malformed-deb-archive.tag
new file mode 100644
index 0000000..39e956f
--- /dev/null
+++ b/tags/m/malformed-deb-archive.tag
@@ -0,0 +1,11 @@
+Tag: malformed-deb-archive
+Severity: error
+Check: deb-format
+Explanation: The binary package is not a correctly constructed archive. A binary
+ Debian package must be an ar archive with exactly three members:
+ <code>debian-binary</code>, <code>control.tar.gz</code>, and one of
+ <code>data.tar.gz</code>, <code>data.tar.bz2</code> or <code>data.tar.xz</code>
+ in exactly that order. The <code>debian-binary</code> member must start
+ with a single line containing the version number, with a major revision
+ of 2.
+See-Also: deb(5)
diff --git a/tags/m/malformed-debian-changelog-version.tag b/tags/m/malformed-debian-changelog-version.tag
new file mode 100644
index 0000000..bfee2df
--- /dev/null
+++ b/tags/m/malformed-debian-changelog-version.tag
@@ -0,0 +1,7 @@
+Tag: malformed-debian-changelog-version
+Severity: error
+Check: debian/changelog
+Explanation: The version string in the latest changelog entry was not parsed
+ correctly. Usually, that means it does not conform to policy.
+See-Also:
+ debian-policy 5.6.12
diff --git a/tags/m/malformed-dm-upload-allowed.tag b/tags/m/malformed-dm-upload-allowed.tag
new file mode 100644
index 0000000..5b263d8
--- /dev/null
+++ b/tags/m/malformed-dm-upload-allowed.tag
@@ -0,0 +1,8 @@
+Tag: malformed-dm-upload-allowed
+Severity: error
+Check: fields/dm-upload-allowed
+See-Also: https://www.debian.org/vote/2007/vote_003
+Explanation: The Dm-Upload-Allowed field in this package is set to something
+ other than "yes". The only standardized value for this field in the
+ Debian GR is "yes" and other values (including capitalization variants)
+ may not work as expected.
diff --git a/tags/m/malformed-md5sums-control-file.tag b/tags/m/malformed-md5sums-control-file.tag
new file mode 100644
index 0000000..5f0993b
--- /dev/null
+++ b/tags/m/malformed-md5sums-control-file.tag
@@ -0,0 +1,7 @@
+Tag: malformed-md5sums-control-file
+Severity: error
+Check: md5sums
+Explanation: The indicated line of the md5sums control file for this package was
+ malformed. Each line of an md5sums control file should contain an MD5
+ checksum, some whitespace, and then the path to the file corresponding to
+ that checksum.
diff --git a/tags/m/malformed-override.tag b/tags/m/malformed-override.tag
new file mode 100644
index 0000000..e5df4fc
--- /dev/null
+++ b/tags/m/malformed-override.tag
@@ -0,0 +1,15 @@
+Tag: malformed-override
+Severity: error
+Show-Always: yes
+Check: debian/lintian-overrides/malformed
+Explanation: Lintian discovered an override entry with an invalid format. An
+ override entry should have the format:
+ .
+ [[&lt;package&gt;][ &lt;archlist&gt;][ &lt;type&gt;]:] &lt;tag&gt;[ &lt;extra&gt; ...]
+ .
+ where &lt;package&gt; is the package name, &lt;archlist&gt; is an
+ architecture list, &lt;type&gt; specifies the package type (binary is the
+ default), &lt;tag&gt; is the tag to override, and &lt;extra&gt; is any
+ specific information for the particular tag to override.
+See-Also:
+ lintian-manual 2.4.1
diff --git a/tags/m/malformed-prompt-in-templates.tag b/tags/m/malformed-prompt-in-templates.tag
new file mode 100644
index 0000000..05cab6a
--- /dev/null
+++ b/tags/m/malformed-prompt-in-templates.tag
@@ -0,0 +1,11 @@
+Tag: malformed-prompt-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: The short description of a select, multiselect, string and password
+ debconf template is a prompt and not a title. Avoid question style
+ prompts ("IP Address?") in favour of "opened" prompts ("IP address:").
+ The use of colons is recommended.
+ .
+ If this template is only used internally by the package and not displayed
+ to the user, put "for internal use" in the short description.
+See-Also: developer-reference 6.5.4.2
diff --git a/tags/m/malformed-python-version.tag b/tags/m/malformed-python-version.tag
new file mode 100644
index 0000000..bd299e6
--- /dev/null
+++ b/tags/m/malformed-python-version.tag
@@ -0,0 +1,16 @@
+Tag: malformed-python-version
+Severity: error
+Check: languages/python
+See-Also: python-policy 3.4
+Explanation: The Python-Version or Python3-Version control field is not in one
+ of the valid formats. It should be in one of the following:
+ .
+ all
+ current
+ current, &gt;= X.Y
+ &gt;= X.Y
+ &gt;= A.B, &lt;&lt; X.Y
+ A.B, X.Y
+ .
+ (One or more specific versions may be listed with the last form.) A.B
+ and X.Y should be Python versions.
diff --git a/tags/m/malformed-question-in-templates.tag b/tags/m/malformed-question-in-templates.tag
new file mode 100644
index 0000000..5e6c5e2
--- /dev/null
+++ b/tags/m/malformed-question-in-templates.tag
@@ -0,0 +1,11 @@
+Tag: malformed-question-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: The short description of a boolean debconf template should be
+ phrased in the form of a question which should be kept short and should
+ generally end with a question mark. Terse writing style is permitted and
+ even encouraged if the question is rather long.
+ .
+ If this template is only used internally by the package and not displayed
+ to the user, put "for internal use" in the short description.
+See-Also: developer-reference 6.5.4.2.2
diff --git a/tags/m/malformed-template-name.tag b/tags/m/malformed-template-name.tag
new file mode 100644
index 0000000..620ff53
--- /dev/null
+++ b/tags/m/malformed-template-name.tag
@@ -0,0 +1,6 @@
+Tag: malformed-template-name
+Severity: error
+Check: debian/debconf
+Explanation: The "Template:" field should contain more than one component, each
+ separated by a slash ("/"). Each component may only consist of the
+ alphanumeric characters, "+", "-", and ".".
diff --git a/tags/m/malformed-title-in-templates.tag b/tags/m/malformed-title-in-templates.tag
new file mode 100644
index 0000000..0ee804a
--- /dev/null
+++ b/tags/m/malformed-title-in-templates.tag
@@ -0,0 +1,7 @@
+Tag: malformed-title-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: The short description of a note debconf template should be written
+ as a title and therefore should not end with a period, question mark,
+ colon, or semicolon.
+See-Also: developer-reference 6.5.4.2.4
diff --git a/tags/m/manual-page-for-system-command.tag b/tags/m/manual-page-for-system-command.tag
new file mode 100644
index 0000000..54a23f4
--- /dev/null
+++ b/tags/m/manual-page-for-system-command.tag
@@ -0,0 +1,16 @@
+Tag: manual-page-for-system-command
+Check: documentation/manual
+Severity: pedantic
+Renamed-From: command-in-sbin-has-manpage-in-incorrect-section
+Explanation: The command in <code>/sbin</code> or <code>/usr/sbin</code> are system
+ administration commands; their manual pages thus belong in section 8,
+ not section 1.
+ .
+ Please check whether the command is actually useful to non-privileged
+ user in which case it should be moved to <code>/bin</code> or
+ <code>/usr/bin</code>, or alternatively the manual page should be moved to
+ section 8 instead, ie. <code>/usr/share/man/man8</code>.
+See-Also:
+ Bug#348864,
+ Bug#253011,
+ hier(7)
diff --git a/tags/m/manual-page-from-template.tag b/tags/m/manual-page-from-template.tag
new file mode 100644
index 0000000..93428bb
--- /dev/null
+++ b/tags/m/manual-page-from-template.tag
@@ -0,0 +1,12 @@
+Tag: manual-page-from-template
+Severity: error
+Check: documentation/manual
+Renamed-From: manpage-is-dh_make-template
+Explanation: This manual page appears to be an unmodified or insufficiently
+ modified copy of the dh&lowbar;make manual page template. It has a whatis entry
+ (the brief description found in the NAME section) of the form:
+ .
+ package - program to do something
+ .
+ Please double-check the manual page and replace the template language
+ with specific information about this program.
diff --git a/tags/m/manual-page-in-udeb.tag b/tags/m/manual-page-in-udeb.tag
new file mode 100644
index 0000000..79ca3f8
--- /dev/null
+++ b/tags/m/manual-page-in-udeb.tag
@@ -0,0 +1,5 @@
+Tag: manual-page-in-udeb
+Severity: error
+Check: documentation/manual
+Renamed-From: manpage-in-udeb
+Explanation: udeb packages should not contain any manual pages.
diff --git a/tags/m/manual-page-with-generic-name.tag b/tags/m/manual-page-with-generic-name.tag
new file mode 100644
index 0000000..28a4d3c
--- /dev/null
+++ b/tags/m/manual-page-with-generic-name.tag
@@ -0,0 +1,8 @@
+Tag: manual-page-with-generic-name
+Severity: error
+Check: documentation/manual
+Renamed-From: manpage-has-overly-generic-name
+Explanation: The manual page appears to have an overly generic name that is likely to
+ clash with other packages.
+ .
+ Please check your debian/rules or upstream Makefile.
diff --git a/tags/m/maven-plugin-in-usr-share-java.tag b/tags/m/maven-plugin-in-usr-share-java.tag
new file mode 100644
index 0000000..df13ea5
--- /dev/null
+++ b/tags/m/maven-plugin-in-usr-share-java.tag
@@ -0,0 +1,5 @@
+Tag: maven-plugin-in-usr-share-java
+Severity: warning
+Check: languages/java
+Explanation: A maven plugin is incorrectly installed in /usr/share/java.
+ Maven plugins should be installed in /usr/share/maven-repo
diff --git a/tags/m/mawk-script-but-no-mawk-dep.tag b/tags/m/mawk-script-but-no-mawk-dep.tag
new file mode 100644
index 0000000..77e3893
--- /dev/null
+++ b/tags/m/mawk-script-but-no-mawk-dep.tag
@@ -0,0 +1,9 @@
+Tag: mawk-script-but-no-mawk-dep
+Severity: error
+Check: scripts
+Explanation: Packages that use mawk scripts must depend on the mawk package.
+ If they don't need mawk-specific features, and can just as easily work
+ with gawk, then they should be awk scripts instead.
+ .
+ In some cases a weaker relationship, such as Suggests or Recommends, will
+ be more appropriate.
diff --git a/tags/m/maybe-not-arch-all-binnmuable.tag b/tags/m/maybe-not-arch-all-binnmuable.tag
new file mode 100644
index 0000000..9b1a194
--- /dev/null
+++ b/tags/m/maybe-not-arch-all-binnmuable.tag
@@ -0,0 +1,10 @@
+Tag: maybe-not-arch-all-binnmuable
+Severity: classification
+Check: debian/version-substvars
+Experimental: yes
+Explanation: Tag to attempt to measure the number of packages that might
+ have an issue with arch:all binNMUs.
+ .
+ At this time, please do *not* attempt to "fix" the problem. It
+ is not clear what the solution is (if any at all), nor is it clear
+ that this is something that will or should be supported.
diff --git a/tags/m/md5sum-mismatch.tag b/tags/m/md5sum-mismatch.tag
new file mode 100644
index 0000000..a132cbe
--- /dev/null
+++ b/tags/m/md5sum-mismatch.tag
@@ -0,0 +1,12 @@
+Tag: md5sum-mismatch
+Severity: error
+Check: md5sums
+Explanation: The md5sum listed for the file does not match the actual file
+ contents.
+ .
+ Usually, this error occurs during the package build process if the
+ <code>debian/tmp/</code> directory is touched after <code>dh&lowbar;md5sums</code>
+ is run.
+ .
+ Font files regenerated at post-install time by <code>t1c2pfb</code>
+ should be overridden.
diff --git a/tags/m/md5sums-lists-nonexistent-file.tag b/tags/m/md5sums-lists-nonexistent-file.tag
new file mode 100644
index 0000000..d1a0e2b
--- /dev/null
+++ b/tags/m/md5sums-lists-nonexistent-file.tag
@@ -0,0 +1,9 @@
+Tag: md5sums-lists-nonexistent-file
+Severity: error
+Check: md5sums
+Explanation: The md5sums control file lists a file which is not included in the
+ package.
+ .
+ Usually, this error occurs during the package build process if the
+ <code>debian/tmp/</code> directory is touched after <code>dh&lowbar;md5sums</code>
+ is run.
diff --git a/tags/m/mentions-deprecated-usr-lib-perl5-directory.tag b/tags/m/mentions-deprecated-usr-lib-perl5-directory.tag
new file mode 100644
index 0000000..983d038
--- /dev/null
+++ b/tags/m/mentions-deprecated-usr-lib-perl5-directory.tag
@@ -0,0 +1,10 @@
+# Imported from pkg-perl-tools (named usr-lib-perl5-mentioned there)
+Tag: mentions-deprecated-usr-lib-perl5-directory
+Severity: error
+Check: languages/perl/perl5
+Experimental: yes
+Explanation: As of Perl 5.20, the vendorarch directory is /usr/lib/&lt;triplet&gt;/perl5,
+ but this package still uses usr/lib/perl5 in some of the files under debian/.
+ Please replace that with the value of $Config{vendorarch} configuration
+ parameter, e.g.
+ $(shell perl -MConfig -wE'say substr($$Config{vendorarch},1)')
diff --git a/tags/m/menu-command-not-in-package.tag b/tags/m/menu-command-not-in-package.tag
new file mode 100644
index 0000000..b8b8bbe
--- /dev/null
+++ b/tags/m/menu-command-not-in-package.tag
@@ -0,0 +1,8 @@
+Tag: menu-command-not-in-package
+Severity: warning
+Check: menu-format
+Explanation: The <code>menu</code> item specifies a command that is not shipped
+ in the package.
+ .
+ The condition can be caused by a typo. Sometimes, an executable was moved
+ without updating the <code>menu</code> file.
diff --git a/tags/m/menu-file-in-usr-lib.tag b/tags/m/menu-file-in-usr-lib.tag
new file mode 100644
index 0000000..d546a34
--- /dev/null
+++ b/tags/m/menu-file-in-usr-lib.tag
@@ -0,0 +1,11 @@
+Tag: menu-file-in-usr-lib
+Severity: warning
+Check: menus
+Explanation: The installation location <code>/usr/lib/menu</code> for
+ <code>menu</code> files has been deprecated since version 2.1.25 (but
+ still works). Menu files should go into <code>/usr/share/menu</code>.
+ .
+ Only menu files that are compiled executables still need to go into
+ <code>/usr/lib/menu</code>.
+See-Also:
+ menu-manual 3.1
diff --git a/tags/m/menu-icon-cannot-be-parsed.tag b/tags/m/menu-icon-cannot-be-parsed.tag
new file mode 100644
index 0000000..d3acfb4
--- /dev/null
+++ b/tags/m/menu-icon-cannot-be-parsed.tag
@@ -0,0 +1,10 @@
+Tag: menu-icon-cannot-be-parsed
+Severity: warning
+Check: menu-format
+Explanation: The <code>icon</code> file could not be parsed.
+ .
+ Sometimes, it is a bad XPM file. Sometimes, Lintian parsing needs to be
+ improved.
+ .
+ If window managers and other standard tools accept the file without
+ complaints, please file a bug against Lintian.
diff --git a/tags/m/menu-icon-missing.tag b/tags/m/menu-icon-missing.tag
new file mode 100644
index 0000000..7bb60ed
--- /dev/null
+++ b/tags/m/menu-icon-missing.tag
@@ -0,0 +1,17 @@
+Tag: menu-icon-missing
+Severity: warning
+Check: menu-format
+Explanation: The given icon file was not found.
+ .
+ If the path to the icon that is listed in the menu file is absolute,
+ make sure that your package also installs the icon at that path.
+ .
+ If the path is just a filename or otherwise a relative path, make sure
+ the icon is being installed in <code>/usr/share/pixmaps</code>, which
+ is the default location.
+ .
+ If the icon is provided by another package on which this package
+ depends, Lintian may not be able to determine if the icon is
+ available. In that case, please override this tag.
+See-Also:
+ menu-manual 3.7
diff --git a/tags/m/menu-icon-not-in-xpm-format.tag b/tags/m/menu-icon-not-in-xpm-format.tag
new file mode 100644
index 0000000..9f08f29
--- /dev/null
+++ b/tags/m/menu-icon-not-in-xpm-format.tag
@@ -0,0 +1,14 @@
+Tag: menu-icon-not-in-xpm-format
+Severity: error
+Check: menu-format
+Explanation: The named icon is not in XPM format.
+ .
+ Icons in the Debian menu system should be in XPM format.
+ .
+ While other image types such as PNG seem to work as well, window managers
+ are not required to support them.
+ .
+ Using such non-XPM icons could break interoperability.
+See-Also:
+ menu-manual 3.7,
+ Bug#591812
diff --git a/tags/m/menu-icon-too-big.tag b/tags/m/menu-icon-too-big.tag
new file mode 100644
index 0000000..a2ad1de
--- /dev/null
+++ b/tags/m/menu-icon-too-big.tag
@@ -0,0 +1,10 @@
+Tag: menu-icon-too-big
+Severity: error
+Check: menu-format
+Explanation: Icons in the Debian <code>menu</code> system should be at most 32x32
+ pixels in size.
+ .
+ Sometimes the size is even reflected in the icon name. For example,
+ <code>icon16x16</code> should be no larger than 16x16 pixels.
+See-Also:
+ menu-manual 3.7
diff --git a/tags/m/menu-icon-uses-relative-path.tag b/tags/m/menu-icon-uses-relative-path.tag
new file mode 100644
index 0000000..9869150
--- /dev/null
+++ b/tags/m/menu-icon-uses-relative-path.tag
@@ -0,0 +1,10 @@
+Tag: menu-icon-uses-relative-path
+Severity: warning
+Check: menu-format
+Explanation: This package contains a <code>menu</code> file that refers to an icon
+ via a relative path.
+ .
+ Icons should be referenced by their absolute paths.
+See-Also:
+ menu-manual 3.2,
+ Bug#693477
diff --git a/tags/m/menu-item-contains-unknown-tag.tag b/tags/m/menu-item-contains-unknown-tag.tag
new file mode 100644
index 0000000..cec2470
--- /dev/null
+++ b/tags/m/menu-item-contains-unknown-tag.tag
@@ -0,0 +1,10 @@
+Tag: menu-item-contains-unknown-tag
+Severity: warning
+Check: menu-format
+Explanation: The <code>menu</code> item has a line with a tag that is not
+ a standard tags, such as <code>needs=</code>, <code>section=</code>,
+ <code>title=</code>, <code>longtitle=</code>, or <code>command=</code>
+ etc.
+ .
+ While other tags can be used, it is rare. More commonly, the tag name was
+ misspelled.
diff --git a/tags/m/menu-item-creates-new-root-section.tag b/tags/m/menu-item-creates-new-root-section.tag
new file mode 100644
index 0000000..3500c37
--- /dev/null
+++ b/tags/m/menu-item-creates-new-root-section.tag
@@ -0,0 +1,8 @@
+Tag: menu-item-creates-new-root-section
+Severity: error
+Check: menu-format
+Explanation: The <code>menu</code> item has a line that specifies a new menu section
+ in the root menu.
+ .
+ The addition of new sections at the root level should be cleared with the author
+ of <code>menu</code>.
diff --git a/tags/m/menu-item-creates-new-section.tag b/tags/m/menu-item-creates-new-section.tag
new file mode 100644
index 0000000..c34f6a7
--- /dev/null
+++ b/tags/m/menu-item-creates-new-section.tag
@@ -0,0 +1,11 @@
+Tag: menu-item-creates-new-section
+Severity: warning
+Check: menu-format
+Explanation: The <code>menu</code> item has a line specifying an unknown
+ section, or it uses a section intended only as a menu root item that
+ applications should not use directly.
+ .
+ The section could be misspelled. Otherwise, please check the section
+ against the list of valid names in the menu policy.
+See-Also:
+ menu-policy 2.1
diff --git a/tags/m/menu-item-missing-required-tag.tag b/tags/m/menu-item-missing-required-tag.tag
new file mode 100644
index 0000000..1c6b9fe
--- /dev/null
+++ b/tags/m/menu-item-missing-required-tag.tag
@@ -0,0 +1,9 @@
+Tag: menu-item-missing-required-tag
+Severity: error
+Check: menu-format
+Explanation: A line in the given <code>menu</code> item is missing a
+ required tag.
+ .
+ Without the tag, the line probably has no effect whatsoever, except
+ <code>install-menu</code> may report an error during package
+ installation.
diff --git a/tags/m/menu-item-needs-dwww.tag b/tags/m/menu-item-needs-dwww.tag
new file mode 100644
index 0000000..09500be
--- /dev/null
+++ b/tags/m/menu-item-needs-dwww.tag
@@ -0,0 +1,7 @@
+Tag: menu-item-needs-dwww
+Severity: warning
+Check: menu-format
+Explanation: The menu item has <code>needs=dwww</code>, but that is deprecated. Please
+ register your documentation with <code>doc-base</code>.
+ .
+ The <code>dwww</code> entries will be generated automatically.
diff --git a/tags/m/menu-item-needs-tag-has-unknown-value.tag b/tags/m/menu-item-needs-tag-has-unknown-value.tag
new file mode 100644
index 0000000..95e9a0d
--- /dev/null
+++ b/tags/m/menu-item-needs-tag-has-unknown-value.tag
@@ -0,0 +1,8 @@
+Tag: menu-item-needs-tag-has-unknown-value
+Severity: warning
+Check: menu-format
+Explanation: The <code>menu</code> item has a strange value in a <code>needs=</code>
+ field.
+ .
+ It is possible the value is intentional. More than likely, however, there was
+ a typo that will cause <code>menu</code> to ignore the line.
diff --git a/tags/m/menu-item-uses-apps-games-section.tag b/tags/m/menu-item-uses-apps-games-section.tag
new file mode 100644
index 0000000..546331c
--- /dev/null
+++ b/tags/m/menu-item-uses-apps-games-section.tag
@@ -0,0 +1,8 @@
+Tag: menu-item-uses-apps-games-section
+Severity: warning
+Check: menu-format
+Explanation: The <code>menu</code> item has a line specifying a section under
+ <code>Apps/Games</code>. That section was renamed. It is now just called
+ <code>Games</code>.
+See-Also:
+ menu-policy 2.1
diff --git a/tags/m/menu-item-uses-apps-section.tag b/tags/m/menu-item-uses-apps-section.tag
new file mode 100644
index 0000000..309bc0e
--- /dev/null
+++ b/tags/m/menu-item-uses-apps-section.tag
@@ -0,0 +1,8 @@
+Tag: menu-item-uses-apps-section
+Severity: warning
+Check: menu-format
+Explanation: The <code>menu</code> item has a line specifying a section under
+ <code>Apps</code>. That section was renamed. It is now called
+ <code>Applications</code>.
+See-Also:
+ menu-policy 2.1
diff --git a/tags/m/menu-item-uses-icon-none.tag b/tags/m/menu-item-uses-icon-none.tag
new file mode 100644
index 0000000..387a8ef
--- /dev/null
+++ b/tags/m/menu-item-uses-icon-none.tag
@@ -0,0 +1,6 @@
+Tag: menu-item-uses-icon-none
+Severity: warning
+Check: menu-format
+Explanation: The <code>menu</code> item has a line that uses <code>icon=none</code>.
+ It is redundant and deprecated. If there is no icon, just leave off the
+ <code>icon</code> tag.
diff --git a/tags/m/menu-item-uses-windowmanagers-section.tag b/tags/m/menu-item-uses-windowmanagers-section.tag
new file mode 100644
index 0000000..7b48b7f
--- /dev/null
+++ b/tags/m/menu-item-uses-windowmanagers-section.tag
@@ -0,0 +1,8 @@
+Tag: menu-item-uses-windowmanagers-section
+Severity: warning
+Check: menu-format
+Explanation: The <code>menu</code> item has a line specifying a section under
+ <code>WindowManagers</code>. That section was renamed. It is now called
+ <code>Window Managers</code>.
+See-Also:
+ menu-policy 2.1
diff --git a/tags/m/menu-method-lacks-include.tag b/tags/m/menu-method-lacks-include.tag
new file mode 100644
index 0000000..7d94744
--- /dev/null
+++ b/tags/m/menu-method-lacks-include.tag
@@ -0,0 +1,12 @@
+Tag: menu-method-lacks-include
+Severity: error
+Check: menus
+Renamed-From:
+ menu-method-should-include-menu-h
+Explanation: A <code>menu-method</code> file must include the <code>menu.h</code>
+ configuration file, like so:
+ .
+ (using "!include menu.h").
+See-Also:
+ menu-manual 5,
+ http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/menus.html
diff --git a/tags/m/mismatch-translated-choices.tag b/tags/m/mismatch-translated-choices.tag
new file mode 100644
index 0000000..f249587
--- /dev/null
+++ b/tags/m/mismatch-translated-choices.tag
@@ -0,0 +1,12 @@
+Tag: mismatch-translated-choices
+Severity: error
+Check: debian/debconf
+Explanation: A "Choices:" field is a comma separated list, and translated
+ "Choices:" fields must have the exact same number of elements. One
+ of the translations does not follow this rule, you should contact the
+ translator and request for a new translation where elements of "Choices:"
+ fields have no embedded commas.
+ .
+ Cdebconf understands escaped commas in such fields, but packages
+ outside the scope of debian-installer must not have them until they are
+ also supported by debconf.
diff --git a/tags/m/mismatched-override.tag b/tags/m/mismatched-override.tag
new file mode 100644
index 0000000..9adb9b1
--- /dev/null
+++ b/tags/m/mismatched-override.tag
@@ -0,0 +1,15 @@
+Tag: mismatched-override
+Severity: warning
+Show-Always: yes
+Check: lintian
+Explanation: The named tag would have been silenced except the context
+ specified with the override did not match.
+ .
+ Lintian may now provide a different context for the tag, or something
+ could have changed in a new version of your package. Either way,
+ overrides work best when you require as little context as needed.
+ .
+ You can use wildcards, such as &ast; or &quest; in the context to
+ make a match more likely.
+ .
+ Please remove or adjust the override.
diff --git a/tags/m/mismatched-python-substvar.tag b/tags/m/mismatched-python-substvar.tag
new file mode 100644
index 0000000..98cd69f
--- /dev/null
+++ b/tags/m/mismatched-python-substvar.tag
@@ -0,0 +1,8 @@
+Tag: mismatched-python-substvar
+Severity: warning
+Check: languages/python
+Explanation: The specified package declares a dependency on <code>${python:Depends}</code>
+ whilst appearing to be a Python 3.x package or a dependency on
+ <code>${python3:Depends}</code> when it appears to be a package for Python 2.x.
+ .
+ Please adjust the substvar to match the intended Python version.
diff --git a/tags/m/misnamed-po-file.tag b/tags/m/misnamed-po-file.tag
new file mode 100644
index 0000000..45333f7
--- /dev/null
+++ b/tags/m/misnamed-po-file.tag
@@ -0,0 +1,13 @@
+Tag: misnamed-po-file
+Severity: warning
+Check: debian/po-debconf
+Explanation: The name of this PO file doesn't appear to be a valid language
+ code. Any files in <code>debian/po</code> ending in <code>.po</code> will be
+ processed as translations by po2debconf for the language code equal to
+ the file name without the trailing <code>.po</code>. If the file name does
+ not correctly reflect the language of the translation, the translation
+ will not be accessible to users of that language.
+ .
+ If this file isn't actually a PO file, rename it to something that
+ doesn't end in <code>.po</code> or move it to another directory so that
+ translation merging programs will not be confused.
diff --git a/tags/m/misplaced-extra-member-in-deb.tag b/tags/m/misplaced-extra-member-in-deb.tag
new file mode 100644
index 0000000..94edf61
--- /dev/null
+++ b/tags/m/misplaced-extra-member-in-deb.tag
@@ -0,0 +1,6 @@
+Tag: misplaced-extra-member-in-deb
+Severity: error
+Check: deb-format
+Explanation: The binary package contains an extra member that Lintian did not
+ expect or expected at a different position.
+See-Also: deb(5)
diff --git a/tags/m/misplaced-systemd-tmpfiles.tag b/tags/m/misplaced-systemd-tmpfiles.tag
new file mode 100644
index 0000000..8cd4af4
--- /dev/null
+++ b/tags/m/misplaced-systemd-tmpfiles.tag
@@ -0,0 +1,7 @@
+Tag: misplaced-systemd-tmpfiles
+Severity: error
+Check: systemd/tmpfiles
+Renamed-from:
+ systemd-tmpfiles.d-outside-usr-lib
+Explanation: The package ships a systemd tmpfiles.d(5) conf file outside
+ <code>/usr/lib/tmpfiles.d/</code>
diff --git a/tags/m/missing-build-dependency-for-dh-addon.tag b/tags/m/missing-build-dependency-for-dh-addon.tag
new file mode 100644
index 0000000..ee1b627
--- /dev/null
+++ b/tags/m/missing-build-dependency-for-dh-addon.tag
@@ -0,0 +1,6 @@
+Tag: missing-build-dependency-for-dh-addon
+Severity: error
+Check: debhelper
+Explanation: The source package appears to be using a dh addon but doesn't build
+ depend on the package that actually provides it. If it uses it, it must
+ build depend on it.
diff --git a/tags/m/missing-build-dependency-for-dh_-command.tag b/tags/m/missing-build-dependency-for-dh_-command.tag
new file mode 100644
index 0000000..ae59ea2
--- /dev/null
+++ b/tags/m/missing-build-dependency-for-dh_-command.tag
@@ -0,0 +1,6 @@
+Tag: missing-build-dependency-for-dh_-command
+Severity: error
+Check: debhelper
+Explanation: The source package appears to be using a dh&lowbar; command but doesn't build
+ depend on the package that actually provides it. If it uses it, it must
+ build depend on it.
diff --git a/tags/m/missing-build-depends-for-clean-target-in-debian-rules.tag b/tags/m/missing-build-depends-for-clean-target-in-debian-rules.tag
new file mode 100644
index 0000000..d6668de
--- /dev/null
+++ b/tags/m/missing-build-depends-for-clean-target-in-debian-rules.tag
@@ -0,0 +1,18 @@
+Tag: missing-build-depends-for-clean-target-in-debian-rules
+Severity: error
+Check: debian/rules
+Renamed-From:
+ clean-should-be-satisfied-by-build-depends
+Explanation: The specified condition must be satisfied to run the <code>clean</code>
+ target in <code>debian/rules</code>.
+ .
+ Please add a suitable prerequisite to <code>Build-Depends</code> (and not
+ <code>Build-Depends-Indep</code>) even if no architecture-dependent packages
+ are being built.
+ .
+ The condition you see in the context is not a recommendation on what to add. If
+ you see a list, more than likely only one member is needed to make this tag go
+ away. You probably also do not need the <code>:any</code> multiarch qualifier,
+ if you see one.
+See-Also:
+ debian-policy 7.7
diff --git a/tags/m/missing-built-using-field-for-golang-package.tag b/tags/m/missing-built-using-field-for-golang-package.tag
new file mode 100644
index 0000000..6460424
--- /dev/null
+++ b/tags/m/missing-built-using-field-for-golang-package.tag
@@ -0,0 +1,14 @@
+Tag: missing-built-using-field-for-golang-package
+Severity: info
+Check: languages/golang/built-using
+Explanation: The stanza for a Golang installation package in the
+ <code>debian/control</code> file does not include a
+ <code>Built-Using</code> field that contains the <code>${misc:Built-Using}</code>
+ substitution variable.
+ .
+ The <code>dh-golang(1)</code> build system provides the <code>${misc:Built-Using}</code>
+ variable. It is used when scheduling binNMUs.
+ .
+ Please add the following line to the relevant stanza:
+ .
+ <code>Built-Using: ${misc:Built-Using}</code>
diff --git a/tags/m/missing-call-to-dpkg-maintscript-helper.tag b/tags/m/missing-call-to-dpkg-maintscript-helper.tag
new file mode 100644
index 0000000..10c291b
--- /dev/null
+++ b/tags/m/missing-call-to-dpkg-maintscript-helper.tag
@@ -0,0 +1,8 @@
+Tag: missing-call-to-dpkg-maintscript-helper
+Severity: error
+Check: maintainer-scripts/helper/dpkg
+Explanation: The maintainer script is missing a call to the specified
+ <code>dpkg-maintscript-helper</code> command. The uses are coordinated
+ and need each other.
+See-Also:
+ dpkg-maintscript-helper(1)
diff --git a/tags/m/missing-call-to-update-fonts.tag b/tags/m/missing-call-to-update-fonts.tag
new file mode 100644
index 0000000..757b66b
--- /dev/null
+++ b/tags/m/missing-call-to-update-fonts.tag
@@ -0,0 +1,11 @@
+Tag: missing-call-to-update-fonts
+Severity: warning
+Check: desktop/x11/font/update
+Explanation: The named maintainer script ships the specified X11 font but does
+ not appear to call <code>update-fonts-scale</code> or <code>update-fonts-dir</code>
+ in its <code>postinst</code> script.
+ .
+ If you are using <code>dh&lowbar;installxfonts</code>, add <code>${misc:Depends}</code>
+ as a prerequisite and <code>dh&lowbar;installxfonts</code> will take care of it for you.
+See-Also:
+ https://lists.debian.org/msgid-search/CAJqvfD-A1EPXxF_mS=_BaQ0FtqygVwRUf+23WqSqrkSmYgVAtA@mail.gmail.com
diff --git a/tags/m/missing-conffile.tag b/tags/m/missing-conffile.tag
new file mode 100644
index 0000000..571bd64
--- /dev/null
+++ b/tags/m/missing-conffile.tag
@@ -0,0 +1,12 @@
+Tag: missing-conffile
+Severity: error
+Check: conffiles
+Renamed-From: conffile-is-not-in-package
+Explanation: The conffiles control file lists this path, but the path does
+ not appear to exist in the package. Lintian may also emit this tag
+ when the file exists, but the canonical name is used in the
+ "conffiles" control file (e.g. if a parent segment are symlinks).
+ .
+ Note that dpkg and Lintian strips all whitespace from the right hand
+ side of each line. Thus it is not possible for a file ending with
+ trailing whitespace to be marked as a conffile.
diff --git a/tags/m/missing-debconf-dependency-for-preinst.tag b/tags/m/missing-debconf-dependency-for-preinst.tag
new file mode 100644
index 0000000..998942f
--- /dev/null
+++ b/tags/m/missing-debconf-dependency-for-preinst.tag
@@ -0,0 +1,8 @@
+Tag: missing-debconf-dependency-for-preinst
+Severity: warning
+Check: debian/debconf
+Explanation: Packages using debconf in their preinst scripts must pre-depend
+ on debconf.
+ .
+ Since debconf is usually installed already, that is better than
+ depending on it but falling back to a different configuration system.
diff --git a/tags/m/missing-debconf-dependency.tag b/tags/m/missing-debconf-dependency.tag
new file mode 100644
index 0000000..f7be858
--- /dev/null
+++ b/tags/m/missing-debconf-dependency.tag
@@ -0,0 +1,5 @@
+Tag: missing-debconf-dependency
+Severity: warning
+Check: debian/debconf
+Explanation: Packages using debconf should depend on it, since debconf is not an
+ essential package.
diff --git a/tags/m/missing-debian-source-format.tag b/tags/m/missing-debian-source-format.tag
new file mode 100644
index 0000000..1f0739e
--- /dev/null
+++ b/tags/m/missing-debian-source-format.tag
@@ -0,0 +1,19 @@
+Tag: missing-debian-source-format
+Severity: warning
+Check: debian/source-dir
+Explanation: Explicitly selecting a source format by putting the format in
+ <code>debian/source/format</code> is recommended. This allows for
+ future removal of the 1.0 default for the package source format and,
+ depending on the source format, may allow unambiguous declaration of
+ whether this package is native or non-native.
+ .
+ If you don't have a reason to stay with the old format for this package,
+ please consider switching to "3.0 (quilt)" (for packages with a separate
+ upstream tarball) or to "3.0 (native)" (for Debian native packages).
+ .
+ If you wish to keep using the old format, please create that file and put
+ "1.0" in it to be explicit about the source package version. If you have
+ problems with the 3.0 format, the dpkg maintainers are interested in
+ hearing, at debian-dpkg@lists.debian.org, the (technical) reasons why the
+ new formats do not suit you.
+See-Also: dpkg-source(1), https://wiki.debian.org/Projects/DebSrc3.0
diff --git a/tags/m/missing-debian-watch-file-standard.tag b/tags/m/missing-debian-watch-file-standard.tag
new file mode 100644
index 0000000..1cca43f
--- /dev/null
+++ b/tags/m/missing-debian-watch-file-standard.tag
@@ -0,0 +1,11 @@
+Tag: missing-debian-watch-file-standard
+Severity: warning
+Check: debian/watch/standard
+Renamed-From:
+ debian-watch-file-missing-version
+Explanation: The <code>debian/watch</code> file in this package doesn't start a
+ <code>version=</code> line. The first non-comment line of
+ <code>debian/watch</code> should be a <code>version=</code> declaration. This
+ may mean that this is an old version one watch file that should be
+ updated to the current version.
+See-Also: uscan(1)
diff --git a/tags/m/missing-dep-for-interpreter.tag b/tags/m/missing-dep-for-interpreter.tag
new file mode 100644
index 0000000..d948e24
--- /dev/null
+++ b/tags/m/missing-dep-for-interpreter.tag
@@ -0,0 +1,9 @@
+Tag: missing-dep-for-interpreter
+Severity: error
+Check: scripts
+Explanation: You used an interpreter for a script that is not in an essential
+ package. In most cases, you will need to add a Dependency on the
+ package that contains the interpreter.
+ .
+ In some cases a weaker relationship, such as Suggests or Recommends, will
+ be more appropriate.
diff --git a/tags/m/missing-dep-on-jarwrapper.tag b/tags/m/missing-dep-on-jarwrapper.tag
new file mode 100644
index 0000000..98914f7
--- /dev/null
+++ b/tags/m/missing-dep-on-jarwrapper.tag
@@ -0,0 +1,6 @@
+Tag: missing-dep-on-jarwrapper
+Severity: error
+Check: languages/java
+See-Also: java-policy 2.2
+Explanation: Packages containing an executable JAR must depend on jarwrapper or
+ other packages providing similar functionalities.
diff --git a/tags/m/missing-dependency-on-libc.tag b/tags/m/missing-dependency-on-libc.tag
new file mode 100644
index 0000000..f1eb346
--- /dev/null
+++ b/tags/m/missing-dependency-on-libc.tag
@@ -0,0 +1,15 @@
+Tag: missing-dependency-on-libc
+Severity: error
+Check: binaries/prerequisites
+Explanation: The listed file appears to be linked against the C library, but the
+ package doesn't depend on the C library package. Normally this indicates
+ that ${shlibs:Depends} was omitted from the Depends line for this package
+ in <code>debian/control</code>.
+ .
+ All shared libraries and compiled binaries must be run through
+ dpkg-shlibdeps to find out any libraries they are linked against (often
+ via the dh&lowbar;shlibdeps debhelper command). The package containing these
+ files must then depend on ${shlibs:Depends} in <code>debian/control</code> to
+ get the proper package dependencies for those libraries.
+See-Also:
+ debian-policy 8.6.1
diff --git a/tags/m/missing-dependency-on-libstdc++.tag b/tags/m/missing-dependency-on-libstdc++.tag
new file mode 100644
index 0000000..1d4bc01
--- /dev/null
+++ b/tags/m/missing-dependency-on-libstdc++.tag
@@ -0,0 +1,16 @@
+Tag: missing-dependency-on-libstdc++
+Severity: error
+Check: binaries/prerequisites
+Experimental: yes
+Explanation: The listed file appears to be linked against the C++ library, but the
+ package doesn't depend on the C++ library package. Normally this indicates
+ that ${shlibs:Depends} was omitted from the Depends line for this package
+ in <code>debian/control</code>.
+ .
+ All shared libraries and compiled binaries must be run through
+ dpkg-shlibdeps to find out any libraries they are linked against (often
+ via the dh&lowbar;shlibdeps debhelper command). The package containing these
+ files must then depend on ${shlibs:Depends} in <code>debian/control</code> to
+ get the proper package dependencies for those libraries.
+See-Also:
+ debian-policy 8.6.1
diff --git a/tags/m/missing-dependency-on-numpy-abi.tag b/tags/m/missing-dependency-on-numpy-abi.tag
new file mode 100644
index 0000000..5eb1424
--- /dev/null
+++ b/tags/m/missing-dependency-on-numpy-abi.tag
@@ -0,0 +1,9 @@
+Tag: missing-dependency-on-numpy-abi
+Severity: error
+Check: binaries/prerequisites/numpy
+Explanation: This package includes a Python extension module, which uses Numpy via its
+ binary interface. Such packages must depend on python3-numpy-abi*N*.
+ .
+ If the package is using debhelper, this problem is usually due to a
+ missing dh&lowbar;numpy3 call in <code>debian/rules</code>.
+See-Also: /usr/share/doc/python3-numpy/README.DebianMaints
diff --git a/tags/m/missing-dependency-on-perlapi.tag b/tags/m/missing-dependency-on-perlapi.tag
new file mode 100644
index 0000000..354f29c
--- /dev/null
+++ b/tags/m/missing-dependency-on-perlapi.tag
@@ -0,0 +1,11 @@
+Tag: missing-dependency-on-perlapi
+Severity: error
+Check: binaries/prerequisites/perl
+Explanation: This package includes a &ast;.so file in <code>/usr/lib/.../perl5</code>,
+ normally indicating that it includes a binary Perl module. Binary Perl
+ modules must depend on perlapi-$Config{version} (from the Config module).
+ If the package is using debhelper, this problem is usually due to a
+ missing dh&lowbar;perl call in <code>debian/rules</code> or a missing
+ ${perl:Depends} substitution variable in the Depends line in
+ <code>debian/control</code>.
+See-Also: perl-policy 4.4.2
diff --git a/tags/m/missing-dependency-on-phpapi.tag b/tags/m/missing-dependency-on-phpapi.tag
new file mode 100644
index 0000000..de6b8ab
--- /dev/null
+++ b/tags/m/missing-dependency-on-phpapi.tag
@@ -0,0 +1,15 @@
+Tag: missing-dependency-on-phpapi
+Severity: error
+Check: binaries/prerequisites/php
+Explanation: This package includes a &ast;.so file in <code>/usr/lib/phpN</code>
+ (where N is a number representing the major PHP version), normally
+ indicating that it includes a PHP extension. PHP extensions must
+ depend on phpapi-$(php-configN --phpapi), without adding an
+ alternative package with the OR operator.
+ .
+ This can usually be achieved by, for example, adding the following
+ code to the binary-arch target of the rules file and adding
+ <code>${php:Depends}</code> to the <code>Depends</code> field of the binary
+ package shipping the extension:
+ .
+ echo "php:Depends=phpapi-$(php-config5 --phpapi)" &gt; debian/substvars
diff --git a/tags/m/missing-depends-on-sensible-utils.tag b/tags/m/missing-depends-on-sensible-utils.tag
new file mode 100644
index 0000000..73ae3d2
--- /dev/null
+++ b/tags/m/missing-depends-on-sensible-utils.tag
@@ -0,0 +1,14 @@
+Tag: missing-depends-on-sensible-utils
+Severity: error
+Check: files/contents
+Explanation: The listed file appears to use one or more of the binaries
+ in <code>sensible-utils</code> but no binary declares a dependency for
+ this package.
+ .
+ As part of the transition to split <code>sensible-utils</code> and
+ <code>debianutils</code>, the remaining <code>Depends</code> from
+ <code>debianutils</code> was removed in version 4.8.2.
+ .
+ In most cases you will need to add a <code>Depends</code>,
+ <code>Recommends</code>, <code>Pre-Depends</code> or <code>Suggests</code>
+ on <code>sensible-utils</code>.
diff --git a/tags/m/missing-explanation-for-contrib-or-non-free-package.tag b/tags/m/missing-explanation-for-contrib-or-non-free-package.tag
new file mode 100644
index 0000000..30ef5a3
--- /dev/null
+++ b/tags/m/missing-explanation-for-contrib-or-non-free-package.tag
@@ -0,0 +1,10 @@
+Tag: missing-explanation-for-contrib-or-non-free-package
+Severity: info
+Check: debian/copyright/dep5
+Explanation: The specified package is in the contrib or non-free archive
+ area but does not include a "Comment" (or "Disclaimer") field in
+ its copyright file.
+ .
+ Please add a brief comment why this package cannot be part of the
+ main Debian distribution.
+See-Also: debian-policy 12.5
diff --git a/tags/m/missing-explanation-for-repacked-upstream-tarball.tag b/tags/m/missing-explanation-for-repacked-upstream-tarball.tag
new file mode 100644
index 0000000..edb4a30
--- /dev/null
+++ b/tags/m/missing-explanation-for-repacked-upstream-tarball.tag
@@ -0,0 +1,10 @@
+Tag: missing-explanation-for-repacked-upstream-tarball
+Severity: info
+Check: debian/copyright/dep5
+Explanation: The version of this package contains <code>dfsg</code>, <code>ds</code>,
+ or <code>debian</code> which normally indicates that the upstream source
+ has been repackaged, but there is no "Comment" or "Files-Excluded"
+ field in its copyright file which explains the reason why.
+ .
+ Please add a comment why this tarball was repacked or add a suitable
+ "Files-Excluded" field.
diff --git a/tags/m/missing-field-in-dep5-copyright.tag b/tags/m/missing-field-in-dep5-copyright.tag
new file mode 100644
index 0000000..80a3520
--- /dev/null
+++ b/tags/m/missing-field-in-dep5-copyright.tag
@@ -0,0 +1,6 @@
+Tag: missing-field-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The paragraph in the machine readable copyright file is missing a field
+ that is required by the specification.
diff --git a/tags/m/missing-file-from-potfiles-in.tag b/tags/m/missing-file-from-potfiles-in.tag
new file mode 100644
index 0000000..e10b4d1
--- /dev/null
+++ b/tags/m/missing-file-from-potfiles-in.tag
@@ -0,0 +1,6 @@
+Tag: missing-file-from-potfiles-in
+Severity: warning
+Check: debian/po-debconf
+Explanation: A file listed in <code>debian/po/POTFILES.in</code> could not be found
+ in the source package.
+See-Also: po-debconf(7)
diff --git a/tags/m/missing-intermediate-directory.tag b/tags/m/missing-intermediate-directory.tag
new file mode 100644
index 0000000..dc40dbd
--- /dev/null
+++ b/tags/m/missing-intermediate-directory.tag
@@ -0,0 +1,7 @@
+Tag: missing-intermediate-directory
+Severity: warning
+Check: files/missing
+Explanation: The package contains files in the listed directory, but does
+ not contain the actual directory itself. Some tools do not cope
+ very well with this case. Notably Lintian prior to 2.5.32 would
+ crash on such packages.
diff --git a/tags/m/missing-license-paragraph-in-dep5-copyright.tag b/tags/m/missing-license-paragraph-in-dep5-copyright.tag
new file mode 100644
index 0000000..451e174
--- /dev/null
+++ b/tags/m/missing-license-paragraph-in-dep5-copyright.tag
@@ -0,0 +1,12 @@
+Tag: missing-license-paragraph-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+Explanation: The <code>Files</code> paragraph in the machine readable copyright file
+ references a license for which no stand-alone <code>License</code> paragraph
+ exists.
+ .
+ Sometimes this tag appears because of incorrect ordering. Stand-alone
+ <code>License</code> paragraphs must appear *after* all <code>Files</code>
+ paragraphs.
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/,
+ Bug#959067
diff --git a/tags/m/missing-license-text-in-dep5-copyright.tag b/tags/m/missing-license-text-in-dep5-copyright.tag
new file mode 100644
index 0000000..20e85b9
--- /dev/null
+++ b/tags/m/missing-license-text-in-dep5-copyright.tag
@@ -0,0 +1,6 @@
+Tag: missing-license-text-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The standalone โ€œLicenseโ€ paragraph contains only short license
+ name, but not the license text.
diff --git a/tags/m/missing-manifest.tag b/tags/m/missing-manifest.tag
new file mode 100644
index 0000000..2785bbb
--- /dev/null
+++ b/tags/m/missing-manifest.tag
@@ -0,0 +1,5 @@
+Tag: missing-manifest
+Severity: info
+Check: languages/java
+Explanation: The jar file contains .class files but no manifest. This may
+ indicate a build misconfiguration.
diff --git a/tags/m/missing-notice-file-for-apache-license.tag b/tags/m/missing-notice-file-for-apache-license.tag
new file mode 100644
index 0000000..56864fc
--- /dev/null
+++ b/tags/m/missing-notice-file-for-apache-license.tag
@@ -0,0 +1,18 @@
+Tag: missing-notice-file-for-apache-license
+Severity: error
+Check: debian/copyright/apache-notice
+Explanation: The package appears to be licensed under the Apache 2.0 license and
+ a <code>NOTICE</code> file (or similar) exists in the source tree. However, no
+ files called <code>NOTICE</code> or <code>NOTICE.txt</code> are installed in any
+ of the binary packages.
+ .
+ The Apache 2.0 license requires distributing of such files:
+ .
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file [..]
+ .
+ Please include the file in your package, for example by adding
+ <code>path/to/NOTICE</code> to a <code>debian/package.docs</code> file.
+See-Also: /usr/share/common-licenses/Apache-2.0
diff --git a/tags/m/missing-pkg-php-tools-addon.tag b/tags/m/missing-pkg-php-tools-addon.tag
new file mode 100644
index 0000000..dac8919
--- /dev/null
+++ b/tags/m/missing-pkg-php-tools-addon.tag
@@ -0,0 +1,10 @@
+Tag: missing-pkg-php-tools-addon
+Severity: warning
+Check: languages/php/pear
+Explanation: The package uses pkg-php-tools but dh command is called without
+ --with phppear or --with phpcomposer. A PECL package should also have
+ --with php.
+ .
+ pkg-php-tools db addons are the recommended tool for building PHP PEAR or
+ Composer packages. For more information, install it and read the included
+ README.PEAR or README.Composer.
diff --git a/tags/m/missing-pkg-php-tools-buildsystem.tag b/tags/m/missing-pkg-php-tools-buildsystem.tag
new file mode 100644
index 0000000..5b488f1
--- /dev/null
+++ b/tags/m/missing-pkg-php-tools-buildsystem.tag
@@ -0,0 +1,8 @@
+Tag: missing-pkg-php-tools-buildsystem
+Severity: warning
+Check: languages/php/pear
+Explanation: The package uses pkg-php-tools but dh command is called without
+ --buildsystem=phppear
+ .
+ pkg-php-tools build system is the recommended tool for building PHP PEAR
+ packages. For more information, install it and read the included README.PEAR.
diff --git a/tags/m/missing-potfiles-in.tag b/tags/m/missing-potfiles-in.tag
new file mode 100644
index 0000000..136e0ba
--- /dev/null
+++ b/tags/m/missing-potfiles-in.tag
@@ -0,0 +1,6 @@
+Tag: missing-potfiles-in
+Severity: warning
+Check: debian/po-debconf
+Explanation: The required file <code>POTFILES.in</code> is missing from
+ <code>debian/po</code>.
+See-Also: po-debconf(7)
diff --git a/tags/m/missing-prerequisite-for-gfortran-module.tag b/tags/m/missing-prerequisite-for-gfortran-module.tag
new file mode 100644
index 0000000..22dd98d
--- /dev/null
+++ b/tags/m/missing-prerequisite-for-gfortran-module.tag
@@ -0,0 +1,9 @@
+Tag: missing-prerequisite-for-gfortran-module
+Severity: warning
+Check: languages/fortran/gfortran
+Explanation: The installation package ships a GFORTRAN module but does not depend
+ on gfortran-mod-&lt;n&gt;, where &lt;n&gt; is the module version (e.g. gfortran-mod-14
+ for modules built using GCC 5).
+See-Also: Bug#796352,
+ Bug#714730,
+ https://salsa.debian.org/science-team/dh-fortran-mod/blob/debian/master/dh_fortran_mod.in
diff --git a/tags/m/missing-prerequisite-for-pyproject-backend.tag b/tags/m/missing-prerequisite-for-pyproject-backend.tag
new file mode 100644
index 0000000..fbeb4b8
--- /dev/null
+++ b/tags/m/missing-prerequisite-for-pyproject-backend.tag
@@ -0,0 +1,14 @@
+Tag: missing-prerequisite-for-pyproject-backend
+Severity: info
+Check: languages/python
+Explanation: <code>pybuild</code> now supports building with PEP-517 standard
+ interfaces natively. These sources could be built using <code>pybuild</code>'s
+ generic <code>pyproject</code> plugin and the named build backend.
+ .
+ Please declare both named prerequisites in <code>Build-Depends</code>. You will
+ need both the generic <code>pybuild-plugin-pyproject</code> as well as the
+ specific one to the named backend. It is usually <code>python3-${backend}</code>.
+ .
+ No changes are required if you are using <code>pybuild</code>'s dedicated
+ <code>flit</code> plugin, although that plugin will eventually be deprecated in
+ favor of the generic <code>pyproject</code> plugin mentioned above.
diff --git a/tags/m/missing-runtime-test-file.tag b/tags/m/missing-runtime-test-file.tag
new file mode 100644
index 0000000..14f4e3e
--- /dev/null
+++ b/tags/m/missing-runtime-test-file.tag
@@ -0,0 +1,6 @@
+Tag: missing-runtime-test-file
+Severity: warning
+Check: testsuite
+Explanation: A test file listed in the debian/tests/control file does not
+ exist in the package source.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/m/missing-separator-between-items.tag b/tags/m/missing-separator-between-items.tag
new file mode 100644
index 0000000..a45486a
--- /dev/null
+++ b/tags/m/missing-separator-between-items.tag
@@ -0,0 +1,7 @@
+Tag: missing-separator-between-items
+Severity: error
+Check: debian/control/field/relation
+Explanation: The named field in the <code>debian/control</code> file is supposed to
+ list items that are separated by commas or pipes. A separator seems to be missing.
+ .
+ Needless to say, it can lead to bogus or incomplete package relationships.
diff --git a/tags/m/missing-systemd-service-for-init.d-rcS-script.tag b/tags/m/missing-systemd-service-for-init.d-rcS-script.tag
new file mode 100644
index 0000000..fd8c466
--- /dev/null
+++ b/tags/m/missing-systemd-service-for-init.d-rcS-script.tag
@@ -0,0 +1,15 @@
+Tag: missing-systemd-service-for-init.d-rcS-script
+Severity: error
+Check: systemd
+See-Also: https://wiki.debian.org/Teams/pkg-systemd/rcSMigration
+Explanation: The rcS init.d script has no systemd equivalent.
+ .
+ Systemd has a SysV init.d script compatibility mode. It provides access to
+ each SysV init.d script as long as there is no native service file with the
+ same name (e.g. <code>/lib/systemd/system/rsyslog.service</code> corresponds to
+ <code>/etc/init.d/rsyslog</code>).
+ .
+ Services in rcS.d are particularly problematic, because they often cause
+ dependency loops, as they are ordered very early in the boot sequence.
+Renamed-From:
+ systemd-no-service-for-init-rcS-script
diff --git a/tags/m/missing-systemd-service-for-init.d-script.tag b/tags/m/missing-systemd-service-for-init.d-script.tag
new file mode 100644
index 0000000..30a8d8f
--- /dev/null
+++ b/tags/m/missing-systemd-service-for-init.d-script.tag
@@ -0,0 +1,11 @@
+Tag: missing-systemd-service-for-init.d-script
+Severity: warning
+Check: systemd
+Explanation: The specified init.d script has no equivalent systemd service.
+ .
+ Whilst systemd has a SysV init.d script compatibility mode, providing
+ native systemd support has many advantages such as being able to specify
+ security hardening features. Moreover, the systemd SysV generator will be
+ deprecated in the future.
+ .
+ Please provide a suitable .service file for this script.
diff --git a/tags/m/missing-systemd-timer-for-cron-script.tag b/tags/m/missing-systemd-timer-for-cron-script.tag
new file mode 100644
index 0000000..5da8fdc
--- /dev/null
+++ b/tags/m/missing-systemd-timer-for-cron-script.tag
@@ -0,0 +1,16 @@
+Tag: missing-systemd-timer-for-cron-script
+Severity: warning
+Check: systemd
+Explanation: This package ships the specified cron script but does not ship a
+ equivalent systemd <code>.timer</code> unit.
+ .
+ The "desktop" and "laptop" tasks no longer pull in anacron(8), the
+ usual solution for desktop installations that are not running all the
+ time.
+ .
+ Please consider shipping an equivalent <code>.timer</code> file for this
+ script.
+See-Also:
+ systemd.timer(5),
+ anacron(8),
+ Bug#1007257
diff --git a/tags/m/missing-templates-pot.tag b/tags/m/missing-templates-pot.tag
new file mode 100644
index 0000000..98cb0f4
--- /dev/null
+++ b/tags/m/missing-templates-pot.tag
@@ -0,0 +1,6 @@
+Tag: missing-templates-pot
+Severity: warning
+Check: debian/po-debconf
+Explanation: The required file <code>templates.pot</code> is missing from
+ <code>debian/po</code>.
+See-Also: po-debconf(7)
diff --git a/tags/m/missing-tests-control.tag b/tags/m/missing-tests-control.tag
new file mode 100644
index 0000000..cc7ee84
--- /dev/null
+++ b/tags/m/missing-tests-control.tag
@@ -0,0 +1,11 @@
+Tag: missing-tests-control
+Severity: error
+Check: testsuite
+Renamed-From:
+ testsuite-autopkgtest-missing
+Explanation: The source package declares the generic <code>Testsuite: autopkgtest</code>
+ field but provides no <code>debian/tests/control</code> file.
+ .
+ The control file is not needed when a specialized test suite such as
+ <code>autopkgtest-pkg-perl</code> is being used.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/m/missing-vcs-browser-field.tag b/tags/m/missing-vcs-browser-field.tag
new file mode 100644
index 0000000..8cd50b1
--- /dev/null
+++ b/tags/m/missing-vcs-browser-field.tag
@@ -0,0 +1,10 @@
+Tag: missing-vcs-browser-field
+Severity: info
+Check: fields/vcs
+Explanation: A Vcs-&ast; field in this package is pointing to a repository that
+ supports browsing of the repository via a web browser.
+ .
+ This is typically a nicer user-experience for developers and avoids
+ unnecessary and time-consuming clones of the repository.
+ .
+ Please add a suitable Vcs-Browser field to the package.
diff --git a/tags/m/missing-xs-go-import-path-for-golang-package.tag b/tags/m/missing-xs-go-import-path-for-golang-package.tag
new file mode 100644
index 0000000..1a0f3cb
--- /dev/null
+++ b/tags/m/missing-xs-go-import-path-for-golang-package.tag
@@ -0,0 +1,21 @@
+Tag: missing-xs-go-import-path-for-golang-package
+Severity: info
+Check: languages/golang/import-path
+Explanation: This Golang source does not declare a <code>XS-Go-Import-Path</code>
+ field in the <code>debian/control</code> file..
+ .
+ Many tools like <code>dh-make-golang(1)</code> use the field to resolve
+ prerequisites correctly. It is also used in the Golang team's CI.
+ .
+ When using <code>dh-golang</code>, the field's value should be the same as
+ <code>DH&lowbar;GOPKG</code> in <code>debian/rules</code>. The
+ <code>dh-golang</code> build system then automatically sets <code>DH&lowbar;GOPKG</code>
+ to the value from <code>XS-Go-Import-Path</code>.
+ .
+ For packages that do not use <code>dh-golang</code>, or for packages whose upstream
+ does not publish the sources in a way compatible with <code>go get</code> (and hence
+ does not have a canonical import path) you should use a fake import path. Please
+ contact the Golang team at for more advice.
+See-Also:
+ https://go-team.pages.debian.net,
+ https://go-team.pages.debian.net/ci.html.
diff --git a/tags/m/misspelled-closes-bug.tag b/tags/m/misspelled-closes-bug.tag
new file mode 100644
index 0000000..6e943f7
--- /dev/null
+++ b/tags/m/misspelled-closes-bug.tag
@@ -0,0 +1,6 @@
+Tag: misspelled-closes-bug
+Severity: warning
+Check: debian/changelog
+See-Also: debian-policy 5.6.22
+Explanation: The last changelog entry uses Close: #123456 instead of correct
+ Closes: #123456
diff --git a/tags/m/mknod-in-maintainer-script.tag b/tags/m/mknod-in-maintainer-script.tag
new file mode 100644
index 0000000..1290c72
--- /dev/null
+++ b/tags/m/mknod-in-maintainer-script.tag
@@ -0,0 +1,10 @@
+Tag: mknod-in-maintainer-script
+Severity: error
+Check: maintainer-scripts/mknod
+Explanation: Maintainer scripts must not create device files directly. They
+ should call <code>MAKEDEV</code> instead.
+ .
+ If <code>mknod</code> is being used to create a FIFO (named pipe), use
+ <code>mkfifo</code> instead to avoid triggering this tag.
+See-Also:
+ debian-policy 10.6
diff --git a/tags/m/more-than-one-patch-system.tag b/tags/m/more-than-one-patch-system.tag
new file mode 100644
index 0000000..77bf019
--- /dev/null
+++ b/tags/m/more-than-one-patch-system.tag
@@ -0,0 +1,9 @@
+Tag: more-than-one-patch-system
+Severity: warning
+Check: debian/patches
+Explanation: Either the build-dependencies list more than one patch system or the
+ package uses the <code>3.0 (quilt)</code> source format but also has a
+ dependency on <code>dpatch</code>. It's unlikely that you need both patch
+ systems at the same time, and having multiple patch systems in play
+ simultaneously can make understanding and modifying the source package
+ unnecessarily complex.
diff --git a/tags/m/multi-arch-same-package-calls-pycompile.tag b/tags/m/multi-arch-same-package-calls-pycompile.tag
new file mode 100644
index 0000000..7c85f81
--- /dev/null
+++ b/tags/m/multi-arch-same-package-calls-pycompile.tag
@@ -0,0 +1,24 @@
+Tag: multi-arch-same-package-calls-pycompile
+Severity: warning
+Check: scripts
+Explanation: This <code>Multi-Arch: same</code> package uses <code>pycompile</code> or
+ <code>py3compile</code> in the specified maintainer script.
+ .
+ <code>py{,3}compile</code> are tools used to byte-compile Python source
+ files. It is typically run on installation of Debian packages that ship
+ Python modules. However, they do not support installing several
+ architectures of the same package and this is not Multi-Arch: safe.
+ .
+ If the contents of the package is not architecture dependent, it should
+ usually be made binary-all.
+ .
+ If the contents of the package is architecture dependent, it should
+ usually get a dependency on the Python interpreter for the same
+ architecture. This is a dependency in the form of <code>python3</code>, not
+ an architecture-qualified dependency such as <code>python3:any</code> (which
+ can be fulfilled by the Python interpreter for any architecture).
+ .
+ If a dependency on the Python interpreter for the same architecture
+ exists (usually generated by <code>dh-python</code>), the
+ <code>Multi-Arch: same</code> has no effect and should be dropped.
+See-Also: pycompile(1), py3compile(1), Bug#812228
diff --git a/tags/m/multi-arch-same-package-has-arch-specific-overrides.tag b/tags/m/multi-arch-same-package-has-arch-specific-overrides.tag
new file mode 100644
index 0000000..2e509c8
--- /dev/null
+++ b/tags/m/multi-arch-same-package-has-arch-specific-overrides.tag
@@ -0,0 +1,8 @@
+Tag: multi-arch-same-package-has-arch-specific-overrides
+Severity: warning
+Check: fields/multi-arch
+Explanation: The specified file contains architecture-specific Lintian overrides
+ but the package is declared as <code>Multi-Arch: same</code>.
+See-Also:
+ lintian-manual 2.4.3,
+ Bug#787406
diff --git a/tags/m/multiarch-foreign-cmake-file.tag b/tags/m/multiarch-foreign-cmake-file.tag
new file mode 100644
index 0000000..3a44f00
--- /dev/null
+++ b/tags/m/multiarch-foreign-cmake-file.tag
@@ -0,0 +1,10 @@
+Tag: multiarch-foreign-cmake-file
+Severity: error
+Check: files/multi-arch
+Explanation: The package is architecture-dependent, ships a cmake file in a public,
+ architecture-dependent cmake search path and is marked <code>Multi-Arch:
+ foreign</code>. CMake will be unable to find this file, unless it is installed
+ for a matching architecture, but the <code>foreign</code> marking says that the
+ architecture should not matter.
+ .
+ Please remove the <code>Multi-Arch: foreign</code> stanza.
diff --git a/tags/m/multiarch-foreign-pkgconfig.tag b/tags/m/multiarch-foreign-pkgconfig.tag
new file mode 100644
index 0000000..ee3edc2
--- /dev/null
+++ b/tags/m/multiarch-foreign-pkgconfig.tag
@@ -0,0 +1,10 @@
+Tag: multiarch-foreign-pkgconfig
+Severity: error
+Check: files/multi-arch
+Explanation: The package is architecture-dependent, ships a pkg-config file in a
+ public, architecture-dependent pkg-config search path and is marked
+ <code>Multi-Arch: foreign</code>. pkg-config will be unable to find this file,
+ unless it is installed for a matching architecture, but the <code>foreign</code>
+ marking says that the architecture should not matter.
+ .
+ Please remove the <code>Multi-Arch: foreign</code> stanza.
diff --git a/tags/m/multiarch-foreign-shared-library.tag b/tags/m/multiarch-foreign-shared-library.tag
new file mode 100644
index 0000000..ffc8e9a
--- /dev/null
+++ b/tags/m/multiarch-foreign-shared-library.tag
@@ -0,0 +1,11 @@
+Tag: multiarch-foreign-shared-library
+Severity: error
+Check: files/multi-arch
+Explanation: The package is architecture-dependent, ships a shared library in
+ a public library search path and is marked <code>Multi-Arch:
+ foreign</code>. Typically, shared libraries are marked <code>Multi-Arch:
+ same</code> when possible. Sometimes, private shared libraries are put
+ into the public library search path to accommodate programs in the
+ same package, but this package does not contain any programs.
+ .
+ Please remove the <code>Multi-Arch: foreign</code> stanza.
diff --git a/tags/m/multiarch-foreign-static-library.tag b/tags/m/multiarch-foreign-static-library.tag
new file mode 100644
index 0000000..d870a86
--- /dev/null
+++ b/tags/m/multiarch-foreign-static-library.tag
@@ -0,0 +1,10 @@
+Tag: multiarch-foreign-static-library
+Severity: error
+Check: files/multi-arch
+Explanation: The package is architecture-dependent, ships a static library in a
+ public, architecture-dependent library search path and is marked
+ <code>Multi-Arch: foreign</code>. A compiler will be unable to find this file,
+ unless it is installed for a matching architecture, but the <code>foreign</code>
+ marking says that the architecture should not matter.
+ .
+ Please remove the <code>Multi-Arch: foreign</code> stanza.
diff --git a/tags/m/multiline-architecture-field.tag b/tags/m/multiline-architecture-field.tag
new file mode 100644
index 0000000..6307f0e
--- /dev/null
+++ b/tags/m/multiline-architecture-field.tag
@@ -0,0 +1,8 @@
+Tag: multiline-architecture-field
+Severity: error
+Check: debian/control/field/architecture/multiline
+Explanation: The values in the <code>Architecture</code> field of the
+ <code>debian/control</code> file may not be separated by anything other
+ than spaces. The values must be in a single line of text.
+See-Also:
+ debian-policy 5.6.8
diff --git a/tags/m/multiline-field.tag b/tags/m/multiline-field.tag
new file mode 100644
index 0000000..66c2ad1
--- /dev/null
+++ b/tags/m/multiline-field.tag
@@ -0,0 +1,5 @@
+Tag: multiline-field
+Severity: error
+Check: fields/multi-line
+Explanation: Most control fields must have only a single line of data.
+See-Also: debian-policy 5.1
diff --git a/tags/m/multiple-debian-watch-file-standards.tag b/tags/m/multiple-debian-watch-file-standards.tag
new file mode 100644
index 0000000..5048bc4
--- /dev/null
+++ b/tags/m/multiple-debian-watch-file-standards.tag
@@ -0,0 +1,9 @@
+Tag: multiple-debian-watch-file-standards
+Severity: warning
+Check: debian/watch/standard
+Renamed-From:
+ debian-watch-file-declares-multiple-versions
+Explanation: The <code>debian/watch</code> file in this package contains multiple
+ lines starting with <code>version=</code>. There should be only one version
+ declaration in a watch file, on the first non-comment line of the file.
+See-Also: uscan(1)
diff --git a/tags/m/multiple-distributions-in-changes-file.tag b/tags/m/multiple-distributions-in-changes-file.tag
new file mode 100644
index 0000000..0d42fa9
--- /dev/null
+++ b/tags/m/multiple-distributions-in-changes-file.tag
@@ -0,0 +1,11 @@
+Tag: multiple-distributions-in-changes-file
+Severity: error
+Check: fields/distribution
+Explanation: You've specified more than one target distribution for your upload
+ in the <code>&ast;.changes</code> file, probably via the most recent entry in the
+ <code>debian/changelog</code> file.
+ .
+ Although this syntax is valid, it is not accepted by the Debian archive
+ management software. This may not be a problem if this upload is
+ targeted at an archive other than Debian's.
+See-Also: debian-policy 5.6.14
diff --git a/tags/n/named-copyright-for-single-installable.tag b/tags/n/named-copyright-for-single-installable.tag
new file mode 100644
index 0000000..1b939ff
--- /dev/null
+++ b/tags/n/named-copyright-for-single-installable.tag
@@ -0,0 +1,10 @@
+Tag: named-copyright-for-single-installable
+Severity: warning
+Check: debian/copyright
+See-Also: debian-policy 12.5
+Explanation: Every package must include the file <code>/usr/share/doc/*pkg*/copyright</code>.
+ A copy of this file should be in <code>debian/copyright</code> in the source package.
+ .
+ These sources ship a copyright file named according to debhelper convention
+ <code>debian/$package.copyright</code> but build only one installable. Please move
+ the copyright file to <code>debian/copyright</code>.
diff --git a/tags/n/national-encoding.tag b/tags/n/national-encoding.tag
new file mode 100644
index 0000000..40c5eb5
--- /dev/null
+++ b/tags/n/national-encoding.tag
@@ -0,0 +1,23 @@
+Tag: national-encoding
+Severity: warning
+Check: files/encoding
+Renamed-From:
+ national-encoding-in-text-file
+ debian-changelog-file-uses-obsolete-national-encoding
+ debian-control-file-uses-obsolete-national-encoding
+ debian-copyright-file-uses-obsolete-national-encoding
+ debian-news-file-uses-obsolete-national-encoding
+ debian-tests-control-uses-national-encoding
+ doc-base-file-uses-obsolete-national-encoding
+ national-encoding-in-debconf-template
+ national-encoding-in-manpage
+Explanation: A file is not valid UTF-8.
+ .
+ Debian has used UTF-8 for many years. Support for national encodings
+ is being phased out. This file probably appears to users in mangled
+ characters (also called mojibake).
+ .
+ Packaging control files must be encoded in valid UTF-8.
+ .
+ Please convert the file to UTF-8 using <code>iconv</code> or a similar
+ tool.
diff --git a/tags/n/native-source-file-without-utf8-name.tag b/tags/n/native-source-file-without-utf8-name.tag
new file mode 100644
index 0000000..f40fc4f
--- /dev/null
+++ b/tags/n/native-source-file-without-utf8-name.tag
@@ -0,0 +1,10 @@
+Tag: native-source-file-without-utf8-name
+Severity: error
+Check: files/names
+See-Also: debian-policy 10.10
+Explanation: The file name in the native source tree is not valid UTF-8.
+ File names must decode as valid UTF-8. Please rename the file.
+ .
+ Unlike other file names in Lintian, which are printed in UTF-8, the
+ attached reference shows the bytes used by the file system.
+ Unprintable characters may have been replaced.
diff --git a/tags/n/needless-dependency-on-jre.tag b/tags/n/needless-dependency-on-jre.tag
new file mode 100644
index 0000000..a62caec
--- /dev/null
+++ b/tags/n/needless-dependency-on-jre.tag
@@ -0,0 +1,15 @@
+Tag: needless-dependency-on-jre
+Severity: warning
+Check: fields/package-relations
+Explanation: The package appear to be a Java library and depending on one
+ or more JRE/JDK packages. As of 05 Apr 2010, the Java Policy no
+ longer mandates that Java libraries depend on Java Runtimes.
+ .
+ If the library package ships executables along with the library,
+ then please consider making this an application package or move the
+ binaries to a (new) application package.
+ .
+ If there is otherwise a valid reason for this dependency, please override
+ the tag.
+See-Also: https://lists.debian.org/debian-devel-changes/2010/04/msg00774.html,
+ Bug#227587
diff --git a/tags/n/needless-suggest-recommend-libservlet-java.tag b/tags/n/needless-suggest-recommend-libservlet-java.tag
new file mode 100644
index 0000000..601a624
--- /dev/null
+++ b/tags/n/needless-suggest-recommend-libservlet-java.tag
@@ -0,0 +1,12 @@
+Tag: needless-suggest-recommend-libservlet-java
+Severity: warning
+Check: fields/package-relations
+Explanation: Package should not suggest or recommend libservlet-java
+ Java servlets are only used in the context of a server (example: Tomcat or
+ Jetty). This server will have this dependency and will take care of the
+ loading of this package with the right libservlet.
+ .
+ Removing this dependency will fix this warning.
+ .
+ If there is otherwise a valid reason for this suggestion or recommendation,
+ please override the tag.
diff --git a/tags/n/needlessly-depends-on-awk.tag b/tags/n/needlessly-depends-on-awk.tag
new file mode 100644
index 0000000..87ccc8f
--- /dev/null
+++ b/tags/n/needlessly-depends-on-awk.tag
@@ -0,0 +1,8 @@
+Tag: needlessly-depends-on-awk
+Severity: error
+Check: fields/package-relations
+Explanation: The package seems to declare a relation on awk. awk is a virtual
+ package, but it is special since it's de facto essential. If you don't
+ need to depend on a specific version of awk (which wouldn't work anyway,
+ as dpkg doesn't support versioned provides), you should remove the
+ dependency on awk.
diff --git a/tags/n/nested-examples-directory.tag b/tags/n/nested-examples-directory.tag
new file mode 100644
index 0000000..411842d
--- /dev/null
+++ b/tags/n/nested-examples-directory.tag
@@ -0,0 +1,6 @@
+Tag: nested-examples-directory
+Severity: error
+Check: documentation/examples
+Explanation: Package contains a <code>usr/share/doc/something/examples/examples</code>
+ directory. It was most likely installed by accident, since one examples/
+ directory should be enough for everybody(tm).
diff --git a/tags/n/new-essential-package.tag b/tags/n/new-essential-package.tag
new file mode 100644
index 0000000..6d518bc
--- /dev/null
+++ b/tags/n/new-essential-package.tag
@@ -0,0 +1,7 @@
+Tag: new-essential-package
+Severity: error
+Check: fields/essential
+Explanation: This package has the Essential flag set. New Essential packages
+ are sufficiently rare that it seems worth warning about. They should
+ be discussed on debian-devel first.
+See-Also: debian-policy 3.8
diff --git a/tags/n/new-package-should-not-package-python2-module.tag b/tags/n/new-package-should-not-package-python2-module.tag
new file mode 100644
index 0000000..39fa255
--- /dev/null
+++ b/tags/n/new-package-should-not-package-python2-module.tag
@@ -0,0 +1,24 @@
+Tag: new-package-should-not-package-python2-module
+Severity: warning
+Check: languages/python
+Explanation: This package appears to be the initial packaging of a new upstream
+ software package (ie. it contains a single changelog entry). However, it
+ ships the specified module for Python 2.
+ .
+ Python 2.x modules should not be packaged unless strictly necessary (such
+ as being explicitly requested by an end-user or required as part of a
+ dependency chain) as 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 <code>buster</code>.
+ .
+ If upstream have not yet moved to Python 3, please be certain that Debian
+ would benefit from the inclusion, continued maintenance burden and eventual
+ removal of this package before you upload.
+ .
+ This warning can be ignored if the package is not intended for Debian or
+ if it is a split of an existing Debian package. This warning can also be
+ ignored if viewed on https://lintian.debian.org/.
+ .
+ Please do not override this warning. Instead, add a justification to your
+ changelog entry. Lintian will detect your comment in the changelog. It ensures
+ that your rationale is preserved for posterity.
diff --git a/tags/n/new-package-uses-date-based-version-number.tag b/tags/n/new-package-uses-date-based-version-number.tag
new file mode 100644
index 0000000..8babd9d
--- /dev/null
+++ b/tags/n/new-package-uses-date-based-version-number.tag
@@ -0,0 +1,11 @@
+Tag: new-package-uses-date-based-version-number
+Severity: warning
+Check: debian/changelog
+Explanation: This package appears to be the first packaging of a new upstream
+ software package (there is only one changelog entry and the Debian
+ revision is 1) and uses a date-based versioning scheme such as
+ YYYYMMDD-1.
+ .
+ Packages using date-based version numbering should use a "0~" prefix
+ (eg. 0~20201612-1 or similar) to avoid having to introduce an epoch if
+ upstream starts tagging releases in a more conventional manner.
diff --git a/tags/n/newer-debconf-templates.tag b/tags/n/newer-debconf-templates.tag
new file mode 100644
index 0000000..4bc4305
--- /dev/null
+++ b/tags/n/newer-debconf-templates.tag
@@ -0,0 +1,13 @@
+Tag: newer-debconf-templates
+Severity: warning
+Check: debian/po-debconf
+Explanation: debconf-updatepo has not been run since the last change to your
+ debconf templates.
+ .
+ You should run debconf-updatepo whenever debconf templates files are
+ changed so that translators can be warned that their files are
+ outdated.
+ .
+ This can be ensured by running debconf-updatepo in the 'clean' target
+ of <code>debian/rules</code>. PO files will then always be up-to-date when
+ building the source package.
diff --git a/tags/n/newer-standards-version.tag b/tags/n/newer-standards-version.tag
new file mode 100644
index 0000000..12d6e19
--- /dev/null
+++ b/tags/n/newer-standards-version.tag
@@ -0,0 +1,8 @@
+Tag: newer-standards-version
+Severity: warning
+Check: fields/standards-version
+Explanation: The source package refers to a Standards-Version which is
+ newer than the highest one Lintian is programmed to check.
+ .
+ If the source package is correct, please upgrade Lintian to the newest
+ version.
diff --git a/tags/n/nfs-temporary-file-in-package.tag b/tags/n/nfs-temporary-file-in-package.tag
new file mode 100644
index 0000000..9a27e15
--- /dev/null
+++ b/tags/n/nfs-temporary-file-in-package.tag
@@ -0,0 +1,7 @@
+Tag: nfs-temporary-file-in-package
+Severity: warning
+Check: files/unwanted
+Explanation: There is a file in the package whose name matches the format NFS
+ uses to temporarily save files that were deleted while another process
+ had them open. It may have been included in the package by accident
+ while building the package in an NFS filesystem.
diff --git a/tags/n/nmu-in-changelog.tag b/tags/n/nmu-in-changelog.tag
new file mode 100644
index 0000000..7c4d754
--- /dev/null
+++ b/tags/n/nmu-in-changelog.tag
@@ -0,0 +1,13 @@
+Tag: nmu-in-changelog
+Severity: warning
+Check: nmu
+Renamed-From: changelog-should-not-mention-nmu
+Explanation: The first line of the changelog entry for this package appears to
+ indicate it is a non-maintainer upload (by including either that string
+ or the string "NMU" and not saying that it's an acknowledgement), but the
+ changelog indicates the person making this release is one of the
+ maintainers.
+ .
+ If this was intended to be an NMU, do not add yourself as a maintainer or
+ uploader. Otherwise, please rephrase your changelog entry to not cause
+ confusion.
diff --git a/tags/n/no-changelog.tag b/tags/n/no-changelog.tag
new file mode 100644
index 0000000..3835def
--- /dev/null
+++ b/tags/n/no-changelog.tag
@@ -0,0 +1,18 @@
+Tag: no-changelog
+Severity: error
+Check: debian/changelog
+Renamed-From:
+ changelog-file-missing-in-native-package
+ debian-changelog-file-missing
+Explanation: A Debian package that provides a <code>/usr/share/doc/*pkg*</code>
+ directory must install a changelog file.
+ .
+ For native packages the best name is
+ <code>/usr/share/doc/*pkg*/changelog.gz</code>.
+ .
+ For non-native packages the best name is
+ <code>/usr/share/doc/*pkg*/changelog.Debian.gz</code>.
+ .
+ This tag may also be emitted when the changelog exists but does not
+ otherwise resemble a Debian changelog.
+See-Also: debian-policy 12.7
diff --git a/tags/n/no-code-sections.tag b/tags/n/no-code-sections.tag
new file mode 100644
index 0000000..cfeb6db
--- /dev/null
+++ b/tags/n/no-code-sections.tag
@@ -0,0 +1,11 @@
+Tag: no-code-sections
+Severity: error
+Check: libraries/static/no-code
+Explanation:
+ The named members of the static library have no usable code sections.
+ .
+ It happens when shared objects are built with <code>-flto=auto</code> but
+ without <code>-ffat-lto-objects</code>. <code>dh_strip</code> strips the
+ LTO sections but may leave the static library without any usable code.
+See-Also:
+ Bug#977596
diff --git a/tags/n/no-complete-debconf-translation.tag b/tags/n/no-complete-debconf-translation.tag
new file mode 100644
index 0000000..521f72a
--- /dev/null
+++ b/tags/n/no-complete-debconf-translation.tag
@@ -0,0 +1,13 @@
+Tag: no-complete-debconf-translation
+Severity: info
+Check: debian/po-debconf
+Explanation: Even though this package provides debconf translation support, there
+ are no translations or none of the translations are complete. This may
+ mean that translators weren't properly warned about new strings.
+ .
+ Translators may be notified of changes using podebconf-report-po, for
+ example:
+ .
+ podebconf-report-po --call --withtranslators --deadline="+10 days" \
+ --languageteam
+See-Also: developer-reference 6.5.2.2
diff --git a/tags/n/no-copyright-file.tag b/tags/n/no-copyright-file.tag
new file mode 100644
index 0000000..8f46204
--- /dev/null
+++ b/tags/n/no-copyright-file.tag
@@ -0,0 +1,6 @@
+Tag: no-copyright-file
+Severity: error
+Check: debian/copyright
+Explanation: Each binary package has to include a plain file
+ /usr/share/doc/*pkg*/copyright
+See-Also: debian-policy 12.5
diff --git a/tags/n/no-ctrl-scripts.tag b/tags/n/no-ctrl-scripts.tag
new file mode 100644
index 0000000..656f177
--- /dev/null
+++ b/tags/n/no-ctrl-scripts.tag
@@ -0,0 +1,5 @@
+Tag: no-ctrl-scripts
+Severity: classification
+Check: control-files
+Explanation: The package does not rely on any maintainer scripts (or other
+ executable control files).
diff --git a/tags/n/no-debconf-config.tag b/tags/n/no-debconf-config.tag
new file mode 100644
index 0000000..be17ef7
--- /dev/null
+++ b/tags/n/no-debconf-config.tag
@@ -0,0 +1,6 @@
+Tag: no-debconf-config
+Severity: error
+Check: debian/debconf
+Explanation: The package contains a "templates" file in its control area but has no
+ corresponding "config" script. This is occasionally OK, but is usually an
+ error.
diff --git a/tags/n/no-debconf-templates.tag b/tags/n/no-debconf-templates.tag
new file mode 100644
index 0000000..2657b25
--- /dev/null
+++ b/tags/n/no-debconf-templates.tag
@@ -0,0 +1,6 @@
+Tag: no-debconf-templates
+Severity: warning
+Check: debian/debconf
+Explanation: The package contains a "config" script in its control area but has no
+ corresponding "templates" file. This is occasionally OK, but is usually an
+ error.
diff --git a/tags/n/no-debian-changes.tag b/tags/n/no-debian-changes.tag
new file mode 100644
index 0000000..61b84c0
--- /dev/null
+++ b/tags/n/no-debian-changes.tag
@@ -0,0 +1,19 @@
+Tag: no-debian-changes
+Severity: warning
+Check: files/artifact
+Renamed-From:
+ empty-debian-diff
+Explanation: This non-native package makes no changes to the upstream sources
+ in the Debian-related files.
+ .
+ Maybe a mistake was made when the upstream tarball was created, or maybe this
+ package is really a native package but was built non-native by mistake.
+ .
+ Debian packaging is sometimes maintained as part of upstream, but that is not
+ recommended as best practice. Please make this package native, if the software
+ is only for Debian. Otherwise, please remove the <code>debian</code> directory
+ from upstream releases and add it in the Debian packaging.
+ .
+ Format 1.0 packages are subject to the restriction that the diff cannot remove
+ files from the <code>debian</code> directory. For Format 3.0 packages, the
+ <code>debian</code> directory is automatically purged during unpacking.
diff --git a/tags/n/no-debian-copyright-in-source.tag b/tags/n/no-debian-copyright-in-source.tag
new file mode 100644
index 0000000..4be0876
--- /dev/null
+++ b/tags/n/no-debian-copyright-in-source.tag
@@ -0,0 +1,7 @@
+Tag: no-debian-copyright-in-source
+Severity: warning
+Check: debian/copyright
+Renamed-From: no-debian-copyright
+See-Also: debian-policy 12.5
+Explanation: Every package must include the file <code>/usr/share/doc/*pkg*/copyright</code>.
+ A copy of this file should be in <code>debian/copyright</code> in the source package.
diff --git a/tags/n/no-dep5-copyright.tag b/tags/n/no-dep5-copyright.tag
new file mode 100644
index 0000000..b16c56e
--- /dev/null
+++ b/tags/n/no-dep5-copyright.tag
@@ -0,0 +1,8 @@
+Tag: no-dep5-copyright
+Severity: pedantic
+Check: debian/copyright/dep5
+Explanation: This package does not use a machine-readable debian/copyright file.
+ .
+ This format makes it easier to review licenses and can be easily parsed
+ by Lintian.
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/n/no-dh-sequencer.tag b/tags/n/no-dh-sequencer.tag
new file mode 100644
index 0000000..900a60e
--- /dev/null
+++ b/tags/n/no-dh-sequencer.tag
@@ -0,0 +1,10 @@
+Tag: no-dh-sequencer
+Severity: info
+Check: debian/rules/dh-sequencer
+Explanation: This package does not use the <code>dh</code> sequencer in <code>debian/rules</code>.
+ .
+ While maintainers may use a variety of build systems, this one
+ is by far the most popular.
+ .
+ Maintainers are strongly encouraged to use the <code>dh</code> sequencer
+ in new packages and convert existing ones when appropriate.
diff --git a/tags/n/no-english-manual-page.tag b/tags/n/no-english-manual-page.tag
new file mode 100644
index 0000000..6b9ce09
--- /dev/null
+++ b/tags/n/no-english-manual-page.tag
@@ -0,0 +1,10 @@
+Tag: no-english-manual-page
+Severity: warning
+Check: documentation/manual
+Renamed-From: binary-without-english-manpage
+Explanation: Each binary in <code>/usr/bin</code>, <code>/usr/sbin</code>, <code>/bin</code>,
+ <code>/sbin</code> or <code>/usr/games</code> should have a manual page. You do
+ not provide an English manual page, but only a translated one.
+ .
+ Since the English language serves as a fallback option, the lack of an
+ English page leaves most users without any kind of manual page at all.
diff --git a/tags/n/no-homepage-field.tag b/tags/n/no-homepage-field.tag
new file mode 100644
index 0000000..2c034ab
--- /dev/null
+++ b/tags/n/no-homepage-field.tag
@@ -0,0 +1,8 @@
+Tag: no-homepage-field
+Severity: pedantic
+Check: fields/homepage
+Explanation: This non-native package lacks a <code>Homepage</code> field. If the
+ package has an upstream home page that contains useful information or
+ resources for the end user, consider adding a <code>Homepage</code> control
+ field to <code>debian/control</code>.
+See-Also: debian-policy 5.6.23
diff --git a/tags/n/no-human-maintainers.tag b/tags/n/no-human-maintainers.tag
new file mode 100644
index 0000000..e252a33
--- /dev/null
+++ b/tags/n/no-human-maintainers.tag
@@ -0,0 +1,7 @@
+Tag: no-human-maintainers
+Severity: error
+Check: fields/maintainer
+Explanation: The Maintainer address for this package is a mailing list and there
+ are no Uploaders listed. Team-maintained packages must list the human
+ maintainers in the Uploaders field.
+See-Also: debian-policy 3.3, developer-reference 5.12
diff --git a/tags/n/no-manual-page.tag b/tags/n/no-manual-page.tag
new file mode 100644
index 0000000..c540ef8
--- /dev/null
+++ b/tags/n/no-manual-page.tag
@@ -0,0 +1,23 @@
+Tag: no-manual-page
+Severity: warning
+Check: documentation/manual
+Renamed-From: binary-without-manpage
+Explanation: Each binary in <code>/usr/bin</code>, <code>/usr/sbin</code>, <code>/bin</code>,
+ <code>/sbin</code> or <code>/usr/games</code> should have a manual page
+ .
+ Note that though the <code>man</code> program has the capability to check for
+ several program names in the NAMES section, each of these programs
+ should have its own manual page (a symbolic link to the appropriate
+ manual page is sufficient) because other manual page viewers such as
+ xman or tkman don't support this.
+ .
+ If the name of the manual page differs from the binary by case, <code>man</code>
+ may be able to find it anyway; however, it is still best practice to match
+ the exact capitalization of the executable in the manual page.
+ .
+ If the manual pages are provided by another package on which this package
+ depends, Lintian may not be able to determine that manual pages are
+ available. In this case, after confirming that all binaries do have
+ manual pages after this package and its dependencies are installed, please
+ add a Lintian override.
+See-Also: debian-policy 12.1
diff --git a/tags/n/no-md5sums-control-file.tag b/tags/n/no-md5sums-control-file.tag
new file mode 100644
index 0000000..b342b37
--- /dev/null
+++ b/tags/n/no-md5sums-control-file.tag
@@ -0,0 +1,12 @@
+Tag: no-md5sums-control-file
+Severity: info
+Check: md5sums
+Explanation: This package does not contain an md5sums control file. This control
+ file listing the MD5 checksums of the contents of the package is not
+ required, but if present debsums can use it to verify that no files
+ shipped with your package have been modified. Providing it is
+ recommended.
+ .
+ If you are using debhelper to create your package, just add a call to
+ <code>dh&lowbar;md5sums</code> at the end of your binary-indep or binary-arch
+ target, right before <code>dh&lowbar;builddeb</code>.
diff --git a/tags/n/no-newline-at-end.tag b/tags/n/no-newline-at-end.tag
new file mode 100644
index 0000000..b2fa29d
--- /dev/null
+++ b/tags/n/no-newline-at-end.tag
@@ -0,0 +1,7 @@
+Tag: no-newline-at-end
+Severity: warning
+Check: debian/trailing-whitespace
+Explanation: The named text file does not end with a newline.
+ .
+ Git considers it a whitespace error. Emacs will offer to add it.
+ It is usually a good idea to do so.
diff --git a/tags/n/no-nmu-in-changelog.tag b/tags/n/no-nmu-in-changelog.tag
new file mode 100644
index 0000000..5ea5d55
--- /dev/null
+++ b/tags/n/no-nmu-in-changelog.tag
@@ -0,0 +1,15 @@
+Tag: no-nmu-in-changelog
+Severity: warning
+Check: nmu
+Renamed-From: changelog-should-mention-nmu
+Explanation: When you NMU a package, that fact should be mentioned on the first line
+ in the changelog entry. Use the words "NMU" or "Non-maintainer upload"
+ (case insensitive).
+ .
+ Maybe you didn't intend this upload to be a NMU, in that case, please
+ double-check that the most recent entry in the changelog is byte-for-byte
+ identical to the maintainer or one of the uploaders. If this is a local
+ package (not intended for Debian), you can suppress this warning by
+ putting "local" in the version number or "local package" on the first
+ line of the changelog entry.
+See-Also: developer-reference 5.11.3
diff --git a/tags/n/no-op-testsuite.tag b/tags/n/no-op-testsuite.tag
new file mode 100644
index 0000000..82fec57
--- /dev/null
+++ b/tags/n/no-op-testsuite.tag
@@ -0,0 +1,15 @@
+Tag: no-op-testsuite
+Severity: warning
+Check: testsuite
+Explanation: This package declares a single autopkgtest which will always
+ pass as it uses a "no-op" command such as <code>/bin/true</code>.
+ .
+ As the results of autopkgtests influence migration from unstable
+ to testing this is undesirable and could be even considered an
+ unfair or unwarranted "advantage". Installability of packages is
+ better tested with piuparts which is also used to influence
+ testing migration.
+ .
+ Please update your autopkgtest to actually test the binary package(s)
+ when installed.
+See-Also: https://ci.debian.net/doc/
diff --git a/tags/n/no-phrase.tag b/tags/n/no-phrase.tag
new file mode 100644
index 0000000..2ec8f47
--- /dev/null
+++ b/tags/n/no-phrase.tag
@@ -0,0 +1,13 @@
+Tag: no-phrase
+Severity: error
+Check: fields/mail-address
+Renamed-From:
+ maintainer-name-missing
+ changed-by-name-missing
+Explanation: The named contact includes an email address, but no name
+ (which email folks call the *phrase*).
+ .
+ The contact information must contain both a name and a mail address.
+See-Also: debian-policy 5.6.2,
+ debian-policy 5.6.3,
+ debian-policy 5.6.4
diff --git a/tags/n/no-qa-in-changelog.tag b/tags/n/no-qa-in-changelog.tag
new file mode 100644
index 0000000..3e78559
--- /dev/null
+++ b/tags/n/no-qa-in-changelog.tag
@@ -0,0 +1,7 @@
+Tag: no-qa-in-changelog
+Severity: warning
+Check: nmu
+Renamed-From: changelog-should-mention-qa
+Explanation: If this upload is to orphan this package, please mention this fact on
+ the first line of the changelog. If this is a QA upload, please mention "QA
+ (group) upload" there.
diff --git a/tags/n/no-shlibs.tag b/tags/n/no-shlibs.tag
new file mode 100644
index 0000000..ed10b1b
--- /dev/null
+++ b/tags/n/no-shlibs.tag
@@ -0,0 +1,9 @@
+Tag: no-shlibs
+Severity: error
+Check: debian/shlibs
+Renamed-From:
+ no-shlibs-control-file
+Explanation: Although the package includes a shared library, the package does not
+ have a shlibs control file. If this is intentional, please override this
+ error.
+See-Also: debian-policy 8.6
diff --git a/tags/n/no-source-section.tag b/tags/n/no-source-section.tag
new file mode 100644
index 0000000..fe018fa
--- /dev/null
+++ b/tags/n/no-source-section.tag
@@ -0,0 +1,5 @@
+Tag: no-source-section
+Severity: classification
+Check: debian/control/field/section
+Explanation: The <code>debian/control</code> file does not declare a
+ <code>Section</code> field in the source stanza.
diff --git a/tags/n/no-strong-digests-in-dsc.tag b/tags/n/no-strong-digests-in-dsc.tag
new file mode 100644
index 0000000..375f1a3
--- /dev/null
+++ b/tags/n/no-strong-digests-in-dsc.tag
@@ -0,0 +1,15 @@
+Tag: no-strong-digests-in-dsc
+Severity: error
+Check: fields/checksums
+Explanation: This <code>.dsc</code> file contains no
+ <code>Checksum-Sha256</code> field and hence only weak digests.
+ .
+ This tag should show up only for source packages built with
+ <code>dpkg-source</code> older than version 1.14.17 (from March 2008).
+ It will probably not show up when you run Lintian locally but may be
+ seen on
+ https://lintian.debian.org/ for legacy source packages in the archive.
+ .
+ This tags can be fixed by rebuilding the source package
+ with a more recent version of <code>dpkg-source</code>, i.e. by making
+ a new upload.
diff --git a/tags/n/no-symbols-control-file.tag b/tags/n/no-symbols-control-file.tag
new file mode 100644
index 0000000..9910b44
--- /dev/null
+++ b/tags/n/no-symbols-control-file.tag
@@ -0,0 +1,10 @@
+Tag: no-symbols-control-file
+Severity: info
+Check: debian/shlibs
+Explanation: Although the package includes a shared library, the package does not
+ have a symbols control file.
+ .
+ dpkg can use symbols files in order to generate more accurate library
+ dependencies for applications, based on the symbols from the library that
+ are actually used by the application.
+See-Also: dpkg-gensymbols(1), https://wiki.debian.org/UsingSymbolsFiles
diff --git a/tags/n/no-template-description.tag b/tags/n/no-template-description.tag
new file mode 100644
index 0000000..ac79ff3
--- /dev/null
+++ b/tags/n/no-template-description.tag
@@ -0,0 +1,8 @@
+Tag: no-template-description
+Severity: error
+Check: debian/debconf
+Explanation: The templates file contains a template without a
+ <code>Description</code> field.
+See-Also:
+ debconf-specification 3,
+ debconf-devel(7)
diff --git a/tags/n/no-template-name.tag b/tags/n/no-template-name.tag
new file mode 100644
index 0000000..e784df0
--- /dev/null
+++ b/tags/n/no-template-name.tag
@@ -0,0 +1,4 @@
+Tag: no-template-name
+Severity: error
+Check: debian/debconf
+Explanation: The templates file contains a template without a "Template:" field.
diff --git a/tags/n/no-template-type.tag b/tags/n/no-template-type.tag
new file mode 100644
index 0000000..9d1f4ae
--- /dev/null
+++ b/tags/n/no-template-type.tag
@@ -0,0 +1,4 @@
+Tag: no-template-type
+Severity: error
+Check: debian/debconf
+Explanation: The templates file contains a template without a "Type:" field.
diff --git a/tags/n/no-tests.tag b/tags/n/no-tests.tag
new file mode 100644
index 0000000..9145e2f
--- /dev/null
+++ b/tags/n/no-tests.tag
@@ -0,0 +1,7 @@
+Tag: no-tests
+Severity: warning
+Check: testsuite
+Explanation: The autopackage test suite does not define any tests via
+ either the <code>Tests</code> field or the <code>Test-Command</code>
+ field.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/n/no-versioned-debhelper-prerequisite.tag b/tags/n/no-versioned-debhelper-prerequisite.tag
new file mode 100644
index 0000000..90dfa9d
--- /dev/null
+++ b/tags/n/no-versioned-debhelper-prerequisite.tag
@@ -0,0 +1,28 @@
+Tag: no-versioned-debhelper-prerequisite
+Severity: warning
+Check: debhelper
+Renamed-From:
+ package-needs-versioned-debhelper-build-depends
+ package-lacks-versioned-build-depends-on-debhelper
+Explanation: The package either doesn't declare a versioned build dependency on
+ debhelper or does not declare a versioned build dependency on a new
+ enough version of debhelper to satisfy the declared compatibility level.
+ .
+ The required version of debhelper is not guaranteed to be satisfied
+ in all supported releases of Debian and therefore this may lead to
+ a build failure.
+ .
+ The recommended practice is to always declare an explicit versioned
+ dependency on debhelper equal to or greater than the compatibility level
+ used by the package, even if the versioned dependency isn't strictly
+ necessary. Having a versioned dependency also helps with backports to
+ older releases and correct builds on partially updated systems.
+ .
+ Packages not using an experimental or beta compatibility level may
+ alternatively Build-Depend on the debhelper-compat virtual package, for
+ example:
+ .
+ Build-Depends: debhelper-compat (= 13)
+ .
+ Note if you are using a compat level marked as experimental (such as
+ compat 12 in debhelper 11.4~) please explicitly override this tag.
diff --git a/tags/n/node-package-install-in-nodejs-rootdir.tag b/tags/n/node-package-install-in-nodejs-rootdir.tag
new file mode 100644
index 0000000..804998a
--- /dev/null
+++ b/tags/n/node-package-install-in-nodejs-rootdir.tag
@@ -0,0 +1,5 @@
+Tag: node-package-install-in-nodejs-rootdir
+Severity: error
+Check: languages/javascript/nodejs
+Explanation: This package contains a file under /usr/&ast;/nodejs
+ instead of /usr/&ast;/nodejs/${package}.
diff --git a/tags/n/nodejs-lock-file.tag b/tags/n/nodejs-lock-file.tag
new file mode 100644
index 0000000..105eda7
--- /dev/null
+++ b/tags/n/nodejs-lock-file.tag
@@ -0,0 +1,16 @@
+Tag: nodejs-lock-file
+Severity: error
+Check: languages/javascript/nodejs
+Explanation: package-lock.json is automatically generated for any operations where
+ npm modifies either the node&lowbar;modules tree, or package.json. It
+ describes the exact tree that was generated, such that subsequent
+ installs are able to generate identical trees, regardless of
+ intermediate dependency updates.
+ .
+ These information are useless from a debian point of view, because
+ version are managed by dpkg.
+ .
+ Moreover, package-lock.json feature to pin to some version
+ dependencies is a anti feature of the debian way of managing package,
+ and could lead to security problems in the likely case of debian
+ solving security problems by patching instead of upgrading.
diff --git a/tags/n/nodejs-missing-version-override.tag b/tags/n/nodejs-missing-version-override.tag
new file mode 100644
index 0000000..3987570
--- /dev/null
+++ b/tags/n/nodejs-missing-version-override.tag
@@ -0,0 +1,6 @@
+Tag: nodejs-missing-version-override
+Severity: error
+Check: languages/javascript/nodejs
+Explanation: This package installs the specified nodejs module with a
+ wrong version. Upstream probably uses semantic-release to publish its
+ module. You must override this version field in related package.json.
diff --git a/tags/n/nodejs-module-installed-in-bad-directory.tag b/tags/n/nodejs-module-installed-in-bad-directory.tag
new file mode 100644
index 0000000..3c0847f
--- /dev/null
+++ b/tags/n/nodejs-module-installed-in-bad-directory.tag
@@ -0,0 +1,9 @@
+Tag: nodejs-module-installed-in-bad-directory
+Severity: warning
+Check: languages/javascript/nodejs
+Explanation: This package installs the specified nodejs module in a location that
+ does not match its name declared in package.json. This renders this module
+ unusable using a simple <code>require()</code>.
+ .
+ You can use pkg-js-tools auto installer to avoid this, see
+ <code>/usr/share/doc/pkg-js-tools/README.md.gz</code>
diff --git a/tags/n/nodejs-module-installed-in-usr-lib.tag b/tags/n/nodejs-module-installed-in-usr-lib.tag
new file mode 100644
index 0000000..3585495
--- /dev/null
+++ b/tags/n/nodejs-module-installed-in-usr-lib.tag
@@ -0,0 +1,11 @@
+Tag: nodejs-module-installed-in-usr-lib
+Severity: warning
+Check: languages/javascript/nodejs
+Explanation: This package installs the specified file under <code>/usr/lib/nodejs</code>.
+ Since the release of Buster, these files should be installed under
+ <code>/usr/share/nodejs</code> (for arch *independent* modules) or
+ <code>/usr/lib/$DEB&lowbar;HOST&lowbar;MULTIARCH/nodejs</code> (for arch *dependent* modules)
+ instead.
+ .
+ You can use pkg-js-tools auto installer to avoid this, see
+ <code>/usr/share/doc/pkg-js-tools/README.md.gz</code>
diff --git a/tags/n/nodejs-module-not-declared.tag b/tags/n/nodejs-module-not-declared.tag
new file mode 100644
index 0000000..a15c0a1
--- /dev/null
+++ b/tags/n/nodejs-module-not-declared.tag
@@ -0,0 +1,8 @@
+Tag: nodejs-module-not-declared
+Severity: warning
+Check: languages/javascript/nodejs
+Explanation: This package installs the specified nodejs module in a nodejs root
+ directory without declaring it in "Provides:" field in debian/control.
+ .
+ You can use <code>Provides: ${nodejs:Provides}</code> provided by pkg-js-tools
+ to fix this. See <code>/usr/share/doc/pkg-js-tools/README.md.gz</code> for more.
diff --git a/tags/n/nodejs-module.tag b/tags/n/nodejs-module.tag
new file mode 100644
index 0000000..76a28f5
--- /dev/null
+++ b/tags/n/nodejs-module.tag
@@ -0,0 +1,4 @@
+Tag: nodejs-module
+Severity: classification
+Check: languages/javascript/nodejs
+Explanation: Display nodejs module name, version and path
diff --git a/tags/n/non-conf-file-in-modprobe.d.tag b/tags/n/non-conf-file-in-modprobe.d.tag
new file mode 100644
index 0000000..887d75d
--- /dev/null
+++ b/tags/n/non-conf-file-in-modprobe.d.tag
@@ -0,0 +1,11 @@
+Tag: non-conf-file-in-modprobe.d
+Severity: error
+Check: modprobe
+See-Also: https://lists.debian.org/debian-devel/2009/03/msg00119.html
+Explanation: Files in <code>/etc/modprobe.d</code> should use filenames ending in
+ <code>.conf</code>. modprobe silently ignores all files which do not match
+ this convention.
+ .
+ If the file is an example containing only comments, consider installing
+ it in another location as files in <code>/etc/modprobe.d</code> are
+ read each time modprobe is run (which is often at boot time).
diff --git a/tags/n/non-consecutive-debian-revision.tag b/tags/n/non-consecutive-debian-revision.tag
new file mode 100644
index 0000000..08d73a6
--- /dev/null
+++ b/tags/n/non-consecutive-debian-revision.tag
@@ -0,0 +1,8 @@
+Tag: non-consecutive-debian-revision
+Severity: pedantic
+Check: debian/changelog
+Experimental: yes
+Explanation: The latest changelog entry refers to a Debian revision (eg.
+ <code>1.2-3</code>) that is not consecutive to the previous changelog entry
+ (eg. <code>1.2-2</code>). Please use a consecutive Debian revision or use a
+ UNRELEASED version instead.
diff --git a/tags/n/non-debug-file-in-debug-package.tag b/tags/n/non-debug-file-in-debug-package.tag
new file mode 100644
index 0000000..aded7d5
--- /dev/null
+++ b/tags/n/non-debug-file-in-debug-package.tag
@@ -0,0 +1,9 @@
+Tag: non-debug-file-in-debug-package
+Severity: error
+Check: files/debug-packages
+Explanation: This auto-generated package (eg. <code>-dbgsym</code>) contains the
+ specified file that is not a <code>.debug</code> file.
+ .
+ This may be due to the upstream build system miscalculating
+ installation paths.
+See-Also: Bug#958945
diff --git a/tags/n/non-empty-dependency_libs-in-la-file.tag b/tags/n/non-empty-dependency_libs-in-la-file.tag
new file mode 100644
index 0000000..988f774
--- /dev/null
+++ b/tags/n/non-empty-dependency_libs-in-la-file.tag
@@ -0,0 +1,15 @@
+Tag: non-empty-dependency_libs-in-la-file
+Severity: error
+Check: build-systems/libtool/la-file
+Explanation: The dependency&lowbar;libs field in the .la file has not been cleared. It has
+ long been a release goal to get rid of unneeded .la files and clearing the
+ dependency&lowbar;libs field from the rest of them.
+ .
+ A non-empty dependency&lowbar;libs field will also stall the Multi-Arch
+ conversion.
+ .
+ The .la file in itself may be useful if the library is loaded dynamically
+ via libltdl.
+See-Also: https://wiki.debian.org/ReleaseGoals/LAFileRemoval,
+ https://lists.debian.org/debian-devel/2011/05/msg01003.html,
+ https://lists.debian.org/debian-devel/2011/05/msg01146.html
diff --git a/tags/n/non-etc-file-marked-as-conffile.tag b/tags/n/non-etc-file-marked-as-conffile.tag
new file mode 100644
index 0000000..4744f8d
--- /dev/null
+++ b/tags/n/non-etc-file-marked-as-conffile.tag
@@ -0,0 +1,7 @@
+Tag: non-etc-file-marked-as-conffile
+Severity: error
+Check: conffiles
+Explanation: A file installed in some other directory than <code>/etc</code>
+ is marked as conffile. A conffile typically implies a configuration
+ file, and Policy mandates such files to be in <code>/etc</code>.
+See-Also: debian-policy 10.7.2
diff --git a/tags/n/non-free-flash.tag b/tags/n/non-free-flash.tag
new file mode 100644
index 0000000..777da0c
--- /dev/null
+++ b/tags/n/non-free-flash.tag
@@ -0,0 +1,5 @@
+Tag: non-free-flash
+Severity: error
+Check: files/non-free
+Explanation: The given Flash file has a filename which suggests that it may be
+ one of a number of known Flash files with non-free content.
diff --git a/tags/n/non-multi-arch-lib-dir.tag b/tags/n/non-multi-arch-lib-dir.tag
new file mode 100644
index 0000000..382f48b
--- /dev/null
+++ b/tags/n/non-multi-arch-lib-dir.tag
@@ -0,0 +1,7 @@
+Tag: non-multi-arch-lib-dir
+Severity: warning
+Check: files/hierarchy/standard
+Explanation: The following library use an old path (like /lib64 or /lib32)
+ instead of using multi-arch path (like for instance
+ /lib/x86&lowbar;64-linux-gnu/ or /lib/i386-linux-gnu/).
+See-Also: https://wiki.debian.org/Multiarch
diff --git a/tags/n/non-standard-apache2-configuration-name.tag b/tags/n/non-standard-apache2-configuration-name.tag
new file mode 100644
index 0000000..46e1ad2
--- /dev/null
+++ b/tags/n/non-standard-apache2-configuration-name.tag
@@ -0,0 +1,7 @@
+Tag: non-standard-apache2-configuration-name
+Severity: warning
+Check: apache2
+Explanation: The package appears to be a web application which is installing a
+ configuration file for the Apache2 HTTPD server. To avoid name clashes, any file
+ installed to <code>/etc/apache2/{sites,conf}-available</code> should match the binary package
+ name and must not start with <code>local-</code>.
diff --git a/tags/n/non-standard-apache2-module-package-name.tag b/tags/n/non-standard-apache2-module-package-name.tag
new file mode 100644
index 0000000..4a87400
--- /dev/null
+++ b/tags/n/non-standard-apache2-module-package-name.tag
@@ -0,0 +1,7 @@
+Tag: non-standard-apache2-module-package-name
+Severity: warning
+Check: apache2
+Explanation: The package appears to be an Apache2 HTTPD server module but it
+ does not follow the module naming scheme. Apache2 HTTPD modules should
+ be called <code>libapache2-mod-name</code> with <code>mod-name</code> being the
+ actual <code>mod&lowbar;name.so</code> equivalent.
diff --git a/tags/n/non-standard-dir-in-usr.tag b/tags/n/non-standard-dir-in-usr.tag
new file mode 100644
index 0000000..c87390e
--- /dev/null
+++ b/tags/n/non-standard-dir-in-usr.tag
@@ -0,0 +1,8 @@
+Tag: non-standard-dir-in-usr
+Severity: warning
+Check: files/hierarchy/standard
+Explanation: The FHS says "No large software packages should use a direct
+ subdirectory under the <code>/usr</code> hierarchy". This package contains
+ a directory in <code>/usr</code> that is not mentioned in the Filesystem
+ Hierarchy Standard.
+See-Also: filesystem-hierarchy theusrhierarchy
diff --git a/tags/n/non-standard-dir-in-var.tag b/tags/n/non-standard-dir-in-var.tag
new file mode 100644
index 0000000..bfa3543
--- /dev/null
+++ b/tags/n/non-standard-dir-in-var.tag
@@ -0,0 +1,8 @@
+Tag: non-standard-dir-in-var
+Severity: error
+Check: files/hierarchy/standard
+Explanation: The FHS says "Applications should generally not add directories to
+ the top level of <code>/var</code>. Such directories should only be added
+ if they have some system-wide implication, and in consultation with the
+ FHS mailing list."
+See-Also: filesystem-hierarchy thevarhierarchy
diff --git a/tags/n/non-standard-dir-perm.tag b/tags/n/non-standard-dir-perm.tag
new file mode 100644
index 0000000..013aa82
--- /dev/null
+++ b/tags/n/non-standard-dir-perm.tag
@@ -0,0 +1,6 @@
+Tag: non-standard-dir-perm
+Severity: warning
+Check: files/permissions
+Explanation: The directory has a mode different from 0755, and it's not one of the
+ known exceptions.
+See-Also: debian-policy 10.9
diff --git a/tags/n/non-standard-executable-perm.tag b/tags/n/non-standard-executable-perm.tag
new file mode 100644
index 0000000..119271f
--- /dev/null
+++ b/tags/n/non-standard-executable-perm.tag
@@ -0,0 +1,8 @@
+Tag: non-standard-executable-perm
+Severity: warning
+Check: files/permissions
+Explanation: Executables that are not setuid or setgid should always have a mode
+ of 0755. Since anyone can obtain the executable by downloading the
+ Debian package and extracting it, restricting access serves little
+ purpose.
+See-Also: debian-policy 10.9
diff --git a/tags/n/non-standard-file-perm.tag b/tags/n/non-standard-file-perm.tag
new file mode 100644
index 0000000..72465a6
--- /dev/null
+++ b/tags/n/non-standard-file-perm.tag
@@ -0,0 +1,32 @@
+Tag: non-standard-file-perm
+Severity: warning
+Check: files/permissions
+Explanation: The file has a mode different from 0644. In some cases this is
+ intentional, but in other cases this is a bug.
+See-Also: debian-policy 10.9
+
+Screen: toolchain/gnat/ali-read-only
+Advocates: Nicolas Boulenguez <nicolas@debian.org>
+Reason: In GNAT, the compiler also deals with dependencies and rebuild order.
+ The <code>.ali</code> files contain the dependency information required to detect
+ if a <code>.o</code> is more recent than the closure of all sources it depends
+ upon, or if it should be rebuilt.
+ .
+ By convention, a read-only <code>.ali</code> file tells <code>GNAT</code> to fail if
+ the <code>.o</code> is obsolete or unavailable, instead of attempting to rebuild.
+ This is recommended for packaged libraries (the <code>.so</code> or <code>.a</code>
+ are available but not the <code>.o</code> files).
+ .
+ This convention may seem bizarre according to modern standards, but it
+ has been in use for 25 years, so Adacore would probably need a
+ compelling reason to break it.
+ .
+ See also Debian Policy 8.4, which explicitly requires this:
+ .
+ If the package provides Ada Library Information (<code>&ast;.ali</code>) files for use
+ with <code>GNAT</code>, these files must be installed read-only (mode 0444) so that
+ <code>GNAT</code> will not attempt to recompile them. This overrides the normal
+ file mode requirements given in "Permissions and owners."
+See-Also:
+ debian-policy 8.4,
+ Bug#986400
diff --git a/tags/n/non-standard-file-permissions-for-etc-init.d-script.tag b/tags/n/non-standard-file-permissions-for-etc-init.d-script.tag
new file mode 100644
index 0000000..ed449d9
--- /dev/null
+++ b/tags/n/non-standard-file-permissions-for-etc-init.d-script.tag
@@ -0,0 +1,5 @@
+Tag: non-standard-file-permissions-for-etc-init.d-script
+Severity: error
+Check: files/init
+Explanation: Usually, scripts in the <code>/etc/init.d</code> directory should have
+ mode 0755.
diff --git a/tags/n/non-standard-game-executable-perm.tag b/tags/n/non-standard-game-executable-perm.tag
new file mode 100644
index 0000000..f113c7a
--- /dev/null
+++ b/tags/n/non-standard-game-executable-perm.tag
@@ -0,0 +1,8 @@
+Tag: non-standard-game-executable-perm
+Severity: warning
+Check: files/permissions
+Explanation: The file is owned by the games group but is not mode 2755. If a
+ game does not have to be setgid games, it should be owned by the root
+ group like any other executable. This executable is either owned by the
+ wrong group or is not setgid when it should be.
+See-Also: debian-policy 11.11
diff --git a/tags/n/non-standard-setuid-executable-perm.tag b/tags/n/non-standard-setuid-executable-perm.tag
new file mode 100644
index 0000000..57c42d0
--- /dev/null
+++ b/tags/n/non-standard-setuid-executable-perm.tag
@@ -0,0 +1,10 @@
+Tag: non-standard-setuid-executable-perm
+Severity: warning
+Check: files/permissions
+Explanation: The file is setuid or setgid and has a mode different from any of
+ 2755, 4755, 4754, or 6755. Any other permissions on setuid executables
+ is probably a bug. In particular, removing root write privileges serves
+ no purpose, group-writable setuid or setgid executables are probably bad
+ ideas, and setgid executables that are not world-executable serve little
+ purpose.
+See-Also: debian-policy 10.9
diff --git a/tags/n/non-standard-toplevel-dir.tag b/tags/n/non-standard-toplevel-dir.tag
new file mode 100644
index 0000000..5db8e4c
--- /dev/null
+++ b/tags/n/non-standard-toplevel-dir.tag
@@ -0,0 +1,6 @@
+Tag: non-standard-toplevel-dir
+Severity: error
+Check: files/hierarchy/standard
+Explanation: The Filesystem Hierarchy Standard forbids the installation of new
+ files or directories in the root directory.
+See-Also: filesystem-hierarchy therootfilesystem
diff --git a/tags/n/non-virtual-facility-in-initd-script.tag b/tags/n/non-virtual-facility-in-initd-script.tag
new file mode 100644
index 0000000..bf1a4b4
--- /dev/null
+++ b/tags/n/non-virtual-facility-in-initd-script.tag
@@ -0,0 +1,14 @@
+Tag: non-virtual-facility-in-initd-script
+Severity: error
+Check: init-d
+Renamed-From: init.d-script-should-depend-on-virtual-facility
+Explanation: The given <code>/etc/init.d</code> script depends on a non-virtual
+ facility that should probably be replaced by a virtual facility. For
+ example, init scripts should depend on the virtual facility
+ <code>$network</code> rather than the facility <code>networking</code>, and the
+ virtual facility <code>$named</code> rather than the specific facility
+ <code>bind9</code>.
+ .
+ Properly using virtual facilities allows multiple implementations of the
+ same facility and accommodates systems where that specific facility may
+ not be enough to provide everything the script expects.
diff --git a/tags/n/non-wm-in-windowmanager-menu-section.tag b/tags/n/non-wm-in-windowmanager-menu-section.tag
new file mode 100644
index 0000000..8c27d27
--- /dev/null
+++ b/tags/n/non-wm-in-windowmanager-menu-section.tag
@@ -0,0 +1,8 @@
+Tag: non-wm-in-windowmanager-menu-section
+Severity: error
+Check: menu-format
+Explanation: The <code>menu</code> item is in the <code>Window Manager</code>
+ section but does not specify <code>needs=wm</code>.
+ .
+ If the application is a window manager, it should specify <code>needs=wm</code>.
+ Otherwise, it should be moved to another section.
diff --git a/tags/n/non-wm-module-in-wm-modules-menu-section.tag b/tags/n/non-wm-module-in-wm-modules-menu-section.tag
new file mode 100644
index 0000000..8ffa83b
--- /dev/null
+++ b/tags/n/non-wm-module-in-wm-modules-menu-section.tag
@@ -0,0 +1,10 @@
+Tag: non-wm-module-in-wm-modules-menu-section
+Severity: error
+Check: menu-format
+Explanation: The <code>menu</code> item is in the section for <code>FVWM Modules</code>
+ or <code>Window Maker</code> but a window manager as a prerequisite via the
+ <code>needs</code> key in the <code>menu</code> file.
+ .
+ Modules for Fvwm should list <code>needs="fvwmmodule"</code>.
+ .
+ Modules for WindowMaker should list <code>needs="wmmaker"</code>.
diff --git a/tags/n/not-allowed-control-file.tag b/tags/n/not-allowed-control-file.tag
new file mode 100644
index 0000000..89056ce
--- /dev/null
+++ b/tags/n/not-allowed-control-file.tag
@@ -0,0 +1,7 @@
+Tag: not-allowed-control-file
+Severity: error
+Check: control-files
+Explanation: The package contains a control file that is not allowed in this
+ type of package. Some control files are only allowed in either .deb
+ or .udeb packages and must not be included in packages of the other
+ type. You should probably just remove the file.
diff --git a/tags/n/not-binnmuable-all-depends-any.tag b/tags/n/not-binnmuable-all-depends-any.tag
new file mode 100644
index 0000000..32ee806
--- /dev/null
+++ b/tags/n/not-binnmuable-all-depends-any.tag
@@ -0,0 +1,14 @@
+Tag: not-binnmuable-all-depends-any
+Severity: error
+Check: debian/version-substvars
+Explanation: The package is not safely binNMUable because an arch:all package
+ depends on an arch:any package with a strict (= ${source:Version}), or
+ similar, relationship.
+ .
+ It is not possible for arch:all packages to depend so strictly on
+ arch:any packages while having the package binNMUable, so please use
+ one of these, whichever is more appropriate:
+ .
+ Depends: arch&lowbar;any (&gt;= ${source:Version})
+ Depends: arch&lowbar;any (&gt;= ${source:Version}),
+ arch&lowbar;any (&lt;&lt; ${source:Version}.1~)
diff --git a/tags/n/not-binnmuable-any-depends-all.tag b/tags/n/not-binnmuable-any-depends-all.tag
new file mode 100644
index 0000000..41c53ce
--- /dev/null
+++ b/tags/n/not-binnmuable-any-depends-all.tag
@@ -0,0 +1,9 @@
+Tag: not-binnmuable-any-depends-all
+Severity: error
+Check: debian/version-substvars
+Explanation: The package is not safely binNMUable because an arch:any package
+ depends on an arch:all package with a (= ${binary:Version})
+ relationship. Please use (= ${source:Version}) instead.
+ .
+ Note this is also triggered if the dependency uses (&gt;= ${var}),
+ since that has the same issue.
diff --git a/tags/n/not-binnmuable-any-depends-any.tag b/tags/n/not-binnmuable-any-depends-any.tag
new file mode 100644
index 0000000..60b202b
--- /dev/null
+++ b/tags/n/not-binnmuable-any-depends-any.tag
@@ -0,0 +1,6 @@
+Tag: not-binnmuable-any-depends-any
+Severity: error
+Check: debian/version-substvars
+Explanation: The package is not safely binNMUable because an arch:any package
+ depends on another arch:any package with a (= ${source:Version})
+ relationship. Please use (= ${binary:Version}) instead.
diff --git a/tags/n/not-using-po-debconf.tag b/tags/n/not-using-po-debconf.tag
new file mode 100644
index 0000000..d620dda
--- /dev/null
+++ b/tags/n/not-using-po-debconf.tag
@@ -0,0 +1,8 @@
+Tag: not-using-po-debconf
+Severity: error
+Check: debian/po-debconf
+Explanation: This package seems to be using debconf templates, but it does not
+ use po-debconf to make translations possible (<code>debian/po</code> doesn't
+ exist). Debian Policy requires that all packages using debconf use a
+ gettext-based translation system.
+See-Also: debian-policy 3.9.1
diff --git a/tags/n/number-of-patches.tag b/tags/n/number-of-patches.tag
new file mode 100644
index 0000000..2402b4b
--- /dev/null
+++ b/tags/n/number-of-patches.tag
@@ -0,0 +1,5 @@
+Tag: number-of-patches
+Severity: classification
+Check: debian/patches/count
+Explanation: The number of patches according to the
+ <code>debian/patches/series</code> file.
diff --git a/tags/o/obsolete-command-in-modprobe.d-file.tag b/tags/o/obsolete-command-in-modprobe.d-file.tag
new file mode 100644
index 0000000..6bba4c1
--- /dev/null
+++ b/tags/o/obsolete-command-in-modprobe.d-file.tag
@@ -0,0 +1,6 @@
+Tag: obsolete-command-in-modprobe.d-file
+Severity: warning
+Check: modprobe
+Explanation: Use of 'install' and 'remove' commands in module files in
+ <code>/etc/modprobe.d</code> and <code>/etc/modules-load.d</code> is
+ deprecated and should be replaced with 'softdep' commands.
diff --git a/tags/o/obsolete-comments-style-in-php-ini.tag b/tags/o/obsolete-comments-style-in-php-ini.tag
new file mode 100644
index 0000000..015582e
--- /dev/null
+++ b/tags/o/obsolete-comments-style-in-php-ini.tag
@@ -0,0 +1,9 @@
+Tag: obsolete-comments-style-in-php-ini
+Severity: warning
+Check: languages/php
+Explanation: This package ships a <code>.ini</code> file used to configure php but
+ it has comments using the old-style comment separator <code>#</code>.
+ Instead, the <code>;</code> separator should be used.
+ .
+ Since version 5.3, the PHP interpreter warns about the use of the
+ old style of comment separator.
diff --git a/tags/o/obsolete-crypt-alias.tag b/tags/o/obsolete-crypt-alias.tag
new file mode 100644
index 0000000..26809ff
--- /dev/null
+++ b/tags/o/obsolete-crypt-alias.tag
@@ -0,0 +1,15 @@
+Tag: obsolete-crypt-alias
+Severity: error
+Check: binaries/obsolete/crypt
+Explanation: The listed ELF binary appears to use the C library function
+ <code>fcrypt</code>, which is a less-portable alias for <code>crypt</code>.
+ Programs that use this function cannot be linked against the
+ <code>libcrypt.so</code> provided by glibc 2.28 and higher.
+ .
+ The program should be changed to use <code>crypt</code> instead.
+ .
+ A false positive for this check is possible if the binary expects
+ the definition of <code>fcrypt</code> to come from some shared library
+ other than <code>libcrypt.so</code>, *and* that shared library
+ defines this function to do something other than hash passphrases.
+ If this is the case it is appropriate to override this tag.
diff --git a/tags/o/obsolete-debian-watch-file-standard.tag b/tags/o/obsolete-debian-watch-file-standard.tag
new file mode 100644
index 0000000..96aab6b
--- /dev/null
+++ b/tags/o/obsolete-debian-watch-file-standard.tag
@@ -0,0 +1,6 @@
+Tag: obsolete-debian-watch-file-standard
+Severity: warning
+Check: debian/watch/standard
+Explanation: The <code>version=</code> line in the <code>debian/watch</code> file in this
+ package declares an obsolete version. Please upgrade to more current version.
+See-Also: uscan(1)
diff --git a/tags/o/obsolete-des-encryption.tag b/tags/o/obsolete-des-encryption.tag
new file mode 100644
index 0000000..8e8dc77
--- /dev/null
+++ b/tags/o/obsolete-des-encryption.tag
@@ -0,0 +1,28 @@
+Tag: obsolete-des-encryption
+Severity: error
+Check: binaries/obsolete/crypt
+Explanation: The listed ELF binary appears to use a C library function that
+ performs DES encryption and/or decryption (<code>encrypt</code>,
+ <code>encrypt&lowbar;r</code>, <code>setkey</code>, and/or <code>setkey&lowbar;r</code>).
+ The DES block cipher can be broken by brute force on modern hardware,
+ which makes any use of these functions insecure. Also, programs that
+ use these functions cannot be linked against the <code>libcrypt.so</code>
+ provided by glibc 2.28 and higher.
+ .
+ The program will need to be revised to use modern cryptographic
+ primitives and protocols. Depending on how the program uses these
+ functions, it may be necessary to continue using DES under some
+ circumstances (e.g. for protocol compatibility, or to retain the
+ ability to decrypt old data on disk) but this should be done using
+ the DES functions in a modern cryptographic *library*
+ (e.g. <code>libgcrypt</code>).
+ .
+ This is almost certainly an upstream bug, and should be addressed
+ in coordination with the upstream maintainers of the software.
+ .
+ A false positive for this check is possible if the binary expects the
+ definition of <code>encrypt</code>, <code>encrypt&lowbar;r</code>, <code>setkey</code>,
+ and/or <code>setkey&lowbar;r</code> to come from some shared library other than
+ <code>libcrypt.so</code>, *and* that shared library defines these
+ functions to do something other than perform DES encryption. If this
+ is the case it is appropriate to override this tag.
diff --git a/tags/o/obsolete-field-in-dep5-copyright.tag b/tags/o/obsolete-field-in-dep5-copyright.tag
new file mode 100644
index 0000000..cad7fe3
--- /dev/null
+++ b/tags/o/obsolete-field-in-dep5-copyright.tag
@@ -0,0 +1,12 @@
+Tag: obsolete-field-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The machine-readable copyright file uses a field, that used to be defined
+ by the specification, but has been renamed since then.
+ .
+ Please use Format instead of Format-Specification.
+ .
+ Please use Upstream-Contact instead of Contact, Maintainer or Upstream-Maintainer.
+ .
+ Please use Upstream-Name instead of Name.
diff --git a/tags/o/obsolete-relation-form-in-source.tag b/tags/o/obsolete-relation-form-in-source.tag
new file mode 100644
index 0000000..79455c1
--- /dev/null
+++ b/tags/o/obsolete-relation-form-in-source.tag
@@ -0,0 +1,11 @@
+Tag: obsolete-relation-form-in-source
+Severity: error
+Check: debian/control/field/relation
+Explanation: The short version restrictions <code>&lt;</code> and <code>&gt;</code>
+ actually mean <code>&lt;=</code> and <code>&gt;=</code> (and not <code>&lt;&lt;</code>
+ or <code>&gt;&gt;</code>, as one might expect).
+ .
+ The short forms are obsolete and no longer allowed. Please use the longer forms
+ in the parentheses instead.
+See-Also:
+ debian-policy 7.1
diff --git a/tags/o/obsolete-relation-form.tag b/tags/o/obsolete-relation-form.tag
new file mode 100644
index 0000000..352a94e
--- /dev/null
+++ b/tags/o/obsolete-relation-form.tag
@@ -0,0 +1,11 @@
+Tag: obsolete-relation-form
+Severity: warning
+Check: fields/package-relations
+Explanation: The short version restrictions <code>&lt;</code> and <code>&gt;</code>
+ actually mean <code>&lt;=</code> and <code>&gt;=</code> (and not <code>&lt;&lt;</code>
+ or <code>&gt;&gt;</code>, as one might expect).
+ .
+ The short forms are obsolete and should no longer be used. Please use the longer forms
+ in the parentheses instead.
+See-Also:
+ debian-policy 7.1
diff --git a/tags/o/obsolete-runtime-tests-restriction.tag b/tags/o/obsolete-runtime-tests-restriction.tag
new file mode 100644
index 0000000..038ee65
--- /dev/null
+++ b/tags/o/obsolete-runtime-tests-restriction.tag
@@ -0,0 +1,8 @@
+Tag: obsolete-runtime-tests-restriction
+Severity: warning
+Check: testsuite
+Explanation: A paragraph in debian/tests/control mentions an obsolete
+ value for the Restrictions field. Though still allowed, this will
+ become unsupported in the future and the whole paragraph will be
+ ignored.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/o/obsolete-url-in-packaging.tag b/tags/o/obsolete-url-in-packaging.tag
new file mode 100644
index 0000000..d0f94e3
--- /dev/null
+++ b/tags/o/obsolete-url-in-packaging.tag
@@ -0,0 +1,14 @@
+Tag: obsolete-url-in-packaging
+Severity: warning
+Check: obsolete-sites
+Explanation: One of the package's packaging files points to a website or code
+ hoster known to have frozen contents, to be closed soon or to have
+ already closed.
+ .
+ Please look for the new upstream home of the package and update the
+ packaging accordingly.
+ .
+ Sites previously hosted on code.google.com and codeplex.com were offered a
+ migration to github.com, sites previously on gitorious.org were offered a
+ migration to gitlab.com, sites previously hosted on fedorahosted.org were
+ offered a migration to pagure.io. You might want to look there first.
diff --git a/tags/o/obsolete-vim-addon-manager.tag b/tags/o/obsolete-vim-addon-manager.tag
new file mode 100644
index 0000000..a0be75e
--- /dev/null
+++ b/tags/o/obsolete-vim-addon-manager.tag
@@ -0,0 +1,12 @@
+Tag: obsolete-vim-addon-manager
+Severity: info
+Check: vim/addons
+Explanation: The package depends on <code>vim-addon-manager</code>. It
+ is not needed anymore, if you use <code>debhelper</code>.
+ .
+ Please use <code>dh-vim-addon</code> instead. It will install
+ <code>vim</code> files in the appropriate locations for you via
+ the <code>:packadd</code> function available in <code>vim</code>
+ version 8.
+See-Also:
+ dh_vim-addon(1)
diff --git a/tags/o/ocaml-custom-executable.tag b/tags/o/ocaml-custom-executable.tag
new file mode 100644
index 0000000..c0846c6
--- /dev/null
+++ b/tags/o/ocaml-custom-executable.tag
@@ -0,0 +1,9 @@
+Tag: ocaml-custom-executable
+Severity: warning
+Check: languages/ocaml/custom-executable
+Explanation: This OCaml package ships a byte code executable that was linked
+ with a custom runtime.
+ .
+ Such executables cannot be stripped and require special care. Their usage is
+ deprecated in favour of shared libraries for C stubs with names like
+ <code>dll&ast;.so</code>.
diff --git a/tags/o/ocaml-dangling-cmi.tag b/tags/o/ocaml-dangling-cmi.tag
new file mode 100644
index 0000000..f1e5df4
--- /dev/null
+++ b/tags/o/ocaml-dangling-cmi.tag
@@ -0,0 +1,9 @@
+Tag: ocaml-dangling-cmi
+Severity: info
+Check: languages/ocaml/byte-code/interface
+Explanation: This OCaml package ships a byte code interface file <code>&ast;.cmi</code>
+ without the text version in a <code>&ast;.mli</code> file.
+ .
+ The text version should be shipped for documentation. If the module does not have
+ a <code>&ast;.mli</code> file, the source code in a <code>&ast;.ml</code> file
+ should be shipped instead.
diff --git a/tags/o/ocaml-dangling-cmx.tag b/tags/o/ocaml-dangling-cmx.tag
new file mode 100644
index 0000000..b6dca9a
--- /dev/null
+++ b/tags/o/ocaml-dangling-cmx.tag
@@ -0,0 +1,8 @@
+Tag: ocaml-dangling-cmx
+Severity: error
+Check: languages/ocaml/byte-code/compiled
+Explanation: This OCaml package ships a <code>&ast;.cmx</code> byte code module
+ without the associated implementation.
+ .
+ The implementation is shipped in a <code>&ast;.o</code> object file, which can be
+ a member in a <code>&ast;.a</code> static library in the same directory.
diff --git a/tags/o/ocaml-dangling-cmxa.tag b/tags/o/ocaml-dangling-cmxa.tag
new file mode 100644
index 0000000..d4f8329
--- /dev/null
+++ b/tags/o/ocaml-dangling-cmxa.tag
@@ -0,0 +1,6 @@
+Tag: ocaml-dangling-cmxa
+Severity: error
+Check: languages/ocaml/byte-code/library
+Explanation: This OCaml package ships a compiled <code>&ast;.cmxa</code> byte code
+ library without the associated implementation in a <code>&ast;.a</code> static
+ library.
diff --git a/tags/o/ocaml-dangling-cmxs.tag b/tags/o/ocaml-dangling-cmxs.tag
new file mode 100644
index 0000000..9f48c09
--- /dev/null
+++ b/tags/o/ocaml-dangling-cmxs.tag
@@ -0,0 +1,9 @@
+Tag: ocaml-dangling-cmxs
+Severity: warning
+Check: languages/ocaml/byte-code/plugin
+Explanation: This OCaml package provides a native plugin with a name like
+ <code>*.cmxs</code> but does not ship the associated byte code.
+ .
+ If the plugin is meant to be used inside other plugins, the package should also
+ ship the byte code in a similarly-named file, such as <code>&ast;cma</code> or
+ <code>&ast;.cmo</code>.
diff --git a/tags/o/ocaml-dev-file-in-nondev-package.tag b/tags/o/ocaml-dev-file-in-nondev-package.tag
new file mode 100644
index 0000000..903ca4e
--- /dev/null
+++ b/tags/o/ocaml-dev-file-in-nondev-package.tag
@@ -0,0 +1,8 @@
+Tag: ocaml-dev-file-in-nondev-package
+Severity: pedantic
+Check: languages/ocaml/byte-code/misplaced/package
+Explanation: This OCaml package ships development files such as <code>&ast;.cmi</code>,
+ <code>&ast;.cmx</code> or <code>&ast;.cmxa</code> but does not appear to be a
+ development package.
+ .
+ The files should be moved to a development package.
diff --git a/tags/o/ocaml-dev-file-not-in-usr-lib-ocaml.tag b/tags/o/ocaml-dev-file-not-in-usr-lib-ocaml.tag
new file mode 100644
index 0000000..216f416
--- /dev/null
+++ b/tags/o/ocaml-dev-file-not-in-usr-lib-ocaml.tag
@@ -0,0 +1,9 @@
+Tag: ocaml-dev-file-not-in-usr-lib-ocaml
+Severity: pedantic
+Check: languages/ocaml/byte-code/misplaced/path
+Explanation: This OCaml package ships development files like <code>&ast;.cmi</code>,
+ <code>&ast;.cmx</code> or <code>&ast;.cmxa</code> outside of the standard folder
+ <code>/usr/lib/ocaml</code>.
+ .
+ Those files are used only for compilation and should be placed in a subfolder of
+ the standard OCaml library path.
diff --git a/tags/o/ocaml-meta-without-suggesting-findlib.tag b/tags/o/ocaml-meta-without-suggesting-findlib.tag
new file mode 100644
index 0000000..e32adc0
--- /dev/null
+++ b/tags/o/ocaml-meta-without-suggesting-findlib.tag
@@ -0,0 +1,9 @@
+Tag: ocaml-meta-without-suggesting-findlib
+Severity: pedantic
+Check: languages/ocaml/meta
+Explanation: This OCaml package installs a <code>META</code> file but does not
+ declare <code> ocaml-findlib</code> as a prerequisite.
+ .
+ Ocaml libraries with a <code>META</code> file are easier to use with
+ <code>findlib</code>. The package should, at a minimum, suggest
+ <code>ocaml-findlib</code>.
diff --git a/tags/o/ocaml-stray-cmo.tag b/tags/o/ocaml-stray-cmo.tag
new file mode 100644
index 0000000..31f6c93
--- /dev/null
+++ b/tags/o/ocaml-stray-cmo.tag
@@ -0,0 +1,10 @@
+Tag: ocaml-stray-cmo
+Severity: info
+Check: languages/ocaml/byte-code/library
+Explanation: This OCaml package installs a <code>&ast;.cma</code> byte code
+ library together with a separate <code>&ast;.cmo</code> byte code file, with
+ both having the same base name.
+ .
+ The module provided by the <code>&ast;.cmo</code> file is usually an archive
+ member in the <code>&ast;.cma</code> library, so there is no need for the
+ <code>&ast;.cmo</code> file.
diff --git a/tags/o/odd-historical-debian-changelog-version.tag b/tags/o/odd-historical-debian-changelog-version.tag
new file mode 100644
index 0000000..0ef39a8
--- /dev/null
+++ b/tags/o/odd-historical-debian-changelog-version.tag
@@ -0,0 +1,16 @@
+Tag: odd-historical-debian-changelog-version
+Severity: warning
+Check: debian/changelog
+Explanation: The version string in a historical changelog entry was not parsed
+ correctly. Usually, that means it does not conform to policy.
+ .
+ It can also happen when a package changes from native to non-native
+ (or the other way around). Historical entries are then in a nonconforming
+ format.
+ .
+ As a side note, Lintian cannot tell whether a package changed from
+ naive to non-native, or the other way around. It can only say whether
+ the historical changelog entries comply with the current nativeness of a
+ package.
+See-Also:
+ debian-policy 5.6.12
diff --git a/tags/o/odd-mark-in-description.tag b/tags/o/odd-mark-in-description.tag
new file mode 100644
index 0000000..d00ce1c
--- /dev/null
+++ b/tags/o/odd-mark-in-description.tag
@@ -0,0 +1,8 @@
+Tag: odd-mark-in-description
+Severity: pedantic
+Check: fields/description
+Explanation: A punction mark was placed oddly in the description.
+ .
+ This tag is currently only issued for a comma that is not followed by a
+ whitespace character or a number (eg. for "300,000").
+See-Also: Bug#591665, Bug#591664
diff --git a/tags/o/odd-permissions-on-shared-library.tag b/tags/o/odd-permissions-on-shared-library.tag
new file mode 100644
index 0000000..ceac223
--- /dev/null
+++ b/tags/o/odd-permissions-on-shared-library.tag
@@ -0,0 +1,8 @@
+Tag: odd-permissions-on-shared-library
+Severity: warning
+Check: libraries/shared/file-permissions
+Renamed-From:
+ shlib-with-bad-permissions
+Explanation: Shared libraries should be mode 0644.
+See-Also:
+ debian-policy 8.1
diff --git a/tags/o/odd-place-for-manual-page.tag b/tags/o/odd-place-for-manual-page.tag
new file mode 100644
index 0000000..d3369d3
--- /dev/null
+++ b/tags/o/odd-place-for-manual-page.tag
@@ -0,0 +1,11 @@
+Tag: odd-place-for-manual-page
+Severity: error
+Check: documentation/manual
+Renamed-From: manpage-in-wrong-directory
+Explanation: The manual page should be installed in the correct directory below
+ <code>/usr/share/man/</code> or <code>/usr/share/man/*locale*</code>.
+ Only sections 1 through 9 should be used.
+ .
+ The section number in the filename should correspond with the section
+ number in the directory name.
+See-Also: debian-policy 12.1
diff --git a/tags/o/odd-static-library-name.tag b/tags/o/odd-static-library-name.tag
new file mode 100644
index 0000000..04b8f53
--- /dev/null
+++ b/tags/o/odd-static-library-name.tag
@@ -0,0 +1,12 @@
+Tag: odd-static-library-name
+Severity: warning
+Check: libraries/static/name
+Explanation: The package installs a static library under a strange name.
+ .
+ Some naming schemes make it harder to switch from static
+ to dynamic building. On such example is to install archives with
+ a name suffix such as <code>libyajl&lowbar;s.a</code>.
+ .
+ Please reconsider the choice of the file name.
+See-Also:
+ Bug#698398
diff --git a/tags/o/old-devhelp-standard.tag b/tags/o/old-devhelp-standard.tag
new file mode 100644
index 0000000..6ff966d
--- /dev/null
+++ b/tags/o/old-devhelp-standard.tag
@@ -0,0 +1,9 @@
+Tag: old-devhelp-standard
+Severity: warning
+Check: documentation/devhelp/standard
+Explanation: The named file uses the Devhelp index file format version 1, but it
+ is deprecated. Future versions of Devhelp may remove the support for that format.
+ .
+ Please port the index file to the Devhelp index file format version 2.
+ .
+ The detection of the condition was based solely on the file name.
diff --git a/tags/o/old-fsf-address-in-copyright-file.tag b/tags/o/old-fsf-address-in-copyright-file.tag
new file mode 100644
index 0000000..6ee0d9f
--- /dev/null
+++ b/tags/o/old-fsf-address-in-copyright-file.tag
@@ -0,0 +1,8 @@
+Tag: old-fsf-address-in-copyright-file
+Severity: warning
+Check: debian/copyright
+Explanation: The /usr/share/doc/*pkg*/copyright file refers to the old postal
+ address of the Free Software Foundation (FSF). The new address is:
+ .
+ Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+ MA 02110-1301, USA.
diff --git a/tags/o/old-python-version-field.tag b/tags/o/old-python-version-field.tag
new file mode 100644
index 0000000..117bd47
--- /dev/null
+++ b/tags/o/old-python-version-field.tag
@@ -0,0 +1,15 @@
+Tag: old-python-version-field
+Severity: pedantic
+Check: languages/python
+See-Also: python-policy 3.4
+Explanation: The specified Python-Version or Python3-Version field is used to
+ specify the version(s) of Python the package supports. However, the
+ associated Python version is satisfied by the current "stable"
+ distribution of Debian and may be unnecessary.
+ .
+ Please remove or update the reference. This warning should be ignored
+ if you wish to support "sloppy" backports. If removing, please also check
+ for the use of <code>py3versions -r</code> in <code>debian/rules</code>, and
+ <code>debian/tests/</code>. Without an operative <code>Python3-Version</code>
+ field <code>py3versions</code> will fall back to all supported versions
+ which may not be appropriate.
diff --git a/tags/o/old-source-override-location.tag b/tags/o/old-source-override-location.tag
new file mode 100644
index 0000000..40a86a4
--- /dev/null
+++ b/tags/o/old-source-override-location.tag
@@ -0,0 +1,12 @@
+Tag: old-source-override-location
+Severity: pedantic
+Check: debian/lintian-overrides
+Renamed-From: package-uses-deprecated-source-override-location
+Explanation: This Debian package ships Lintian source-level overrides in the
+ <code>debian/source.lintian-overrides</code> file.
+ .
+ Please use <code>debian/source/lintian-overrides</code> instead; the
+ <code>debian/source</code> directory is preferred to hold "source"-specific
+ files.
+See-Also:
+ lintian-manual 2.4
diff --git a/tags/o/old-style-config-script-multiarch-path-arch-all.tag b/tags/o/old-style-config-script-multiarch-path-arch-all.tag
new file mode 100644
index 0000000..c4774af
--- /dev/null
+++ b/tags/o/old-style-config-script-multiarch-path-arch-all.tag
@@ -0,0 +1,11 @@
+Tag: old-style-config-script-multiarch-path-arch-all
+Severity: error
+Check: files/config-scripts
+Explanation: The following file is an old style config file,
+ used to retrieve information about installed libraries in the system.
+ It is typically used to compile and link against one or more libraries.
+ .
+ This old style config file contains a multi-arch path and the package
+ is arch: all.
+ .
+ You should change the package to arch: any.
diff --git a/tags/o/old-style-config-script-multiarch-path.tag b/tags/o/old-style-config-script-multiarch-path.tag
new file mode 100644
index 0000000..9ab8644
--- /dev/null
+++ b/tags/o/old-style-config-script-multiarch-path.tag
@@ -0,0 +1,9 @@
+Tag: old-style-config-script-multiarch-path
+Severity: error
+Check: files/config-scripts
+Explanation: The following file is an old style config file, used
+ to retrieve information about installed libraries in the system.
+ It is typically used to compile and link against one or more libraries.
+ .
+ This old style config file contains a multi-arch path and the package
+ is declared Multi-arch.
diff --git a/tags/o/old-style-config-script.tag b/tags/o/old-style-config-script.tag
new file mode 100644
index 0000000..efcf1fe
--- /dev/null
+++ b/tags/o/old-style-config-script.tag
@@ -0,0 +1,26 @@
+Tag: old-style-config-script
+Severity: pedantic
+Check: files/config-scripts
+Explanation: The following file is an old style config file,
+ used to retrieve information about installed libraries in the system.
+ It is typically used to compile and link against one or more libraries.
+ .
+ Using this kind of system to pass compile file is obsolete and
+ will likely introduce bugs in a multi-arch system. Particularly,
+ this kind of script could only belong to a package that is not
+ Multi-Arch.
+ .
+ You should consider to move to pkg-config file and
+ warn your user to not use this script, and open a bug upstream.
+ .
+ You should also consider to implement this file as a compatibility
+ wrapper over pkg-config.
+ .
+ After fixing every reverse depends of your package and use
+ pkg-config reverse depends makefile, you should
+ consider to put this script, as a temporary convenience of your users,
+ under /usr/lib/$DEB&lowbar;HOST&lowbar;MULTIARCH/$PACKAGE/bin where
+ $DEB&lowbar;HOST&lowbar;MULTIARCH is the multi-arch triplet and $PACKAGE is the
+ package name. You should also consider to add a NEWS.Debian entry.
+See-Also: pkg-config(1),
+ http://sources.debian.net/src/imagemagick/8:6.8.9.9-6/debian/NEWS/
diff --git a/tags/o/older-debian-watch-file-standard.tag b/tags/o/older-debian-watch-file-standard.tag
new file mode 100644
index 0000000..7af7d44
--- /dev/null
+++ b/tags/o/older-debian-watch-file-standard.tag
@@ -0,0 +1,6 @@
+Tag: older-debian-watch-file-standard
+Severity: info
+Check: debian/watch/standard
+Explanation: The <code>version=</code> line in the <code>debian/watch</code> file in this
+ package declares an older version. Please upgrade when you have a chance.
+See-Also: uscan(1)
diff --git a/tags/o/older-source-format.tag b/tags/o/older-source-format.tag
new file mode 100644
index 0000000..cc0a288
--- /dev/null
+++ b/tags/o/older-source-format.tag
@@ -0,0 +1,15 @@
+Tag: older-source-format
+Severity: info
+Check: debian/source-dir
+Explanation:
+ This package uses an older source format. Please consider migrating
+ to a more modern format.
+ .
+ The 3.x series of source formats have a number of advantages including
+ superior compression formats, native patch handling, binary file
+ support, multiple upstream tarballs, etc.
+ .
+ More information is available here:
+ .
+ https://wiki.debian.org/Projects/DebSrc3.0
+See-Also: Bug#884498, dpkg-source(1)
diff --git a/tags/o/omitted-systemd-service-for-init.d-script.tag b/tags/o/omitted-systemd-service-for-init.d-script.tag
new file mode 100644
index 0000000..805cfe1
--- /dev/null
+++ b/tags/o/omitted-systemd-service-for-init.d-script.tag
@@ -0,0 +1,16 @@
+Tag: omitted-systemd-service-for-init.d-script
+Severity: error
+Check: systemd
+Explanation: The specified init.d script has no systemd equivalent and the
+ package ships other units.
+ .
+ This typically occurs when a maintainer missed script when adding
+ systemd integration, or a new init script was added in a new upstream
+ version.
+ .
+ Systemd has a SysV init.d script compatibility mode. It provides access to
+ each SysV init.d script as long as there is no native service file with the
+ same name (e.g. <code>/lib/systemd/system/rsyslog.service</code> corresponds to
+ <code>/etc/init.d/rsyslog</code>).
+Renamed-From:
+ systemd-no-service-for-init-script
diff --git a/tags/o/openpgp-file-has-implementation-specific-extension.tag b/tags/o/openpgp-file-has-implementation-specific-extension.tag
new file mode 100644
index 0000000..854e702
--- /dev/null
+++ b/tags/o/openpgp-file-has-implementation-specific-extension.tag
@@ -0,0 +1,20 @@
+Tag: openpgp-file-has-implementation-specific-extension
+Severity: pedantic
+Check: files/openpgp
+Explanation: The package includes an OpenPGP file with an implementation
+ specific extension such as <code>.gpg</code>, instead of the more correct
+ and neutral <code>.pgp</code>.
+ .
+ The specification for this format is called OpenPGP, and the extension name
+ that is short and considered implementation neutral is <code>.pgp</code>.
+ While currently the GnuPG project is widely used and one of the most known
+ OpenPGP implementations, using an extension after its name is detrimental
+ to other alternative implementations, when a better more neutral name can
+ be used instead.
+ .
+ Note that many of these files are referenced externally, and as such should
+ be considered an interface. Make sure to create backward compatibility
+ symlinks for a smooth transition.
+See-Also:
+ https://www.openpgp.org/,
+ https://www.rfc-editor.org/rfc/rfc4880
diff --git a/tags/o/opentype-font-prohibits-installable-embedding.tag b/tags/o/opentype-font-prohibits-installable-embedding.tag
new file mode 100644
index 0000000..e2c233a
--- /dev/null
+++ b/tags/o/opentype-font-prohibits-installable-embedding.tag
@@ -0,0 +1,7 @@
+Tag: opentype-font-prohibits-installable-embedding
+Severity: warning
+Check: fonts/opentype
+Explanation: This package installs an OpenType font with restrictive license
+ terms. The font does not permit installable embedding, as defined by
+ the OpenType standard.
+See-Also: https://docs.microsoft.com/en-us/typography/opentype/spec/os2#fstype
diff --git a/tags/o/opentype-font-wrong-filename.tag b/tags/o/opentype-font-wrong-filename.tag
new file mode 100644
index 0000000..b515506
--- /dev/null
+++ b/tags/o/opentype-font-wrong-filename.tag
@@ -0,0 +1,5 @@
+Tag: opentype-font-wrong-filename
+Severity: warning
+Check: fonts/opentype
+Explanation: This package installs an OpenType font with an extension other than
+ <code>.otf</code>. The check is case-insensitive.
diff --git a/tags/o/ored-build-depends-on-obsolete-package.tag b/tags/o/ored-build-depends-on-obsolete-package.tag
new file mode 100644
index 0000000..be958cd
--- /dev/null
+++ b/tags/o/ored-build-depends-on-obsolete-package.tag
@@ -0,0 +1,5 @@
+Tag: ored-build-depends-on-obsolete-package
+Severity: info
+Check: fields/package-relations
+Explanation: The package build-depends on an ORed group of packages which includes
+ a package that has been superseded.
diff --git a/tags/o/ored-depends-on-obsolete-package.tag b/tags/o/ored-depends-on-obsolete-package.tag
new file mode 100644
index 0000000..bf6157a
--- /dev/null
+++ b/tags/o/ored-depends-on-obsolete-package.tag
@@ -0,0 +1,5 @@
+Tag: ored-depends-on-obsolete-package
+Severity: info
+Check: fields/package-relations
+Explanation: The package depends on an ORed group of packages which includes
+ a package that has been superseded.
diff --git a/tags/o/orig-tarball-missing-upstream-signature.tag b/tags/o/orig-tarball-missing-upstream-signature.tag
new file mode 100644
index 0000000..0632f88
--- /dev/null
+++ b/tags/o/orig-tarball-missing-upstream-signature.tag
@@ -0,0 +1,23 @@
+Tag: orig-tarball-missing-upstream-signature
+Severity: warning
+Check: upstream-signature
+Explanation: The packaging includes an upstream signing key but the corresponding
+ <code>.asc</code> signature for one or more source tarballs are not included
+ in your .changes file.
+ .
+ Please ensure a
+ <code>&lt;package&gt;&lowbar;&lt;version&gt;.orig.tar.&lt;ext&gt;.asc</code> file
+ exists in the same directory as your
+ <code>&lt;package&gt;&lowbar;&lt;version&gt;.orig.tar.&lt;ext&gt;</code> tarball prior
+ to <code>dpkg-source --build</code> being called.
+ .
+ If you are repackaging your source tarballs for Debian Free Software
+ Guidelines compliance reasons, ensure that your package version includes
+ <code>dfsg</code> or similar.
+ .
+ Sometimes, an upstream signature must be added for an <code>orig.tar.gz</code>
+ that is already present in the archive. Please include the upstream sources
+ again with <code>dpkg-genchanges -sa</code> while the signature is also present.
+ Your upload will be accepted as long as the new <code>orig.tar.gz</code> file
+ is identical to the old one.
+See-Also: Bug#954743, Bug#872864
diff --git a/tags/o/orphaned-diversion.tag b/tags/o/orphaned-diversion.tag
new file mode 100644
index 0000000..47737cf
--- /dev/null
+++ b/tags/o/orphaned-diversion.tag
@@ -0,0 +1,6 @@
+Tag: orphaned-diversion
+Severity: error
+Check: maintainer-scripts/diversion
+Explanation: A diversion is being added for the named file, but then not removed.
+ It means the system will be left in a different state when the package is
+ installed and then removed.
diff --git a/tags/o/orphaned-package-maintained-in-private-space.tag b/tags/o/orphaned-package-maintained-in-private-space.tag
new file mode 100644
index 0000000..b47c279
--- /dev/null
+++ b/tags/o/orphaned-package-maintained-in-private-space.tag
@@ -0,0 +1,13 @@
+Tag: orphaned-package-maintained-in-private-space
+Severity: warning
+Check: fields/vcs
+Explanation:
+ This package is orphaned and the specified VCS field points to a private
+ space in the &ast;.debian.org infrastructure. The sources are probably not
+ accessible to the Quality Assurance (QA) Team, which prepares uploads
+ in the interim.
+ .
+ Please move the source repository to a location in
+ <code>https://salsa.debian.org/debian/</code> or <code>https://git.dgit.debian.org/</code>
+ or update the specified VCS field if the information is incorrect.
+See-Also: Bug#947671
diff --git a/tags/o/orphaned-package-not-maintained-in-debian-infrastructure.tag b/tags/o/orphaned-package-not-maintained-in-debian-infrastructure.tag
new file mode 100644
index 0000000..6a32f2f
--- /dev/null
+++ b/tags/o/orphaned-package-not-maintained-in-debian-infrastructure.tag
@@ -0,0 +1,12 @@
+Tag: orphaned-package-not-maintained-in-debian-infrastructure
+Severity: warning
+Check: fields/vcs
+Explanation:
+ This package is orphaned but the specified VCS field does not point to
+ an area within the &ast;.debian.org infrastructure
+ .
+ This prevents other developers and external contributors to collaborate
+ on its maintenance.
+ .
+ Please move the packaging to under the &ast;.debian.org umbrella or update
+ the specified VCS field if it is otherwise wrong.
diff --git a/tags/o/out-of-date-copyright-format-uri.tag b/tags/o/out-of-date-copyright-format-uri.tag
new file mode 100644
index 0000000..ab1edc9
--- /dev/null
+++ b/tags/o/out-of-date-copyright-format-uri.tag
@@ -0,0 +1,8 @@
+Tag: out-of-date-copyright-format-uri
+Severity: pedantic
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: A newer version of the machine-readable copyright file specification,
+ than the one referenced by the copyright file, is available.
+ .
+ This problem may have prevented Lintian from performing other checks.
diff --git a/tags/o/out-of-date-standards-version.tag b/tags/o/out-of-date-standards-version.tag
new file mode 100644
index 0000000..dbf3f6b
--- /dev/null
+++ b/tags/o/out-of-date-standards-version.tag
@@ -0,0 +1,18 @@
+Tag: out-of-date-standards-version
+Severity: info
+Check: fields/standards-version
+See-Also: https://www.debian.org/doc/debian-policy/upgrading-checklist.html
+Explanation: The source package refers to a Standards-Version older than the one
+ that was current at the time the package was created (according to the
+ timestamp of the latest <code>debian/changelog</code> entry). Please
+ consider updating the package to current Policy and setting this control
+ field appropriately.
+ .
+ If the package is already compliant with the current standards, you don't
+ have to re-upload the package just to adjust the Standards-Version
+ control field. However, please remember to update this field next time
+ you upload the package.
+ .
+ See <code>/usr/share/doc/debian-policy/upgrading-checklist.txt.gz</code> in
+ the debian-policy package for a summary of changes in newer versions of
+ Policy.
diff --git a/tags/o/outdated-relation-in-shlibs.tag b/tags/o/outdated-relation-in-shlibs.tag
new file mode 100644
index 0000000..279c920
--- /dev/null
+++ b/tags/o/outdated-relation-in-shlibs.tag
@@ -0,0 +1,10 @@
+Tag: outdated-relation-in-shlibs
+Severity: warning
+Check: debian/shlibs
+Renamed-From:
+ shlibs-uses-obsolete-relation
+Explanation: The forms "&lt;" and "&gt;" mean "&lt;=" and "&gt;=", not "&lt;&lt;"
+ and "&gt;&gt;" as one might expect. For that reason these forms are
+ obsolete, and should not be used in new packages. Use the longer forms
+ instead.
+See-Also: debian-policy 7.1
diff --git a/tags/o/output-of-updaterc.d-not-redirected-to-dev-null.tag b/tags/o/output-of-updaterc.d-not-redirected-to-dev-null.tag
new file mode 100644
index 0000000..b72dfab
--- /dev/null
+++ b/tags/o/output-of-updaterc.d-not-redirected-to-dev-null.tag
@@ -0,0 +1,6 @@
+Tag: output-of-updaterc.d-not-redirected-to-dev-null
+Severity: info
+Check: init-d
+Explanation: The output messages of the <code>update-rc.d</code> command should be
+ redirected to <code>/dev/null</code> because it is currently very chatty
+ per default.
diff --git a/tags/o/override-file-in-wrong-location.tag b/tags/o/override-file-in-wrong-location.tag
new file mode 100644
index 0000000..1332189
--- /dev/null
+++ b/tags/o/override-file-in-wrong-location.tag
@@ -0,0 +1,9 @@
+Tag: override-file-in-wrong-location
+Severity: error
+Check: debian/lintian-overrides
+Explanation: Lintian overrides should be put in a regular file named
+ <code>/usr/share/lintian/overrides/<em>package</em></code>. They should
+ not be in a subdirectory named like the package or in any location under
+ <code>/usr/share/doc</code>, which is obsolete.
+See-Also:
+ lintian-manual 2.4
diff --git a/tags/o/override-file-in-wrong-package.tag b/tags/o/override-file-in-wrong-package.tag
new file mode 100644
index 0000000..6d51fe9
--- /dev/null
+++ b/tags/o/override-file-in-wrong-package.tag
@@ -0,0 +1,8 @@
+Tag: override-file-in-wrong-package
+Severity: error
+Check: debian/lintian-overrides
+Explanation: This package includes Lintian overrides intended for another package.
+ Lintian overrides should be put in a regular file named
+ <code>/usr/share/lintian/overrides/<em>package</em></code>
+See-Also:
+ lintian-manual 2.4
diff --git a/tags/o/override_dh_auto_test-does-not-check-DEB_BUILD_OPTIONS.tag b/tags/o/override_dh_auto_test-does-not-check-DEB_BUILD_OPTIONS.tag
new file mode 100644
index 0000000..80143a0
--- /dev/null
+++ b/tags/o/override_dh_auto_test-does-not-check-DEB_BUILD_OPTIONS.tag
@@ -0,0 +1,29 @@
+Tag: override_dh_auto_test-does-not-check-DEB_BUILD_OPTIONS
+Severity: info
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package has an
+ <code>override&lowbar;dh&lowbar;auto&lowbar;test</code> target that does not appear to
+ check <code>DEB&lowbar;BUILD&lowbar;OPTIONS</code> against <code>nocheck</code>.
+ .
+ As this check is not automatically performed by debhelper(1), the
+ specified testsuite is run regardless of another maintainer using
+ the <code>nocheck</code> build option.
+ .
+ Please add a check such as:
+ .
+ override&lowbar;dh&lowbar;auto&lowbar;test:
+ ifeq (,$(filter nocheck,$(DEB&lowbar;BUILD&lowbar;OPTIONS)))
+ ./run-upstream-testsuite
+ endif
+ .
+ Lintian will ignore comments and other lines such as:
+ .
+ # Disabled
+ : Disabled
+ echo "Disabled"
+ mkdir foo/
+ ENV=var dh&lowbar;auto&lowbar;test -- ARG=value
+ .
+ This check is not required in Debhelper compat level 13 or greater
+ (see Bug#568897).
+See-Also: debian-policy 4.9.1, https://wiki.debian.org/BuildProfileSpec#Registered_profile_names
diff --git a/tags/o/override_dh_clean-does-not-call-dh_clean.tag b/tags/o/override_dh_clean-does-not-call-dh_clean.tag
new file mode 100644
index 0000000..ccc162b
--- /dev/null
+++ b/tags/o/override_dh_clean-does-not-call-dh_clean.tag
@@ -0,0 +1,11 @@
+Tag: override_dh_clean-does-not-call-dh_clean
+Severity: warning
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package has an
+ <code>override&lowbar;dh&lowbar;clean</code> target that does not reference <code>dh&lowbar;clean</code>.
+ .
+ This can result in packages not cleaning up properly via <code>debian/rules
+ clean</code>.
+ .
+ Please add a call to <code>dh&lowbar;clean</code>.
+See-Also: Bug#884419, Bug#884815
diff --git a/tags/o/override_dh_fixperms-does-not-call-dh_fixperms.tag b/tags/o/override_dh_fixperms-does-not-call-dh_fixperms.tag
new file mode 100644
index 0000000..5263562
--- /dev/null
+++ b/tags/o/override_dh_fixperms-does-not-call-dh_fixperms.tag
@@ -0,0 +1,12 @@
+Tag: override_dh_fixperms-does-not-call-dh_fixperms
+Severity: warning
+Check: debian/rules
+Explanation: The <code>debian/rules</code> file for this package has an
+ <code>override&lowbar;dh&lowbar;fixperms</code> target that does not reference
+ <code>dh&lowbar;fixperms</code>.
+ .
+ This can result in packages inheriting the <code>umask(2)</code> of the build
+ process, rendering the package unreproducible.
+ .
+ Please add a call to <code>dh&lowbar;fixperms</code>.
+See-Also: Bug#885909
diff --git a/tags/p/package-builds-dbg-and-dbgsym-variants.tag b/tags/p/package-builds-dbg-and-dbgsym-variants.tag
new file mode 100644
index 0000000..45f7aac
--- /dev/null
+++ b/tags/p/package-builds-dbg-and-dbgsym-variants.tag
@@ -0,0 +1,10 @@
+Tag: package-builds-dbg-and-dbgsym-variants
+Severity: warning
+Check: changes-file
+See-Also: dh_strip(1), https://wiki.debian.org/AutomaticDebugPackages
+Explanation: This package appears to build both -dbg and -dbgsym variants of a
+ package. Only one package should contain the debug symbols
+ .
+ Usually the -dbg should be dropped in favour of the -dbgsym. However,
+ in some cases (e.g. Python modules) the -dbg contains more than just
+ the debug symbols. In these cases the -dbgsym should not be built.
diff --git a/tags/p/package-contains-ancient-file.tag b/tags/p/package-contains-ancient-file.tag
new file mode 100644
index 0000000..aac9a01
--- /dev/null
+++ b/tags/p/package-contains-ancient-file.tag
@@ -0,0 +1,7 @@
+Tag: package-contains-ancient-file
+Severity: error
+Check: files/date
+Explanation: Your package contains a file that claims to have been generated
+ more than 20 years ago. This is most probably an error. Your package
+ will be rejected by the Debian archive scripts if it contains a file
+ with such a timestamp.
diff --git a/tags/p/package-contains-broken-symlink-wildcard.tag b/tags/p/package-contains-broken-symlink-wildcard.tag
new file mode 100644
index 0000000..7ebb7f6
--- /dev/null
+++ b/tags/p/package-contains-broken-symlink-wildcard.tag
@@ -0,0 +1,7 @@
+Tag: package-contains-broken-symlink-wildcard
+Severity: warning
+Check: files/symbolic-links/broken
+Explanation: The package contains a symlink with a target that
+ appears to be a "failed" wildcard expansion. Furthermore
+ the target does not exists in the package or any of its
+ direct dependencies (built from the same source package).
diff --git a/tags/p/package-contains-bts-control-dir.tag b/tags/p/package-contains-bts-control-dir.tag
new file mode 100644
index 0000000..0d854e7
--- /dev/null
+++ b/tags/p/package-contains-bts-control-dir.tag
@@ -0,0 +1,6 @@
+Tag: package-contains-bts-control-dir
+Severity: warning
+Check: files/bugs
+Explanation: The package contains a control directory for a bug tracking system.
+ It was most likely installed by accident, since bug tracking directories
+ usually don't belong in packages.
diff --git a/tags/p/package-contains-cmake-private-file.tag b/tags/p/package-contains-cmake-private-file.tag
new file mode 100644
index 0000000..af6a00c
--- /dev/null
+++ b/tags/p/package-contains-cmake-private-file.tag
@@ -0,0 +1,13 @@
+Tag: package-contains-cmake-private-file
+Severity: error
+Check: build-systems/cmake
+Explanation: The package ships a file in a location reserved for <code>CMake</code>.
+ It usually means you shipped a <code>Find</code> module.
+ .
+ Libraries should not ship Find modules Config files. Config files should
+ be installed in the unversioned path
+ <code>usr/(lib/&lt;arch&gt;|lib|share)/cmake/&lt;name&gt;&ast;/</code>
+ .
+ When CMake Config files are installed in an unversioned path, your
+ package will continue to work when a new version of CMake is uploaded.
+See-Also: https://wiki.debian.org/CMake, https://cmake.org/cmake/help/v3.10/manual/cmake-packages.7.html#config-file-packages
diff --git a/tags/p/package-contains-compiled-font-file.tag b/tags/p/package-contains-compiled-font-file.tag
new file mode 100644
index 0000000..15b04ef
--- /dev/null
+++ b/tags/p/package-contains-compiled-font-file.tag
@@ -0,0 +1,6 @@
+Tag: package-contains-compiled-font-file
+Severity: error
+Check: desktop/x11
+Explanation: This package appears to contain a compiled font file. These files
+ should be generated automatically by triggers and it must not be shipped
+ in any package.
diff --git a/tags/p/package-contains-compiled-glib-schema.tag b/tags/p/package-contains-compiled-glib-schema.tag
new file mode 100644
index 0000000..1c70c5b
--- /dev/null
+++ b/tags/p/package-contains-compiled-glib-schema.tag
@@ -0,0 +1,7 @@
+Tag: package-contains-compiled-glib-schema
+Severity: error
+Check: files/names
+Explanation: This package contains a file named <code>gschemas.compiled</code>. This
+ file is generated automatically by triggers and it must not be shipped in
+ any package.
+See-Also: Bug#883801
diff --git a/tags/p/package-contains-documentation-outside-usr-share-doc.tag b/tags/p/package-contains-documentation-outside-usr-share-doc.tag
new file mode 100644
index 0000000..09fabca
--- /dev/null
+++ b/tags/p/package-contains-documentation-outside-usr-share-doc.tag
@@ -0,0 +1,25 @@
+Tag: package-contains-documentation-outside-usr-share-doc
+Severity: info
+Check: documentation
+Explanation: This package ships a documentation file outside /usr/share/doc
+ Documentation files are normally installed inside <code>/usr/share/doc</code>.
+ .
+ If this file doesn't describe the contents or purpose of the directory
+ it is in, please consider moving this file to <code>/usr/share/doc/</code>
+ or maybe even removing it. If this file does describe the contents
+ or purpose of the directory it is in, please add a lintian override.
+
+Screen: python/egg/metadata
+Advocates: Scott Kitterman <debian@kitterman.com>
+Reason: The folders <code>XXX.dist-info/</code> and <code>XXX.egg-info/</code>
+ hold metadata for Python modules. Those files are not documentation even though
+ some of their names carry the <code>.txt</code> file extension.
+ .
+ Python modules can be both public and private.
+See-Also:
+ https://www.python.org/dev/peps/pep-0427/#the-dist-info-directory,
+ https://www.python.org/dev/peps/pep-0376/#id16,
+ https://www.python.org/dev/peps/pep-0610/,
+ https://www.python.org/dev/peps/pep-0639/,
+ https://setuptools.pypa.io/en/latest/deprecated/python_eggs.html,
+ Bug#1003913
diff --git a/tags/p/package-contains-empty-directory.tag b/tags/p/package-contains-empty-directory.tag
new file mode 100644
index 0000000..6ef9072
--- /dev/null
+++ b/tags/p/package-contains-empty-directory.tag
@@ -0,0 +1,10 @@
+Tag: package-contains-empty-directory
+Severity: info
+Check: files/empty-directories
+Explanation: This package installs an empty directory. This might be intentional
+ but it's normally a mistake. If it is intentional, add a Lintian override.
+ .
+ If a package ships with or installs empty directories, you can remove them
+ in debian/rules by calling:
+ .
+ $ find path/to/base/dir -type d -empty -delete
diff --git a/tags/p/package-contains-eslint-config-file.tag b/tags/p/package-contains-eslint-config-file.tag
new file mode 100644
index 0000000..430db18
--- /dev/null
+++ b/tags/p/package-contains-eslint-config-file.tag
@@ -0,0 +1,11 @@
+Tag: package-contains-eslint-config-file
+Severity: error
+Check: files/names
+Explanation: This package ships an ESLint config file. This file is
+ a configuration file for the ESLint pluggable linting utility
+ for JavaScript.
+ .
+ Even if these files are useful for modifying the source,
+ they do not belong in installed packages.
+ .
+ Please remove this file from your package.
diff --git a/tags/p/package-contains-file-in-etc-skel.tag b/tags/p/package-contains-file-in-etc-skel.tag
new file mode 100644
index 0000000..f47f468
--- /dev/null
+++ b/tags/p/package-contains-file-in-etc-skel.tag
@@ -0,0 +1,13 @@
+Tag: package-contains-file-in-etc-skel
+Severity: error
+Check: files/names
+Explanation: This package ships the specified file under <code>/etc/skel</code>. Files
+ in this directory are copied into new user accounts by <code>adduser(8)</code>.
+ .
+ However, <code>/etc/skel</code> should be empty as possible as there is no
+ mechanism for ensuring files are copied into the accounts of existing
+ users when the package is installed.
+ .
+ Please remove the installation of this file, ensuring this package
+ can automatically create them or can otherwise function without them.
+See-Also: debian-policy 10.7.5
diff --git a/tags/p/package-contains-file-in-usr-share-hal.tag b/tags/p/package-contains-file-in-usr-share-hal.tag
new file mode 100644
index 0000000..6f5605b
--- /dev/null
+++ b/tags/p/package-contains-file-in-usr-share-hal.tag
@@ -0,0 +1,9 @@
+Tag: package-contains-file-in-usr-share-hal
+Severity: warning
+Check: files/names
+Explanation: This package installs the specified file under
+ <code>/usr/share/hal/</code> but this directory is no longer looked at
+ by any package in Debian since the removal of the <code>hal</code> package
+ in 2014.
+ .
+ Please remove or otherwise prevent the installation of this file.
diff --git a/tags/p/package-contains-hardlink.tag b/tags/p/package-contains-hardlink.tag
new file mode 100644
index 0000000..5539e58
--- /dev/null
+++ b/tags/p/package-contains-hardlink.tag
@@ -0,0 +1,14 @@
+Tag: package-contains-hardlink
+Severity: warning
+Check: files/hard-links
+Explanation: The package contains a hardlink in <code>/etc</code> or across different
+ directories. This might not work at all if directories are on different
+ filesystems (which can happen anytime as the system administrator sees fit),
+ certain filesystems such as AFS don't even support cross-directory hardlinks
+ at all.
+ .
+ For configuration files, certain editors might break hardlinks, and so
+ does dpkg in certain cases.
+ .
+ A better solution might be using symlinks here.
+See-Also: debian-policy 10.7.3
diff --git a/tags/p/package-contains-icon-cache-in-generic-dir.tag b/tags/p/package-contains-icon-cache-in-generic-dir.tag
new file mode 100644
index 0000000..04efa6c
--- /dev/null
+++ b/tags/p/package-contains-icon-cache-in-generic-dir.tag
@@ -0,0 +1,8 @@
+Tag: package-contains-icon-cache-in-generic-dir
+Severity: warning
+Check: files/names
+Explanation: This package installs the specified icon cache in a generic
+ location such as <code>/usr/share/icons/hicolor</code> which will
+ invariably clash with other packages.
+ .
+ Please remove or otherwise prevent the installation of this file.
diff --git a/tags/p/package-contains-info-dir-file.tag b/tags/p/package-contains-info-dir-file.tag
new file mode 100644
index 0000000..7354361
--- /dev/null
+++ b/tags/p/package-contains-info-dir-file.tag
@@ -0,0 +1,10 @@
+Tag: package-contains-info-dir-file
+Severity: error
+Check: documentation
+Explanation: This package contains a file named <code>dir</code> or <code>dir.old</code>,
+ possibly compressed, in <code>/usr/share/info</code>. This is the directory
+ (or backup) of info pages and is generated automatically by install-info
+ when a package containing info documentation is installed. Some upstream
+ build systems create it automatically, but it must not be included in a
+ package since it needs to be generated dynamically based on the installed
+ info files on the system.
diff --git a/tags/p/package-contains-linda-override.tag b/tags/p/package-contains-linda-override.tag
new file mode 100644
index 0000000..6e4cc37
--- /dev/null
+++ b/tags/p/package-contains-linda-override.tag
@@ -0,0 +1,7 @@
+Tag: package-contains-linda-override
+Severity: warning
+Check: linda
+Explanation: This package contains a linda override file in
+ <code>/usr/share/linda/overrides</code>. Linda is obsolete and has been
+ removed from the archive as of 2008-03-04. Linda overrides should
+ probably be dropped from packages.
diff --git a/tags/p/package-contains-mime-cache-file.tag b/tags/p/package-contains-mime-cache-file.tag
new file mode 100644
index 0000000..3165e3b
--- /dev/null
+++ b/tags/p/package-contains-mime-cache-file.tag
@@ -0,0 +1,9 @@
+Tag: package-contains-mime-cache-file
+Severity: error
+Check: mimeinfo
+Explanation: This package contains a cache file generated automatically by
+ update-mime-database when a package containing MIME-Info Database
+ files is installed. Some upstream build systems create them
+ automatically, but they must not be included in a package since they need
+ to be generated dynamically based on the installed MIME-Info Database
+ files on the system.
diff --git a/tags/p/package-contains-mime-file-outside-package-dir.tag b/tags/p/package-contains-mime-file-outside-package-dir.tag
new file mode 100644
index 0000000..f56c274
--- /dev/null
+++ b/tags/p/package-contains-mime-file-outside-package-dir.tag
@@ -0,0 +1,10 @@
+Tag: package-contains-mime-file-outside-package-dir
+Severity: error
+Check: mimeinfo
+See-Also: Bug#761649, /usr/share/doc/shared-mime-info/
+Explanation: This package contains a file in a path reserved solely for
+ mime cache file.
+ .
+ /usr/share/mime/ files are cache generated from
+ /usr/share/mime/packages/. Thus file under /usr/share/mime/
+ should not be installed
diff --git a/tags/p/package-contains-mimeinfo.cache-file.tag b/tags/p/package-contains-mimeinfo.cache-file.tag
new file mode 100644
index 0000000..fbc4e98
--- /dev/null
+++ b/tags/p/package-contains-mimeinfo.cache-file.tag
@@ -0,0 +1,10 @@
+Tag: package-contains-mimeinfo.cache-file
+Severity: error
+Check: mimeinfo
+Explanation: This package contains a file named <code>mimeinfo.cache</code>,
+ possibly compressed, in <code>/usr/share/applications</code>. This file is
+ generated automatically by update-desktop-database when a package
+ containing <code>.desktop</code> files associated to MIME types is installed.
+ Some upstream build systems create it automatically, but it must not be
+ included in a package since it needs to be generated dynamically based on
+ the installed .desktop files on the system.
diff --git a/tags/p/package-contains-multiple-dpi-fonts.tag b/tags/p/package-contains-multiple-dpi-fonts.tag
new file mode 100644
index 0000000..9c342a8
--- /dev/null
+++ b/tags/p/package-contains-multiple-dpi-fonts.tag
@@ -0,0 +1,9 @@
+Tag: package-contains-multiple-dpi-fonts
+Severity: warning
+Check: desktop/x11
+See-Also: debian-policy 11.8.5
+Explanation: This package contains both 100dpi and 75dpi bitmapped fonts. Both
+ versions should not be included in a single package. If both resolutions
+ are available, they should be provided in separate binary packages with
+ <code>-75dpi</code> or <code>-100dpi</code> appended to the package name for the
+ corresponding fonts.
diff --git a/tags/p/package-contains-no-arch-dependent-files.tag b/tags/p/package-contains-no-arch-dependent-files.tag
new file mode 100644
index 0000000..2c9a8a0
--- /dev/null
+++ b/tags/p/package-contains-no-arch-dependent-files.tag
@@ -0,0 +1,9 @@
+Tag: package-contains-no-arch-dependent-files
+Severity: info
+Check: files/architecture
+Experimental: yes
+Explanation: All files in this package are architecture-independent,
+ but the package is not marked <code>Architecture: all</code>.
+ .
+ The package should probably be marked <code>Architecture: all</code>.
+See-Also: debian-policy 5.6.8
diff --git a/tags/p/package-contains-npm-ignore-file.tag b/tags/p/package-contains-npm-ignore-file.tag
new file mode 100644
index 0000000..723ac4f
--- /dev/null
+++ b/tags/p/package-contains-npm-ignore-file.tag
@@ -0,0 +1,9 @@
+Tag: package-contains-npm-ignore-file
+Severity: error
+Check: files/names
+Explanation: The package ships an <code>.npmignore</code> file. It is a
+ configuration file for the <code>Node.js</code> package manager.
+ It is not needed in a Debian package.
+ .
+ The file tells the <code>npm</code> command to keep files out of
+ a <code>node</code> package. Please remove it from your package.
diff --git a/tags/p/package-contains-python-coverage-file.tag b/tags/p/package-contains-python-coverage-file.tag
new file mode 100644
index 0000000..0bafff0
--- /dev/null
+++ b/tags/p/package-contains-python-coverage-file.tag
@@ -0,0 +1,11 @@
+Tag: package-contains-python-coverage-file
+Severity: warning
+Check: files/names
+Explanation: The package contains a file that looks like output from the Python
+ coverage.py tool. These are generated by python{,3}-coverage during a test
+ run, noting which parts of the code have been executed. They can then be
+ subsequently analyzed to identify code that could have been executed but was
+ not.
+ .
+ As they are unlikely to be of utility to end-users, these files should not
+ be shipped in the final binary package.
diff --git a/tags/p/package-contains-python-doctree-file.tag b/tags/p/package-contains-python-doctree-file.tag
new file mode 100644
index 0000000..cd77238
--- /dev/null
+++ b/tags/p/package-contains-python-doctree-file.tag
@@ -0,0 +1,29 @@
+Tag: package-contains-python-doctree-file
+Severity: warning
+Check: files/names
+Explanation: This package appears to contain a pickled cache of reStructuredText
+ (&ast;.rst) documentation in a <code>.doctree</code> file.
+ .
+ These are not needed to display the documentation correctly and as they can
+ contain absolute build paths can affect the reproducibility of the package.
+ .
+ The easiest way to prevent this is to use the <code>--with=sphinxdoc</code>
+ debhelper sequence or to add an explicit call to
+ <code>dh&lowbar;sphinxdoc</code>. This will then require a dependency on
+ <code>${sphinxdoc:Depends}</code> for the relevant binary package.
+ .
+ Either prevent the installation of the <code>.doctree</code> file (or parent
+ <code>doctrees</code> directory if there is one) or pass the <code>-d</code>
+ option to <code>sphinx-build(1)</code> to create the caches elsewhere.
+ .
+ For example:
+ .
+ override&lowbar;dh&lowbar;auto&lowbar;build:
+ dh&lowbar;auto&lowbar;build
+ PYTHONPATH=. sphinx-build -bman docs/ -d debian/doctrees docs/build/html
+ PYTHONPATH=. sphinx-build -bhtml docs/ -d debian/doctrees docs/build/html
+ .
+ override&lowbar;dh&lowbar;auto&lowbar;clean:
+ dh&lowbar;auto&lowbar;clean
+ rm -rf debian/doctrees
+See-Also: http://sphinx-doc.org/invocation.html#cmdoption-sphinx-build-d
diff --git a/tags/p/package-contains-python-dot-directory.tag b/tags/p/package-contains-python-dot-directory.tag
new file mode 100644
index 0000000..727c761
--- /dev/null
+++ b/tags/p/package-contains-python-dot-directory.tag
@@ -0,0 +1,12 @@
+Tag: package-contains-python-dot-directory
+Severity: warning
+Check: files/names
+Explanation: The package contains files left over from a Python build
+ process, such as cached output from <code>pytest</code>.
+ .
+ Users of your package probably do not need the files. Please rebuild
+ your package with a newer version of <code>pybuild/dh-python</code>.
+ Many of the files will disappear.
+ .
+ Usually, the files contain time-stamped data. They will prevent your
+ package from being reproducible.
diff --git a/tags/p/package-contains-python-header-in-incorrect-directory.tag b/tags/p/package-contains-python-header-in-incorrect-directory.tag
new file mode 100644
index 0000000..50bc667
--- /dev/null
+++ b/tags/p/package-contains-python-header-in-incorrect-directory.tag
@@ -0,0 +1,14 @@
+Tag: package-contains-python-header-in-incorrect-directory
+Severity: error
+Check: files/names
+Explanation: This package ships a header file such as
+ <code>/usr/include/python3.7/foo/bar.h</code>. However,
+ <code>/usr/include/python3.7</code> is a symlink to <code>python3.7m</code> in
+ <code>libpython3.7-dev</code>.
+ .
+ This may result in silent file overwrites or, depending on the unpacking
+ order (if <code>/usr/include/python3.7</code> is a directory), separating
+ the headers into two independent trees.
+ .
+ These header files should be shipped in
+ <code>/usr/include/python3.7m</code> instead.
diff --git a/tags/p/package-contains-python-hypothesis-example.tag b/tags/p/package-contains-python-hypothesis-example.tag
new file mode 100644
index 0000000..44a8ae0
--- /dev/null
+++ b/tags/p/package-contains-python-hypothesis-example.tag
@@ -0,0 +1,17 @@
+Tag: package-contains-python-hypothesis-example
+Severity: warning
+Check: files/names
+Explanation: This package appears to contain the output of running a Python
+ "Hypothesis" testsuite.
+ .
+ These are not useful in the binary package or to end-users. In addition,
+ as they contain random/non-determinstic contents, they can affect the
+ reproducibility of the package.
+ .
+ You can disable generation of these files by, for example:
+ .
+ export HYPOTHESIS&lowbar;DATABASE&lowbar;FILE = $(CURDIR)/debian/hypothesis
+ .
+ override&lowbar;dh&lowbar;auto&lowbar;clean:
+ dh&lowbar;auto&lowbar;clean
+ rm -rf $(CURDIR)/debian/hypothesis
diff --git a/tags/p/package-contains-python-tests-in-global-namespace.tag b/tags/p/package-contains-python-tests-in-global-namespace.tag
new file mode 100644
index 0000000..eec3327
--- /dev/null
+++ b/tags/p/package-contains-python-tests-in-global-namespace.tag
@@ -0,0 +1,12 @@
+Tag: package-contains-python-tests-in-global-namespace
+Severity: warning
+Check: files/names
+Explanation: This package appears to contain Python test files such as
+ <code>test&lowbar;foo.py</code> or <code>test&lowbar;foo/</code> in the global module
+ namespace.
+ .
+ Whilst the tests may be useful in the binary package, it is probably a
+ mistake to pollute the "top-level" namespace in this way.
+ .
+ Please install them to a subdirectory of the module being tested
+ instead or simply omit from the binary package entirely.
diff --git a/tags/p/package-contains-readme-for-other-platform-or-distro.tag b/tags/p/package-contains-readme-for-other-platform-or-distro.tag
new file mode 100644
index 0000000..c29fe8d
--- /dev/null
+++ b/tags/p/package-contains-readme-for-other-platform-or-distro.tag
@@ -0,0 +1,8 @@
+Tag: package-contains-readme-for-other-platform-or-distro
+Severity: warning
+Check: documentation
+Explanation: package contains a README.(platform) file that contains instructions
+ specific to a platform or distribution other than Debian and thus can
+ most likely be removed. If it contains information that pertains to
+ Debian, please consider renaming it, or including it in an already
+ existing README file.
diff --git a/tags/p/package-contains-sass-cache-directory.tag b/tags/p/package-contains-sass-cache-directory.tag
new file mode 100644
index 0000000..02a5733
--- /dev/null
+++ b/tags/p/package-contains-sass-cache-directory.tag
@@ -0,0 +1,17 @@
+Tag: package-contains-sass-cache-directory
+Severity: warning
+Check: files/names
+Explanation: This package appears to ship a <code>.sass-cache/</code> directory,
+ the result of running a the "Sass" utility that compiles CSS from SASS
+ or SCSS files.
+ .
+ These are not useful in the binary package or to end-users. In
+ addition, as they contain random/non-determinstic contents or
+ filenames they can affect the reproducibility of the package.
+ .
+ Please ensure they are removed prior to final package build. For
+ example, with:
+ .
+ override&lowbar;dh&lowbar;install:
+ dh&lowbar;install -X.sass-cache
+See-Also: https://reproducible-builds.org/, Bug#920595
diff --git a/tags/p/package-contains-thumbnails-dir.tag b/tags/p/package-contains-thumbnails-dir.tag
new file mode 100644
index 0000000..2ebe714
--- /dev/null
+++ b/tags/p/package-contains-thumbnails-dir.tag
@@ -0,0 +1,6 @@
+Tag: package-contains-thumbnails-dir
+Severity: error
+Check: images/thumbnails
+Explanation: Package contains a .thumbnails directory. It was most likely installed by
+ accident, since thumbnails usually don't belong in packages.
+See-Also: https://specifications.freedesktop.org/thumbnail-spec/thumbnail-spec-latest.html
diff --git a/tags/p/package-contains-timestamped-gzip.tag b/tags/p/package-contains-timestamped-gzip.tag
new file mode 100644
index 0000000..93f4094
--- /dev/null
+++ b/tags/p/package-contains-timestamped-gzip.tag
@@ -0,0 +1,9 @@
+Tag: package-contains-timestamped-gzip
+Severity: warning
+Check: files/compressed/gz
+Explanation: The package contains a gzip-compressed file that has timestamps.
+ Such files make the packages unreproducible, because their
+ contents depend on the time when the package was built.
+ .
+ Please consider passing the "-n" flag to gzip to avoid this.
+See-Also: https://wiki.debian.org/ReproducibleBuilds
diff --git a/tags/p/package-contains-unsafe-symlink.tag b/tags/p/package-contains-unsafe-symlink.tag
new file mode 100644
index 0000000..72f11d6
--- /dev/null
+++ b/tags/p/package-contains-unsafe-symlink.tag
@@ -0,0 +1,6 @@
+Tag: package-contains-unsafe-symlink
+Severity: error
+Check: files/symbolic-links/broken
+Explanation: The package contains an unsafe symlink. If followed,
+ the link will escape the package root.
+See-Also: debian-policy 10.5
diff --git a/tags/p/package-contains-upstream-installation-documentation.tag b/tags/p/package-contains-upstream-installation-documentation.tag
new file mode 100644
index 0000000..1e13fdb
--- /dev/null
+++ b/tags/p/package-contains-upstream-installation-documentation.tag
@@ -0,0 +1,8 @@
+Tag: package-contains-upstream-installation-documentation
+Severity: warning
+Check: documentation
+See-Also: debian-policy 12.3
+Explanation: Binary packages do not need to contain the instructions for building
+ and installing the package as this info is not needed by package users.
+ If the info contained is important for configuration perhaps it could be
+ summarized in README.Debian, otherwise an override may be added.
diff --git a/tags/p/package-contains-usr-unmerged-pathnames.tag b/tags/p/package-contains-usr-unmerged-pathnames.tag
new file mode 100644
index 0000000..68c9f9d
--- /dev/null
+++ b/tags/p/package-contains-usr-unmerged-pathnames.tag
@@ -0,0 +1,17 @@
+Tag: package-contains-usr-unmerged-pathnames
+Severity: classification
+Check: files/usr-merge
+Explanation: The package installs the listed file to a directory in / (the
+ filesystem root) rather than to the corresponding directory inside /usr.
+ .
+ Debian requires systems to mount /usr prior to invoking init (using an
+ initramfs if necessary) so any executables, libraries, or other files
+ placed in / for use by early portions of the system init no longer need
+ to do so.
+ .
+ Moving a file from / to /usr (especially an executable in /bin or
+ /sbin) will often require a compatibility symlink to the new location,
+ as other software may invoke it by absolute path.
+ .
+ A compatibility symlink to the corresponding file in /usr will not
+ trigger this warning but a symlink to anywhere else will.
diff --git a/tags/p/package-contains-vcs-control-dir.tag b/tags/p/package-contains-vcs-control-dir.tag
new file mode 100644
index 0000000..a6ad53b
--- /dev/null
+++ b/tags/p/package-contains-vcs-control-dir.tag
@@ -0,0 +1,6 @@
+Tag: package-contains-vcs-control-dir
+Severity: warning
+Check: files/vcs
+Explanation: The package contains a control directory for a version control system.
+ It was most likely installed by accident, since version control directories
+ usually don't belong in packages.
diff --git a/tags/p/package-contains-vcs-control-file.tag b/tags/p/package-contains-vcs-control-file.tag
new file mode 100644
index 0000000..47f5a36
--- /dev/null
+++ b/tags/p/package-contains-vcs-control-file.tag
@@ -0,0 +1,8 @@
+Tag: package-contains-vcs-control-file
+Severity: warning
+Check: files/vcs
+Explanation: The package contains a VCS control file such as .(cvs|git|hg)ignore.
+ Files such as these are used by revision control systems to, for example,
+ specify untracked files it should ignore or inventory files. This file
+ is generally useless in an installed package and was probably installed
+ by accident.
diff --git a/tags/p/package-contains-xvpics-dir.tag b/tags/p/package-contains-xvpics-dir.tag
new file mode 100644
index 0000000..2b68ecb
--- /dev/null
+++ b/tags/p/package-contains-xvpics-dir.tag
@@ -0,0 +1,5 @@
+Tag: package-contains-xvpics-dir
+Severity: error
+Check: images/thumbnails
+Explanation: Package contains a .xvpics directory. It was most likely installed by
+ accident, since thumbnails usually don't belong in packages.
diff --git a/tags/p/package-depends-on-an-x-font-package.tag b/tags/p/package-depends-on-an-x-font-package.tag
new file mode 100644
index 0000000..7291d85
--- /dev/null
+++ b/tags/p/package-depends-on-an-x-font-package.tag
@@ -0,0 +1,10 @@
+Tag: package-depends-on-an-x-font-package
+Severity: error
+Check: fields/package-relations
+Explanation: Packages must not depend on X Window System font packages.
+ .
+ If one or more of the fonts so packaged are necessary for proper operation
+ of the package with which they are associated the font package may be
+ Recommended; if the fonts merely provide an enhancement, a Suggests
+ relationship may be used.
+See-Also: debian-policy 11.8.5
diff --git a/tags/p/package-depends-on-hardcoded-libc.tag b/tags/p/package-depends-on-hardcoded-libc.tag
new file mode 100644
index 0000000..f3fe4f5
--- /dev/null
+++ b/tags/p/package-depends-on-hardcoded-libc.tag
@@ -0,0 +1,6 @@
+Tag: package-depends-on-hardcoded-libc
+Severity: warning
+Check: substvars/libc
+Explanation: The package depends directly on <code>libc</code>. Please use
+ only the substitution variables <code>${shlibs:Depends}</code> in the relevant
+ stanza in the <code>debian/control</code> file.
diff --git a/tags/p/package-depends-on-multiple-libpng-versions.tag b/tags/p/package-depends-on-multiple-libpng-versions.tag
new file mode 100644
index 0000000..f187e3d
--- /dev/null
+++ b/tags/p/package-depends-on-multiple-libpng-versions.tag
@@ -0,0 +1,6 @@
+Tag: package-depends-on-multiple-libpng-versions
+Severity: error
+Check: fields/package-relations
+Explanation: The package seems to declare several relations to a libpng version.
+ This is not only sloppy but in the case of libraries, it may well break
+ the runtime execution of programs.
diff --git a/tags/p/package-depends-on-multiple-libstdc-versions.tag b/tags/p/package-depends-on-multiple-libstdc-versions.tag
new file mode 100644
index 0000000..3136857
--- /dev/null
+++ b/tags/p/package-depends-on-multiple-libstdc-versions.tag
@@ -0,0 +1,6 @@
+Tag: package-depends-on-multiple-libstdc-versions
+Severity: error
+Check: fields/package-relations
+Explanation: The package seems to declare several relations to a libstdc version.
+ This is not only sloppy but in the case of libraries, it may well break
+ the runtime execution of programs.
diff --git a/tags/p/package-depends-on-multiple-tcl-versions.tag b/tags/p/package-depends-on-multiple-tcl-versions.tag
new file mode 100644
index 0000000..13ee51f
--- /dev/null
+++ b/tags/p/package-depends-on-multiple-tcl-versions.tag
@@ -0,0 +1,6 @@
+Tag: package-depends-on-multiple-tcl-versions
+Severity: error
+Check: fields/package-relations
+Explanation: The package seems to declare several relations to a tcl version.
+ This is not only sloppy but in the case of libraries, it may well break
+ the runtime execution of programs.
diff --git a/tags/p/package-depends-on-multiple-tclx-versions.tag b/tags/p/package-depends-on-multiple-tclx-versions.tag
new file mode 100644
index 0000000..bb01a6e
--- /dev/null
+++ b/tags/p/package-depends-on-multiple-tclx-versions.tag
@@ -0,0 +1,6 @@
+Tag: package-depends-on-multiple-tclx-versions
+Severity: error
+Check: fields/package-relations
+Explanation: The package seems to declare several relations to a tclx version.
+ This is not only sloppy but in the case of libraries, it may well break
+ the runtime execution of programs.
diff --git a/tags/p/package-depends-on-multiple-tk-versions.tag b/tags/p/package-depends-on-multiple-tk-versions.tag
new file mode 100644
index 0000000..24a9075
--- /dev/null
+++ b/tags/p/package-depends-on-multiple-tk-versions.tag
@@ -0,0 +1,6 @@
+Tag: package-depends-on-multiple-tk-versions
+Severity: error
+Check: fields/package-relations
+Explanation: The package seems to declare several relations to a tk version.
+ This is not only sloppy but in the case of libraries, it may well break
+ the runtime execution of programs.
diff --git a/tags/p/package-does-not-install-examples.tag b/tags/p/package-does-not-install-examples.tag
new file mode 100644
index 0000000..01b43d9
--- /dev/null
+++ b/tags/p/package-does-not-install-examples.tag
@@ -0,0 +1,25 @@
+Tag: package-does-not-install-examples
+Severity: pedantic
+Check: examples
+Explanation: The original source tarball contains the specified examples
+ directory. However, no examples are installed in any binary packages.
+ .
+ Please use <code>dh&lowbar;installexamples</code> to install these to the most
+ relevant package, for example by adding the directory name followed
+ by a wildcard to a <code>debian/pkgname.examples</code> file.
+ .
+ Lintian looks for any directory called <code>examples</code> under
+ <code>/usr/share/doc</code> in all binary packages.
+See-Also:
+ dh_installexamples(1)
+
+Screen: examples/in-tests
+Advocates: Scott Kitterman <debian@kitterman.com>
+Reason:
+ Some sources like python-tomlkit trigger this tag for tests because of files
+ in ./tests/examples/. They are not examples for tomlkit, however. They are
+ examples of TOML files used in the tests.
+ .
+ Overall, the check is probably better off not looking in test directories.
+See-Also:
+ Bug#1005184
diff --git a/tags/p/package-does-not-use-debhelper-or-cdbs.tag b/tags/p/package-does-not-use-debhelper-or-cdbs.tag
new file mode 100644
index 0000000..4f43b57
--- /dev/null
+++ b/tags/p/package-does-not-use-debhelper-or-cdbs.tag
@@ -0,0 +1,11 @@
+Tag: package-does-not-use-debhelper-or-cdbs
+Severity: pedantic
+Check: debhelper
+Explanation: This package does not appear to use a build system helper such as
+ debhelper or cdbs.
+ .
+ It is recommended that packages use such tools as they avoid a large
+ number of common errors and tedious boilerplate as well as permit
+ distribution-wide changes to packages and reduce the "bus factor" &
+ barriers to entry from external contributors.
+See-Also: debhelper(7), dh(1), https://build-common.alioth.debian.org/
diff --git a/tags/p/package-file-is-executable.tag b/tags/p/package-file-is-executable.tag
new file mode 100644
index 0000000..94429c1
--- /dev/null
+++ b/tags/p/package-file-is-executable.tag
@@ -0,0 +1,10 @@
+Tag: package-file-is-executable
+Severity: warning
+Check: debhelper
+Explanation: The named packaging file is executable.
+ .
+ There is no reason to make the <code>control</code>, <code>changelog</code>
+ or <code>copyright</code> files executable.
+ .
+ You will also see this tag for a Debhelper-related packaging file that is
+ marked executable while using a <code>compat</code> level below 9.
diff --git a/tags/p/package-has-long-file-name.tag b/tags/p/package-has-long-file-name.tag
new file mode 100644
index 0000000..2e92178
--- /dev/null
+++ b/tags/p/package-has-long-file-name.tag
@@ -0,0 +1,12 @@
+Tag: package-has-long-file-name
+Severity: warning
+Check: archive/file/name/length
+Explanation: The package has a very long filename. This may complicate
+ shipping the package on some media that put restrictions on the
+ length of the filenames (such as CDs).
+ .
+ For architecture dependent packages, the tag is emitted based on the
+ length of the longest architecture name rather than the name of the
+ current architecture.
+See-Also:
+ https://lists.debian.org/debian-devel/2011/03/msg00943.html
diff --git a/tags/p/package-has-unnecessary-activation-of-ldconfig-trigger.tag b/tags/p/package-has-unnecessary-activation-of-ldconfig-trigger.tag
new file mode 100644
index 0000000..edd531c
--- /dev/null
+++ b/tags/p/package-has-unnecessary-activation-of-ldconfig-trigger.tag
@@ -0,0 +1,12 @@
+Tag: package-has-unnecessary-activation-of-ldconfig-trigger
+Severity: warning
+Check: libraries/shared/trigger/ldconfig
+Explanation: The package activates the ldconfig trigger even though no shared
+ libraries are installed in a directory controlled by the dynamic
+ library loader.
+ .
+ Note this may be triggered by a bug in debhelper, that causes it to
+ auto-generate an ldconfig trigger for packages that do not need it.
+See-Also:
+ debian-policy 8.1.1,
+ Bug#204975
diff --git a/tags/p/package-installs-apt-keyring.tag b/tags/p/package-installs-apt-keyring.tag
new file mode 100644
index 0000000..fe4b439
--- /dev/null
+++ b/tags/p/package-installs-apt-keyring.tag
@@ -0,0 +1,13 @@
+Tag: package-installs-apt-keyring
+Severity: error
+Check: apt
+See-Also: apt-key(8)
+Explanation: Debian packages should not install files under
+ <code>/etc/apt/trusted.gpg.d/</code> or install an
+ <code>/etc/apt/trusted.gpg</code> file.
+ .
+ Trusted keyrings are under the control of the local administrator and
+ packages should not override local administrator choices.
+ .
+ Packages whose names end in <code>-apt-source</code> or
+ <code>-archive-keyring</code> are permitted to install such files.
diff --git a/tags/p/package-installs-apt-preferences.tag b/tags/p/package-installs-apt-preferences.tag
new file mode 100644
index 0000000..433b0f8
--- /dev/null
+++ b/tags/p/package-installs-apt-preferences.tag
@@ -0,0 +1,10 @@
+Tag: package-installs-apt-preferences
+Severity: error
+Check: apt
+See-Also: apt_preferences(5)
+Explanation: Debian packages should not install files under <code>/etc/apt/preferences.d/</code> or install an /etc/apt/preferences file.
+ This directory is under the control of the local administrator.
+ .
+ Package should not override local administrator choices.
+Renamed-From:
+ package-install-apt-preferences
diff --git a/tags/p/package-installs-apt-sources.tag b/tags/p/package-installs-apt-sources.tag
new file mode 100644
index 0000000..464438a
--- /dev/null
+++ b/tags/p/package-installs-apt-sources.tag
@@ -0,0 +1,17 @@
+Tag: package-installs-apt-sources
+Severity: error
+Check: apt
+See-Also: sources.list(5)
+Explanation: Debian packages should not install files under
+ <code>/etc/apt/sources.list.d/</code> or install an
+ <code>/etc/apt/sources.list</code> file.
+ .
+ The selection of installation sources is under the control of the
+ local administrator. Packages are generally not allowed to change
+ the administrator's choices.
+ .
+ As a limited exception for the convenience of administrators,
+ packages whose names end in the clearly named
+ <code>-apt-source</code> are permitted to install such files.
+Renamed-From:
+ package-install-apt-sources
diff --git a/tags/p/package-installs-deprecated-upstart-configuration.tag b/tags/p/package-installs-deprecated-upstart-configuration.tag
new file mode 100644
index 0000000..c2ab7cf
--- /dev/null
+++ b/tags/p/package-installs-deprecated-upstart-configuration.tag
@@ -0,0 +1,9 @@
+Tag: package-installs-deprecated-upstart-configuration
+Severity: warning
+Check: files/init
+Explanation: The package installs files into the <code>/etc/init</code>
+ directory which is used by Upstart, a replacement for the <code>/sbin/init</code>
+ daemon which handles starting of tasks and services during boot, etc.
+ .
+ However, Upstart was removed in Debian "stretch" and these files are thus no
+ longer useful and should be removed.
diff --git a/tags/p/package-installs-file-to-usr-x11r6.tag b/tags/p/package-installs-file-to-usr-x11r6.tag
new file mode 100644
index 0000000..3712741
--- /dev/null
+++ b/tags/p/package-installs-file-to-usr-x11r6.tag
@@ -0,0 +1,12 @@
+Tag: package-installs-file-to-usr-x11r6
+Severity: error
+Check: desktop/x11
+Explanation: Packages using the X Window System should not be configured to install
+ files under the /usr/X11R6/ directory. Debian has switched to the modular
+ X tree which now uses regular FHS paths and all packages should follow.
+ .
+ Programs that use GNU autoconf and automake are usually easily configured
+ at compile time to use /usr/ instead of /usr/X11R6/. Packages that use
+ imake must build-depend on xutils-dev (&gt;= 1:1.0.2-2) for the correct
+ paths.
+See-Also: debian-policy 11.8.7
diff --git a/tags/p/package-installs-ieee-data.tag b/tags/p/package-installs-ieee-data.tag
new file mode 100644
index 0000000..ca9344d
--- /dev/null
+++ b/tags/p/package-installs-ieee-data.tag
@@ -0,0 +1,13 @@
+Tag: package-installs-ieee-data
+Severity: error
+Check: files/ieee-data
+See-Also: Bug#785662
+Explanation: Debian package should not install ieee oui.txt or iab.txt file
+ These files are shipped in the package ieee-data and package should
+ depends on the ieee-data instead of shipping these files.
+ .
+ Package should symlinks to /usr/share/ieee-data/iab.txt or
+ /usr/share/ieee-data/oui.txt. Moreover, you should also
+ depends on ieee-data package.
+Renamed-From:
+ package-install-ieee-data
diff --git a/tags/p/package-installs-into-etc-gconf-schemas.tag b/tags/p/package-installs-into-etc-gconf-schemas.tag
new file mode 100644
index 0000000..f54e248
--- /dev/null
+++ b/tags/p/package-installs-into-etc-gconf-schemas.tag
@@ -0,0 +1,7 @@
+Tag: package-installs-into-etc-gconf-schemas
+Severity: warning
+Check: desktop/gnome
+Explanation: The package installs files into the <code>/etc/gconf/schemas</code>
+ directory. No package should do this; this directory is reserved for
+ local overrides. Instead, schemas should be installed into
+ <code>/usr/share/gconf/schemas</code>.
diff --git a/tags/p/package-installs-into-etc-rc.boot.tag b/tags/p/package-installs-into-etc-rc.boot.tag
new file mode 100644
index 0000000..9a6c841
--- /dev/null
+++ b/tags/p/package-installs-into-etc-rc.boot.tag
@@ -0,0 +1,6 @@
+Tag: package-installs-into-etc-rc.boot
+Severity: error
+Check: files/init
+Explanation: The package installs files in the <code>/etc/rc.boot</code> directory,
+ which is obsolete.
+See-Also: debian-policy 9.3.4
diff --git a/tags/p/package-installs-into-etc-rc.d.tag b/tags/p/package-installs-into-etc-rc.d.tag
new file mode 100644
index 0000000..f36734c
--- /dev/null
+++ b/tags/p/package-installs-into-etc-rc.d.tag
@@ -0,0 +1,6 @@
+Tag: package-installs-into-etc-rc.d
+Severity: error
+Check: files/init
+Explanation: The package installs files into the <code>/etc/rc.d</code> or
+ <code>/etc/rc?.d</code> which is not allowed.
+See-Also: debian-policy 9.3.3
diff --git a/tags/p/package-installs-into-obsolete-dir.tag b/tags/p/package-installs-into-obsolete-dir.tag
new file mode 100644
index 0000000..d30d16f
--- /dev/null
+++ b/tags/p/package-installs-into-obsolete-dir.tag
@@ -0,0 +1,7 @@
+Tag: package-installs-into-obsolete-dir
+Severity: warning
+Check: files/obsolete-paths
+Explanation: The package installs files to an obsolete directory.
+ Please use a newer path.
+Renamed-From:
+ package-install-into-obsolete-dir
diff --git a/tags/p/package-installs-java-bytecode.tag b/tags/p/package-installs-java-bytecode.tag
new file mode 100644
index 0000000..0fbb752
--- /dev/null
+++ b/tags/p/package-installs-java-bytecode.tag
@@ -0,0 +1,8 @@
+Tag: package-installs-java-bytecode
+Severity: warning
+Check: languages/java/bytecode
+See-Also: java-policy 2
+Explanation: Compiled Java source files must not be included in the package.
+ This is likely due to a packaging mistake. These files should be
+ removed from the installed package or included in <code>.jar</code>
+ archives to save space.
diff --git a/tags/p/package-installs-nonbinary-perl-in-usr-lib-perl5.tag b/tags/p/package-installs-nonbinary-perl-in-usr-lib-perl5.tag
new file mode 100644
index 0000000..0061d3f
--- /dev/null
+++ b/tags/p/package-installs-nonbinary-perl-in-usr-lib-perl5.tag
@@ -0,0 +1,8 @@
+Tag: package-installs-nonbinary-perl-in-usr-lib-perl5
+Severity: warning
+Check: languages/perl
+Explanation: Architecture-independent Perl code should be placed in
+ <code>/usr/share/perl5</code>, not <code>/usr/lib/.../perl5</code>
+ unless there is at least one architecture-dependent file
+ in the module.
+See-Also: perl-policy 2.3
diff --git a/tags/p/package-installs-packlist.tag b/tags/p/package-installs-packlist.tag
new file mode 100644
index 0000000..3eb3043
--- /dev/null
+++ b/tags/p/package-installs-packlist.tag
@@ -0,0 +1,16 @@
+Tag: package-installs-packlist
+Severity: error
+Check: languages/perl
+Explanation: Packages built using the perl MakeMaker package will have a file
+ named .packlist in them. Those files are useless, and (in some cases)
+ have the additional problem of creating an architecture-specific
+ directory name in an architecture-independent package.
+ .
+ They can be suppressed by adding the following to <code>debian/rules</code>:
+ .
+ find debian/*pkg* -type f -name .packlist -delete
+ .
+ or by telling MakeMaker to use vendor install dirs; consult a recent
+ version of Perl policy. Perl 5.6.0-12 or higher supports this.
+See-Also:
+ perl-policy 4.1
diff --git a/tags/p/package-installs-perllocal-pod.tag b/tags/p/package-installs-perllocal-pod.tag
new file mode 100644
index 0000000..fc36f77
--- /dev/null
+++ b/tags/p/package-installs-perllocal-pod.tag
@@ -0,0 +1,8 @@
+Tag: package-installs-perllocal-pod
+Severity: warning
+Check: languages/perl
+Explanation: This package installs a file <code>perllocal.pod</code>. Since that
+ file is intended for local documentation, it is not likely that it is
+ a good place for documentation supplied by a Debian package. In fact,
+ installing this package will wipe out whatever local documentation
+ existed there.
diff --git a/tags/p/package-installs-python-bytecode.tag b/tags/p/package-installs-python-bytecode.tag
new file mode 100644
index 0000000..65e5325
--- /dev/null
+++ b/tags/p/package-installs-python-bytecode.tag
@@ -0,0 +1,7 @@
+Tag: package-installs-python-bytecode
+Severity: error
+Check: languages/python
+See-Also: python-policy 3.7
+Explanation: Compiled Python source files must not be included in the package.
+ These files should be removed from the package and created at package
+ installation time in the postinst.
diff --git a/tags/p/package-installs-python-egg.tag b/tags/p/package-installs-python-egg.tag
new file mode 100644
index 0000000..dc8435b
--- /dev/null
+++ b/tags/p/package-installs-python-egg.tag
@@ -0,0 +1,8 @@
+Tag: package-installs-python-egg
+Severity: error
+Check: languages/python
+See-Also: python-policy 3.7
+Explanation: Python eggs should not be installed, since the Debian package is
+ supposed to do the required steps for installing the Python code.
+ .
+ The egg may contain pre-compiled Python bytecode or shared libraries.
diff --git a/tags/p/package-installs-python-pycache-dir.tag b/tags/p/package-installs-python-pycache-dir.tag
new file mode 100644
index 0000000..b15c91e
--- /dev/null
+++ b/tags/p/package-installs-python-pycache-dir.tag
@@ -0,0 +1,11 @@
+Tag: package-installs-python-pycache-dir
+Severity: error
+Check: languages/python
+See-Also: python-policy 3.7
+Explanation: The package installs a &lowbar;&lowbar;pycache&lowbar;&lowbar;
+ directory, which is normally
+ only used to store compiled Python source files. Compiled Python
+ source files must not be included in the package, instead they
+ should be generated at installation time in the postinst.
+ .
+ Note this tag is issues even if the directory is empty.
diff --git a/tags/p/package-is-co-maintained.tag b/tags/p/package-is-co-maintained.tag
new file mode 100644
index 0000000..abf00e9
--- /dev/null
+++ b/tags/p/package-is-co-maintained.tag
@@ -0,0 +1,6 @@
+Tag: package-is-co-maintained
+Severity: classification
+Check: fields/vcs
+Explanation: The package is co-maintained but not team-maintained
+ according to the maintainer/uploaders fields in the
+ <code>debian/control</code> file.
diff --git a/tags/p/package-is-maintained-by-individual.tag b/tags/p/package-is-maintained-by-individual.tag
new file mode 100644
index 0000000..6155564
--- /dev/null
+++ b/tags/p/package-is-maintained-by-individual.tag
@@ -0,0 +1,5 @@
+Tag: package-is-maintained-by-individual
+Severity: classification
+Check: fields/vcs
+Explanation: The package is maintained by an individual according to the
+ maintainer/uploaders fields in the <code>debian/control</code> file.
diff --git a/tags/p/package-is-team-maintained.tag b/tags/p/package-is-team-maintained.tag
new file mode 100644
index 0000000..f07de42
--- /dev/null
+++ b/tags/p/package-is-team-maintained.tag
@@ -0,0 +1,5 @@
+Tag: package-is-team-maintained
+Severity: classification
+Check: fields/vcs
+Explanation: The package is team-maintained according to the
+ maintainer/uploaders fields in the <code>debian/control</code> file.
diff --git a/tags/p/package-mixes-misc-and-dpi-fonts.tag b/tags/p/package-mixes-misc-and-dpi-fonts.tag
new file mode 100644
index 0000000..532f75c
--- /dev/null
+++ b/tags/p/package-mixes-misc-and-dpi-fonts.tag
@@ -0,0 +1,8 @@
+Tag: package-mixes-misc-and-dpi-fonts
+Severity: warning
+Check: desktop/x11
+See-Also: debian-policy 11.8.5
+Explanation: This package contains both bitmapped fonts for a specific DPI
+ (100dpi or 75dpi) and misc bitmapped fonts. These should not be combined
+ in the same package. Instead, the misc bitmapped fonts should be
+ provided in a separate package with <code>-misc</code> appended to its name.
diff --git a/tags/p/package-modifies-ld.so-search-path.tag b/tags/p/package-modifies-ld.so-search-path.tag
new file mode 100644
index 0000000..18774c6
--- /dev/null
+++ b/tags/p/package-modifies-ld.so-search-path.tag
@@ -0,0 +1,15 @@
+Tag: package-modifies-ld.so-search-path
+Severity: error
+Check: files/ld-so
+Explanation: The package changes the search path for the runtime linker, but is
+ not part of <code>libc</code>. The offending file is in
+ <code>/etc/ld.so.conf.d</code>.
+ .
+ It is not okay to install libraries in a different directory and then
+ modify the run-time link path. Shared libraries should go into
+ <code>/usr/lib</code>. Alternatively, they can require binaries to set the
+ <code>RPATH</code> to find the library.
+ .
+ Without this precaution, conflicting libraries may trigger segmentation
+ faults for what should have been a conflict in the package manager.
+See-Also: debian-policy 10.2
diff --git a/tags/p/package-name-defined-in-config-h.tag b/tags/p/package-name-defined-in-config-h.tag
new file mode 100644
index 0000000..0723a54
--- /dev/null
+++ b/tags/p/package-name-defined-in-config-h.tag
@@ -0,0 +1,9 @@
+Tag: package-name-defined-in-config-h
+Severity: warning
+Check: includes/config-h
+Explanation: This package installs a header file named <code>config.h</code> that
+ uses the identifier PACKAGE&lowbar;NAME. It is probably incompatible with
+ packages using autoconf.
+ .
+ Please remove the file or rename the identifier.
+See-Also: Bug#733598
diff --git a/tags/p/package-name-doesnt-match-sonames.tag b/tags/p/package-name-doesnt-match-sonames.tag
new file mode 100644
index 0000000..bb89de8
--- /dev/null
+++ b/tags/p/package-name-doesnt-match-sonames.tag
@@ -0,0 +1,9 @@
+Tag: package-name-doesnt-match-sonames
+Severity: warning
+Check: libraries/shared/soname
+Explanation: The package name of a library package should usually reflect
+ the soname of the included library. The package name can determined
+ from the library file name with the following code snippet:
+ .
+ $ objdump -p /path/to/libfoo-bar.so.1.2.3 | sed -n -e's/^[[:space:]]&ast;SONAME[[:space:]]&ast;//p' | \
+ sed -r -e's/([0-9])\.so\./\1-/; s/\.so(\.|$)//; y/&lowbar;/-/; s/(.&ast;)/\L&/'
diff --git a/tags/p/package-not-lowercase.tag b/tags/p/package-not-lowercase.tag
new file mode 100644
index 0000000..9f39264
--- /dev/null
+++ b/tags/p/package-not-lowercase.tag
@@ -0,0 +1,5 @@
+Tag: package-not-lowercase
+Severity: error
+Check: fields/package
+Explanation: New packages should not use uppercase characters in their names.
+See-Also: debian-policy 5.6.7
diff --git a/tags/p/package-placeholder-in-symbols-file.tag b/tags/p/package-placeholder-in-symbols-file.tag
new file mode 100644
index 0000000..52fa2c6
--- /dev/null
+++ b/tags/p/package-placeholder-in-symbols-file.tag
@@ -0,0 +1,17 @@
+Tag: package-placeholder-in-symbols-file
+Severity: warning
+Check: debian/symbols
+Explanation: The symbols file contains the placeholder <code>&num;PACKAGE&num;</code>
+ in the <code>Build-Depends-Package</code> field. During the build process, it
+ will be replaced with the wrong value. There is no placeholder that works.
+ .
+ The development package for your shared library must be stated explicitly.
+ .
+ With the information, <code>dpkg-shlibdeps(1)</code> can calculate the
+ installation prerequisites for your package from the build prerequisites.
+See-Also:
+ debian-policy 8.6.3.2,
+ deb-symbols(5),
+ dpkg-shlibdeps(1),
+ https://www.debian.org/doc/manuals/maint-guide/advanced.en.html#librarysymbols,
+ Bug#944047
diff --git a/tags/p/package-relation-with-perl-modules.tag b/tags/p/package-relation-with-perl-modules.tag
new file mode 100644
index 0000000..774792b
--- /dev/null
+++ b/tags/p/package-relation-with-perl-modules.tag
@@ -0,0 +1,8 @@
+# Imported from pkg-perl-tools (named depends-on-perl-modules there)
+Tag: package-relation-with-perl-modules
+Severity: error
+Check: fields/package-relations
+Explanation: No package should (build-) depend on 'perl-modules'. Instead, a
+ suitable dependency on 'perl' should be used. The existence of the
+ perl-modules package is an implementation detail of the perl
+ packaging.
diff --git a/tags/p/package-relation-with-self.tag b/tags/p/package-relation-with-self.tag
new file mode 100644
index 0000000..287f49f
--- /dev/null
+++ b/tags/p/package-relation-with-self.tag
@@ -0,0 +1,6 @@
+Tag: package-relation-with-self
+Severity: warning
+Check: fields/package-relations
+Explanation: The package declares a relationship with itself. This is not very
+ useful except in the case of a package Conflicting with itself if its
+ package name doubles as a virtual package.
diff --git a/tags/p/package-section-games-but-contains-no-game.tag b/tags/p/package-section-games-but-contains-no-game.tag
new file mode 100644
index 0000000..ac06b1a
--- /dev/null
+++ b/tags/p/package-section-games-but-contains-no-game.tag
@@ -0,0 +1,7 @@
+Tag: package-section-games-but-contains-no-game
+Severity: error
+Check: games
+See-Also: debian-policy 11.11
+Explanation: This package is marked as part of the section games, but doesn't
+ contain files in <code>/usr/games</code>. Binaries of games must be installed
+ in <code>/usr/games</code>.
diff --git a/tags/p/package-section-games-but-has-usr-bin.tag b/tags/p/package-section-games-but-has-usr-bin.tag
new file mode 100644
index 0000000..674f4c3
--- /dev/null
+++ b/tags/p/package-section-games-but-has-usr-bin.tag
@@ -0,0 +1,7 @@
+Tag: package-section-games-but-has-usr-bin
+Severity: warning
+Check: games
+See-Also: debian-policy 11.11
+Explanation: This package is marked as part of the section games, but contains
+ executables in <code>/bin</code> or <code>/usr/bin/</code>. This can be intentional,
+ but is usually a mistake.
diff --git a/tags/p/package-superseded-by-perl.tag b/tags/p/package-superseded-by-perl.tag
new file mode 100644
index 0000000..95d2f58
--- /dev/null
+++ b/tags/p/package-superseded-by-perl.tag
@@ -0,0 +1,12 @@
+Tag: package-superseded-by-perl
+Severity: warning
+Check: languages/perl/core/provides
+Explanation: This package is provided by one of the Perl core packages
+ (i.e. <code>perl</code>, <code>perl-base</code>, <code>perl-modules</code>).
+ The version in the core is at least as new as this one.
+ .
+ The package should be upgraded to a newer upstream version or be dropped from
+ the archive.
+ .
+ The Perl installable in Debian <code>Provides</code> this package. There is no
+ longer a need to modify consuming packages.
diff --git a/tags/p/package-uses-debhelper-but-lacks-build-depends.tag b/tags/p/package-uses-debhelper-but-lacks-build-depends.tag
new file mode 100644
index 0000000..f3f0656
--- /dev/null
+++ b/tags/p/package-uses-debhelper-but-lacks-build-depends.tag
@@ -0,0 +1,9 @@
+Tag: package-uses-debhelper-but-lacks-build-depends
+Severity: error
+Check: debhelper
+Explanation: If a package uses debhelper, it must declare a Build-Depends
+ on debhelper or on the debhelper-compat virtual package. For example:
+ .
+ Build-Depends: debhelper (&gt;= 13~)
+ .
+ Build-Depends: debhelper-compat (= 13)
diff --git a/tags/p/package-uses-deprecated-debhelper-compat-version.tag b/tags/p/package-uses-deprecated-debhelper-compat-version.tag
new file mode 100644
index 0000000..9c201e5
--- /dev/null
+++ b/tags/p/package-uses-deprecated-debhelper-compat-version.tag
@@ -0,0 +1,14 @@
+Tag: package-uses-deprecated-debhelper-compat-version
+Severity: warning
+Check: debhelper
+See-Also: debhelper(7)
+Explanation: The debhelper compatibility version used by this package is marked
+ as deprecated by the debhelper developer. You should really consider
+ using a newer compatibility version.
+ .
+ The compatibility version can be set by specifying
+ <code>debhelper-compat (= 12)</code> in your package's
+ <code>Build-Depends</code>, by the legacy <code>debian/compat</code> file or
+ even by setting and exporting DH&lowbar;COMPAT in <code>debian/rules</code>. If it
+ is not set in either place, debhelper defaults to the deprecated
+ compatibility version 1.
diff --git a/tags/p/package-uses-deprecated-dpatch-patch-system.tag b/tags/p/package-uses-deprecated-dpatch-patch-system.tag
new file mode 100644
index 0000000..a21814d
--- /dev/null
+++ b/tags/p/package-uses-deprecated-dpatch-patch-system.tag
@@ -0,0 +1,9 @@
+Tag: package-uses-deprecated-dpatch-patch-system
+Severity: pedantic
+Check: debian/patches/dpatch
+Explanation: The dpatch patch system has been deprecated and superseded by the
+ "3.0 (quilt)" source format.
+ .
+ Please migrate the patches in the <code>debian/patches</code> directory and
+ the <code>00list</code> file to use this source format.
+See-Also: dpatch(1), dpkg-source(1)
diff --git a/tags/p/package-uses-dh-exec-but-lacks-build-depends.tag b/tags/p/package-uses-dh-exec-but-lacks-build-depends.tag
new file mode 100644
index 0000000..260848c
--- /dev/null
+++ b/tags/p/package-uses-dh-exec-but-lacks-build-depends.tag
@@ -0,0 +1,5 @@
+Tag: package-uses-dh-exec-but-lacks-build-depends
+Severity: error
+Check: debhelper
+Explanation: If a package uses dh-exec, it must declare a Build-Depends
+ on it.
diff --git a/tags/p/package-uses-dh-runit-but-lacks-breaks-substvar.tag b/tags/p/package-uses-dh-runit-but-lacks-breaks-substvar.tag
new file mode 100644
index 0000000..bcee50c
--- /dev/null
+++ b/tags/p/package-uses-dh-runit-but-lacks-breaks-substvar.tag
@@ -0,0 +1,12 @@
+Tag: package-uses-dh-runit-but-lacks-breaks-substvar
+Severity: warning
+Check: debhelper
+Explanation: This source package appears to use <code>dh&lowbar;runit(1)</code> but the
+ specified binary package does not define a <code>Breaks:</code> including
+ the <code>${runit:Breaks}</code> substitution variable.
+ .
+ <code>dh&lowbar;runit(1)</code> may generate scripts that make assumptions about
+ the version of <code>runit</code> in use.
+ .
+ Please add the corresponding <code>Breaks</code> relation.
+See-Also: dh_runit(1)
diff --git a/tags/p/package-uses-experimental-debhelper-compat-version.tag b/tags/p/package-uses-experimental-debhelper-compat-version.tag
new file mode 100644
index 0000000..b5b3016
--- /dev/null
+++ b/tags/p/package-uses-experimental-debhelper-compat-version.tag
@@ -0,0 +1,14 @@
+Tag: package-uses-experimental-debhelper-compat-version
+Severity: pedantic
+Check: debhelper
+See-Also: debhelper(7)
+Explanation: The debhelper compatibility version used by this package is marked
+ as experimental by the debhelper developer. You should consider using a
+ stable compatibility version instead.
+ .
+ The compatibility version can be set by specifying
+ <code>debhelper-compat (= 12)</code> in your package's
+ <code>Build-Depends</code>, by the legacy <code>debian/compat</code> file or
+ even by setting and exporting DH&lowbar;COMPAT in <code>debian/rules</code>. If it
+ is not set in either place, debhelper defaults to the deprecated
+ compatibility version 1.
diff --git a/tags/p/package-uses-local-diversion.tag b/tags/p/package-uses-local-diversion.tag
new file mode 100644
index 0000000..5729a57
--- /dev/null
+++ b/tags/p/package-uses-local-diversion.tag
@@ -0,0 +1,8 @@
+Tag: package-uses-local-diversion
+Severity: error
+Check: maintainer-scripts/diversion
+Explanation: The named maintainer script calls <code>dpkg-divert</code> with
+ <code>--local</code> or without <code>--package</code>. Those usages are
+ reserved for local administrators and must not be used by a Debian package.
+See-Also:
+ debian-policy 3.9
diff --git a/tags/p/package-uses-old-debhelper-compat-version.tag b/tags/p/package-uses-old-debhelper-compat-version.tag
new file mode 100644
index 0000000..77db29e
--- /dev/null
+++ b/tags/p/package-uses-old-debhelper-compat-version.tag
@@ -0,0 +1,13 @@
+Tag: package-uses-old-debhelper-compat-version
+Severity: pedantic
+Check: debhelper
+Explanation: This package uses a debhelper compatibility level that is no
+ longer recommended. Please consider using the recommended level.
+ .
+ For most packages, the best way to set the compatibility level is
+ to specify <code>debhelper-compat (= X)</code> as a <code>Build-Depends</code>
+ in <code>debian/control</code>. You can also use the <code>debian/compat</code>
+ file or export DH&lowbar;COMPAT in <code>debian/rules</code>.
+ .
+ If no level is selected debhelper defaults to level 1, which is deprecated.
+See-Also: debhelper(7)
diff --git a/tags/p/package-uses-vendor-specific-patch-series.tag b/tags/p/package-uses-vendor-specific-patch-series.tag
new file mode 100644
index 0000000..0ebf3d3
--- /dev/null
+++ b/tags/p/package-uses-vendor-specific-patch-series.tag
@@ -0,0 +1,25 @@
+Tag: package-uses-vendor-specific-patch-series
+Severity: error
+Check: debian/patches/quilt
+Explanation: The specified series file for patches is vendor-specific.
+ .
+ Source packages may contain vendor (i.e. distribution) specific patches,
+ but such packages must not be uploaded to the Debian archive if they
+ are used in conjunction with vendor-specific series files.
+ .
+ Vendor specific series files were carefully implemented as a <code>dpkg</code>
+ feature. Unfortunately, they currently conflict with some workflow goals
+ in Debian. They are presently disallowed in Debian.
+ .
+ The preferred approach for distributions other than Debian is now to
+ apply such patches programmatically via <code>debian/rules</code>. You can
+ also create multiple, vendor-specific sources and upload them separately
+ for each distribution.
+ .
+ The decision to prohibit the use of that particular <code>dpkg</code> feature
+ in Debian was made by the project's technical committee in consideration of
+ other planned workflow modifications, and may be revisited.
+ .
+ You should only see this tag in Debian or other distributions when
+ targeting an upload for Debian.
+See-Also: Bug#904302, Bug#922531, https://lists.debian.org/debian-devel-announce/2018/11/msg00004.html
diff --git a/tags/p/patch-file-present-but-not-mentioned-in-series.tag b/tags/p/patch-file-present-but-not-mentioned-in-series.tag
new file mode 100644
index 0000000..5bfc582
--- /dev/null
+++ b/tags/p/patch-file-present-but-not-mentioned-in-series.tag
@@ -0,0 +1,14 @@
+Tag: patch-file-present-but-not-mentioned-in-series
+Severity: warning
+Check: debian/patches/quilt
+Explanation: The specified patch is present under the <code>debian/patches</code>
+ directory but is not mentioned in any "series" or "00list" file.
+ .
+ This may mean that a patch was created with the intention of modifying
+ the package but is not being applied.
+ .
+ Please either add the filename to the series file, or ensure it is
+ commented-out in a form that Lintian can recognise, for example:
+ .
+ 0001&lowbar;fix-foo.patch
+ # 0002&lowbar;fix-bar.patch
diff --git a/tags/p/patch-modifying-debian-files.tag b/tags/p/patch-modifying-debian-files.tag
new file mode 100644
index 0000000..c4dd4c7
--- /dev/null
+++ b/tags/p/patch-modifying-debian-files.tag
@@ -0,0 +1,10 @@
+Tag: patch-modifying-debian-files
+Severity: error
+Check: debian/patches/quilt
+Explanation: A patch stored in <code>debian/patches/</code> modifies or creates files
+ in the <code>debian</code> folder, but that folder is already under the
+ maintainer's exclusive control.
+ .
+ It may be more appropriate to patch or create files in the upstream
+ directory hierarchy, but often it is easier to place a copy in the
+ <code>debian</code> folder.
diff --git a/tags/p/patch-not-forwarded-upstream.tag b/tags/p/patch-not-forwarded-upstream.tag
new file mode 100644
index 0000000..c762bf5
--- /dev/null
+++ b/tags/p/patch-not-forwarded-upstream.tag
@@ -0,0 +1,15 @@
+Tag: patch-not-forwarded-upstream
+Severity: info
+Check: debian/patches/dep3
+Renamed-From: send-patch
+Explanation: According to the DEP-3 headers, this patch has not been forwarded
+ upstream.
+ .
+ Please forward the patch and try to have it included in upstream's version
+ control system. If the patch is not suitable for that, please mention
+ <code>not-needed</code> in the <code>Forwarded</code> field of the patch
+ header.
+See-Also: social contract item 2,
+ developer-reference 3.1.4,
+ debian-policy 4.3,
+ Bug#755153
diff --git a/tags/p/patch-system-but-direct-changes-in-diff.tag b/tags/p/patch-system-but-direct-changes-in-diff.tag
new file mode 100644
index 0000000..74a4f15
--- /dev/null
+++ b/tags/p/patch-system-but-direct-changes-in-diff.tag
@@ -0,0 +1,10 @@
+Tag: patch-system-but-direct-changes-in-diff
+Severity: warning
+Check: debian/patches
+Explanation: The package uses a patch system, but the Debian diff.gz contains
+ changes to files or creation of additional files outside of the
+ <code>debian</code> directory. This often indicates accidental changes that
+ weren't meant to be in the package or changes that were supposed to be
+ separated out into a patch. The package will also more easily support
+ possible future source package formats if all changes outside the
+ <code>debian</code> directory are stored as patches.
diff --git a/tags/p/patch-system-but-no-source-readme.tag b/tags/p/patch-system-but-no-source-readme.tag
new file mode 100644
index 0000000..60fa334
--- /dev/null
+++ b/tags/p/patch-system-but-no-source-readme.tag
@@ -0,0 +1,13 @@
+Tag: patch-system-but-no-source-readme
+Severity: warning
+Check: debian/patches
+Explanation: This package build-depends on a patch system such as dpatch or
+ quilt, but there is no <code>debian/README.source</code> file. This file is
+ recommended for any package where <code>dpkg-source -x</code> does not result
+ in the preferred form for making modifications to the package.
+ .
+ If you are using quilt and the package needs no other special handling
+ instructions, you may want to add a <code>debian/README.source</code>
+ referring to <code>/usr/share/doc/quilt/README.source</code>. Similarly, you
+ can refer to <code>/usr/share/doc/dpatch/README.source.gz</code> for dpatch.
+See-Also: debian-policy 4.14
diff --git a/tags/p/patch-system.tag b/tags/p/patch-system.tag
new file mode 100644
index 0000000..c2e905b
--- /dev/null
+++ b/tags/p/patch-system.tag
@@ -0,0 +1,5 @@
+Tag: patch-system
+Severity: classification
+Check: debian/patches
+Explanation: This package uses the specified patch system (eg. "quilt" or
+ "dpatch").
diff --git a/tags/p/patched-file-without-utf8-name.tag b/tags/p/patched-file-without-utf8-name.tag
new file mode 100644
index 0000000..2fff4d9
--- /dev/null
+++ b/tags/p/patched-file-without-utf8-name.tag
@@ -0,0 +1,12 @@
+Tag: patched-file-without-utf8-name
+Severity: error
+Check: files/names
+See-Also: debian-policy 10.10
+Explanation: The file name in the patched source tree is not valid UTF-8.
+ The file does not appear in the upstream files. Its appearance is
+ considered the responsibility of the package maintainer. Please
+ rename the file.
+ .
+ Unlike other file names in Lintian, which are printed in UTF-8, the
+ attached reference shows the bytes used by the file system.
+ Unprintable characters may have been replaced.
diff --git a/tags/p/pear-channel-without-pkg-php-tools-builddep.tag b/tags/p/pear-channel-without-pkg-php-tools-builddep.tag
new file mode 100644
index 0000000..3273e23
--- /dev/null
+++ b/tags/p/pear-channel-without-pkg-php-tools-builddep.tag
@@ -0,0 +1,8 @@
+Tag: pear-channel-without-pkg-php-tools-builddep
+Severity: warning
+Check: languages/php/pear
+Explanation: The package contains a channel.xml file but doesn't build-depend on
+ pkg-php-tools.
+ .
+ pkg-php-tools is the recommended tool for building PEAR and PECL packages. For
+ more information, install it and read the included README.PEAR.
diff --git a/tags/p/pear-package-but-missing-dependency.tag b/tags/p/pear-package-but-missing-dependency.tag
new file mode 100644
index 0000000..fafada5
--- /dev/null
+++ b/tags/p/pear-package-but-missing-dependency.tag
@@ -0,0 +1,5 @@
+Tag: pear-package-but-missing-dependency
+Severity: warning
+Check: languages/php/pear
+Explanation: The package is a PEAR package but its control file doesn't have
+ ${phppear:Debian-Depends} in Depends or ${phppear:Debian-Recommends}.
diff --git a/tags/p/pear-package-not-using-substvar.tag b/tags/p/pear-package-not-using-substvar.tag
new file mode 100644
index 0000000..bc72f47
--- /dev/null
+++ b/tags/p/pear-package-not-using-substvar.tag
@@ -0,0 +1,9 @@
+Tag: pear-package-not-using-substvar
+Severity: info
+Check: languages/php/pear
+Explanation: The package is a PEAR package but the control file does not use
+ ${phppear:summary} or ${phppear:description} in its description fields.
+ .
+ The substitution variables should be used when the description in the
+ PEAR package is suitable and respects best packaging practices.
+See-Also: https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html#bpp-desc-basics
diff --git a/tags/p/pear-package-without-pkg-php-tools-builddep.tag b/tags/p/pear-package-without-pkg-php-tools-builddep.tag
new file mode 100644
index 0000000..bd8df0c
--- /dev/null
+++ b/tags/p/pear-package-without-pkg-php-tools-builddep.tag
@@ -0,0 +1,8 @@
+Tag: pear-package-without-pkg-php-tools-builddep
+Severity: warning
+Check: languages/php/pear
+Explanation: The package contains a package.xml or package2.xml file but doesn't
+ build-depend on pkg-php-tools.
+ .
+ pkg-php-tools is the recommended tool for building PEAR and PECL packages. For
+ more information, install it and read the included README.PEAR.
diff --git a/tags/p/pecl-package-requires-build-dependency.tag b/tags/p/pecl-package-requires-build-dependency.tag
new file mode 100644
index 0000000..40abf2b
--- /dev/null
+++ b/tags/p/pecl-package-requires-build-dependency.tag
@@ -0,0 +1,5 @@
+Tag: pecl-package-requires-build-dependency
+Severity: warning
+Check: languages/php/pear
+Explanation: The package is a PECL package but its control file doesn't have
+ php-dev or dh-php as a build dependency.
diff --git a/tags/p/perl-module-in-core-directory.tag b/tags/p/perl-module-in-core-directory.tag
new file mode 100644
index 0000000..13e654f
--- /dev/null
+++ b/tags/p/perl-module-in-core-directory.tag
@@ -0,0 +1,7 @@
+Tag: perl-module-in-core-directory
+Severity: error
+Check: languages/perl
+Explanation: Packaged modules must not be installed into the core perl
+ directories as those directories change with each upstream perl
+ revision. The vendor directories are provided for this purpose.
+See-Also: perl-policy 3.1
diff --git a/tags/p/perl-module-name-not-mentioned-in-description.tag b/tags/p/perl-module-name-not-mentioned-in-description.tag
new file mode 100644
index 0000000..a45fcbd
--- /dev/null
+++ b/tags/p/perl-module-name-not-mentioned-in-description.tag
@@ -0,0 +1,8 @@
+# Imported from pkg-perl-tools (named no-module-name-in-description there)
+Tag: perl-module-name-not-mentioned-in-description
+Severity: warning
+Check: fields/description
+Experimental: yes
+Explanation: Debian users are likely to look for perl modules by their name, e.g.
+ Foo::Bar, not by package name (libfoo-bar-perl). To make this easier, the main
+ module name should be present in the long package description.
diff --git a/tags/p/perl-module-uses-perl4-libs-without-dep.tag b/tags/p/perl-module-uses-perl4-libs-without-dep.tag
new file mode 100644
index 0000000..0fc630e
--- /dev/null
+++ b/tags/p/perl-module-uses-perl4-libs-without-dep.tag
@@ -0,0 +1,8 @@
+Tag: perl-module-uses-perl4-libs-without-dep
+Severity: warning
+Check: languages/perl
+Explanation: This package includes perl modules using obsoleted perl 4-era
+ libraries. These libraries have been deprecated in perl in 5.14, and
+ are likely to be removed from the core in perl 5.16. Please either
+ remove references to these libraries, or add a dependency on
+ <code>libperl4-corelibs-perl | perl (&lt;&lt; 5.12.3-7)</code> to this package.
diff --git a/tags/p/php-script-but-no-php-cli-dep.tag b/tags/p/php-script-but-no-php-cli-dep.tag
new file mode 100644
index 0000000..1b834d2
--- /dev/null
+++ b/tags/p/php-script-but-no-php-cli-dep.tag
@@ -0,0 +1,10 @@
+Tag: php-script-but-no-php-cli-dep
+Severity: error
+Check: scripts
+Explanation: Packages with PHP scripts must depend on the php-cli package.
+ Note that a dependency on a php-cgi package (such as php-cgi or php7.0-cgi)
+ is needlessly strict and forces the user to install a package that isn't
+ needed.
+ .
+ In some cases a weaker relationship, such as Suggests or Recommends, will
+ be more appropriate.
diff --git a/tags/p/php-script-with-unusual-interpreter.tag b/tags/p/php-script-with-unusual-interpreter.tag
new file mode 100644
index 0000000..68d4d9b
--- /dev/null
+++ b/tags/p/php-script-with-unusual-interpreter.tag
@@ -0,0 +1,6 @@
+Tag: php-script-with-unusual-interpreter
+Severity: warning
+Check: scripts
+Explanation: This package contains a php script using an unusual interpreter in the
+ shebang line. The recommended shebang line is either <code>#!/usr/bin/php</code>
+ or <code>#!/usr/bin/env php</code> without any version number.
diff --git a/tags/p/pipe-symbol-used-as-license-disjunction.tag b/tags/p/pipe-symbol-used-as-license-disjunction.tag
new file mode 100644
index 0000000..674c6ab
--- /dev/null
+++ b/tags/p/pipe-symbol-used-as-license-disjunction.tag
@@ -0,0 +1,9 @@
+Tag: pipe-symbol-used-as-license-disjunction
+Severity: warning
+Check: debian/copyright/dep5
+Explanation: A vertical bar &vert (also known as a pipe symbol) does not stand for
+ a logical OR relationship in <code>debian/copyright</code>.
+ .
+ To describe dual licensing, please use the word "or" between license
+ names.
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/p/pkg-config-bad-directive.tag b/tags/p/pkg-config-bad-directive.tag
new file mode 100644
index 0000000..fe7a3b0
--- /dev/null
+++ b/tags/p/pkg-config-bad-directive.tag
@@ -0,0 +1,7 @@
+Tag: pkg-config-bad-directive
+Severity: error
+Check: files/pkgconfig
+Explanation: The pkg-config file contains a wrong directive.
+ .
+ The following file includes a wrong directive. This could lead to
+ FTBFS or leak private compile flags to another package.
diff --git a/tags/p/pkg-config-multi-arch-wrong-dir.tag b/tags/p/pkg-config-multi-arch-wrong-dir.tag
new file mode 100644
index 0000000..e41da35
--- /dev/null
+++ b/tags/p/pkg-config-multi-arch-wrong-dir.tag
@@ -0,0 +1,15 @@
+Tag: pkg-config-multi-arch-wrong-dir
+Severity: error
+Check: files/pkgconfig
+Explanation: The arch all pkg-config file contains a reference to a multi-arch path.
+ .
+ This can be usually be fixed by moving this file to a multi-arch path.
+ .
+ Another likely cause is using debhelper 9 or newer (thus enabling
+ multi-arch paths by default) on a package without multi-arch support.
+ The usual cure in this case is to update it for multi-arch.
+ .
+ Last but not least, this file could contain a reference to a cross
+ architecture (like for instance an x86&lowbar;64-linux-gnu pkg-config file
+ referencing an i386-linux-gnu file). In this case the usual cure is to
+ fix this path.
diff --git a/tags/p/pkg-config-unavailable-for-cross-compilation.tag b/tags/p/pkg-config-unavailable-for-cross-compilation.tag
new file mode 100644
index 0000000..6e7cd83
--- /dev/null
+++ b/tags/p/pkg-config-unavailable-for-cross-compilation.tag
@@ -0,0 +1,14 @@
+Tag: pkg-config-unavailable-for-cross-compilation
+Severity: warning
+Check: files/pkgconfig
+Explanation: The specified pkg-config(1) file is installed to
+ <code>/usr/lib/pkgconfig</code>. As the cross-compilation wrapper of pkg-config
+ does not search this directory the file is unavailable under
+ cross-compilation.
+ .
+ Please install the file to <code>/usr/lib/${DEB&lowbar;HOST&lowbar;MULTIARCH}/pkgconfig</code>
+ instead.
+ .
+ For projects that use GNU Autotools, a simple method is moving to a debhelper
+ compat level of 9 or higher. In the rare case that this file is architecture
+ independent it can be installed to <code>/usr/share/pkgconfig</code> instead.
diff --git a/tags/p/pkg-js-autopkgtest-file-does-not-exist.tag b/tags/p/pkg-js-autopkgtest-file-does-not-exist.tag
new file mode 100644
index 0000000..917d59a
--- /dev/null
+++ b/tags/p/pkg-js-autopkgtest-file-does-not-exist.tag
@@ -0,0 +1,8 @@
+Tag: pkg-js-autopkgtest-file-does-not-exist
+Severity: error
+Check: languages/javascript/nodejs
+Explanation: One of the files referenced the specified file does not exist in sources
+ and thus <code>pkg-js-autopkgtest</code> will likely fail.
+ .
+ Please update the <code>debian/tests/pkg-fs/files</code> file
+ (see <code>/usr/share/doc/pkg-js-autopkgtest/README.md</code>).
diff --git a/tags/p/pkg-js-autopkgtest-test-is-empty.tag b/tags/p/pkg-js-autopkgtest-test-is-empty.tag
new file mode 100644
index 0000000..009d354
--- /dev/null
+++ b/tags/p/pkg-js-autopkgtest-test-is-empty.tag
@@ -0,0 +1,8 @@
+Tag: pkg-js-autopkgtest-test-is-empty
+Severity: error
+Check: languages/javascript/nodejs
+Explanation: The specified file is empty. This will produce erroneous autopkgtest
+ success reports.
+ .
+ Please set a significant test in this file
+ (see <code>/usr/share/doc/pkg-js-autopkgtest/README.md</code>).
diff --git a/tags/p/pkg-js-autopkgtest-test-is-missing.tag b/tags/p/pkg-js-autopkgtest-test-is-missing.tag
new file mode 100644
index 0000000..024c4c7
--- /dev/null
+++ b/tags/p/pkg-js-autopkgtest-test-is-missing.tag
@@ -0,0 +1,11 @@
+Tag: pkg-js-autopkgtest-test-is-missing
+Severity: warning
+Check: languages/javascript/nodejs
+Explanation: The <code>Testsuite:</code> field for this package points to
+ <code>autopkgtest-pkg-nodejs</code> which attempts to execute
+ the specified file during autopkgtests.
+ .
+ When this file is missing, only a simple <code>node require("&lt;module
+ name&gt;")</code> is launched. This may be insufficient to really test this
+ nodejs module
+ (see <code>/usr/share/doc/pkg-js-autopkgtest/README.md</code>).
diff --git a/tags/p/pkg-js-tools-test-is-empty.tag b/tags/p/pkg-js-tools-test-is-empty.tag
new file mode 100644
index 0000000..457840f
--- /dev/null
+++ b/tags/p/pkg-js-tools-test-is-empty.tag
@@ -0,0 +1,8 @@
+Tag: pkg-js-tools-test-is-empty
+Severity: warning
+Check: languages/javascript/nodejs
+Explanation: The specified file is empty. This means that no test is played during
+ build.
+ .
+ Please set a significant test in this file
+ (see <code>/usr/share/doc/pkg-js-tools/README.md.gz</code>).
diff --git a/tags/p/pkg-js-tools-test-is-missing.tag b/tags/p/pkg-js-tools-test-is-missing.tag
new file mode 100644
index 0000000..2efe4df
--- /dev/null
+++ b/tags/p/pkg-js-tools-test-is-missing.tag
@@ -0,0 +1,13 @@
+Tag: pkg-js-tools-test-is-missing
+Severity: warning
+Check: languages/javascript/nodejs
+Explanation: The <code>debian/rules</code> file for this package uses <code>--with
+ nodejs</code> which attempts to execute the specified file when running
+ autopkgtests.
+ .
+ When this file is missing, only a simple <code>node require(".")</code> is
+ launched which may be insufficient to really test this nodejs module.
+ .
+ Please specify the upstream testsuite (or a custom one) in
+ <code>debian/tests/pkg-js/test</code>
+ (see <code>/usr/share/doc/pkg-js-tools/README.md.gz</code>).
diff --git a/tags/p/pkg-not-in-package-test.tag b/tags/p/pkg-not-in-package-test.tag
new file mode 100644
index 0000000..7a6e156
--- /dev/null
+++ b/tags/p/pkg-not-in-package-test.tag
@@ -0,0 +1,17 @@
+Tag: pkg-not-in-package-test
+Severity: warning
+Check: menu-format
+Explanation: The given <code>menu</code> item does not check if the package that
+ ships the application is installed.
+ .
+ Each <code>menu</code> item should begin with a check that the required packages
+ are installed. At a minimum, the condition should check that the package that
+ ships the application is installed.
+ .
+ Menu items are normally shiiped in the same package that also provides the
+ application the <code>menu</code> item is for.
+ .
+ Sometimes this issue arises the package name was mespelled in the <code>menu</code>
+ entry, or an entry was copied from another package but not properly adjusted.
+See-Also:
+ menu-manual 3.2
diff --git a/tags/p/pod-conversion-message.tag b/tags/p/pod-conversion-message.tag
new file mode 100644
index 0000000..e0075be
--- /dev/null
+++ b/tags/p/pod-conversion-message.tag
@@ -0,0 +1,9 @@
+Tag: pod-conversion-message
+Severity: warning
+Check: documentation/manual
+Renamed-From: manpage-has-errors-from-pod2man
+Explanation: A manual page contains a section <code>POD ERRORS</code>. This tag show
+ the contents.
+ .
+ The section was generated by <code>pod2man</code>. It shows any errors that
+ were found in the <code>POD</code> documentation when the page was generated.
diff --git a/tags/p/poor-compression-in-manual-page.tag b/tags/p/poor-compression-in-manual-page.tag
new file mode 100644
index 0000000..8a2ec71
--- /dev/null
+++ b/tags/p/poor-compression-in-manual-page.tag
@@ -0,0 +1,7 @@
+Tag: poor-compression-in-manual-page
+Severity: error
+Check: documentation/manual
+Renamed-From: manpage-not-compressed-with-max-compression
+Explanation: Manual pages should be compressed with <code>gzip -9n</code>. It
+ selects the highest compression available.
+See-Also: debian-policy 12.1
diff --git a/tags/p/portable-executable-missing-security-features.tag b/tags/p/portable-executable-missing-security-features.tag
new file mode 100644
index 0000000..5e89c1c
--- /dev/null
+++ b/tags/p/portable-executable-missing-security-features.tag
@@ -0,0 +1,40 @@
+Tag: portable-executable-missing-security-features
+Severity: pedantic
+Check: pe
+Experimental: yes
+Explanation: A portable executable (PE32+) file lacks security features.
+ .
+ Due to changes in <code>binutils-mingw-w64</code> the historical
+ advice is incorrect. Current tools do not create safe binaries,
+ and advertising such settings with <code>genpeimg</code> is pointless.
+ .
+ In short, the flags alone do nothing unless a binary is built
+ specifically to support a missing flag. Merely setting the flag,
+ as recommended below, can actually make a file less secure.
+ .
+ More information can be found via the link in the references.
+ .
+ The following advice is historical. PLEASE DO NOT FOLLOW IT.
+ .
+ The package ships a Microsoft Windows Portable Executable (PE) file
+ that appears to be lacking security hardening features. You can see
+ which are missing using the <code>pesec</code> tool from the
+ <code>pev</code> package.
+ .
+ EFI binaries also often trigger this tag. The security flags are
+ probably meaningless for them, but the flags are easily changed
+ using the <code>genpeimg</code> tool from the <code>mingw-w64-tools</code>
+ package.
+ .
+ $ genpeimg -d +d -d +n -d +s $file
+ .
+ Then, to verify that it worked:
+ .
+ $ genpeimg -x $file
+ ...
+ Optional Characteristics:
+ dynamic-base nx-compatible no-SEH
+ .
+ Please change the flags, if possible, instead of overriding the tag.
+ .
+See-Also: https://www.kb.cert.org/vuls/id/307144/, Bug#953212
diff --git a/tags/p/possible-bashism-in-maintainer-script.tag b/tags/p/possible-bashism-in-maintainer-script.tag
new file mode 100644
index 0000000..e4644b0
--- /dev/null
+++ b/tags/p/possible-bashism-in-maintainer-script.tag
@@ -0,0 +1,19 @@
+Tag: possible-bashism-in-maintainer-script
+Severity: warning
+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>
+See-Also:
+ debian-policy 10.4
diff --git a/tags/p/possible-debconf-note-abuse.tag b/tags/p/possible-debconf-note-abuse.tag
new file mode 100644
index 0000000..4064d49
--- /dev/null
+++ b/tags/p/possible-debconf-note-abuse.tag
@@ -0,0 +1,18 @@
+Tag: possible-debconf-note-abuse
+Severity: warning
+Check: debian/debconf
+Explanation: Debconf notes should be used only for important notes that the
+ user really should see, since debconf will go to great pains to make
+ sure the user sees it.
+ .
+ Displaying a note with a low priority is conflicting with this statement,
+ since using a low or medium priority shows that the note is not
+ important.
+ .
+ The right fix is NOT to increase the priority of the note, but to move
+ it somewhere else in the inline documentation, for example in a
+ README.Debian file for notes about package usability or NEWS.Debian for
+ changes in the package behavior, or to simply drop it if it is not
+ needed (e.g. "welcome" notes). Changing the templates type to "error"
+ can also be appropriate, such as for input validation errors.
+See-Also: debian-policy 3.9.1
diff --git a/tags/p/possible-documentation-but-no-doc-base-registration.tag b/tags/p/possible-documentation-but-no-doc-base-registration.tag
new file mode 100644
index 0000000..ec6eaa3
--- /dev/null
+++ b/tags/p/possible-documentation-but-no-doc-base-registration.tag
@@ -0,0 +1,10 @@
+Tag: possible-documentation-but-no-doc-base-registration
+Severity: info
+Check: menus
+Explanation: The package ships a <code>.html</code> or <code>.pdf</code> file under
+ <code>/usr/share/doc/</code>. Those files are usually documentation, but no files
+ are registered in <code>doc-base</code>.
+ .
+ Files in folders named <code>examples</code> are exempt from this tag.
+See-Also:
+ debian-policy 9.10
diff --git a/tags/p/possible-gpl-code-linked-with-openssl.tag b/tags/p/possible-gpl-code-linked-with-openssl.tag
new file mode 100644
index 0000000..bb007d5
--- /dev/null
+++ b/tags/p/possible-gpl-code-linked-with-openssl.tag
@@ -0,0 +1,17 @@
+Tag: possible-gpl-code-linked-with-openssl
+Severity: classification
+Check: debian/copyright
+Explanation: This package appears to be covered by the GNU GPL but depends on
+ the OpenSSL libssl package and does not mention a license exemption or
+ exception for OpenSSL in its copyright file. The GPL (including version
+ 3) is incompatible with some terms of the OpenSSL license, and therefore
+ Debian does not allow GPL-licensed code linked with OpenSSL libraries
+ unless there is a license exception explicitly permitting this.
+ .
+ If only the Debian packaging, or some other part of the package not
+ linked with OpenSSL, is covered by the GNU GPL, please add a Lintian
+ override for this tag. Lintian currently has no good way of
+ distinguishing between that case and problematic packages.
+See-Also:
+ Bug#972181,
+ http://meetbot.debian.net/debian-ftp/2020/debian-ftp.2020-03-13-20.02.html
diff --git a/tags/p/possible-missing-colon-in-closes.tag b/tags/p/possible-missing-colon-in-closes.tag
new file mode 100644
index 0000000..0844483
--- /dev/null
+++ b/tags/p/possible-missing-colon-in-closes.tag
@@ -0,0 +1,7 @@
+Tag: possible-missing-colon-in-closes
+Severity: error
+Check: debian/changelog
+Explanation: To close a bug in the Debian changelog, the word "closes" must be
+ followed by a colon. This entry looked like it was intended to close a
+ bug, but there's no colon after "closes".
+See-Also: debian-policy 4.4
diff --git a/tags/p/possible-new-upstream-release-without-new-version.tag b/tags/p/possible-new-upstream-release-without-new-version.tag
new file mode 100644
index 0000000..f50501d
--- /dev/null
+++ b/tags/p/possible-new-upstream-release-without-new-version.tag
@@ -0,0 +1,9 @@
+Tag: possible-new-upstream-release-without-new-version
+Severity: warning
+Check: debian/changelog
+Explanation: The most recent changelog entry contains an entry that appears to
+ say this is a new upstream release (a comment similar to "new upstream
+ release," possibly with a word between "upstream" and "release"), but the
+ upstream portion of the package version number didn't change. This may
+ indicate that the package version was not updated properly in
+ <code>debian/changelog</code>.
diff --git a/tags/p/possible-unindented-list-in-extended-description.tag b/tags/p/possible-unindented-list-in-extended-description.tag
new file mode 100644
index 0000000..fcefea3
--- /dev/null
+++ b/tags/p/possible-unindented-list-in-extended-description.tag
@@ -0,0 +1,8 @@
+Tag: possible-unindented-list-in-extended-description
+Severity: warning
+Check: fields/description
+Explanation: The package "Description:" contains an unindented line which
+ starts with a dash (-) or asterisk (&ast;). If this was meant to be a
+ list of items these lines need to be indented (dselect would
+ word-wrap these lines otherwise).
+See-Also: debian-policy 5.6.13
diff --git a/tags/p/possibly-insecure-handling-of-tmp-files-in-maintainer-script.tag b/tags/p/possibly-insecure-handling-of-tmp-files-in-maintainer-script.tag
new file mode 100644
index 0000000..17a7fb7
--- /dev/null
+++ b/tags/p/possibly-insecure-handling-of-tmp-files-in-maintainer-script.tag
@@ -0,0 +1,12 @@
+Tag: possibly-insecure-handling-of-tmp-files-in-maintainer-script
+Severity: warning
+Check: maintainer-scripts/temporary-files
+Explanation: The named maintainer script appears to access a file or a directory in
+ <code>/tmp</code> or a similar folder for temporary data. Working directly in such
+ folders, which are usually world-writable, can easily lead to serious security or
+ privacy bugs.
+ .
+ Please consider using the <code>mktemp</code> utility from the <code>coreutils</code>
+ package when creating temporary files or directories.
+See-Also:
+ debian-policy 10.4
diff --git a/tags/p/postinst-does-not-call-updatemenus.tag b/tags/p/postinst-does-not-call-updatemenus.tag
new file mode 100644
index 0000000..b8cb401
--- /dev/null
+++ b/tags/p/postinst-does-not-call-updatemenus.tag
@@ -0,0 +1,15 @@
+Tag: postinst-does-not-call-updatemenus
+Severity: error
+Check: menus
+Explanation: The package installs a file into <code>/etc/menu-methods</code>,
+ <code>/usr/share/menu</code>, or <code>/usr/lib/menu</code>, but does not
+ call the <code>update-menus</code> command in the <code>postinst</code>
+ maintainer script.
+ .
+ For example, you ca use the following code in your maintainer script:
+ .
+ if which update-menus &gt; /dev/null; then
+ update-menus
+ fi
+See-Also:
+ menu-manual 4.2
diff --git a/tags/p/postinst-does-not-load-confmodule.tag b/tags/p/postinst-does-not-load-confmodule.tag
new file mode 100644
index 0000000..bf09480
--- /dev/null
+++ b/tags/p/postinst-does-not-load-confmodule.tag
@@ -0,0 +1,6 @@
+Tag: postinst-does-not-load-confmodule
+Severity: warning
+Check: debian/debconf
+Explanation: Even if your postinst does not involve debconf, you currently need to
+ make sure it loads one of the debconf libraries. This will be changed in
+ the future.
diff --git a/tags/p/postinst-has-useless-call-to-install-docs.tag b/tags/p/postinst-has-useless-call-to-install-docs.tag
new file mode 100644
index 0000000..3f8f5e0
--- /dev/null
+++ b/tags/p/postinst-has-useless-call-to-install-docs.tag
@@ -0,0 +1,9 @@
+Tag: postinst-has-useless-call-to-install-docs
+Severity: warning
+Check: menus
+Explanation: It is no longer necessary to call <code>install-docs</code>
+ in <code>postinst</code>. The processing of <code>doc-base</code> files is
+ now handled by triggers.
+ .
+ If the <code>install-docs</code> call was added by Debhelper, the issue can
+ be fixed by rebuilding the package with Debhelper version 7.2.3 or later.
diff --git a/tags/p/postinst-has-useless-call-to-update-menus.tag b/tags/p/postinst-has-useless-call-to-update-menus.tag
new file mode 100644
index 0000000..217b5f5
--- /dev/null
+++ b/tags/p/postinst-has-useless-call-to-update-menus.tag
@@ -0,0 +1,7 @@
+Tag: postinst-has-useless-call-to-update-menus
+Severity: warning
+Check: menus
+Explanation: The <code>postinst</code> maintainer script calls the
+ <code>update-menus</code> program, but no files are being installed into
+ <code>/etc/menu-methods</code>, <code>/usr/share/menu</code>,
+ or <code>/usr/lib/menu</code>.
diff --git a/tags/p/postinst-uses-db-input.tag b/tags/p/postinst-uses-db-input.tag
new file mode 100644
index 0000000..7dbf579
--- /dev/null
+++ b/tags/p/postinst-uses-db-input.tag
@@ -0,0 +1,7 @@
+Tag: postinst-uses-db-input
+Severity: warning
+Check: debian/debconf
+Explanation: It is generally not a good idea for postinst scripts to use debconf
+ commands like <code>db&lowbar;input</code>. Typically, they should restrict themselves
+ to <code>db&lowbar;get</code> to request previously acquired information, and have the
+ config script do the actual prompting.
diff --git a/tags/p/postrm-calls-installdocs.tag b/tags/p/postrm-calls-installdocs.tag
new file mode 100644
index 0000000..851c400
--- /dev/null
+++ b/tags/p/postrm-calls-installdocs.tag
@@ -0,0 +1,7 @@
+Tag: postrm-calls-installdocs
+Severity: error
+Check: menus
+Explanation: The <code>postrm</code> maintainer script calls the
+ <code>install-docs</code> command.
+ .
+ The command is usually called from the <code>prerm</code> script.
diff --git a/tags/p/postrm-contains-additional-updaterc.d-calls.tag b/tags/p/postrm-contains-additional-updaterc.d-calls.tag
new file mode 100644
index 0000000..0537585
--- /dev/null
+++ b/tags/p/postrm-contains-additional-updaterc.d-calls.tag
@@ -0,0 +1,5 @@
+Tag: postrm-contains-additional-updaterc.d-calls
+Severity: error
+Check: init-d
+Explanation: The <code>postrm</code> de-registers an <code>/etc/init.d</code> script which
+ has not been registered in the <code>postinst</code> script before.
diff --git a/tags/p/postrm-does-not-call-updatemenus.tag b/tags/p/postrm-does-not-call-updatemenus.tag
new file mode 100644
index 0000000..655743e
--- /dev/null
+++ b/tags/p/postrm-does-not-call-updatemenus.tag
@@ -0,0 +1,15 @@
+Tag: postrm-does-not-call-updatemenus
+Severity: error
+Check: menus
+Explanation: The package installs a file in <code>/etc/menu-methods</code>,
+ <code>/usr/share/menu</code>, or <code>/usr/lib/menu</code>, but does not
+ call the <code>update-menus</code> command in the <code>postrm</code>
+ script.
+ .
+ For example, you use the following code in your maintainer script:
+ .
+ if which update-menus &gt; /dev/null; then
+ update-menus
+ fi
+See-Also:
+ menu-manual 4.2
diff --git a/tags/p/postrm-does-not-call-updaterc.d-for-init.d-script.tag b/tags/p/postrm-does-not-call-updaterc.d-for-init.d-script.tag
new file mode 100644
index 0000000..cde1b39
--- /dev/null
+++ b/tags/p/postrm-does-not-call-updaterc.d-for-init.d-script.tag
@@ -0,0 +1,7 @@
+Tag: postrm-does-not-call-updaterc.d-for-init.d-script
+Severity: error
+Check: init-d
+Explanation: An <code>/etc/init.d</code> script which has been registered in the
+ <code>postinst</code> script is not de-registered in the
+ <code>postrm</code> script.
+See-Also: debian-policy 9.3.3.1
diff --git a/tags/p/postrm-does-not-purge-debconf.tag b/tags/p/postrm-does-not-purge-debconf.tag
new file mode 100644
index 0000000..c9eeb9b
--- /dev/null
+++ b/tags/p/postrm-does-not-purge-debconf.tag
@@ -0,0 +1,6 @@
+Tag: postrm-does-not-purge-debconf
+Severity: warning
+Check: debian/debconf
+Explanation: Packages using debconf should call <code>db&lowbar;purge</code> or its equivalent
+ in their postrm. If the package uses debhelper, dh&lowbar;installdebconf(1) should
+ take care of this.
diff --git a/tags/p/postrm-has-useless-call-to-update-menus.tag b/tags/p/postrm-has-useless-call-to-update-menus.tag
new file mode 100644
index 0000000..b89dcaa
--- /dev/null
+++ b/tags/p/postrm-has-useless-call-to-update-menus.tag
@@ -0,0 +1,7 @@
+Tag: postrm-has-useless-call-to-update-menus
+Severity: warning
+Check: menus
+Explanation: The <code>postrm</code> maintainer script calls the
+ <code>update-menus</code> command, but no files are being
+ installed into <code>/etc/menu-methods</code>,
+ <code>/usr/share/menu</code>, or <code>/usr/lib/menu</code>.
diff --git a/tags/p/postrm-removes-alternative.tag b/tags/p/postrm-removes-alternative.tag
new file mode 100644
index 0000000..4f2c5db
--- /dev/null
+++ b/tags/p/postrm-removes-alternative.tag
@@ -0,0 +1,25 @@
+Tag: postrm-removes-alternative
+Severity: warning
+Check: scripts
+Renamed-From:
+ maintainer-script-should-not-use-update-alternatives-remove
+Explanation: <code>update-alternatives --remove &lt;alternative&gt; foo</code> is
+ called in the <code>postrm</code> maintainer script.
+ .
+ Instead, <code>update-alternatives --remove</code> should be called in
+ <code>prerm</code>.
+ .
+ Th present command will not work as intended. When <code>postrm</code> runs,
+ <code>foo</code> was already deleted. <code>update-alternatives</code> will
+ then ignore the program while constructing the list of available alternatives.
+ .
+ If the symbolic link in <code>/etc/alternatives</code> then still points at
+ <code>foo</code>, <code>update-alternatives</code> will not recognize it. It
+ will then mark the link as site-specific.
+ .
+ Going forward, the symbolic link will no longer be updated automatically. It will be
+ left dangling until <code>update-alternatives --auto &lt;alternative&gt;</code>
+ is run by hand.
+See-Also:
+ debian-policy appendix-6,
+ update-alternatives(8)
diff --git a/tags/p/prefer-uscan-symlink.tag b/tags/p/prefer-uscan-symlink.tag
new file mode 100644
index 0000000..ca55a21
--- /dev/null
+++ b/tags/p/prefer-uscan-symlink.tag
@@ -0,0 +1,13 @@
+Tag: prefer-uscan-symlink
+Severity: pedantic
+Experimental: yes
+Check: debian/watch
+Explanation: Please consider setting <code>USCAN_SYMLINK=rename</code> in your
+ <code>~/.devscripts</code> configuration file instead of using the option
+ <code>filenamemangle</code> in <code>debian/watch</code>.
+ .
+ Please check with your team before making changes to sources you maintain
+ together. There are circumstances when the <code>filenamemangle</code> option
+ is better.
+See-Also:
+ uscan(1)
diff --git a/tags/p/preinst-calls-installdocs.tag b/tags/p/preinst-calls-installdocs.tag
new file mode 100644
index 0000000..cbf9a68
--- /dev/null
+++ b/tags/p/preinst-calls-installdocs.tag
@@ -0,0 +1,8 @@
+Tag: preinst-calls-installdocs
+Severity: error
+Check: menus
+Explanation: The <code>preinst</code> maintainer script calls the
+ <code>install-docs</code> command.
+ .
+ That command is usually called from the <code>postinst</code> maintainer
+ script.
diff --git a/tags/p/preinst-calls-updatemenus.tag b/tags/p/preinst-calls-updatemenus.tag
new file mode 100644
index 0000000..75b8a28
--- /dev/null
+++ b/tags/p/preinst-calls-updatemenus.tag
@@ -0,0 +1,7 @@
+Tag: preinst-calls-updatemenus
+Severity: error
+Check: menus
+Explanation: The <code>preinst</code> maintainer script calls the
+ <code>update-menus</code> command.
+ .
+ The command is usually called in the <code>postinst</code> script.
diff --git a/tags/p/preinst-calls-updaterc.d.tag b/tags/p/preinst-calls-updaterc.d.tag
new file mode 100644
index 0000000..4a4d7a3
--- /dev/null
+++ b/tags/p/preinst-calls-updaterc.d.tag
@@ -0,0 +1,6 @@
+Tag: preinst-calls-updaterc.d
+Severity: error
+Check: init-d
+Explanation: The <code>preinst</code> package calls <code>update-rc.d</code>. Instead,
+ you should call it in the <code>postinst</code> script.
+See-Also: debian-policy 9.3.3.1
diff --git a/tags/p/prerm-calls-updatemenus.tag b/tags/p/prerm-calls-updatemenus.tag
new file mode 100644
index 0000000..6be5a33
--- /dev/null
+++ b/tags/p/prerm-calls-updatemenus.tag
@@ -0,0 +1,8 @@
+Tag: prerm-calls-updatemenus
+Severity: error
+Check: menus
+Explanation: The <code>prerm</code> maintainer script calls the
+ <code>update-menus</code> command.
+ .
+ Usually, this command should be called from the <code>postrm</code>
+ maintainer script.
diff --git a/tags/p/prerm-calls-updaterc.d.tag b/tags/p/prerm-calls-updaterc.d.tag
new file mode 100644
index 0000000..acd432e
--- /dev/null
+++ b/tags/p/prerm-calls-updaterc.d.tag
@@ -0,0 +1,6 @@
+Tag: prerm-calls-updaterc.d
+Severity: error
+Check: init-d
+Explanation: The <code>prerm</code> package calls <code>update-rc.d</code>. Instead,
+ you should call it in the <code>postrm</code> script.
+See-Also: debian-policy 9.3.3.1
diff --git a/tags/p/prerm-has-useless-call-to-install-docs.tag b/tags/p/prerm-has-useless-call-to-install-docs.tag
new file mode 100644
index 0000000..753759e
--- /dev/null
+++ b/tags/p/prerm-has-useless-call-to-install-docs.tag
@@ -0,0 +1,10 @@
+Tag: prerm-has-useless-call-to-install-docs
+Severity: warning
+Check: menus
+Explanation: It is no longer necessary to call <code>install-docs</code> in
+ the <code>prerm</code> maintainer script. The processing of
+ <code>doc-base</code> files is now handled by triggers.
+ .
+ If the <code>install-docs</code> call was added by Debhelper, the issue
+ can be fixed by rebuilding the package with Debhelper version 7.2.3 or
+ later.
diff --git a/tags/p/priority-extra-is-replaced-by-priority-optional.tag b/tags/p/priority-extra-is-replaced-by-priority-optional.tag
new file mode 100644
index 0000000..798444a
--- /dev/null
+++ b/tags/p/priority-extra-is-replaced-by-priority-optional.tag
@@ -0,0 +1,9 @@
+Tag: priority-extra-is-replaced-by-priority-optional
+Severity: warning
+Check: fields/priority
+Explanation: Since Debian Policy version 4.0.1, the priority <code>extra</code>
+ has been deprecated.
+ .
+ Please update <code>debian/control</code> and replace all instances of
+ <code>Priority: extra</code> with <code>Priority: optional</code>.
+See-Also: debian-policy 2.5
diff --git a/tags/p/privacy-breach-donation.tag b/tags/p/privacy-breach-donation.tag
new file mode 100644
index 0000000..1a22725
--- /dev/null
+++ b/tags/p/privacy-breach-donation.tag
@@ -0,0 +1,16 @@
+Tag: privacy-breach-donation
+Severity: error
+Check: files/privacy-breach
+See-Also: https://wiki.debian.org/UpstreamMetadata
+Explanation: This package create a potential privacy breach by fetching data
+ from a donation website at runtime.
+ .
+ Please remove this privacy problem and add a note to the
+ debian/upstream/metadata file using the donation field.
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-facebook.tag b/tags/p/privacy-breach-facebook.tag
new file mode 100644
index 0000000..b6ec556
--- /dev/null
+++ b/tags/p/privacy-breach-facebook.tag
@@ -0,0 +1,12 @@
+Tag: privacy-breach-facebook
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a privacy breach by exchanging data with
+ Facebook at runtime via plugins such as "Share" or "Like" buttons.
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-generic.tag b/tags/p/privacy-breach-generic.tag
new file mode 100644
index 0000000..2fb425a
--- /dev/null
+++ b/tags/p/privacy-breach-generic.tag
@@ -0,0 +1,13 @@
+Tag: privacy-breach-generic
+Severity: warning
+Check: files/privacy-breach
+Explanation: This package creates a potential privacy breach by fetching data
+ from an external website at runtime. Please remove these scripts or
+ external HTML resources.
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-google-adsense.tag b/tags/p/privacy-breach-google-adsense.tag
new file mode 100644
index 0000000..c65c6cc
--- /dev/null
+++ b/tags/p/privacy-breach-google-adsense.tag
@@ -0,0 +1,21 @@
+Tag: privacy-breach-google-adsense
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a privacy breach by using Google AdSense.
+ Google AdSense is a service run by Google that allows publishers
+ of websites to automatically serve advertisements. Unfortunately, it
+ requires tracking and breaching the privacy of web users.
+ .
+ This tag can also indicate the use of the related obsolete privacy
+ breaching software, Urchin WebAnalytics.
+ .
+ Note that using Google AdSense in a local copy of a page is a violation of
+ the Google AdSense terms of use. This violation renders this package not
+ distributable in Debian, and is thus a serious bug.
+ .
+ Please replace any scripts, images or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-google-cse.tag b/tags/p/privacy-breach-google-cse.tag
new file mode 100644
index 0000000..afa833d
--- /dev/null
+++ b/tags/p/privacy-breach-google-cse.tag
@@ -0,0 +1,13 @@
+Tag: privacy-breach-google-cse
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a potential privacy breach by fetching
+ data from Google at runtime, and may feed private data to Google via
+ Custom Search Engine queries.
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-google-plus.tag b/tags/p/privacy-breach-google-plus.tag
new file mode 100644
index 0000000..34e8989
--- /dev/null
+++ b/tags/p/privacy-breach-google-plus.tag
@@ -0,0 +1,13 @@
+Tag: privacy-breach-google-plus
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a potential privacy breach by
+ exchanging data with Google+ at runtime via plugins such
+ as "+1" buttons.
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-logo.tag b/tags/p/privacy-breach-logo.tag
new file mode 100644
index 0000000..348c3b6
--- /dev/null
+++ b/tags/p/privacy-breach-logo.tag
@@ -0,0 +1,17 @@
+Tag: privacy-breach-logo
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a potential privacy breach by fetching a
+ logo at runtime.
+ .
+ Before using a local copy you should check that the logo is suitable
+ for main. You can get help with determining this by posting a link to
+ the logo and a copy of, or a link to, the logo copyright and license
+ information to the debian-legal mailing list.
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-piwik.tag b/tags/p/privacy-breach-piwik.tag
new file mode 100644
index 0000000..ce42df1
--- /dev/null
+++ b/tags/p/privacy-breach-piwik.tag
@@ -0,0 +1,19 @@
+Tag: privacy-breach-piwik
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a privacy breach by using an online
+ Piwik module.
+ .
+ Piwik is a free and open source web analytics application, designed to
+ allow publishers of websites to track visitors.
+ .
+ Even though Piwik is free and respects the "Do Not Track" browser
+ option, it is nevertheless breaches the privacy of local users
+ by fetching data from internet.
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-statistics-website.tag b/tags/p/privacy-breach-statistics-website.tag
new file mode 100644
index 0000000..f2597bd
--- /dev/null
+++ b/tags/p/privacy-breach-statistics-website.tag
@@ -0,0 +1,25 @@
+Tag: privacy-breach-statistics-website
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a privacy breach by fetching data from
+ an external website in order to compile visitor statistics.
+ .
+ Please ask upstream to use the free software web analytics engine
+ Piwik, which respects the "Do Not Track" browser option.
+ .
+ This tag covers the following websites:
+ .
+ - cruel-carlota.pagodabox.com
+ - linkexchange.com (defunct)
+ - nedstatbasic.net
+ - onestat.com
+ - statcounter.com
+ - sitemeter.com
+ - webstats.motigo.com
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-twitter.tag b/tags/p/privacy-breach-twitter.tag
new file mode 100644
index 0000000..7eff11e
--- /dev/null
+++ b/tags/p/privacy-breach-twitter.tag
@@ -0,0 +1,12 @@
+Tag: privacy-breach-twitter
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a potential privacy breach by
+ exchanging data with Twitter at runtime via plugins.
+ .
+ Please replace any scripts, images, or other remote resources with
+ non-remote resources. It is preferable to replace them with text and
+ links but local copies of the remote resources are also acceptable as
+ long as they don't also make calls to remote services. Please ensure
+ that the remote resources are suitable for Debian main before making
+ local copies of them.
diff --git a/tags/p/privacy-breach-uses-embedded-file.tag b/tags/p/privacy-breach-uses-embedded-file.tag
new file mode 100644
index 0000000..3e0e021
--- /dev/null
+++ b/tags/p/privacy-breach-uses-embedded-file.tag
@@ -0,0 +1,11 @@
+Tag: privacy-breach-uses-embedded-file
+Severity: error
+Check: files/privacy-breach
+Explanation: This package creates a potential privacy breach by fetching data
+ from an external website at runtime. Please remove these scripts or
+ external HTML resources.
+ .
+ Instead you can use the Debian package indicated in the context if it
+ is compatible.
+Renamed-From:
+ privacy-breach-may-use-debian-package
diff --git a/tags/p/privacy-breach-w3c-valid-html.tag b/tags/p/privacy-breach-w3c-valid-html.tag
new file mode 100644
index 0000000..e16d083
--- /dev/null
+++ b/tags/p/privacy-breach-w3c-valid-html.tag
@@ -0,0 +1,15 @@
+Tag: privacy-breach-w3c-valid-html
+Severity: error
+Check: files/privacy-breach
+See-Also: http://validator.w3.org/docs/help.html#icon,
+ http://www.w3.org/Consortium/Legal/logo-usage-20000308
+Explanation: This package creates a potential privacy breach by fetching W3C
+ validation icons.
+ .
+ These badges may be displayed to tell readers that care has been
+ taken to make a page compliant with W3C standards. Unfortunately,
+ downloading the image from www.w3.org might expose the reader's IP
+ address to potential tracking.
+ .
+ Note that these icons are non-free and must not be copied into the
+ package. You could safely delete this W3C validation badge.
diff --git a/tags/p/program-not-linked-against-libc.tag b/tags/p/program-not-linked-against-libc.tag
new file mode 100644
index 0000000..2ee582e
--- /dev/null
+++ b/tags/p/program-not-linked-against-libc.tag
@@ -0,0 +1,11 @@
+Tag: program-not-linked-against-libc
+Severity: error
+Check: binaries/prerequisites
+Explanation: The package installs a binary which is not dynamically linked
+ against libc.
+ .
+ It is theoretically possible to have a program which doesn't use any
+ symbols from libc, but it is far more likely that this binary simply
+ isn't linked correctly.
+See-Also:
+ Bug#698720
diff --git a/tags/p/public-upstream-key-in-native-package.tag b/tags/p/public-upstream-key-in-native-package.tag
new file mode 100644
index 0000000..1cff49a
--- /dev/null
+++ b/tags/p/public-upstream-key-in-native-package.tag
@@ -0,0 +1,8 @@
+Tag: public-upstream-key-in-native-package
+Severity: info
+Check: debian/upstream/signing-key
+See-Also: uscan(1)
+Explanation: The source package contains a public upstream signing key even
+ though there is no upstream as the package is native.
+ .
+ Please remove the key.
diff --git a/tags/p/public-upstream-key-not-minimal.tag b/tags/p/public-upstream-key-not-minimal.tag
new file mode 100644
index 0000000..3aa6c8f
--- /dev/null
+++ b/tags/p/public-upstream-key-not-minimal.tag
@@ -0,0 +1,13 @@
+Tag: public-upstream-key-not-minimal
+Severity: info
+Check: debian/upstream/signing-key
+See-Also: uscan(1)
+Explanation: The package contains a public upstream signing key with extra
+ signatures. The signatures are unnecessary and take up space in
+ the archive.
+ .
+ Please export the upstream key again with the command:
+ .
+ $ gpg --armor --export --export-options export-minimal,export-clean
+ .
+ and use that key instead of the key currently in the source package.
diff --git a/tags/p/public-upstream-key-unusable.tag b/tags/p/public-upstream-key-unusable.tag
new file mode 100644
index 0000000..ec78188
--- /dev/null
+++ b/tags/p/public-upstream-key-unusable.tag
@@ -0,0 +1,8 @@
+Tag: public-upstream-key-unusable
+Severity: info
+Check: debian/upstream/signing-key
+See-Also: uscan(1)
+Explanation: The source package contains a public upstream signing key that
+ contains bogus, unexpected or unsuitable data.
+ .
+ Please obtain the correct key from upstream.
diff --git a/tags/p/public-upstream-keys-in-multiple-locations.tag b/tags/p/public-upstream-keys-in-multiple-locations.tag
new file mode 100644
index 0000000..522d81f
--- /dev/null
+++ b/tags/p/public-upstream-keys-in-multiple-locations.tag
@@ -0,0 +1,11 @@
+Tag: public-upstream-keys-in-multiple-locations
+Severity: info
+Check: debian/upstream/signing-key
+See-Also: uscan(1)
+Explanation: The source package contains public upstream signing keys
+ (or keyrings) in multiple locations. This situation is potentially
+ confusing for uscan(1) or any other tool hoping to verify the
+ integrity and authenticity of upstream sources.
+ .
+ Please remove all keys (or keyrings) except one at the recommended
+ location <code>debian/upstream/signing-key.asc</code>.
diff --git a/tags/p/pypi-homepage.tag b/tags/p/pypi-homepage.tag
new file mode 100644
index 0000000..10dd1b4
--- /dev/null
+++ b/tags/p/pypi-homepage.tag
@@ -0,0 +1,14 @@
+Tag: pypi-homepage
+Severity: warning
+Check: languages/python/homepage
+Explanation: The <code>Homepage</code> field in this package's
+ control file refers to the Python Package Index (PyPI), and
+ not to the true upstream.
+ .
+ Debian packages should point at the upstream's homepage, but
+ PyPI is just another packaging system. You may be able to
+ find the correct information in the <code>Homepage</code> link
+ on the corresponding PyPI web page (under the "Project details"
+ tab).
+See-Also:
+ Bug#981932
diff --git a/tags/p/python-debug-in-wrong-location.tag b/tags/p/python-debug-in-wrong-location.tag
new file mode 100644
index 0000000..593a9d0
--- /dev/null
+++ b/tags/p/python-debug-in-wrong-location.tag
@@ -0,0 +1,9 @@
+Tag: python-debug-in-wrong-location
+Severity: warning
+Check: languages/python
+See-Also: Bug#576014
+Explanation: The package appears to be installing debug modules in
+ /usr/lib/debug/usr/lib/pyshared/pythonX.Y/. However, gdb(1)
+ will not look for it there, making it less useful. The file
+ should be installed in /usr/lib/debug/usr/lib/pymodules/pythonX.Y/
+ instead.
diff --git a/tags/p/python-depends-but-no-python-helper.tag b/tags/p/python-depends-but-no-python-helper.tag
new file mode 100644
index 0000000..85cc050
--- /dev/null
+++ b/tags/p/python-depends-but-no-python-helper.tag
@@ -0,0 +1,10 @@
+Tag: python-depends-but-no-python-helper
+Severity: error
+Check: debhelper
+Explanation: The source package declares a dependency on <code>${python:Depends}</code>
+ in the given binary package's <code>debian/control</code> entry. However,
+ <code>debian/rules</code> doesn't call any helper that would generate this
+ substitution variable.
+ .
+ The source package probably needs a call to <code>dh&lowbar;python2</code> (possibly via the
+ Python2 debhelper add-on) in the <code>debian/rules</code> file.
diff --git a/tags/p/python-foo-but-no-python3-foo.tag b/tags/p/python-foo-but-no-python3-foo.tag
new file mode 100644
index 0000000..3f982ca
--- /dev/null
+++ b/tags/p/python-foo-but-no-python3-foo.tag
@@ -0,0 +1,16 @@
+Tag: python-foo-but-no-python3-foo
+Severity: warning
+Check: languages/python
+Explanation: This source package appears to generate the specified Python 2 package
+ without creating a variant for Python 3.
+ .
+ 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".
+ .
+ If upstream have not moved or have no intention to move to Python 3, please
+ be certain that Debian would benefit from the continued inclusion of this
+ package and, if not, consider removing it.
+ .
+ Alternatively, ensure that the corresponding package specifies the
+ <code>${python3:Depends}</code> substvar in its binary dependencies.
diff --git a/tags/p/python-module-has-overly-generic-name.tag b/tags/p/python-module-has-overly-generic-name.tag
new file mode 100644
index 0000000..0123955
--- /dev/null
+++ b/tags/p/python-module-has-overly-generic-name.tag
@@ -0,0 +1,8 @@
+Tag: python-module-has-overly-generic-name
+Severity: error
+Check: languages/python
+Explanation: This package installs a Python module with an overly generic name to
+ a global namespace.
+ .
+ This was either a mistake and/or likely to cause conflicts with other
+ packages.
diff --git a/tags/p/python-module-in-wrong-location.tag b/tags/p/python-module-in-wrong-location.tag
new file mode 100644
index 0000000..e8fd426
--- /dev/null
+++ b/tags/p/python-module-in-wrong-location.tag
@@ -0,0 +1,8 @@
+Tag: python-module-in-wrong-location
+Severity: warning
+Check: languages/python
+See-Also: python-policy 2.5, Bug#576012
+Explanation: The package installs a Python module or debug information for a Python
+ module in the wrong location for the given version of Python.
+ .
+ dh&lowbar;python3 can be used to fix this for Python 3 modules.
diff --git a/tags/p/python-package-depends-on-package-from-other-python-variant.tag b/tags/p/python-package-depends-on-package-from-other-python-variant.tag
new file mode 100644
index 0000000..9513846
--- /dev/null
+++ b/tags/p/python-package-depends-on-package-from-other-python-variant.tag
@@ -0,0 +1,10 @@
+Tag: python-package-depends-on-package-from-other-python-variant
+Severity: warning
+Check: languages/python
+Explanation: Either the specified Python 3.x package declares a dependency on a
+ Python 2.x package, or the specified Python 2.x package depends on a Python
+ 3.x package.
+ .
+ This is likely a typo in <code>debian/control</code> or due to misconfigured
+ calls to, for example, <code>dh&lowbar;installdocs --link-doc=PKG</code>.
+See-Also: Bug#884692
diff --git a/tags/p/python-package-missing-depends-on-python.tag b/tags/p/python-package-missing-depends-on-python.tag
new file mode 100644
index 0000000..524f182
--- /dev/null
+++ b/tags/p/python-package-missing-depends-on-python.tag
@@ -0,0 +1,8 @@
+Tag: python-package-missing-depends-on-python
+Severity: error
+Check: languages/python
+Explanation: The specified Python package ships Python modules under
+ <code>/usr/lib</code> but does not specify any dependency on Python.
+ .
+ This is likely an omission, the result of a typo in
+ <code>debian/control</code> or the file should not be installed.
diff --git a/tags/p/python-traceback-in-manpage.tag b/tags/p/python-traceback-in-manpage.tag
new file mode 100644
index 0000000..a8e762d
--- /dev/null
+++ b/tags/p/python-traceback-in-manpage.tag
@@ -0,0 +1,15 @@
+Tag: python-traceback-in-manpage
+Severity: error
+Check: documentation/manual
+Explanation: The specified manual page contains a Python traceback.
+ .
+ This was probably caused by a call to <code>help2man</code> failing to
+ correctly execute, likely due to an missing or incorrect
+ <code>PYTHONPATH</code> environment variable.
+ .
+ Note that calls to generate manpages from binaries may succeed if the package
+ being built is already installed in the build environment as might locate
+ potentially old copy of the program under <code>/usr/lib/python3</code>. This
+ is fairly common on maintainers' machines, for example. However, in
+ environments where the package is not installed (such as most buildds),
+ generating the manpage may fail and inject a traceback into the manual page.
diff --git a/tags/p/python-version-current-is-deprecated.tag b/tags/p/python-version-current-is-deprecated.tag
new file mode 100644
index 0000000..de684b5
--- /dev/null
+++ b/tags/p/python-version-current-is-deprecated.tag
@@ -0,0 +1,6 @@
+Tag: python-version-current-is-deprecated
+Severity: warning
+Check: languages/python
+Explanation: The use of "current" in the Python-Version or Python3-Version
+ field is deprecated.
+See-Also: python-policy 3.4
diff --git a/tags/p/python2-script-but-no-python2-dep.tag b/tags/p/python2-script-but-no-python2-dep.tag
new file mode 100644
index 0000000..7ec086a
--- /dev/null
+++ b/tags/p/python2-script-but-no-python2-dep.tag
@@ -0,0 +1,21 @@
+Tag: python2-script-but-no-python2-dep
+Severity: error
+Check: scripts
+Explanation: Packages with Python2 scripts should depend on the package
+ <code>python2</code>. Those with scripts that specify a specific version of
+ Python2 must depend, recommend or suggest on that version of Python2
+ (exactly).
+ .
+ For example, if a script in the package uses <code>#!/usr/bin/python2</code>,
+ the package needs a dependency on <code>python2</code>. If a script uses
+ <code>#!/usr/bin/python2.7</code>, the package needs a dependency on
+ <code>python2.7</code>. A dependency on <code>python (>= 2.7)</code> is not
+ correct, since later versions of Python2 may not provide the
+ <code>/usr/bin/python2.7</code> binary.
+ .
+ If you are using debhelper, adding <code>${python2:Depends}</code> to the
+ Depends field and ensuring dh&lowbar;python2 is run during the build should
+ take care of adding the correct dependency.
+ .
+ In some cases a weaker relationship, such as Suggests or Recommends, will
+ be more appropriate.
diff --git a/tags/p/python3-depends-but-no-python3-helper.tag b/tags/p/python3-depends-but-no-python3-helper.tag
new file mode 100644
index 0000000..50630fe
--- /dev/null
+++ b/tags/p/python3-depends-but-no-python3-helper.tag
@@ -0,0 +1,6 @@
+Tag: python3-depends-but-no-python3-helper
+Severity: error
+Check: debhelper
+Explanation: The source package declares a dependency on ${python3:Depends} in the
+ given binary package's debian/control entry. However, debian/rules doesn't
+ call any helper that would generate this substitution variable.
diff --git a/tags/p/python3-script-but-no-python3-dep.tag b/tags/p/python3-script-but-no-python3-dep.tag
new file mode 100644
index 0000000..f60d9f3
--- /dev/null
+++ b/tags/p/python3-script-but-no-python3-dep.tag
@@ -0,0 +1,21 @@
+Tag: python3-script-but-no-python3-dep
+Severity: error
+Check: scripts
+Explanation: Packages with Python3 scripts should depend on the package
+ <code>python3</code>. Those with scripts that specify a specific version of
+ Python3 must depend, recommend or suggest on that version of Python3
+ (exactly).
+ .
+ For example, if a script in the package uses <code>#!/usr/bin/python3</code>,
+ the package needs a dependency on <code>python3</code>. If a script uses
+ <code>#!/usr/bin/python3.8</code>, the package needs a dependency on
+ <code>python3.8</code>. A dependency on <code>python (>= 3.8)</code> is not
+ correct, since later versions of Python may not provide the
+ <code>/usr/bin/python3.8</code> binary.
+ .
+ If you are using debhelper, adding <code>${python3:Depends}</code> to the
+ Depends field and ensuring dh&lowbar;python3 is run during the build should
+ take care of adding the correct dependency.
+ .
+ In some cases a weaker relationship, such as Suggests or Recommends, will
+ be more appropriate.
diff --git a/tags/q/qa-upload-has-incorrect-version-number.tag b/tags/q/qa-upload-has-incorrect-version-number.tag
new file mode 100644
index 0000000..ee36d38
--- /dev/null
+++ b/tags/q/qa-upload-has-incorrect-version-number.tag
@@ -0,0 +1,5 @@
+Tag: qa-upload-has-incorrect-version-number
+Severity: warning
+Check: nmu
+Explanation: A QA upload (uploading an orphaned package without adopting it) is
+ always a maintainer upload: it should not get a NMU revision number.
diff --git a/tags/q/quilt-build-dep-but-no-series-file.tag b/tags/q/quilt-build-dep-but-no-series-file.tag
new file mode 100644
index 0000000..d454ba9
--- /dev/null
+++ b/tags/q/quilt-build-dep-but-no-series-file.tag
@@ -0,0 +1,11 @@
+Tag: quilt-build-dep-but-no-series-file
+Severity: warning
+Check: debian/patches/quilt
+Explanation: Using quilt requires you to explicitly list all patches you want
+ to apply in debian/patches/series. This package build-depends on quilt,
+ but does not provide a patch list. You should either remove the quilt
+ build dependency or add a series file.
+ .
+ Note that an empty file cannot be represented in the Debian diff, so an
+ empty series file will disappear in the source package. If you intended
+ for the series file to be empty, add a comment line.
diff --git a/tags/q/quilt-patch-missing-description.tag b/tags/q/quilt-patch-missing-description.tag
new file mode 100644
index 0000000..de81917
--- /dev/null
+++ b/tags/q/quilt-patch-missing-description.tag
@@ -0,0 +1,16 @@
+Tag: quilt-patch-missing-description
+Severity: info
+Check: debian/patches/quilt
+Explanation: quilt patch files should start with a description of patch. All
+ lines before the start of the patch itself are considered part of the
+ description. You can edit the description with <code>quilt header -e</code>
+ when the patch is at the top of the stack.
+ .
+ As well as a description of the purpose and function of the patch, the
+ description should ideally contain author information, a URL for the bug
+ report (if any), Debian or upstream bugs fixed by it, upstream status,
+ the Debian version and date the patch was first included, and any other
+ information that would be useful if someone were investigating the
+ patch and underlying problem. Please consider using the DEP 3 format for
+ this information.
+See-Also: https://dep-team.pages.debian.net/deps/dep3/
diff --git a/tags/q/quilt-patch-using-template-description.tag b/tags/q/quilt-patch-using-template-description.tag
new file mode 100644
index 0000000..fbf5b35
--- /dev/null
+++ b/tags/q/quilt-patch-using-template-description.tag
@@ -0,0 +1,10 @@
+Tag: quilt-patch-using-template-description
+Severity: info
+Check: debian/patches/quilt
+Explanation: The patch contains a standard DEP 3 template description
+ included by dpkg-source(1). Please consider replacing the template
+ with a real description. You can edit the description by using
+ <code>quilt header -e</code> when the patch is at the top of the stack.
+ Alternatively, editing the patch in most text editors should work
+ as well.
+See-Also: https://dep-team.pages.debian.net/deps/dep3/
diff --git a/tags/q/quilt-patch-with-non-standard-options.tag b/tags/q/quilt-patch-with-non-standard-options.tag
new file mode 100644
index 0000000..0ae81d2
--- /dev/null
+++ b/tags/q/quilt-patch-with-non-standard-options.tag
@@ -0,0 +1,12 @@
+Tag: quilt-patch-with-non-standard-options
+Severity: warning
+Check: debian/patches/quilt
+Explanation: The quilt series file contains non-standard options to apply some of
+ the listed patches. Quilt uses '-p1' by default if nothing is specified
+ after the name of the patch and the current series file specify something
+ else for some of the patches listed.
+ .
+ For compatibility with the source "3.0 (quilt)" source package format,
+ you should avoid using any option at all and make sure that your patches
+ apply with "-p1". This can be done by refreshing all patches like this:
+ quilt pop -a; while quilt push; do quilt refresh -pab; done
diff --git a/tags/q/quilt-series-but-no-build-dep.tag b/tags/q/quilt-series-but-no-build-dep.tag
new file mode 100644
index 0000000..3e2b6dd
--- /dev/null
+++ b/tags/q/quilt-series-but-no-build-dep.tag
@@ -0,0 +1,13 @@
+Tag: quilt-series-but-no-build-dep
+Severity: warning
+Check: debian/patches/quilt
+Explanation: The package contains a debian/patches/series file usually used by
+ quilt to apply patches at build time, but quilt is not listed in the
+ build dependencies.
+ .
+ You should either remove the series file if it's effectively not useful
+ or add quilt to the build-dependencies if quilt is used during the build
+ process.
+ .
+ If you don't need quilt during build but only during maintenance work,
+ then you can override this warning.
diff --git a/tags/q/quilt-series-references-non-existent-patch.tag b/tags/q/quilt-series-references-non-existent-patch.tag
new file mode 100644
index 0000000..a048355
--- /dev/null
+++ b/tags/q/quilt-series-references-non-existent-patch.tag
@@ -0,0 +1,5 @@
+Tag: quilt-series-references-non-existent-patch
+Severity: error
+Check: debian/patches/quilt
+Explanation: In the series file listing all your quilt patches, you referenced a
+ file that does not exist. This will lead to a fatal error when calling quilt.
diff --git a/tags/q/quilt-series-without-trailing-newline.tag b/tags/q/quilt-series-without-trailing-newline.tag
new file mode 100644
index 0000000..e49e31d
--- /dev/null
+++ b/tags/q/quilt-series-without-trailing-newline.tag
@@ -0,0 +1,7 @@
+Tag: quilt-series-without-trailing-newline
+Severity: error
+Check: debian/patches/quilt
+Explanation: The package contains a debian/patches/series file
+ that doesn't end with a newline. dpkg-source may silently
+ corrupt this file.
+See-Also: Bug#584233
diff --git a/tags/q/quoted-placeholder-in-mailcap-entry.tag b/tags/q/quoted-placeholder-in-mailcap-entry.tag
new file mode 100644
index 0000000..89a1f79
--- /dev/null
+++ b/tags/q/quoted-placeholder-in-mailcap-entry.tag
@@ -0,0 +1,14 @@
+Tag: quoted-placeholder-in-mailcap-entry
+Severity: warning
+Check: mailcap
+Explanation: The <code>%s</code> placeholder in a mailcap entry is quoted. That is
+ considered unsafe. Proper escaping should be left to the programs using
+ the entry.
+ .
+ Please remove the single or double quotes around <code>%s</code>.
+See-Also: Bug#33486,
+ Bug#90483,
+ Bug#745141,
+ https://tools.ietf.org/rfc/rfc1524.txt,
+ http://bugs.debian.org/745141#17,
+ https://lists.debian.org/debian-user/2005/04/msg01185.html
diff --git a/tags/r/r-data-without-readme-source.tag b/tags/r/r-data-without-readme-source.tag
new file mode 100644
index 0000000..80d3754
--- /dev/null
+++ b/tags/r/r-data-without-readme-source.tag
@@ -0,0 +1,11 @@
+Tag: r-data-without-readme-source
+Severity: error
+Check: languages/r
+Explanation: Many modules packaged for the R Project for Statistical Computing contain
+ data files with names as &ast;.rda, &ast;.Rda, &ast;.rdata, &ast;.Rdata, etc.
+ .
+ When such files exist, the FTP masters expect them to be explained in
+ debian/README.source, which this package is missing.
+ .
+ Please add a README.source documenting the origins of these files.
+See-Also: https://lists.debian.org/debian-devel/2013/09/msg00332.html
diff --git a/tags/r/r-package-not-arch-all.tag b/tags/r/r-package-not-arch-all.tag
new file mode 100644
index 0000000..12659a0
--- /dev/null
+++ b/tags/r/r-package-not-arch-all.tag
@@ -0,0 +1,10 @@
+Tag: r-package-not-arch-all
+Severity: warning
+Check: languages/r/architecture
+Explanation: The package for an <code>R</code> language package ships a
+ <code>DESCRIPTION</code> file that states <code>NeedsCompilation: No</code>
+ but is not marked <code>Architecture: all</code>.
+ .
+ The package does not require compilation and should be
+ architecture-independent.
+See-Also: https://cran.r-project.org/doc/manuals/r-devel/R-exts.html
diff --git a/tags/r/raster-image-in-scalable-directory.tag b/tags/r/raster-image-in-scalable-directory.tag
new file mode 100644
index 0000000..589d82c
--- /dev/null
+++ b/tags/r/raster-image-in-scalable-directory.tag
@@ -0,0 +1,5 @@
+Tag: raster-image-in-scalable-directory
+Severity: warning
+Check: desktop/icons
+Explanation: The given raster image was installed into a "scalable" icon directory.
+ Only vector graphics (e.g. SVG) should be installed into those directories.
diff --git a/tags/r/rc-version-greater-than-expected-version.tag b/tags/r/rc-version-greater-than-expected-version.tag
new file mode 100644
index 0000000..5c47662
--- /dev/null
+++ b/tags/r/rc-version-greater-than-expected-version.tag
@@ -0,0 +1,9 @@
+Tag: rc-version-greater-than-expected-version
+Severity: warning
+Check: debian/changelog
+See-Also: debian-policy 5.6.12
+Explanation: The package appears to be a release candidate or preview release, but
+ the version sorts higher than the expected final release.
+ .
+ For non-native packages, the check examines the upstream version.
+ For native packages, it looks at the Debian maintainer's revision.
diff --git a/tags/r/read-in-maintainer-script.tag b/tags/r/read-in-maintainer-script.tag
new file mode 100644
index 0000000..1127ec4
--- /dev/null
+++ b/tags/r/read-in-maintainer-script.tag
@@ -0,0 +1,14 @@
+Tag: read-in-maintainer-script
+Severity: error
+Check: scripts
+Explanation: The given maintainer script appears to use <code>read</code> to
+ get information from the user. Prompting in maintainer scripts must be done
+ by communicating through a utility that conforms to the Debian configuration
+ management specification, version 2 or higher. The <code>debconf</code>
+ program is a popular choice.
+ .
+ With this tag, there is a potential for false positives. For example,
+ <code>read</code> could be used in a block with redirection, in a function
+ in a pipe, or when standard input is provided in an unusual way.
+See-Also:
+ debian-policy 3.9.1
diff --git a/tags/r/readme-debian-contains-debmake-template.tag b/tags/r/readme-debian-contains-debmake-template.tag
new file mode 100644
index 0000000..2d2538a
--- /dev/null
+++ b/tags/r/readme-debian-contains-debmake-template.tag
@@ -0,0 +1,14 @@
+Tag: readme-debian-contains-debmake-template
+Severity: warning
+Check: debian/readme
+Explanation: The README.Debian file installed by this package contains one of the
+ template phrases from the README.Debian provided by deb-make or dh&lowbar;make:
+ .
+ Comments regarding the package
+ So far nothing to say
+ &lt;possible notes regarding this package - if none, delete this file&gt;
+ Automatically generated by debmake
+ .
+ If there is real information in the file, please delete any generic
+ template phrases. If there is nothing to say in the file, it is best
+ removed.
diff --git a/tags/r/readme-debian-contains-invalid-email-address.tag b/tags/r/readme-debian-contains-invalid-email-address.tag
new file mode 100644
index 0000000..f00ec57
--- /dev/null
+++ b/tags/r/readme-debian-contains-invalid-email-address.tag
@@ -0,0 +1,5 @@
+Tag: readme-debian-contains-invalid-email-address
+Severity: warning
+Check: debian/readme
+Explanation: The README.Debian file contains an invalid email address: the domain
+ needs at least one dot. This looks like a mistake.
diff --git a/tags/r/readme-debian-mentions-usr-doc.tag b/tags/r/readme-debian-mentions-usr-doc.tag
new file mode 100644
index 0000000..f281c77
--- /dev/null
+++ b/tags/r/readme-debian-mentions-usr-doc.tag
@@ -0,0 +1,7 @@
+Tag: readme-debian-mentions-usr-doc
+Severity: warning
+Check: debian/readme
+Explanation: The README.Debian file installed by this package apparently points
+ users at /usr/doc. /usr/doc has been retired and all documentation
+ migrated to /usr/share/doc. This reference should probably also be
+ updated.
diff --git a/tags/r/readme-source-is-dh_make-template.tag b/tags/r/readme-source-is-dh_make-template.tag
new file mode 100644
index 0000000..55e4303
--- /dev/null
+++ b/tags/r/readme-source-is-dh_make-template.tag
@@ -0,0 +1,8 @@
+Tag: readme-source-is-dh_make-template
+Severity: error
+Check: dh-make
+Explanation: The debian/README.source file appears to be an unmodified or insufficiently
+ modified copy of the dh&lowbar;make template.
+ .
+ Please double-check the README.source page and replace it with information
+ about this source package or simply remove the file completely.
diff --git a/tags/r/recommended-field.tag b/tags/r/recommended-field.tag
new file mode 100644
index 0000000..df83679
--- /dev/null
+++ b/tags/r/recommended-field.tag
@@ -0,0 +1,14 @@
+Tag: recommended-field
+Severity: warning
+Check: fields/recommended
+Renamed-From:
+ no-priority-field
+ no-section-field-for-source
+ no-section-field
+ no-urgency-in-changes-file
+Explanation: The named field is recommended by policy but not present in the
+ package's primary control file.
+See-Also:
+ debian-policy 5.2,
+ debian-policy 5.3,
+ debian-policy 5.5
diff --git a/tags/r/recursive-privilege-change.tag b/tags/r/recursive-privilege-change.tag
new file mode 100644
index 0000000..f844611
--- /dev/null
+++ b/tags/r/recursive-privilege-change.tag
@@ -0,0 +1,27 @@
+Tag: recursive-privilege-change
+Severity: warning
+Check: scripts
+Renamed-From: maintainer-script-should-not-use-recursive-chown-or-chmod
+Explanation: The named maintainer script appears to call <code>chmod</code> or
+ <code>chown</code> with a <code>--recursive</code>/<code>-R</code> argument, or
+ it uses <code>find(1)</code> with similar intent.
+ .
+ All such uses are vulnerable to hardlink attacks on mainline (i.e.
+ non-Debian) kernels that do not set <code>fs.protected&lowbar;hardlinks=1</code>.
+ .
+ The security risk arises when a non-privileged user set links to
+ files they do not own, such as such as <code>/etc/shadow</code> or
+ files in <code>/var/lib/dpkg/</code>. A superuser's recursive call to
+ <code>chown</code> or <code>chmod</code> on behalf of a role user account
+ would then modify the non-owned files in ways that allow the
+ non-privileged user to manipulate them later.
+ .
+ There are several ways to mitigate the issue in maintainer scripts:
+ .
+ - For a static role user, please call <code>chown</code> at build time
+ and not during the installation.
+ - If that is too complicated, use <code>runuser(1)</code> in the
+ relevant build parts to create files with correct ownership.
+ - Given a static list of files to change, use non-recursive calls
+ for each file. (Please do not generate the list with <code>find</code>.)
+See-Also: Bug#895597, Bug#889060, Bug#889488, runuser(1)
diff --git a/tags/r/redundant-bugs-field.tag b/tags/r/redundant-bugs-field.tag
new file mode 100644
index 0000000..ffa8b21
--- /dev/null
+++ b/tags/r/redundant-bugs-field.tag
@@ -0,0 +1,6 @@
+Tag: redundant-bugs-field
+Severity: warning
+Check: fields/bugs
+Explanation: You use the Bugs field though the field value is the default
+ (debbugs://bugs.debian.org/). In this case the field is redundant and
+ should be removed.
diff --git a/tags/r/redundant-build-prerequisites.tag b/tags/r/redundant-build-prerequisites.tag
new file mode 100644
index 0000000..ddb3aec
--- /dev/null
+++ b/tags/r/redundant-build-prerequisites.tag
@@ -0,0 +1,11 @@
+Tag: redundant-build-prerequisites
+Severity: warning
+Check: fields/package-relations
+Renamed-From:
+ package-has-a-duplicate-build-relation
+Explanation: The source declares a variety of build prerequisites
+ in <code>Build-Depends</code>, <code>Build-Depends-Indep</code>,
+ or <code>Build-Depends-Arch</code> but the fields work together.
+ The given set contains redundant information.
+ .
+ Please simplify the build prerequisites.
diff --git a/tags/r/redundant-control-relation.tag b/tags/r/redundant-control-relation.tag
new file mode 100644
index 0000000..1893d52
--- /dev/null
+++ b/tags/r/redundant-control-relation.tag
@@ -0,0 +1,11 @@
+Tag: redundant-control-relation
+Severity: pedantic
+Check: debian/control/field/relation
+Renamed-From:
+ duplicate-in-relation-field
+Explanation: The named field in the <code>debian/control</code> file lists
+ multiple package relationships when one would be sufficient.
+ .
+ The less restrictive declaration can be removed. The tools <code>dpkg-source</code>
+ and <code>dpkg-gencontrol</code> do that automatically, so it does not affect the
+ package generated from this source.
diff --git a/tags/r/redundant-globbing-patterns.tag b/tags/r/redundant-globbing-patterns.tag
new file mode 100644
index 0000000..a8ce986
--- /dev/null
+++ b/tags/r/redundant-globbing-patterns.tag
@@ -0,0 +1,12 @@
+Tag: redundant-globbing-patterns
+Severity: pedantic
+Check: debian/copyright/dep5
+Explanation: Two globbing patterns in the same <code>Files</code> section in
+ debian/copyright match the same file.
+ .
+ This situation can occur when a narrow pattern should apply the same license
+ as a broader pattern. Please create another <code>Files</code> section for the
+ narrow pattern and place it below other patterns that compete for the same
+ files.
+See-Also: Bug#905747,
+ https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/r/redundant-installation-prerequisite.tag b/tags/r/redundant-installation-prerequisite.tag
new file mode 100644
index 0000000..c165196
--- /dev/null
+++ b/tags/r/redundant-installation-prerequisite.tag
@@ -0,0 +1,19 @@
+Tag: redundant-installation-prerequisite
+Severity: warning
+Check: debian/control/prerequisite/redundant
+Renamed-From:
+ stronger-dependency-implies-weaker
+Explanation: A stronger field for prerequisites in the <code>debian/control</code>
+ file satisfies the named condition stated in a weaker field.
+ .
+ For example, you would see this tag when the <code>Depends</code> field
+ already requires that a package which is also listed in <code>Recommends</code>
+ or <code>Suggests</code> is installed. Or, a package could be listed in both
+ <code>Recommends</code> as well as <code>Suggests</code>.
+ .
+ Current versions of <code>dpkg-gencontrol</code> will silently ignore the
+ weaker field, but like anything unexpected it could indicate another oversight,
+ such as a misspelling or having forgotten to remove the stronger prereguisite
+ when the intent was to move it to a weaker field.
+See-Also:
+ debian-policy 7.2
diff --git a/tags/r/redundant-origin-field.tag b/tags/r/redundant-origin-field.tag
new file mode 100644
index 0000000..319031b
--- /dev/null
+++ b/tags/r/redundant-origin-field.tag
@@ -0,0 +1,5 @@
+Tag: redundant-origin-field
+Severity: warning
+Check: fields/origin
+Explanation: You use the Origin field though the field value is the default (Debian).
+ In this case the field is redundant and should be removed.
diff --git a/tags/r/relative-conffile.tag b/tags/r/relative-conffile.tag
new file mode 100644
index 0000000..7cb353a
--- /dev/null
+++ b/tags/r/relative-conffile.tag
@@ -0,0 +1,7 @@
+Tag: relative-conffile
+Severity: error
+Check: conffiles
+Explanation: All entries in the <code>debian/conffiles</code> control file should
+ have an absolute path specification.
+See-Also:
+ debian-policy appendix-5.1
diff --git a/tags/r/relative-library-search-path.tag b/tags/r/relative-library-search-path.tag
new file mode 100644
index 0000000..a2b6918
--- /dev/null
+++ b/tags/r/relative-library-search-path.tag
@@ -0,0 +1,31 @@
+Tag: relative-library-search-path
+Severity: error
+Check: binaries/rpath
+Explanation: The binary or shared library sets RPATH or RUNPATH. This
+ overrides the normal library search path, possibly interfering with
+ local policy and causing problems for multilib, among other issues.
+ .
+ As an aggravating factor, this search path is relative! It is probably
+ not what you wanted.
+ .
+ The only time a binary or shared library in a Debian package should
+ set RPATH or RUNPATH is if it is linked to private shared libraries
+ in the same package. In that case, place those private shared
+ libraries in <code>/usr/lib/&ast;package&ast;</code>. Libraries used by
+ binaries in other packages should be placed in <code>/lib</code> or
+ <code>/usr/lib</code> as appropriate, with a proper SONAME, in which case
+ RPATH/RUNPATH is unnecessary.
+ .
+ To fix this problem, look for link lines like:
+ .
+ <code>gcc test.o -o test -Wl,--rpath,/usr/local/lib</code>
+ or
+ <code>gcc test.o -o test -R/usr/local/lib</code>
+ .
+ and remove the <code>-Wl,--rpath</code> or <code>-R</code> argument.
+ .
+ You can also use the <code>chrpath</code> utility to remove the RPATH.
+See-Also:
+ https://wiki.debian.org/RpathIssue,
+ Bug#732682,
+ Bug#732674
diff --git a/tags/r/relative-symlink.tag b/tags/r/relative-symlink.tag
new file mode 100644
index 0000000..be4f4dd
--- /dev/null
+++ b/tags/r/relative-symlink.tag
@@ -0,0 +1,10 @@
+Tag: relative-symlink
+Severity: error
+Check: files/symbolic-links
+Renamed-From: symlink-should-be-absolute
+Explanation: Symbolic links between different top-level directories should be
+ absolute.
+ .
+ If you use debhelper, running dh&lowbar;link after creating the package structure
+ will fix this problem for you.
+See-Also: debian-policy 10.5
diff --git a/tags/r/remove-of-unknown-diversion.tag b/tags/r/remove-of-unknown-diversion.tag
new file mode 100644
index 0000000..5a43a46
--- /dev/null
+++ b/tags/r/remove-of-unknown-diversion.tag
@@ -0,0 +1,9 @@
+Tag: remove-of-unknown-diversion
+Severity: error
+Check: maintainer-scripts/diversion
+Explanation: The named maintainer script removes a diversion that it did not
+ add.
+ .
+ When cleaning up unnecessary diversions from old versions of the package,
+ please remove them in <code>preinst</code> or <code>postinst</code>. Do
+ not use <code>postrm</code> for that purpose.
diff --git a/tags/r/renamed-tag.tag b/tags/r/renamed-tag.tag
new file mode 100644
index 0000000..356305a
--- /dev/null
+++ b/tags/r/renamed-tag.tag
@@ -0,0 +1,9 @@
+Tag: renamed-tag
+Severity: pedantic
+Show-Always: yes
+Check: debian/lintian-overrides/mystery
+Explanation: The package has an override for a tag that was renamed.
+ Lintian tag are sometime renamed in order to improve their name.
+ .
+ Override file is dynamically translated by Lintian. Nevertheless
+ please replace the old name by the new name.
diff --git a/tags/r/repackaged-source-not-advertised.tag b/tags/r/repackaged-source-not-advertised.tag
new file mode 100644
index 0000000..5bd64be
--- /dev/null
+++ b/tags/r/repackaged-source-not-advertised.tag
@@ -0,0 +1,26 @@
+Tag: repackaged-source-not-advertised
+Severity: info
+Check: debian/copyright/dep5
+Explanation: The <code>debian/copyright</code> file mentions <code>Files-Excluded</code>
+ but the source version has no repack suffix.
+ .
+ Repackaged sources are expected to indicate in their version number
+ that they are different from the upstream release. It is commonly
+ done by adding a repack suffix to the upstream version.
+ .
+ The choice of repack suffix depends on the reason for repackaging.
+ When some files were excluded because licensing was a concern, the
+ suffix <code>+dfsg</code> may be appropriate. In more generic cases, one
+ could chose <code>+ds</code>.
+ .
+ Upstream sources are sometimes repackaged by accident when using old
+ versions of <code>dh&lowbar;make</code>. It can also happen when a maintainer
+ invokes the dh&lowbar;make option <code>--createorig</code> even though it is
+ not needed.
+ .
+ According to the Debian Developer's Reference 6.7.8.2, the repack
+ suffix is not required.
+ .
+ Please include such a suffix in the changelog version number to avoid
+ this warning.
+See-Also: Bug#471537, https://www.debian.org/doc/manuals/developers-reference/best-pkging-practices.html
diff --git a/tags/r/repeated-path-segment.tag b/tags/r/repeated-path-segment.tag
new file mode 100644
index 0000000..8da58b3
--- /dev/null
+++ b/tags/r/repeated-path-segment.tag
@@ -0,0 +1,9 @@
+Tag: repeated-path-segment
+Severity: pedantic
+Check: files/hierarchy/path-segments
+Explanation: The file is installed into a location that repeats the given
+ path segment. An example would be <code>/usr/lib/lib</code> or
+ <code>/usr/share/myprogram/share</code>.
+ .
+ More often than not this is unintended.
+See-Also: Bug#950052, Bug#950027
diff --git a/tags/r/repeated-trigger-name.tag b/tags/r/repeated-trigger-name.tag
new file mode 100644
index 0000000..8ebae1a
--- /dev/null
+++ b/tags/r/repeated-trigger-name.tag
@@ -0,0 +1,18 @@
+Tag: repeated-trigger-name
+Severity: error
+Check: triggers
+Explanation: The package repeats the same trigger. There should be no reason to
+ do this and it may lead to confusing results or errors.
+ .
+ For the same "base" type of trigger (e.g. two <code>interest</code>-type triggers)
+ the last declaration will be the effective one.
+ .
+ This tag is also triggered if the package has an <code>activate</code> trigger
+ for something on which it also declares an <code>interest</code>. The only (but
+ rather unlikely) reason to do this is if another package *also*
+ declares an <code>interest</code> and this package needs to activate that
+ other package. If the package is using it for this exact purpose, then
+ please use a Lintian override to state this.
+ .
+ Please remove any duplicate definitions.
+See-Also: deb-triggers(5), Bug#698723
diff --git a/tags/r/required-field.tag b/tags/r/required-field.tag
new file mode 100644
index 0000000..d3bb384
--- /dev/null
+++ b/tags/r/required-field.tag
@@ -0,0 +1,17 @@
+Tag: required-field
+Severity: error
+Check: fields/required
+Renamed-From:
+ no-maintainer-field
+ no-architecture-field
+ no-description-in-changes-file
+ no-package-name
+ no-standards-version-field
+ no-version-field
+ package-has-no-description
+Explanation: The named field is required by policy but not present in the
+ package's primary control file.
+See-Also:
+ debian-policy 5.3,
+ debian-policy 5.5,
+ debian-policy 5.6.11
diff --git a/tags/r/requires-r-api.tag b/tags/r/requires-r-api.tag
new file mode 100644
index 0000000..e8e55e3
--- /dev/null
+++ b/tags/r/requires-r-api.tag
@@ -0,0 +1,13 @@
+Tag: requires-r-api
+Severity: error
+Check: languages/r/site-library
+Explanation: This package ships a site library for the <code>R</code>
+ programming language package but does not declare the
+ <code>R</code> API <code>r-api-*N*</code> as a package
+ prerequisite.
+ .
+ With the dh sequencer, please use <code>--buildsystem=R</code> in
+ <code>debian/rules</code> and add the substitution variable
+ <code>${R:Depends}</code> to the <code>Depends</code> field in
+ <code>debian/control</code>.
+See-Also: https://wiki.debian.org/Teams/r-pkg-team
diff --git a/tags/r/root-in-contact.tag b/tags/r/root-in-contact.tag
new file mode 100644
index 0000000..cbc61e6
--- /dev/null
+++ b/tags/r/root-in-contact.tag
@@ -0,0 +1,11 @@
+Tag: root-in-contact
+Severity: error
+Check: fields/mail-address
+Renamed-From:
+ maintainer-address-is-root-user
+ uploader-address-is-root-user
+ changed-by-address-is-root-user
+Explanation: The named contact includes root as a name or as part of
+ the mail address, which is invalid.
+ .
+ The package may not have been built in a sane environment.
diff --git a/tags/r/ruby-interpreter-is-deprecated.tag b/tags/r/ruby-interpreter-is-deprecated.tag
new file mode 100644
index 0000000..3fdb763
--- /dev/null
+++ b/tags/r/ruby-interpreter-is-deprecated.tag
@@ -0,0 +1,12 @@
+Tag: ruby-interpreter-is-deprecated
+Severity: warning
+Check: languages/ruby
+Explanation: Starting with ruby2.3, Ruby interpreter packages stopped
+ providing the <code>ruby-interpreter</code> virtual package. It should
+ no longer be used as a prerequisite.
+ .
+ In packages using <code>gem2deb</code>, please consider using
+ <code>${ruby:Depends}</code>. It will expand automatically to the
+ prerequisites the package needs (including the interpreter as well
+ as the libraries) and can replace all other Ruby-related dependency
+ declarations.
diff --git a/tags/r/ruby-script-but-no-ruby-dep.tag b/tags/r/ruby-script-but-no-ruby-dep.tag
new file mode 100644
index 0000000..2e12ce3
--- /dev/null
+++ b/tags/r/ruby-script-but-no-ruby-dep.tag
@@ -0,0 +1,9 @@
+Tag: ruby-script-but-no-ruby-dep
+Severity: error
+Check: scripts
+Explanation: Packages with Ruby scripts must depend on a valid Ruby interpreter.
+ If any script uses <code>#!/usr/bin/ruby</code>, the package
+ should declare <code>ruby</code> as a prerequisite.
+ .
+ In some cases, a weaker relationship like <code>Suggests</code> or
+ <code>Recommends</code> is more appropriate.
diff --git a/tags/r/rubygem-homepage.tag b/tags/r/rubygem-homepage.tag
new file mode 100644
index 0000000..1cc1523
--- /dev/null
+++ b/tags/r/rubygem-homepage.tag
@@ -0,0 +1,12 @@
+Tag: rubygem-homepage
+Severity: warning
+Check: languages/ruby
+Explanation: The <code>Homepage</code> field in this package's
+ control file refers to Rubygems, and not to the true upstream.
+ .
+ Debian packages should point at the upstream's homepage, but
+ Rubygems is just another packaging system. You may be able to
+ find the correct information in the <code>Homepage</code> link
+ of the corresponding Rubygems package.
+See-Also:
+ Bug#981935
diff --git a/tags/r/rules-do-not-require-root.tag b/tags/r/rules-do-not-require-root.tag
new file mode 100644
index 0000000..05297b1
--- /dev/null
+++ b/tags/r/rules-do-not-require-root.tag
@@ -0,0 +1,11 @@
+Tag: rules-do-not-require-root
+Severity: classification
+Check: debian/control/field/rules-requires-root
+Renamed-From:
+ rules-does-not-require-root
+Explanation: The sources can build the installation packages without using
+ <code>fakeroot(1)</code> or similar.
+See-Also:
+ /usr/share/doc/dpkg/spec/rootless-builds.txt,
+ debian-policy 4.9.2,
+ debian-policy 5.6.31
diff --git a/tags/r/rules-require-build-prerequisite.tag b/tags/r/rules-require-build-prerequisite.tag
new file mode 100644
index 0000000..2e8f98e
--- /dev/null
+++ b/tags/r/rules-require-build-prerequisite.tag
@@ -0,0 +1,25 @@
+Tag: rules-require-build-prerequisite
+Severity: error
+Check: debian/rules
+Renamed-From:
+ missing-build-dependency
+ missing-python-build-dependency
+Explanation:
+ The code in <code>debian/rules</code> requires a prerequisite
+ that is not presently listed in the package's <code>Build-Depends</code>.
+ .
+ In the special case of Python, affected packages should <code>Build-Depend</code>
+ on one of <code>python3</code>, <code>python3-all</code>, <code>python3-dev</code>,
+ or <code>python3-all-dev</code>. Which one depends on whether a package supports
+ multiple Python versions, and also whether the package builds Python modules
+ or uses Python only as part of the build process.
+ .
+ Packages that depend on a specific Python version may build-depend
+ on any appropriate <code>pythonX.Y</code> or <code>pythonX.Y-dev</code> package
+ instead.
+ .
+ The condition you see in the context is not a recommendation on what to add. If
+ you see a list, more than likely only one member is needed to make this tag go
+ away. You probably also do not need the <code>:any</code> multiarch qualifier,
+ if you see one.
+See-Also: debian-policy 4.2
diff --git a/tags/r/rules-require-root-explicitly.tag b/tags/r/rules-require-root-explicitly.tag
new file mode 100644
index 0000000..ae49e3d
--- /dev/null
+++ b/tags/r/rules-require-root-explicitly.tag
@@ -0,0 +1,13 @@
+Tag: rules-require-root-explicitly
+Severity: classification
+Check: debian/control/field/rules-requires-root
+Renamed-From:
+ rules-requires-root-explicitly
+Explanation: The sources require <code>fakeroot(1)</code> or similar to build
+ the installation packages and also explicitly declare that need via the field
+ <code>Rules-Requires-Root</code> in the source stanza of the file
+ <code>debian/control</code>.
+See-Also:
+ /usr/share/doc/dpkg/spec/rootless-builds.txt,
+ debian-policy 4.9.2,
+ debian-policy 5.6.31
diff --git a/tags/r/rules-silently-require-root.tag b/tags/r/rules-silently-require-root.tag
new file mode 100644
index 0000000..43c109d
--- /dev/null
+++ b/tags/r/rules-silently-require-root.tag
@@ -0,0 +1,24 @@
+Tag: rules-silently-require-root
+Severity: info
+Check: debian/control/field/rules-requires-root
+Renamed-From:
+ should-specify-rules-requires-root
+Explanation: These sources require <code>fakeroot(1)</code> or similar to build
+ the installation packages, but the field <code>Rules-Requires-Root</code> is
+ empty or missing.
+ .
+ At least the shown path in the indicated installation package is owned by user
+ (or a group) other than <code>root:root</code>.
+ .
+ Over time, Debian has successively narrowed the steps for which elevated privileges
+ are required. It speeds up the building of installation packages in the archive.
+ .
+ Please declare whether the sources require root privileges. Eventually, Debian will
+ switch the default archive-wide behaviour to expedite the build process.
+ .
+ You can use the field <code>Rules-Requires-Root</code> in the source stanza of
+ <code>debian/control</code> to declare the required build privileges.
+See-Also:
+ /usr/share/doc/dpkg/spec/rootless-builds.txt,
+ debian-policy 4.9.2,
+ debian-policy 5.6.31
diff --git a/tags/r/run-parts-cron-filename-contains-illegal-chars.tag b/tags/r/run-parts-cron-filename-contains-illegal-chars.tag
new file mode 100644
index 0000000..4075a10
--- /dev/null
+++ b/tags/r/run-parts-cron-filename-contains-illegal-chars.tag
@@ -0,0 +1,8 @@
+Tag: run-parts-cron-filename-contains-illegal-chars
+Severity: warning
+Check: cron
+Explanation: The script in /etc/cron.&lt;time-interval&gt; will not be executed by
+ run-parts(8) because the filename contains a "." (full stop) or "+" (plus).
+ .
+ It is recommended to use "&lowbar;" (underscores) instead of these symbols.
+See-Also: run-parts(8), debian-policy 9.5.1
diff --git a/tags/r/runtime-test-file-is-not-a-regular-file.tag b/tags/r/runtime-test-file-is-not-a-regular-file.tag
new file mode 100644
index 0000000..721cf73
--- /dev/null
+++ b/tags/r/runtime-test-file-is-not-a-regular-file.tag
@@ -0,0 +1,7 @@
+Tag: runtime-test-file-is-not-a-regular-file
+Severity: info
+Check: testsuite
+Explanation: A runtime test listed by debian/tests/control is not a regular
+ file or a relative symbolic link to a regular file in the source
+ package.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/r/runtime-test-file-uses-installed-python-versions.tag b/tags/r/runtime-test-file-uses-installed-python-versions.tag
new file mode 100644
index 0000000..3b7c0f2
--- /dev/null
+++ b/tags/r/runtime-test-file-uses-installed-python-versions.tag
@@ -0,0 +1,17 @@
+Tag: runtime-test-file-uses-installed-python-versions
+Severity: warning
+Check: testsuite
+Explanation: The specified file appears to use <code>py3versions -i</code>
+ to determine the "installed" Python versions.
+ .
+ However, this can cause issues if a Python transition is in progress
+ as the <code>-minimal</code> variant of the previous version
+ (eg. <code>python3.X-minimal</code>) remains installed in many environments.
+ This variant then provides enough of an interpreter to count as being
+ "installed" but not enough for the tests themselves to succeed in most
+ cases. This then prevents the overall transition from taking place.
+ .
+ Please replace this will a call to all "supported" packages instead
+ (eg. <code>py3versions -s</code> and ensure <code>python3-all</code> is listed
+ in the test dependencies.
+See-Also: https://lists.debian.org/debian-devel/2020/03/msg00280.html
diff --git a/tags/r/runtime-test-file-uses-supported-python-versions-without-test-depends.tag b/tags/r/runtime-test-file-uses-supported-python-versions-without-test-depends.tag
new file mode 100644
index 0000000..f23e167
--- /dev/null
+++ b/tags/r/runtime-test-file-uses-supported-python-versions-without-test-depends.tag
@@ -0,0 +1,15 @@
+Tag: runtime-test-file-uses-supported-python-versions-without-test-depends
+Severity: warning
+Check: testsuite
+Renamed-From:
+ runtime-test-file-uses-supported-python-versions-without-python-all-build-depends
+Explanation: The specified file appears to use <code>py3versions -s</code> to
+ determine the "supported" Python versions without specifying
+ <code>python3-all</code> (or equivalent) as a test prerequisite.
+ .
+ With only the default version of Python installed, the autopkgtests may
+ pass but the package subsequently fails at runtime when another,
+ non-default, Python version is present.
+ .
+ Please add <code>python3-all</code> as a test prerequisite via <code>Depends</code>
+ in <code>debian/tests/control</code>.
diff --git a/tags/r/rust-boilerplate.tag b/tags/r/rust-boilerplate.tag
new file mode 100644
index 0000000..8e06c7e
--- /dev/null
+++ b/tags/r/rust-boilerplate.tag
@@ -0,0 +1,21 @@
+Tag: rust-boilerplate
+Severity: warning
+Check: languages/rust
+Explanation: The description for the named installable was created by
+ a template in the Rust toolchain but not subsequently modified.
+ .
+ Please amend the default description provided by <code>debcargo</code>
+ in <code>debian/control</code>.
+ .
+ Within the Rust toolchain you can also conveniently add something like
+ the following example to <code>debian/debcargo.toml</code>:
+ .
+ [packages.bin]
+ summary = "Command-line benchmarking tool"
+ description = """
+ Hyperfine is a benchmarking tool similar to 'time' that offers
+ many additional features. One can easily arrange repeated runs
+ and export results in formats like CSV or JSON.
+ """
+See-Also:
+ https://wiki.debian.org/Teams/RustPackaging
diff --git a/tags/s/script-in-etc-init.d-not-registered-via-update-rc.d.tag b/tags/s/script-in-etc-init.d-not-registered-via-update-rc.d.tag
new file mode 100644
index 0000000..99a3a51
--- /dev/null
+++ b/tags/s/script-in-etc-init.d-not-registered-via-update-rc.d.tag
@@ -0,0 +1,7 @@
+Tag: script-in-etc-init.d-not-registered-via-update-rc.d
+Severity: warning
+Check: init-d
+Explanation: The package installs an <code>/etc/init.d</code> script which is
+ not registered in the <code>postinst</code> script. This is usually a bug
+ (such as omitting the <code>#DEBHELPER#</code> token) unless you omit the links
+ intentionally for some reason or create the links some other way.
diff --git a/tags/s/script-in-usr-share-doc.tag b/tags/s/script-in-usr-share-doc.tag
new file mode 100644
index 0000000..fba5eb1
--- /dev/null
+++ b/tags/s/script-in-usr-share-doc.tag
@@ -0,0 +1,6 @@
+Tag: script-in-usr-share-doc
+Severity: info
+Check: documentation
+Explanation: Scripts are usually not documentation files, unless they are
+ examples, in which case they should be in the
+ <code>/usr/share/doc/*pkg*/examples</code> directory.
diff --git a/tags/s/script-not-executable.tag b/tags/s/script-not-executable.tag
new file mode 100644
index 0000000..2507a30
--- /dev/null
+++ b/tags/s/script-not-executable.tag
@@ -0,0 +1,9 @@
+Tag: script-not-executable
+Severity: warning
+Check: scripts
+Explanation: This file starts with the #! sequence that marks interpreted scripts,
+ but it is not executable.
+ .
+ There has been some discussion to allow such files in paths other than
+ <code>/usr/bin</code> but there was ultimately no broad support for it.
+See-Also: Bug#368792
diff --git a/tags/s/script-uses-bin-env.tag b/tags/s/script-uses-bin-env.tag
new file mode 100644
index 0000000..656ac5f
--- /dev/null
+++ b/tags/s/script-uses-bin-env.tag
@@ -0,0 +1,7 @@
+Tag: script-uses-bin-env
+Severity: warning
+Check: scripts
+Explanation: This script uses /bin/env as its interpreter (used to find the
+ actual interpreter on the user's path). There is no /bin/env on Debian
+ systems; env is instead installed as /usr/bin/env. Usually, the path to
+ env in the script should be changed.
diff --git a/tags/s/script-uses-deprecated-nodejs-location.tag b/tags/s/script-uses-deprecated-nodejs-location.tag
new file mode 100644
index 0000000..0e2c4bc
--- /dev/null
+++ b/tags/s/script-uses-deprecated-nodejs-location.tag
@@ -0,0 +1,14 @@
+Tag: script-uses-deprecated-nodejs-location
+Severity: warning
+Check: scripts
+Explanation: You used <code>/usr/bin/nodejs</code> or <code>/usr/bin/env nodejs</code> as an
+ interpreter for a script.
+ .
+ The <code>/usr/bin/node</code> binary was previously provided by
+ <code>ax25-node</code> and packages were required to use <code>/usr/bin/nodejs</code>
+ instead. <code>ax25-node</code> has since been removed from the archive and the
+ <code>nodejs</code> package now ships the <code>/usr/bin/node</code> binary to match
+ the rest of the Node.js ecosystem.
+ .
+ Please update your package to use the <code>node</code> variant.
+See-Also: Bug#614907, Bug#862051
diff --git a/tags/s/script-uses-perl4-libs-without-dep.tag b/tags/s/script-uses-perl4-libs-without-dep.tag
new file mode 100644
index 0000000..df85e0d
--- /dev/null
+++ b/tags/s/script-uses-perl4-libs-without-dep.tag
@@ -0,0 +1,10 @@
+Tag: script-uses-perl4-libs-without-dep
+Severity: warning
+Check: languages/perl/perl4/prerequisites
+Explanation: The named Perl script uses the named perl 4-era module,
+ which is obsolete. Those libraries were deprecated in perl in 5.14,
+ and will probably be removed from the core in perl 5.16.
+ .
+ Please remove the references to the module or add the prerequisite
+ <code>libperl4-corelibs-perl | perl (&lt;&lt; 5.12.3-7)</code> to
+ your package.
diff --git a/tags/s/script-uses-unversioned-python-in-shebang.tag b/tags/s/script-uses-unversioned-python-in-shebang.tag
new file mode 100644
index 0000000..7ae27f2
--- /dev/null
+++ b/tags/s/script-uses-unversioned-python-in-shebang.tag
@@ -0,0 +1,12 @@
+Tag: script-uses-unversioned-python-in-shebang
+Severity: error
+Check: languages/python/scripts
+Explanation: This package contains a script with unversioned Python shebang.
+ .
+ This package contains a script with unversioned Python shebang and thus
+ defaults to using Python 2. The 2.x series of Python is deprecated and apart
+ from rare cases, will not be supported in Debian Bullseye.
+ .
+ If the script in question is compatible with Python 3, please modify it to use
+ <code>/usr/bin/python3</code> instead. If it only is Python 2 compatible,
+ please modify it to use <code>/usr/bin/python2</code>.
diff --git a/tags/s/script-with-language-extension.tag b/tags/s/script-with-language-extension.tag
new file mode 100644
index 0000000..5b3f92b
--- /dev/null
+++ b/tags/s/script-with-language-extension.tag
@@ -0,0 +1,10 @@
+Tag: script-with-language-extension
+Severity: warning
+Check: files/scripts
+Explanation: When scripts are installed into a directory in the system PATH, the
+ script name should not include an extension such as <code>.sh</code> or
+ <code>.pl</code> that denotes the scripting language currently used to
+ implement it. The implementation language may change; if it does,
+ leaving the name the same would be confusing and changing it would be
+ disruptive.
+See-Also: debian-policy 10.4
diff --git a/tags/s/script-without-interpreter.tag b/tags/s/script-without-interpreter.tag
new file mode 100644
index 0000000..b864087
--- /dev/null
+++ b/tags/s/script-without-interpreter.tag
@@ -0,0 +1,5 @@
+Tag: script-without-interpreter
+Severity: error
+Check: scripts
+Explanation: This file starts with the #! sequence that identifies scripts, but
+ it does not name an interpreter.
diff --git a/tags/s/section-is-dh_make-template.tag b/tags/s/section-is-dh_make-template.tag
new file mode 100644
index 0000000..629f03d
--- /dev/null
+++ b/tags/s/section-is-dh_make-template.tag
@@ -0,0 +1,8 @@
+Tag: section-is-dh_make-template
+Severity: error
+Check: fields/section
+Explanation: The "Section:" field in this package's control file is set to
+ unknown. This is not a valid section, and usually means a dh&lowbar;make
+ template control file was used and never modified to set the correct
+ section.
+See-Also: debian-policy 2.4
diff --git a/tags/s/select-with-boolean-choices.tag b/tags/s/select-with-boolean-choices.tag
new file mode 100644
index 0000000..0e4a855
--- /dev/null
+++ b/tags/s/select-with-boolean-choices.tag
@@ -0,0 +1,6 @@
+Tag: select-with-boolean-choices
+Severity: warning
+Check: debian/debconf
+Explanation: Select templates with only yes and no choices should use the boolean
+ type instead.
+See-Also: debconf-devel(7)
diff --git a/tags/s/select-without-choices.tag b/tags/s/select-without-choices.tag
new file mode 100644
index 0000000..9607070
--- /dev/null
+++ b/tags/s/select-without-choices.tag
@@ -0,0 +1,9 @@
+Tag: select-without-choices
+Severity: error
+Check: debian/debconf
+Explanation: Templates using the <code>select</code> or <code>multiselect</code>
+ data types must provide a <code>Choices:</code> field that lists all possible
+ values.
+See-Also:
+ debconf-specification 3.1,
+ debconf-devel(7)
diff --git a/tags/s/service-file-is-not-a-file.tag b/tags/s/service-file-is-not-a-file.tag
new file mode 100644
index 0000000..570548d
--- /dev/null
+++ b/tags/s/service-file-is-not-a-file.tag
@@ -0,0 +1,5 @@
+Tag: service-file-is-not-a-file
+Severity: error
+Check: systemd
+Explanation: The package contains a service file that is not a regular file or
+ resolvable symlink.
diff --git a/tags/s/shared-library-is-executable.tag b/tags/s/shared-library-is-executable.tag
new file mode 100644
index 0000000..1c01db1
--- /dev/null
+++ b/tags/s/shared-library-is-executable.tag
@@ -0,0 +1,8 @@
+Tag: shared-library-is-executable
+Severity: error
+Check: libraries/shared/file-permissions
+Renamed-From:
+ shlib-with-executable-bit
+Explanation: Shared libraries should be mode 0644.
+See-Also:
+ debian-policy 8.1
diff --git a/tags/s/shared-library-is-multi-arch-foreign.tag b/tags/s/shared-library-is-multi-arch-foreign.tag
new file mode 100644
index 0000000..410c69f
--- /dev/null
+++ b/tags/s/shared-library-is-multi-arch-foreign.tag
@@ -0,0 +1,9 @@
+Tag: shared-library-is-multi-arch-foreign
+Severity: error
+Check: libraries/shared/multi-arch
+Renamed-From:
+ shlib-in-multi-arch-foreign-package
+Explanation: The package is marked as Multi-Arch: foreign, but it includes a shared
+ library in a public library directory.
+See-Also:
+ https://wiki.ubuntu.com/MultiarchSpec
diff --git a/tags/s/shared-library-lacks-prerequisites.tag b/tags/s/shared-library-lacks-prerequisites.tag
new file mode 100644
index 0000000..f1684e1
--- /dev/null
+++ b/tags/s/shared-library-lacks-prerequisites.tag
@@ -0,0 +1,23 @@
+Tag: shared-library-lacks-prerequisites
+Severity: warning
+Check: binaries/prerequisites
+Renamed-From:
+ shared-lib-without-dependency-information
+Explanation: The listed shared library doesn't include information about the
+ other libraries against which it was linked.
+ .
+ More specifically, "<code>ldd foo.so</code>" should report such other
+ libraries. In your case, it reports "statically linked".
+ .
+ The fix is to specify the libraries. One way to do so is to add
+ something like "-lc" to the command-line options for "ld".
+
+Screen: coq/cmxs/prerequisites
+Advocates: Julien Puydt <julien.puydt@gmail.com>
+Reason: The Coq project comes with a kind of compiler that generates files
+ which are ELF shared objects. Unfortunately, they contain many undefined
+ symbols, but those are expected.
+ .
+ There are a lot of false positives.
+See-Also:
+ Bug#999602
diff --git a/tags/s/shared-library-lacks-stack-section.tag b/tags/s/shared-library-lacks-stack-section.tag
new file mode 100644
index 0000000..453fbd7
--- /dev/null
+++ b/tags/s/shared-library-lacks-stack-section.tag
@@ -0,0 +1,13 @@
+Tag: shared-library-lacks-stack-section
+Severity: error
+Check: libraries/shared/stack
+Renamed-From:
+ shlib-without-PT_GNU_STACK-section
+Explanation: The listed shared library lacks a PT&lowbar;GNU&lowbar;STACK section. This forces
+ the dynamic linker to make the stack executable.
+ .
+ The shared lib is linked either with a non-GNU linker or a linker which is
+ very old. This problem can be fixed with a rebuild.
+ .
+ To see whether a shared library has this section, run <code>readelf -l</code>
+ on it and look for a program header of type GNU&lowbar;STACK.
diff --git a/tags/s/shared-library-lacks-version.tag b/tags/s/shared-library-lacks-version.tag
new file mode 100644
index 0000000..aebb8c6
--- /dev/null
+++ b/tags/s/shared-library-lacks-version.tag
@@ -0,0 +1,24 @@
+Tag: shared-library-lacks-version
+Severity: warning
+Check: debian/shlibs
+Renamed-From:
+ shlib-without-versioned-soname
+Explanation: The listed shared library in a public library directory has an
+ SONAME that does not contain any versioning information, either after the
+ <code>.so</code> or before it and set off by a hyphen. It cannot therefore
+ be represented in the shlibs system, and if linked by binaries its
+ interface cannot safely change. There is no backward-compatible way to
+ migrate programs linked against it to a new ABI.
+ .
+ Normally, this means the shared library is a private library for a
+ particular application and is not meant for general use. Policy
+ recommends that such libraries be installed in a subdirectory of
+ <code>/usr/lib</code> rather than in a public shared library directory.
+ .
+ To view the SONAME of a shared library, run <code>readelf -d</code> on the
+ shared library and look for the tag of type SONAME.
+ .
+ There are some special stub libraries or special-purpose shared objects
+ for which an ABI version is not meaningful. If this is one of those
+ cases, please add an override.
+See-Also: debian-policy 10.2, debian-policy 8.6
diff --git a/tags/s/shared-library-not-shipped.tag b/tags/s/shared-library-not-shipped.tag
new file mode 100644
index 0000000..0ad8bb7
--- /dev/null
+++ b/tags/s/shared-library-not-shipped.tag
@@ -0,0 +1,8 @@
+Tag: shared-library-not-shipped
+Severity: warning
+Check: debian/shlibs
+Renamed-From:
+ unused-shlib-entry-in-control-file
+Explanation: The shlibs control file contains an entry for a shared library that
+ is not installed by this package.
+See-Also: debian-policy 8.6
diff --git a/tags/s/shared-library-symbols-not-tracked.tag b/tags/s/shared-library-symbols-not-tracked.tag
new file mode 100644
index 0000000..0603165
--- /dev/null
+++ b/tags/s/shared-library-symbols-not-tracked.tag
@@ -0,0 +1,8 @@
+Tag: shared-library-symbols-not-tracked
+Severity: warning
+Check: debian/shlibs
+Renamed-From:
+ shlib-missing-in-symbols-control-file
+Explanation: The package contains a shared library that is not listed in the
+ symbols control file. This may not be a problem if, for example,
+ the library is a C++ library.
diff --git a/tags/s/sharedobject-in-library-directory-missing-soname.tag b/tags/s/sharedobject-in-library-directory-missing-soname.tag
new file mode 100644
index 0000000..82e4121
--- /dev/null
+++ b/tags/s/sharedobject-in-library-directory-missing-soname.tag
@@ -0,0 +1,13 @@
+Tag: sharedobject-in-library-directory-missing-soname
+Severity: error
+Check: libraries/shared/soname/missing
+Explanation: A shared object was identified in a library directory (a directory
+ in the standard linker path) which doesn't have a SONAME. This is
+ usually an error.
+ .
+ SONAMEs are set with something like <code>gcc -Wl,-soname,libfoo.so.0</code>,
+ where 0 is the major version of the library. If your package uses libtool,
+ then libtool invoked with the right options should be doing this.
+ .
+ To view the SONAME of a shared library, run <code>readelf -d</code> on the
+ shared library and look for the tag of type SONAME.
diff --git a/tags/s/shell-script-fails-syntax-check.tag b/tags/s/shell-script-fails-syntax-check.tag
new file mode 100644
index 0000000..da2836c
--- /dev/null
+++ b/tags/s/shell-script-fails-syntax-check.tag
@@ -0,0 +1,12 @@
+Tag: shell-script-fails-syntax-check
+Severity: error
+Check: script/syntax
+Explanation: Running this shell script with the shell's -n option set fails,
+ which means that the script has syntax errors. The most common cause of
+ this problem is a script expecting <code>/bin/sh</code> to be bash checked on
+ a system using dash as <code>/bin/sh</code>.
+ .
+ Run e.g. <code>sh -n yourscript</code> to see the errors yourself.
+ .
+ Note this can have false-positives, for an example with bash scripts
+ using "extglob".
diff --git a/tags/s/shipped-file-without-utf8-name.tag b/tags/s/shipped-file-without-utf8-name.tag
new file mode 100644
index 0000000..f080955
--- /dev/null
+++ b/tags/s/shipped-file-without-utf8-name.tag
@@ -0,0 +1,13 @@
+Tag: shipped-file-without-utf8-name
+Severity: error
+Check: files/names
+See-Also: debian-policy 10.10
+Explanation: The file name in the installed tree is not valid UTF-8.
+ As a shipped file in an installation package, the name of this file is
+ considered the responsibility of the package maintainer. Please
+ rename the file.
+ .
+ Unlike other file names in Lintian, which are printed in UTF-8, the
+ attached reference shows the bytes used by the file system.
+ Unprintable characters may have been replaced.
+Renamed-From: file-name-is-not-valid-UTF-8
diff --git a/tags/s/ships-r-site-library.tag b/tags/s/ships-r-site-library.tag
new file mode 100644
index 0000000..e882114
--- /dev/null
+++ b/tags/s/ships-r-site-library.tag
@@ -0,0 +1,6 @@
+Tag: ships-r-site-library
+Severity: classification
+Check: languages/r/site-library
+Explanation: This package ships the named <code>R</code> programming
+ language site library.
+See-Also: https://wiki.debian.org/Teams/r-pkg-team
diff --git a/tags/s/ships-undeclared-shared-library.tag b/tags/s/ships-undeclared-shared-library.tag
new file mode 100644
index 0000000..61b2f8f
--- /dev/null
+++ b/tags/s/ships-undeclared-shared-library.tag
@@ -0,0 +1,8 @@
+Tag: ships-undeclared-shared-library
+Severity: error
+Check: debian/shlibs
+Renamed-From:
+ shlib-missing-in-control-file
+Explanation: The package contains a shared library that is not listed in the
+ shlibs control file. If this is intentional, please override this error.
+See-Also: debian-policy 8.6
diff --git a/tags/s/silent-on-rules-requiring-root.tag b/tags/s/silent-on-rules-requiring-root.tag
new file mode 100644
index 0000000..a80353f
--- /dev/null
+++ b/tags/s/silent-on-rules-requiring-root.tag
@@ -0,0 +1,21 @@
+Tag: silent-on-rules-requiring-root
+Severity: pedantic
+Check: debian/control/field/rules-requires-root
+Renamed-From:
+ rules-requires-root-missing
+Explanation: The field <code>Rules-Requires-Root</code> is missing from the file
+ <code>debian/control</code>.
+ .
+ Over time, Debian has successively narrowed the steps for which elevated privileges
+ are required. It speeds up the building of installation packages in the archive.
+ Eventually, Debian will switch the default archive-wide behaviour to expedite the
+ build process further.
+ .
+ Please declare explicitly that the sources do not require root privileges. You can
+ use the setting <code>Rules-Requires-Root: no</code> in the source stanza of
+ <code>debian/control</code>, but please verify with <code>diffoscope(1)</code> that
+ the installation packages produced are in fact identical.
+See-Also:
+ /usr/share/doc/dpkg/spec/rootless-builds.txt,
+ debian-policy 4.9.2,
+ debian-policy 5.6.31
diff --git a/tags/s/skip-systemd-native-flag-missing-pre-depends.tag b/tags/s/skip-systemd-native-flag-missing-pre-depends.tag
new file mode 100644
index 0000000..d68ff26
--- /dev/null
+++ b/tags/s/skip-systemd-native-flag-missing-pre-depends.tag
@@ -0,0 +1,15 @@
+Tag: skip-systemd-native-flag-missing-pre-depends
+Severity: warning
+Check: systemd/native/prerequisites
+Explanation: The named maintainer script uses the <code>--skip-systemd-native</code>
+ option to <code>invoke-rc.d</code> but does not declare a <code>Pre-Depends</code>
+ prerequisite on <code>init-system-helpers</code>.
+ .
+ The flag helps to defer <code>systemd</code> actions until
+ <code>deb-systemd-invoke(1p)</code> is called.
+ .
+ Please add <code>Pre-Depends: ${misc:Pre-Depends}</code> to your
+ <code>debian/control</code> file.
+See-Also:
+ invoke-rc.d(8),
+ deb-systemd-invoke(1p)
diff --git a/tags/s/source-contains-arch-control-dir.tag b/tags/s/source-contains-arch-control-dir.tag
new file mode 100644
index 0000000..b672e6d
--- /dev/null
+++ b/tags/s/source-contains-arch-control-dir.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-arch-control-dir
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains an {arch} or .arch-ids directory or a
+ directory starting with <code>,,</code> (used by baz for debugging traces).
+ It was most likely included by accident since Arch version control
+ directories usually don't belong in releases. If an upstream release
+ tarball contains these directories, you should usually report this as a
+ bug upstream.
diff --git a/tags/s/source-contains-arch-inventory-file.tag b/tags/s/source-contains-arch-inventory-file.tag
new file mode 100644
index 0000000..ced8df4
--- /dev/null
+++ b/tags/s/source-contains-arch-inventory-file.tag
@@ -0,0 +1,6 @@
+Tag: source-contains-arch-inventory-file
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains an <code>.arch-inventory</code> file. This
+ is Arch metadata that should normally not be distributed. You may want
+ to report this as an upstream bug.
diff --git a/tags/s/source-contains-autogenerated-gperf-data.tag b/tags/s/source-contains-autogenerated-gperf-data.tag
new file mode 100644
index 0000000..4e1d881
--- /dev/null
+++ b/tags/s/source-contains-autogenerated-gperf-data.tag
@@ -0,0 +1,11 @@
+Tag: source-contains-autogenerated-gperf-data
+Severity: pedantic
+Check: cruft
+Explanation: The following file is autogenerated by gperf
+ .
+ They are usually provided for the convenience of users. These files
+ usually just take up space in the tarball.
+ .
+ Check if upstream also provides source-only tarballs that you can use as
+ the upstream distribution instead. If not, you may want to ask upstream
+ to provide source-only tarballs.
diff --git a/tags/s/source-contains-autogenerated-visual-c++-file.tag b/tags/s/source-contains-autogenerated-visual-c++-file.tag
new file mode 100644
index 0000000..aede334
--- /dev/null
+++ b/tags/s/source-contains-autogenerated-visual-c++-file.tag
@@ -0,0 +1,11 @@
+Tag: source-contains-autogenerated-visual-c++-file
+Severity: pedantic
+Check: cruft
+Explanation: The following file is autogenerated by Microsoft Visual C++.
+ .
+ They are usually provided for the convenience of users. These files
+ usually just take up space in the tarball and are of no use in Debian.
+ .
+ Check if upstream also provides source-only tarballs that you can use as
+ the upstream distribution instead. If not, you may want to ask upstream
+ to provide source-only tarballs.
diff --git a/tags/s/source-contains-browserified-javascript.tag b/tags/s/source-contains-browserified-javascript.tag
new file mode 100644
index 0000000..1482290
--- /dev/null
+++ b/tags/s/source-contains-browserified-javascript.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-browserified-javascript
+Severity: pedantic
+Check: cruft
+Explanation: The following file contains javascript built from browserify
+ .
+ This file may contain javascript that is build with the help of browserify
+ or webpack tools.
+ .
+ You should rebuilt this file from source.
diff --git a/tags/s/source-contains-bts-control-dir.tag b/tags/s/source-contains-bts-control-dir.tag
new file mode 100644
index 0000000..35c6906
--- /dev/null
+++ b/tags/s/source-contains-bts-control-dir.tag
@@ -0,0 +1,6 @@
+Tag: source-contains-bts-control-dir
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains a directory used by a bug tracking
+ system. It was most likely included by accident since bug tracking system
+ directories usually don't belong in releases.
diff --git a/tags/s/source-contains-bzr-control-dir.tag b/tags/s/source-contains-bzr-control-dir.tag
new file mode 100644
index 0000000..6d5a72e
--- /dev/null
+++ b/tags/s/source-contains-bzr-control-dir.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-bzr-control-dir
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains a .bzr directory. It was most likely
+ included by accident since bazaar-ng version control directories usually
+ don't belong in releases and may contain the entire repository. When
+ packaging a bzr snapshot, use bzr export to create a clean tree. If an
+ upstream release tarball contains .bzr directories, you should usually
+ report this as a bug upstream.
diff --git a/tags/s/source-contains-cmake-cache-file.tag b/tags/s/source-contains-cmake-cache-file.tag
new file mode 100644
index 0000000..fff5f27
--- /dev/null
+++ b/tags/s/source-contains-cmake-cache-file.tag
@@ -0,0 +1,14 @@
+Tag: source-contains-cmake-cache-file
+Severity: error
+Check: build-systems/cmake
+Renamed-From:
+ diff-contains-cmake-cache-file
+Explanation: This package ships a CMake cache file.
+ .
+ These files embed source paths from when they were built. They will cause
+ build failures when the source is subsequently built under different paths.
+ .
+ They always cause errors on the buildds.
+ .
+ The file was probably included by accident. If it came with the upstream
+ sources, please delete it before building in <code>debian/rules</code>.
diff --git a/tags/s/source-contains-cvs-conflict-copy.tag b/tags/s/source-contains-cvs-conflict-copy.tag
new file mode 100644
index 0000000..9a7b5c5
--- /dev/null
+++ b/tags/s/source-contains-cvs-conflict-copy.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-cvs-conflict-copy
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains a CVS conflict copy. These have file
+ names like <code>.#file.version</code> and are generated by CVS when a
+ conflict was detected when merging local changes with updates from a
+ source repository. They're useful only while resolving the conflict and
+ were probably included by accident. You may want to report this as an
+ upstream bug.
diff --git a/tags/s/source-contains-cvs-control-dir.tag b/tags/s/source-contains-cvs-control-dir.tag
new file mode 100644
index 0000000..abd5dfe
--- /dev/null
+++ b/tags/s/source-contains-cvs-control-dir.tag
@@ -0,0 +1,8 @@
+Tag: source-contains-cvs-control-dir
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains a CVS directory. It was most likely
+ included by accident since CVS directories usually don't belong in
+ releases. When packaging a CVS snapshot, export from CVS rather than use
+ a checkout. If an upstream release tarball contains CVS directories, you
+ usually should report this as a bug to upstream.
diff --git a/tags/s/source-contains-data-from-ieee-data-oui-db.tag b/tags/s/source-contains-data-from-ieee-data-oui-db.tag
new file mode 100644
index 0000000..4e9c48f
--- /dev/null
+++ b/tags/s/source-contains-data-from-ieee-data-oui-db.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-data-from-ieee-data-oui-db
+Severity: pedantic
+Check: cruft
+Explanation: The following file contains data from the OUI database
+ .
+ This file contains a likely outdated copy of
+ Organizationally Unique Identifier (OUI) database from IEEE.
+ .
+ Please use the files from ieee-data package instead.
diff --git a/tags/s/source-contains-debian-substvars.tag b/tags/s/source-contains-debian-substvars.tag
new file mode 100644
index 0000000..bbf7406
--- /dev/null
+++ b/tags/s/source-contains-debian-substvars.tag
@@ -0,0 +1,10 @@
+Tag: source-contains-debian-substvars
+Severity: warning
+Check: debian/substvars
+Renamed-From:
+ diff-contains-substvars
+Explanation: Lintian found a substvars file in the Debian diff for this source
+ package. The debian/substvars (or debian/<code>package</code>.substvars) file
+ is usually generated and modified dynamically by debian/rules targets, in
+ which case it must be removed by the clean target.
+See-Also: debian-policy 4.10
diff --git a/tags/s/source-contains-editor-backup-file.tag b/tags/s/source-contains-editor-backup-file.tag
new file mode 100644
index 0000000..d3a6f33
--- /dev/null
+++ b/tags/s/source-contains-editor-backup-file.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-editor-backup-file
+Severity: warning
+Check: files/artifact
+Explanation: The Debian diff or native package contains a file ending in
+ <code>~</code> or of the form <code>.xxx.swp</code>, which is normally either an
+ Emacs or vim backup file or a backup file created by programs such as
+ <code>autoheader</code> or <code>debconf-updatepo</code>. This usually causes no
+ harm, but it's messy and bloats the size of the Debian diff to no useful
+ purpose.
diff --git a/tags/s/source-contains-git-control-dir.tag b/tags/s/source-contains-git-control-dir.tag
new file mode 100644
index 0000000..95172e8
--- /dev/null
+++ b/tags/s/source-contains-git-control-dir.tag
@@ -0,0 +1,8 @@
+Tag: source-contains-git-control-dir
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains a .git directory. It was most likely
+ included by accident since git version control directories usually don't
+ belong in releases and may contain a complete copy of the repository. If
+ an upstream release tarball contains .git directories, you should usually
+ report this as a bug upstream.
diff --git a/tags/s/source-contains-hg-control-dir.tag b/tags/s/source-contains-hg-control-dir.tag
new file mode 100644
index 0000000..b94c07c
--- /dev/null
+++ b/tags/s/source-contains-hg-control-dir.tag
@@ -0,0 +1,8 @@
+Tag: source-contains-hg-control-dir
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains a .hg directory. It was most likely
+ included by accident since hg version control directories usually don't
+ belong in releases and may contain a complete copy of the repository. If
+ an upstream release tarball contains .hg directories, you should usually
+ report this as a bug upstream.
diff --git a/tags/s/source-contains-hg-tags-file.tag b/tags/s/source-contains-hg-tags-file.tag
new file mode 100644
index 0000000..b20c2c4
--- /dev/null
+++ b/tags/s/source-contains-hg-tags-file.tag
@@ -0,0 +1,8 @@
+Tag: source-contains-hg-tags-file
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains an <code>.hgtags</code> file. This file is
+ Mercurial metadata that should normally not be distributed. It stores
+ hashes of tagged commits in a Mercurial repository and isn't therefore
+ useful without the repository. You may want to report this as an
+ upstream bug.
diff --git a/tags/s/source-contains-patch-failure-file.tag b/tags/s/source-contains-patch-failure-file.tag
new file mode 100644
index 0000000..0aee47b
--- /dev/null
+++ b/tags/s/source-contains-patch-failure-file.tag
@@ -0,0 +1,8 @@
+Tag: source-contains-patch-failure-file
+Severity: warning
+Check: files/artifact
+Explanation: The Debian diff or native package contains a file that looks like
+ the files left behind by the <code>patch</code> utility when it cannot
+ completely apply a diff. This may be left over from a patch applied by
+ the maintainer. Normally such files should not be included in the
+ package.
diff --git a/tags/s/source-contains-prebuilt-binary.tag b/tags/s/source-contains-prebuilt-binary.tag
new file mode 100644
index 0000000..124ec16
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-binary.tag
@@ -0,0 +1,7 @@
+Tag: source-contains-prebuilt-binary
+Severity: pedantic
+Check: files/source-missing
+Explanation: The source tarball contains a prebuilt ELF object. They are usually
+ left by mistake when generating the tarball by not cleaning the source
+ directory first. You may want to report this as an upstream bug, in case
+ there is no sign that this was intended.
diff --git a/tags/s/source-contains-prebuilt-doxygen-documentation.tag b/tags/s/source-contains-prebuilt-doxygen-documentation.tag
new file mode 100644
index 0000000..80182a2
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-doxygen-documentation.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-prebuilt-doxygen-documentation
+Severity: pedantic
+Check: documentation/doxygen
+Explanation: The source tarball contains prebuilt doxygen documentation.
+ This is usually left by mistake when generating the tarball without
+ first cleaning the source directory. You may want to report this as
+ an upstream bug if there is no sign that this was intended.
+ .
+ It is preferable to rebuild documentation directly from source.
diff --git a/tags/s/source-contains-prebuilt-flash-object.tag b/tags/s/source-contains-prebuilt-flash-object.tag
new file mode 100644
index 0000000..207fb90
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-flash-object.tag
@@ -0,0 +1,15 @@
+Tag: source-contains-prebuilt-flash-object
+Severity: pedantic
+Check: files/source-missing
+Explanation: The source tarball contains a prebuilt file in the Shockwave Flash (SWF)
+ or Flash Video (FLV) format. These are often included by mistake when
+ developers generate a tarball without cleaning the source directory
+ first. An exception is simple video files, which are their own
+ source.
+ .
+ If there is no sign this was intended, consider reporting it as an
+ upstream bug.
+ .
+ If the Flash file is not meant to be modified directly, please make
+ sure the package includes the source for the file and that the
+ packaging rebuilds it.
diff --git a/tags/s/source-contains-prebuilt-flash-project.tag b/tags/s/source-contains-prebuilt-flash-project.tag
new file mode 100644
index 0000000..74279a0
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-flash-project.tag
@@ -0,0 +1,14 @@
+Tag: source-contains-prebuilt-flash-project
+Severity: pedantic
+Check: files/source-missing
+Explanation: The source tarball contains a prebuilt file in the Shockwave Flash
+ project (FLA) format. These are often included by mistake when
+ developers generate a tarball without cleaning the source directory
+ first.
+ .
+ If there is no sign this was intended, consider reporting it as an
+ upstream bug.
+ .
+ If the Flash file is not meant to be modified directly, please make
+ sure the package includes the source for the file and that the
+ packaging rebuilds it.
diff --git a/tags/s/source-contains-prebuilt-java-object.tag b/tags/s/source-contains-prebuilt-java-object.tag
new file mode 100644
index 0000000..2a6eff6
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-java-object.tag
@@ -0,0 +1,7 @@
+Tag: source-contains-prebuilt-java-object
+Severity: pedantic
+Check: languages/java
+Explanation: The source tarball contains a prebuilt Java class file. These are often
+ included by mistake when developers generate a tarball without cleaning
+ the source directory first. If there is no sign this was intended,
+ consider reporting it as an upstream bug as it may be a DFSG violation.
diff --git a/tags/s/source-contains-prebuilt-javascript-object.tag b/tags/s/source-contains-prebuilt-javascript-object.tag
new file mode 100644
index 0000000..8ecac62
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-javascript-object.tag
@@ -0,0 +1,7 @@
+Tag: source-contains-prebuilt-javascript-object
+Severity: pedantic
+Check: files/source-missing
+Explanation: The source tarball contains a prebuilt (minified) JavaScript object.
+ They are usually left by mistake when generating the tarball by not
+ cleaning the source directory first. You may want to report this as
+ an upstream bug, in case there is no sign that this was intended.
diff --git a/tags/s/source-contains-prebuilt-ms-help-file.tag b/tags/s/source-contains-prebuilt-ms-help-file.tag
new file mode 100644
index 0000000..14c38f5
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-ms-help-file.tag
@@ -0,0 +1,17 @@
+Tag: source-contains-prebuilt-ms-help-file
+Severity: error
+Check: files/banned/compiled-help
+Explanation: The source tarball contains a prebuilt Microsoft precompiled help
+ file (CHM file). These are often included by mistake when developers generate
+ a tarball without cleaning the source directory first.
+ .
+ CHM files are mainly produced by proprietary, Windows-specific software.
+ They are also mainly consumed by the Microsoft HTML Help Workshop.
+ .
+ Whilst there is free software to read and write them, any
+ examples existing in source packages are likely to be created
+ by the proprietary Microsoft software and are probably missing
+ the source HTML and associated files.
+ .
+ If there is no sign this was intended, consider reporting it as
+ an upstream bug.
diff --git a/tags/s/source-contains-prebuilt-pandoc-documentation.tag b/tags/s/source-contains-prebuilt-pandoc-documentation.tag
new file mode 100644
index 0000000..382e0cd
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-pandoc-documentation.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-prebuilt-pandoc-documentation
+Severity: pedantic
+Check: cruft
+Explanation: The source tarball contains prebuilt pandoc documentation.
+ This is usually left by mistake when generating the tarball without
+ first cleaning the source directory. You may want to report this as
+ an upstream bug if there is no sign that this was intended.
+ .
+ It is preferable to rebuild documentation directly from source.
diff --git a/tags/s/source-contains-prebuilt-python-object.tag b/tags/s/source-contains-prebuilt-python-object.tag
new file mode 100644
index 0000000..b6f4242
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-python-object.tag
@@ -0,0 +1,7 @@
+Tag: source-contains-prebuilt-python-object
+Severity: pedantic
+Check: files/source-missing
+Explanation: The source tarball contains a prebuilt Python object. They are
+ usually left by mistake when generating the tarball by not cleaning the
+ source directory first. You may want to report this as an upstream bug,
+ in case there is no sign that this was intended.
diff --git a/tags/s/source-contains-prebuilt-silverlight-object.tag b/tags/s/source-contains-prebuilt-silverlight-object.tag
new file mode 100644
index 0000000..c135a7d
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-silverlight-object.tag
@@ -0,0 +1,7 @@
+Tag: source-contains-prebuilt-silverlight-object
+Severity: error
+Check: files/source-missing
+Explanation: The source tarball contains a prebuilt Silverlight control.
+ Unfortunately, the tools used to build such files have non-free
+ dependencies and are not present in Debian. This file must be
+ completely removed.
diff --git a/tags/s/source-contains-prebuilt-sphinx-documentation.tag b/tags/s/source-contains-prebuilt-sphinx-documentation.tag
new file mode 100644
index 0000000..e7f2062
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-sphinx-documentation.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-prebuilt-sphinx-documentation
+Severity: pedantic
+Check: cruft
+Explanation: The source tarball contains prebuilt Sphinx documentation.
+ This is usually left by mistake when generating the tarball without
+ first cleaning the source directory. You may want to report this as
+ an upstream bug if there is no sign that this was intended.
+ .
+ It is preferable to rebuild documentation directly from source.
diff --git a/tags/s/source-contains-prebuilt-wasm-binary.tag b/tags/s/source-contains-prebuilt-wasm-binary.tag
new file mode 100644
index 0000000..29e49e2
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-wasm-binary.tag
@@ -0,0 +1,11 @@
+Tag: source-contains-prebuilt-wasm-binary
+Severity: pedantic
+Check: files/source-missing
+Explanation: The source tarball contains a prebuilt binary wasm object.
+ They are usually provided for the convenience of users. These files
+ usually just take up space in the tarball and need to be rebuilt from
+ source.
+ .
+ Check if upstream also provides source-only tarballs that you can use as
+ the upstream distribution instead. If not, you may want to ask upstream
+ to provide source-only tarballs.
diff --git a/tags/s/source-contains-prebuilt-windows-binary.tag b/tags/s/source-contains-prebuilt-windows-binary.tag
new file mode 100644
index 0000000..20b7190
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-windows-binary.tag
@@ -0,0 +1,13 @@
+Tag: source-contains-prebuilt-windows-binary
+Severity: warning
+Check: files/source-missing
+Explanation: The source tarball contains a prebuilt binary for Microsoft Windows.
+ They are usually provided for the convenience of users. These files
+ usually just take up space in the tarball.
+ .
+ However, they may be a DFSG violation in that the corresponding source
+ and build system are not available.
+ .
+ Check if upstream also provides source-only tarballs that you can use as
+ the upstream distribution instead. If not, you may want to ask upstream
+ to provide source-only tarballs.
diff --git a/tags/s/source-contains-prebuilt-yapp-parser.tag b/tags/s/source-contains-prebuilt-yapp-parser.tag
new file mode 100644
index 0000000..eaeb0d0
--- /dev/null
+++ b/tags/s/source-contains-prebuilt-yapp-parser.tag
@@ -0,0 +1,10 @@
+Tag: source-contains-prebuilt-yapp-parser
+Severity: pedantic
+Check: languages/perl/yapp
+Explanation: The source tarball contains a prebuilt Parse::Yapp parser.
+ This is usually left by mistake when generating the tarball without
+ first cleaning the source directory. You may want to report this as
+ an upstream bug if there is no sign that this was intended.
+ .
+ Please build the parser from source.
+See-Also: Bug#921080
diff --git a/tags/s/source-contains-quilt-control-dir.tag b/tags/s/source-contains-quilt-control-dir.tag
new file mode 100644
index 0000000..fc759c5
--- /dev/null
+++ b/tags/s/source-contains-quilt-control-dir.tag
@@ -0,0 +1,10 @@
+Tag: source-contains-quilt-control-dir
+Severity: warning
+Check: files/artifact
+Explanation: The patched sources contains files in a directory
+ used by quilt, which are not useful in a diff or native package.
+ <code>dpkg-source</code> will automatically exclude these if it is passed
+ <code>-I</code> or <code>-i</code> for native and non-native packages
+ respectively.
+See-Also:
+ dpkg-source(1)
diff --git a/tags/s/source-contains-svk-commit-file.tag b/tags/s/source-contains-svk-commit-file.tag
new file mode 100644
index 0000000..bab5a1d
--- /dev/null
+++ b/tags/s/source-contains-svk-commit-file.tag
@@ -0,0 +1,6 @@
+Tag: source-contains-svk-commit-file
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains an <code>svk-commitNNN.tmp</code>,
+ almost certainly a left-over from a failed Subversion commit. You may
+ want to report this as an upstream bug.
diff --git a/tags/s/source-contains-svn-commit-file.tag b/tags/s/source-contains-svn-commit-file.tag
new file mode 100644
index 0000000..30cf964
--- /dev/null
+++ b/tags/s/source-contains-svn-commit-file.tag
@@ -0,0 +1,6 @@
+Tag: source-contains-svn-commit-file
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains an <code>svn-commit(.NNN).tmp</code>,
+ almost certainly a left-over from a failed Subversion commit. You may
+ want to report this as an upstream bug.
diff --git a/tags/s/source-contains-svn-conflict-file.tag b/tags/s/source-contains-svn-conflict-file.tag
new file mode 100644
index 0000000..1fc6659
--- /dev/null
+++ b/tags/s/source-contains-svn-conflict-file.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-svn-conflict-file
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains a file that looks like a Subversion
+ conflict file. These are generated by Subversion when a conflict was
+ detected while merging local changes with updates from a source
+ repository. They're useful only while resolving the conflict and
+ were probably included by accident. You may want to report this as an
+ upstream bug.
diff --git a/tags/s/source-contains-svn-control-dir.tag b/tags/s/source-contains-svn-control-dir.tag
new file mode 100644
index 0000000..6069769
--- /dev/null
+++ b/tags/s/source-contains-svn-control-dir.tag
@@ -0,0 +1,9 @@
+Tag: source-contains-svn-control-dir
+Severity: pedantic
+Check: files/artifact
+Explanation: The upstream source contains an .svn directory. It was most likely
+ included by accident since Subversion version control directories
+ usually don't belong in releases. When packaging a Subversion snapshot,
+ export from Subversion rather than checkout. If an upstream release
+ tarball contains .svn directories, this should be reported as a bug to
+ upstream since it can double the size of the tarball to no purpose.
diff --git a/tags/s/source-contains-waf-binary.tag b/tags/s/source-contains-waf-binary.tag
new file mode 100644
index 0000000..f339b95
--- /dev/null
+++ b/tags/s/source-contains-waf-binary.tag
@@ -0,0 +1,14 @@
+Tag: source-contains-waf-binary
+Severity: error
+Check: build-systems/waf
+Explanation: The source tarball contains a waf binary. This file is a Python
+ script with an embedded bzip2 archive, which is uncompressed and unpacked
+ at runtime.
+ .
+ Although corresponding sources can be easily extracted, FTP Team does not
+ consider waf binary as the preferred form of modification; it should be
+ provided unpacked instead, or completely removed, if possible.
+ .
+ You might want to follow these guidelines to obtain an unpacked waf:
+ https://wiki.debian.org/UnpackWaf
+See-Also: https://wiki.debian.org/UnpackWaf, Bug#654523
diff --git a/tags/s/source-field-malformed.tag b/tags/s/source-field-malformed.tag
new file mode 100644
index 0000000..19ca1e5
--- /dev/null
+++ b/tags/s/source-field-malformed.tag
@@ -0,0 +1,12 @@
+Tag: source-field-malformed
+Severity: error
+Check: fields/source
+Explanation: In <code>debian/control</code> or a <code>.dsc</code> file, the Source field
+ must contain only the name of the source package. In a binary package,
+ the Source field may also optionally contain the version number of the
+ corresponding source package in parentheses.
+ .
+ Source package names must consist only of lowercase letters, digits,
+ plus and minus signs, and periods. They must be at least two characters
+ long and must start with an alphanumeric character.
+See-Also: debian-policy 5.6.1
diff --git a/tags/s/source-format.tag b/tags/s/source-format.tag
new file mode 100644
index 0000000..a3108eb
--- /dev/null
+++ b/tags/s/source-format.tag
@@ -0,0 +1,4 @@
+Tag: source-format
+Severity: classification
+Check: debian/source-dir
+Explanation: This is the source format declared in the package.
diff --git a/tags/s/source-is-missing.tag b/tags/s/source-is-missing.tag
new file mode 100644
index 0000000..5a93f62
--- /dev/null
+++ b/tags/s/source-is-missing.tag
@@ -0,0 +1,12 @@
+Tag: source-is-missing
+Severity: error
+Check: files/source-missing
+Explanation: The source of the following file is missing. Lintian checked a few
+ possible paths to find the source, and did not find it.
+ .
+ Please repack your package to include the source or add it to
+ "debian/missing-sources" directory.
+ .
+ Please note, that very-long-line-length-in-source-file tagged files
+ are likely tagged source-is-missing. It is a feature not
+ a bug.
diff --git a/tags/s/source-nmu-has-incorrect-version-number.tag b/tags/s/source-nmu-has-incorrect-version-number.tag
new file mode 100644
index 0000000..36e600d
--- /dev/null
+++ b/tags/s/source-nmu-has-incorrect-version-number.tag
@@ -0,0 +1,14 @@
+Tag: source-nmu-has-incorrect-version-number
+Severity: warning
+Check: nmu
+Explanation: A source NMU should have a Debian revision of "-x.x" (or "+nmuX" for a
+ native package). This is to prevent stealing version numbers from the
+ maintainer.
+ .
+ Maybe you didn't intend this upload to be a NMU, in that case, please
+ double-check that the most recent entry in the changelog is byte-for-byte
+ identical to the maintainer or one of the uploaders. If this is a local
+ package (not intended for Debian), you can suppress this warning by
+ putting "local" in the version number or "local package" on the first
+ line of the changelog entry.
+See-Also: developer-reference 5.11.2
diff --git a/tags/s/source-only-upload-to-non-free-without-autobuild.tag b/tags/s/source-only-upload-to-non-free-without-autobuild.tag
new file mode 100644
index 0000000..66b5ebe
--- /dev/null
+++ b/tags/s/source-only-upload-to-non-free-without-autobuild.tag
@@ -0,0 +1,13 @@
+Tag: source-only-upload-to-non-free-without-autobuild
+Severity: error
+Check: archive/non-free/autobuild
+Explanation: For licensing reasons, packages in the non-free section are by default
+ not built automatically. This source-upload to non-free will never result in built
+ packages appearing in the archive.
+ .
+ Please perform an upload that includes installable packages. After checking the
+ license, you can alternatively add <code>XS-Autobuild: yes</code> to the source
+ paragraph of <code>debian/control</code> and ask for the source to be added to the
+ <code>autobuild</code> whitelist.
+See-Also:
+ developer-reference 5.10.5
diff --git a/tags/s/source-package-component-has-long-file-name.tag b/tags/s/source-package-component-has-long-file-name.tag
new file mode 100644
index 0000000..a962c02
--- /dev/null
+++ b/tags/s/source-package-component-has-long-file-name.tag
@@ -0,0 +1,8 @@
+Tag: source-package-component-has-long-file-name
+Severity: warning
+Check: archive/file/name/length
+Explanation: The source package has a component with a very long filename.
+ This may complicate shipping the package on some media that put
+ restrictions on the length of the filenames (such as CDs).
+See-Also:
+ https://lists.debian.org/debian-devel/2011/03/msg00943.html
diff --git a/tags/s/source-package-encodes-python-version.tag b/tags/s/source-package-encodes-python-version.tag
new file mode 100644
index 0000000..35461f5
--- /dev/null
+++ b/tags/s/source-package-encodes-python-version.tag
@@ -0,0 +1,12 @@
+Tag: source-package-encodes-python-version
+Severity: warning
+Check: languages/python
+Explanation: This source package encodes a Python version in its name such
+ as <code>python2-foo</code> or <code>python3-bar</code>.
+ .
+ This could result in a misleading future situation where this source
+ package supports multiple versions as well unnecessary given that the
+ binary package names will typically encode the supported versions.
+ .
+ Please override this tag with a suitably-commented override if
+ there is no single upstream codebase that supports both versions.
diff --git a/tags/s/source-ships-excluded-file.tag b/tags/s/source-ships-excluded-file.tag
new file mode 100644
index 0000000..15a5b8a
--- /dev/null
+++ b/tags/s/source-ships-excluded-file.tag
@@ -0,0 +1,14 @@
+Tag: source-ships-excluded-file
+Severity: error
+Check: debian/copyright/dep5
+Renamed-From:
+ source-includes-file-in-files-excluded
+Explanation: A file specified in the <code>Files-Excluded</code> field in
+ debian/copyright exists in the source tree.
+ .
+ This might be a DFSG violation, the referenced files are probably not
+ attributed in <code>debian/copyright</code>, or the upstream tarball was simply
+ not repacked as intended. Alternatively, the field is simply out of date.
+ .
+ mk-origtargz(1) is typically responsible for removing such files. Support
+ in <code>git-buildpackage</code> is being tracked in Bug#812721.
diff --git a/tags/s/space-in-std-shortname-in-dep5-copyright.tag b/tags/s/space-in-std-shortname-in-dep5-copyright.tag
new file mode 100644
index 0000000..2e7d8d9
--- /dev/null
+++ b/tags/s/space-in-std-shortname-in-dep5-copyright.tag
@@ -0,0 +1,6 @@
+Tag: space-in-std-shortname-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 space, which
+ does not conform to the specification.
diff --git a/tags/s/spare-manual-page.tag b/tags/s/spare-manual-page.tag
new file mode 100644
index 0000000..982354f
--- /dev/null
+++ b/tags/s/spare-manual-page.tag
@@ -0,0 +1,11 @@
+Tag: spare-manual-page
+Severity: info
+Check: documentation/manual
+Renamed-From: manpage-without-executable
+Explanation: Each manual page in <code>/usr/share/man</code> should have a reason to be
+ there. This manual page does not appear to have a valid reason to be shipped.
+ .
+ For manual pages in sections 1 and 8, an executable (or a link to one) should
+ exist. This check currently considers all installation packages created
+ by the same sources, as long as they are present.
+See-Also: debian-policy 12.1, Bug#583125
diff --git a/tags/s/special-file.tag b/tags/s/special-file.tag
new file mode 100644
index 0000000..edffb07
--- /dev/null
+++ b/tags/s/special-file.tag
@@ -0,0 +1,10 @@
+Tag: special-file
+Severity: error
+Check: files/special
+Explanation: The package contains a so-called special file, like a device file.
+ That is forbidden by policy.
+ .
+ If your program needs the device file, you should create it by calling
+ <code>makedev</code> from the <code>postinst</code> maintainer script.
+See-Also:
+ debian-policy 10.6
diff --git a/tags/s/specific-address-in-shared-library.tag b/tags/s/specific-address-in-shared-library.tag
new file mode 100644
index 0000000..316fadf
--- /dev/null
+++ b/tags/s/specific-address-in-shared-library.tag
@@ -0,0 +1,21 @@
+Tag: specific-address-in-shared-library
+Severity: error
+Check: libraries/shared/relocation
+Renamed-From:
+ shlib-with-non-pic-code
+Explanation: The listed shared libraries contain object code that was compiled
+ without -fPIC. All object code in shared libraries should be recompiled
+ separately from the static libraries with the -fPIC option.
+ .
+ Another common mistake that causes this problem is linking with
+ <code>gcc -Wl,-shared</code> instead of <code>gcc -shared</code>.
+ .
+ In some cases, exceptions to this rule are warranted. If this is such a
+ case, follow the procedure outlined in Policy and then please document
+ the exception by adding a Lintian override to this package.
+ .
+ To check whether a shared library has this problem, run <code>readelf
+ -d</code> on the shared library. If a tag of type TEXTREL is present, the
+ shared library contains non-PIC code.
+See-Also:
+ debian-policy 10.2
diff --git a/tags/s/spelling-error-in-binary.tag b/tags/s/spelling-error-in-binary.tag
new file mode 100644
index 0000000..f44b2f9
--- /dev/null
+++ b/tags/s/spelling-error-in-binary.tag
@@ -0,0 +1,19 @@
+Tag: spelling-error-in-binary
+Severity: info
+Check: binaries/spelling
+Explanation: Lintian found a spelling error in the given binary. Lintian has a
+ list of common misspellings that it looks for. It does not have a
+ dictionary like a spelling checker does.
+ .
+ If the string containing the spelling error is translated with the help
+ of gettext or a similar tool, please fix the error in the translations as
+ well as the English text to avoid making the translations fuzzy. With
+ gettext, for example, this means you should also fix the spelling mistake
+ in the corresponding msgids in the &ast;.po files.
+ .
+ You can often find the word in the source code by running:
+ .
+ grep -rw &lt;word&gt; &lt;source-tree&gt;
+ .
+ This tag may produce false positives for words that contain non-ASCII
+ characters due to limitations in <code>strings</code>.
diff --git a/tags/s/spelling-error-in-changelog.tag b/tags/s/spelling-error-in-changelog.tag
new file mode 100644
index 0000000..799de85
--- /dev/null
+++ b/tags/s/spelling-error-in-changelog.tag
@@ -0,0 +1,10 @@
+Tag: spelling-error-in-changelog
+Severity: warning
+Check: debian/changelog
+Explanation: Lintian found a spelling error in the latest entry of the Debian
+ changelog. Lintian has a list of common misspellings that it looks for.
+ It does not have a dictionary like a spelling checker does.
+ .
+ When writing a changelog entry for a spelling fix that includes the
+ misspelling, ensure the word "spelling" is on the same line as the
+ misspelled word to avoid triggering this warning.
diff --git a/tags/s/spelling-error-in-copyright.tag b/tags/s/spelling-error-in-copyright.tag
new file mode 100644
index 0000000..8083e90
--- /dev/null
+++ b/tags/s/spelling-error-in-copyright.tag
@@ -0,0 +1,8 @@
+Tag: spelling-error-in-copyright
+Severity: pedantic
+Check: debian/copyright
+Explanation: Lintian found a spelling error in the copyright file. Lintian has a
+ list of common misspellings that it looks for. It does not have a
+ dictionary like a spelling checker does. If this is a spelling error in
+ the upstream license, in supporting email messages, or a case of Lintian
+ being confused by non-English text, add an override.
diff --git a/tags/s/spelling-error-in-description-synopsis.tag b/tags/s/spelling-error-in-description-synopsis.tag
new file mode 100644
index 0000000..efe82bd
--- /dev/null
+++ b/tags/s/spelling-error-in-description-synopsis.tag
@@ -0,0 +1,8 @@
+Tag: spelling-error-in-description-synopsis
+Severity: info
+Check: fields/description
+Explanation: Lintian found a spelling error in the package synopsis. Lintian
+ has a list of common misspellings that it looks for. It does not have a
+ dictionary like a spelling checker does. It is particularly picky about
+ spelling and capitalization in package descriptions since they're very
+ visible to end users.
diff --git a/tags/s/spelling-error-in-description.tag b/tags/s/spelling-error-in-description.tag
new file mode 100644
index 0000000..7bd525c
--- /dev/null
+++ b/tags/s/spelling-error-in-description.tag
@@ -0,0 +1,8 @@
+Tag: spelling-error-in-description
+Severity: info
+Check: fields/description
+Explanation: Lintian found a spelling error in the package description. Lintian
+ has a list of common misspellings that it looks for. It does not have a
+ dictionary like a spelling checker does. It is particularly picky about
+ spelling and capitalization in package descriptions since they're very
+ visible to end users.
diff --git a/tags/s/spelling-error-in-doc-base-abstract-field.tag b/tags/s/spelling-error-in-doc-base-abstract-field.tag
new file mode 100644
index 0000000..df5ae00
--- /dev/null
+++ b/tags/s/spelling-error-in-doc-base-abstract-field.tag
@@ -0,0 +1,7 @@
+Tag: spelling-error-in-doc-base-abstract-field
+Severity: pedantic
+Check: menus
+Explanation: Lintian found a spelling, grammar or capitalization error in the
+ <code>Abstract</code> field of the given <code>doc-base</code> control file.
+ .
+ Lintian looks for a list of common misspellings. It does not have a dictionary.
diff --git a/tags/s/spelling-error-in-doc-base-title-field.tag b/tags/s/spelling-error-in-doc-base-title-field.tag
new file mode 100644
index 0000000..9f83885
--- /dev/null
+++ b/tags/s/spelling-error-in-doc-base-title-field.tag
@@ -0,0 +1,7 @@
+Tag: spelling-error-in-doc-base-title-field
+Severity: pedantic
+Check: menus
+Explanation: Lintian found a spelling, grammar or capitalization error in the
+ <code>Title</code> field of the given <code>doc-base</code> control file.
+ .
+ Lintian looks for a list of common misspellings. It does not have a dictionary.
diff --git a/tags/s/spelling-error-in-news-debian.tag b/tags/s/spelling-error-in-news-debian.tag
new file mode 100644
index 0000000..47e6ed7
--- /dev/null
+++ b/tags/s/spelling-error-in-news-debian.tag
@@ -0,0 +1,6 @@
+Tag: spelling-error-in-news-debian
+Severity: pedantic
+Check: debian/changelog
+Explanation: Lintian found a spelling error in the latest entry of the
+ NEWS.Debian file. Lintian has a list of common misspellings that it
+ looks for. It does not have a dictionary like a spelling checker does.
diff --git a/tags/s/spelling-error-in-patch-description.tag b/tags/s/spelling-error-in-patch-description.tag
new file mode 100644
index 0000000..2cb3409
--- /dev/null
+++ b/tags/s/spelling-error-in-patch-description.tag
@@ -0,0 +1,10 @@
+Tag: spelling-error-in-patch-description
+Severity: pedantic
+Check: debian/patches/quilt
+Explanation: Lintian found a spelling, grammar or capitalization error in the
+ description for this patch. Lintian has a list of common misspellings
+ that it looks for. It does not have a dictionary like a spelling checker
+ does.
+ .
+ Patch filenames or descriptions that refer to "spelling" or "typo" (or
+ similar) are ignored by Lintian.
diff --git a/tags/s/spelling-error-in-readme-debian.tag b/tags/s/spelling-error-in-readme-debian.tag
new file mode 100644
index 0000000..3c19576
--- /dev/null
+++ b/tags/s/spelling-error-in-readme-debian.tag
@@ -0,0 +1,6 @@
+Tag: spelling-error-in-readme-debian
+Severity: pedantic
+Check: debian/readme
+Explanation: Lintian found a spelling error in the README.Debian file. Lintian
+ has a list of common misspellings that it looks for. It does not have a
+ dictionary like a spelling checker does.
diff --git a/tags/s/spelling-error-in-rules-requires-root.tag b/tags/s/spelling-error-in-rules-requires-root.tag
new file mode 100644
index 0000000..f9e0ad7
--- /dev/null
+++ b/tags/s/spelling-error-in-rules-requires-root.tag
@@ -0,0 +1,10 @@
+Tag: spelling-error-in-rules-requires-root
+Severity: warning
+Check: debian/control/field/rules-requires-root
+Explanation: The sources attempt to declare a <code>Rules-Requires-Root</code> field
+ but the field name is misspelled.
+ .
+ This tag was necessary because Debian uses a non-standard grammar. The field should
+ be named <code>Rules-Require-Root</code> (with the verb in the singular).
+ .
+ For now, please rename the field to <code>Rules-Requires-Root</code>.
diff --git a/tags/s/spelling-in-override-comment.tag b/tags/s/spelling-in-override-comment.tag
new file mode 100644
index 0000000..52b4c52
--- /dev/null
+++ b/tags/s/spelling-in-override-comment.tag
@@ -0,0 +1,7 @@
+Tag: spelling-in-override-comment
+Severity: pedantic
+Check: debian/lintian-overrides/comments
+Explanation: The comment attached to a Lintian override contains a spelling
+ error.
+ .
+ Lintian looks for common misspelling. It does not have a dictionary.
diff --git a/tags/s/sphinxdoc-but-no-sphinxdoc-depends.tag b/tags/s/sphinxdoc-but-no-sphinxdoc-depends.tag
new file mode 100644
index 0000000..1ad7690
--- /dev/null
+++ b/tags/s/sphinxdoc-but-no-sphinxdoc-depends.tag
@@ -0,0 +1,14 @@
+Tag: sphinxdoc-but-no-sphinxdoc-depends
+Severity: warning
+Check: debhelper
+See-Also: dh_sphinxdoc(1)
+Explanation: The source package uses Sphinx via <code>--with sphinxdoc</code> or
+ <code>dh&lowbar;sphinxdoc</code> but no binary package specifies
+ <code>${sphinxdoc:Depends}</code> as a dependency.
+ .
+ The <code>sphinxdoc</code> helper is being used to make links to various
+ common files from other binary packages that are injected via the
+ <code>${sphinxdoc:Depends}</code> substitution variable.
+ .
+ Please add <code>${sphinxdoc:Depends}</code> to the relevant binary
+ package.
diff --git a/tags/s/spurious-fields-in-upstream-signature.tag b/tags/s/spurious-fields-in-upstream-signature.tag
new file mode 100644
index 0000000..deb3389
--- /dev/null
+++ b/tags/s/spurious-fields-in-upstream-signature.tag
@@ -0,0 +1,10 @@
+Tag: spurious-fields-in-upstream-signature
+Severity: info
+Check: upstream-signature
+Explanation: The packaging includes a detached upstream signature file that contains
+ spurious fields like <code>Comment:</code> or <code>Version:</code>. They are
+ sometimes added by <code>gpg --enarmor</code>, especially if you have an older
+ version. Modern versions only add a <code>Comment:</code> field.
+ .
+ Please generate the signature with <code>gpg --armor --detach-sig</code> using a
+ modern version instead.
diff --git a/tags/s/standards-version.tag b/tags/s/standards-version.tag
new file mode 100644
index 0000000..2f993d8
--- /dev/null
+++ b/tags/s/standards-version.tag
@@ -0,0 +1,5 @@
+Tag: standards-version
+Severity: classification
+Check: fields/standards-version
+Explanation: The standards version of the package according to
+ Standards-Version field in the <code>debian/control</code> file.
diff --git a/tags/s/star-file.tag b/tags/s/star-file.tag
new file mode 100644
index 0000000..fd8d5fb
--- /dev/null
+++ b/tags/s/star-file.tag
@@ -0,0 +1,6 @@
+Tag: star-file
+Severity: error
+Check: files/names
+Explanation: The given file is literally installed as <code>&ast;</code> (star
+ symbol). Normally this indicates a mistake in the installation
+ process of the package either when creating symlinks or renaming files.
diff --git a/tags/s/static-library-has-unneeded-sections.tag b/tags/s/static-library-has-unneeded-sections.tag
new file mode 100644
index 0000000..b419e70
--- /dev/null
+++ b/tags/s/static-library-has-unneeded-sections.tag
@@ -0,0 +1,13 @@
+Tag: static-library-has-unneeded-sections
+Severity: info
+Check: libraries/static
+Renamed-From:
+ static-library-has-unneeded-section
+Explanation: The static 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&lowbar;strip</code> (after debhelper/9.20150811) will do this
+ automatically for you, but <code>install -s</code> will not because it calls
+ strip without any arguments.
diff --git a/tags/s/static-link-time-optimization.tag b/tags/s/static-link-time-optimization.tag
new file mode 100644
index 0000000..714bf12
--- /dev/null
+++ b/tags/s/static-link-time-optimization.tag
@@ -0,0 +1,18 @@
+Tag: static-link-time-optimization
+Severity: info
+Check: libraries/static/link-time-optimization
+Explanation:
+ The named member of the static library ships ELF sections that indicate the
+ use of link-time-optimization (LTO). The use of LTO in static objects is
+ usually a bug.
+ .
+ In the milder case, the library will work but is larger than needed. The more
+ serious case is indicated by the distinct tag <code>no-code-sections</code>.
+ Those libraries cannot work in Debian.
+ .
+ An object file shown here was usually built with the command-line option
+ <code>-flto=auto</code>.
+See-Also:
+ https://gcc.gnu.org/wiki/LinkTimeOptimization,
+ http://hubicka.blogspot.com/2014/04/linktime-optimization-in-gcc-2-firefox.html,
+ Bug#963057
diff --git a/tags/s/statically-linked-binary.tag b/tags/s/statically-linked-binary.tag
new file mode 100644
index 0000000..60d3977
--- /dev/null
+++ b/tags/s/statically-linked-binary.tag
@@ -0,0 +1,8 @@
+Tag: statically-linked-binary
+Severity: error
+Check: binaries/static
+Explanation: The package installs a statically linked binary or object file.
+ .
+ Usually this is a bug. Otherwise, please add an override if your package
+ is an exception. Binaries named &ast;-static and &ast;.static are automatically
+ excluded, as are any binaries in packages named &ast;-static.
diff --git a/tags/s/stray-devhelp-documentation.tag b/tags/s/stray-devhelp-documentation.tag
new file mode 100644
index 0000000..3c5217b
--- /dev/null
+++ b/tags/s/stray-devhelp-documentation.tag
@@ -0,0 +1,21 @@
+Tag: stray-devhelp-documentation
+Severity: warning
+Check: documentation/devhelp
+Renamed-From:
+ package-contains-devhelp-file-without-symlink
+Explanation: The named file is not in the Devhelp search path
+ (<code>/usr/share/devhelp/books</code> or <code>/usr/share/gtk-doc/html</code>)
+ and also not located in a directory that is accessible via a symbolic link from
+ that search path. Devhelp cannot find that file.
+ .
+ For Devhelp documentation installed outside the search path (such as
+ <code>/usr/share/doc</code>), create a symbolic link in
+ <code>/usr/share/gtk-doc/html</code> that points to the documentation directory.
+See-Also:
+ https://apps.gnome.org/app/org.gnome.Devhelp/
+
+Screen: examples/ship/devhelp
+Advocates: Lintian Maintainers <lintian-maint@debian.org>
+Reason:
+ Any Devhelp files shipped in the examples are not expected to be discoverable by
+ the Devhelp browsing tool.
diff --git a/tags/s/stray-folder-in-manual.tag b/tags/s/stray-folder-in-manual.tag
new file mode 100644
index 0000000..41c438d
--- /dev/null
+++ b/tags/s/stray-folder-in-manual.tag
@@ -0,0 +1,7 @@
+Tag: stray-folder-in-manual
+Severity: error
+Check: documentation/manual
+Renamed-Tag: stray-directory-in-manpage-directory
+Explanation: This package installs a directory under <code>/usr/share/man</code>
+ that is not a manual section directory or locale directory.
+See-Also: filesystem-hierarchy usrsharemanmanualpages
diff --git a/tags/s/stray-translated-debconf-templates.tag b/tags/s/stray-translated-debconf-templates.tag
new file mode 100644
index 0000000..3bda1c1
--- /dev/null
+++ b/tags/s/stray-translated-debconf-templates.tag
@@ -0,0 +1,8 @@
+Tag: stray-translated-debconf-templates
+Severity: warning
+Check: debian/po-debconf
+Explanation: This package contains a file named &ast;templates.XX or
+ &ast;templates.XX&lowbar;XX. This was the naming convention for the translated
+ templates merged using debconf-mergetemplate. Since the package is using
+ po-debconf, these files should be replaced by language-specific files in
+ the <code>debian/po</code> directory and should no longer be needed.
diff --git a/tags/s/stripped-library.tag b/tags/s/stripped-library.tag
new file mode 100644
index 0000000..bdb8c94
--- /dev/null
+++ b/tags/s/stripped-library.tag
@@ -0,0 +1,8 @@
+Tag: stripped-library
+Severity: error
+Check: libraries/debug-symbols
+Renamed-From:
+ library-in-debug-or-profile-should-not-be-stripped
+Explanation: Libraries in <code>.../lib/debug</code> or in
+ <code>.../lib/profile</code> must not be stripped; this defeats the whole
+ point of the separate library.
diff --git a/tags/s/su-to-root-with-usr-sbin.tag b/tags/s/su-to-root-with-usr-sbin.tag
new file mode 100644
index 0000000..acb4e5c
--- /dev/null
+++ b/tags/s/su-to-root-with-usr-sbin.tag
@@ -0,0 +1,12 @@
+Tag: su-to-root-with-usr-sbin
+Severity: warning
+Check: menu-format
+Explanation: The command in a <code>menu</code> item or in a Desktop file uses
+ refers to the full path <code>/usr/sbin/su-to-root</code>.
+ .
+ Since the sarge release (Debian 3.1) <code>su-to-root</code> is located in
+ <code>/usr/bin</code>. The location <code>/usr/sbin/su-to-root</code> is a
+ symbolic link to ensure compatibility. It may be dropped in the future.
+ .
+ Since <code>su-to-root</code> is now available in <code>/usr/bin</code> you
+ can use it without an absolute path.
diff --git a/tags/s/su-wrapper-not-su-to-root.tag b/tags/s/su-wrapper-not-su-to-root.tag
new file mode 100644
index 0000000..ec19bee
--- /dev/null
+++ b/tags/s/su-wrapper-not-su-to-root.tag
@@ -0,0 +1,14 @@
+Tag: su-wrapper-not-su-to-root
+Severity: warning
+Check: menu-format
+Explanation: The command in a <code>menu</code> item or in a Desktop file uses
+ a <code>su</code> wrapper other than <code>su-to-root</code>.
+ .
+ On Debian systems, please use <code>su-to-root -X</code>. That will pick the
+ best wrapper depending on which software is installed and which desktop
+ environment is being used.
+ .
+ Using <code>su-to-root</code> is especially important for Live CD systems.
+ They need to use <code>sudo</code> rather than <code>su</code>. The
+ <code>su-to-root</code> command can be configured to invoke only
+ <code>sudo</code>.
diff --git a/tags/s/su-wrapper-without--c.tag b/tags/s/su-wrapper-without--c.tag
new file mode 100644
index 0000000..a76bd24
--- /dev/null
+++ b/tags/s/su-wrapper-without--c.tag
@@ -0,0 +1,8 @@
+Tag: su-wrapper-without--c
+Severity: error
+Check: menu-format
+Explanation: The command in a <code>menu</code> item or in a Desktop file uses
+ a <code>su</code> wrapper like <code>su-to-root</code> without the
+ <code>-c</code> flag. That is a syntax error.
+See-Also:
+ su-to-root(1)
diff --git a/tags/s/subdir-in-bin.tag b/tags/s/subdir-in-bin.tag
new file mode 100644
index 0000000..c87fb16
--- /dev/null
+++ b/tags/s/subdir-in-bin.tag
@@ -0,0 +1,6 @@
+Tag: subdir-in-bin
+Severity: error
+Check: files/hierarchy/standard
+Explanation: The Filesystem Hierarchy Standard forbids the installation of new
+ directories in <code>/bin</code>.
+See-Also: filesystem-hierarchy binessentialusercommandbinaries
diff --git a/tags/s/subdir-in-usr-bin.tag b/tags/s/subdir-in-usr-bin.tag
new file mode 100644
index 0000000..17ff334
--- /dev/null
+++ b/tags/s/subdir-in-usr-bin.tag
@@ -0,0 +1,6 @@
+Tag: subdir-in-usr-bin
+Severity: error
+Check: files/hierarchy/standard
+Explanation: The Filesystem Hierarchy Standard forbids the installation of new
+ directories in <code>/usr/bin</code> other than <code>/usr/bin/mh</code>.
+See-Also: filesystem-hierarchy usrbinmostusercommands
diff --git a/tags/s/substvar-source-version-is-deprecated.tag b/tags/s/substvar-source-version-is-deprecated.tag
new file mode 100644
index 0000000..b010ab9
--- /dev/null
+++ b/tags/s/substvar-source-version-is-deprecated.tag
@@ -0,0 +1,8 @@
+Tag: substvar-source-version-is-deprecated
+Severity: warning
+Check: debian/version-substvars
+Explanation: The package uses the now deprecated ${Source-Version} substvar,
+ which has misleading semantics. Please switch to ${binary:Version} or
+ ${source:Version} as appropriate (introduced in dpkg 1.13.19, released
+ with etch). Support for ${Source-Version} may be removed from dpkg-dev
+ in the future.
diff --git a/tags/s/superficial-tests.tag b/tags/s/superficial-tests.tag
new file mode 100644
index 0000000..83f4088
--- /dev/null
+++ b/tags/s/superficial-tests.tag
@@ -0,0 +1,12 @@
+Tag: superficial-tests
+Severity: info
+Check: testsuite
+Explanation: The source package declares tests in the
+ <code>debian/tests/control</code> file but provides only tests
+ with a <code>superficial</code> restriction.
+ .
+ Please provide more meaningful tests.
+See-Also:
+ https://lists.debian.org/debian-devel-announce/2019/08/msg00003.html,
+ Bug#932870,
+ https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/s/superfluous-clutter-in-homepage.tag b/tags/s/superfluous-clutter-in-homepage.tag
new file mode 100644
index 0000000..644f414
--- /dev/null
+++ b/tags/s/superfluous-clutter-in-homepage.tag
@@ -0,0 +1,7 @@
+Tag: superfluous-clutter-in-homepage
+Severity: warning
+Check: fields/homepage
+Explanation: The "Homepage:" field in this package's control file contains
+ superfluous markup around the URL, like enclosing &lt; and &gt;.
+ This is unnecessary and needlessly complicates using this information.
+See-Also: debian-policy 5.6.23
diff --git a/tags/s/superfluous-file-pattern.tag b/tags/s/superfluous-file-pattern.tag
new file mode 100644
index 0000000..1efd4d2
--- /dev/null
+++ b/tags/s/superfluous-file-pattern.tag
@@ -0,0 +1,12 @@
+Tag: superfluous-file-pattern
+Severity: warning
+Check: debian/copyright/dep5
+Rename-from:
+ wildcard-matches-nothing-in-dep5-copyright
+Explanation: The wildcard that was specified matches no file in the source tree.
+ This either indicates that you should fix the wildcard so that it matches
+ the intended file or that you can remove the wildcard. Notice that in
+ contrast to shell globs, the "&ast;" (star or asterisk) matches slashes and
+ leading dots.
+See-Also:
+ https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
diff --git a/tags/s/surplus-shared-library-symbols.tag b/tags/s/surplus-shared-library-symbols.tag
new file mode 100644
index 0000000..f209ddd
--- /dev/null
+++ b/tags/s/surplus-shared-library-symbols.tag
@@ -0,0 +1,7 @@
+Tag: surplus-shared-library-symbols
+Severity: warning
+Check: debian/shlibs
+Renamed-From:
+ unused-shlib-entry-in-symbols-control-file
+Explanation: The symbols control file contains an entry for a shared library that
+ is not installed by this package.
diff --git a/tags/s/svk-commit-file-in-package.tag b/tags/s/svk-commit-file-in-package.tag
new file mode 100644
index 0000000..0d7e92c
--- /dev/null
+++ b/tags/s/svk-commit-file-in-package.tag
@@ -0,0 +1,6 @@
+Tag: svk-commit-file-in-package
+Severity: warning
+Check: files/vcs
+Explanation: The package contains an svk-commitNNN.tmp file. This file is almost
+ certainly a left-over from a failed Subversion commit, and does not
+ belong in a Debian package.
diff --git a/tags/s/svn-commit-file-in-package.tag b/tags/s/svn-commit-file-in-package.tag
new file mode 100644
index 0000000..7695b5e
--- /dev/null
+++ b/tags/s/svn-commit-file-in-package.tag
@@ -0,0 +1,6 @@
+Tag: svn-commit-file-in-package
+Severity: warning
+Check: files/vcs
+Explanation: The package contains an svn-commit(.NNN).tmp file. This file is
+ almost certainly a left-over from a failed Subversion commit, and does
+ not belong in a Debian package.
diff --git a/tags/s/symbols-declares-dependency-on-other-package.tag b/tags/s/symbols-declares-dependency-on-other-package.tag
new file mode 100644
index 0000000..5226cba
--- /dev/null
+++ b/tags/s/symbols-declares-dependency-on-other-package.tag
@@ -0,0 +1,15 @@
+Tag: symbols-declares-dependency-on-other-package
+Severity: warning
+Check: debian/shlibs
+Explanation: This package declares in its symbols control file a dependency on
+ some other package (and not one listed in the Provides of this package).
+ .
+ Packages should normally only list in their symbols control file the
+ shared libraries included in that package, and therefore the dependencies
+ listed there should normally be satisfied by either the package itself or
+ one of its Provides.
+ .
+ In unusual circumstances where it's necessary to declare more complex
+ dependencies in the symbols control file, please add a Lintian override
+ for this warning.
+See-Also: debian-policy 8.6
diff --git a/tags/s/symbols-file-contains-current-version-with-debian-revision.tag b/tags/s/symbols-file-contains-current-version-with-debian-revision.tag
new file mode 100644
index 0000000..266cad1
--- /dev/null
+++ b/tags/s/symbols-file-contains-current-version-with-debian-revision.tag
@@ -0,0 +1,15 @@
+Tag: symbols-file-contains-current-version-with-debian-revision
+Severity: error
+Check: debian/shlibs
+Explanation: Debian revisions should be stripped from versions in symbols files.
+ Not doing so leads to dependencies unsatisfiable by backports (1.0-1~bpo
+ &lt;&lt; 1.0-1 while 1.0-1~bpo &gt;= 1.0). If the Debian revision can't
+ be stripped because the symbol really appeared between two specific
+ Debian revisions, you should postfix the version with a single "~"
+ (example: 1.0-3~ if the symbol appeared in 1.0-3).
+ .
+ This problem normally means that the symbols were added automatically by
+ dpkg-gensymbols. dpkg-gensymbols uses the full version number for the
+ dependency associated to any new symbol that it detects. The maintainer
+ must update the <code>debian/&lt;package&gt;.symbols</code> file by adding
+ the new symbols with the corresponding upstream version.
diff --git a/tags/s/symbols-file-contains-debian-revision.tag b/tags/s/symbols-file-contains-debian-revision.tag
new file mode 100644
index 0000000..c15a2fe
--- /dev/null
+++ b/tags/s/symbols-file-contains-debian-revision.tag
@@ -0,0 +1,10 @@
+Tag: symbols-file-contains-debian-revision
+Severity: warning
+Check: debian/shlibs
+Explanation: Debian revisions should be stripped from versions in symbols files.
+ Not doing so leads to dependencies unsatisfiable by backports (1.0-1~bpo
+ &lt;&lt; 1.0-1 while 1.0-1~bpo &gt;= 1.0). If the Debian revision can't
+ be stripped because the symbol really appeared between two specific
+ Debian revisions, you should postfix the version with a single "~"
+ (example: 1.0-3~ if the symbol appeared in 1.0-3).
+See-Also: dpkg-gensymbols(1), https://wiki.debian.org/UsingSymbolsFiles
diff --git a/tags/s/symbols-file-missing-build-depends-package-field.tag b/tags/s/symbols-file-missing-build-depends-package-field.tag
new file mode 100644
index 0000000..f6433e7
--- /dev/null
+++ b/tags/s/symbols-file-missing-build-depends-package-field.tag
@@ -0,0 +1,25 @@
+Tag: symbols-file-missing-build-depends-package-field
+Severity: info
+Check: debian/shlibs
+Explanation: The symbols file for this package does not contain a
+ <code>Build-Depends-Package</code> meta-information field.
+ .
+ This field specifies the name of the <code>-dev</code> package associated
+ to the library and is used by <code>dpkg-shlibdeps(1)</code> to make sure
+ that the dependency generated is at least as strict as the
+ corresponding build dependency.
+ .
+ This is useful as allows packages to not hardcode this information
+ multiple times.
+ .
+ Note that the format of <code>deb-symbols(5)</code> files requires that the
+ <code>&ast; Build-Depends-Package:</code> line should start in column one of
+ the file and not be indented to align with the symbols themselves.
+ Please do not use the placeholder <code>&#35;PACKAGE&#35;</code>. The
+ development package for your shared library must be stated explicitly.
+See-Also:
+ debian-policy 8.6.3.2,
+ deb-symbols(5),
+ dpkg-shlibdeps(1),
+ https://www.debian.org/doc/manuals/maint-guide/advanced.en.html#librarysymbols,
+ Bug#944047
diff --git a/tags/s/symbols-for-undeclared-shared-library.tag b/tags/s/symbols-for-undeclared-shared-library.tag
new file mode 100644
index 0000000..3a2f53b
--- /dev/null
+++ b/tags/s/symbols-for-undeclared-shared-library.tag
@@ -0,0 +1,7 @@
+Tag: symbols-for-undeclared-shared-library
+Severity: error
+Check: debian/shlibs
+Renamed-From:
+ symbols-declared-but-not-shlib
+Explanation: The symbols control file contains dependency and symbol information
+ for a shared library which is not listed in the shlibs control file.
diff --git a/tags/s/symlink-contains-spurious-segments.tag b/tags/s/symlink-contains-spurious-segments.tag
new file mode 100644
index 0000000..ab5ec2b
--- /dev/null
+++ b/tags/s/symlink-contains-spurious-segments.tag
@@ -0,0 +1,14 @@
+Tag: symlink-contains-spurious-segments
+Severity: error
+Check: files/symbolic-links
+Explanation: The symbolic link target contains superfluous path segments like
+ <code>..</code> or <code>.</code>. They are not needed and make the link longer
+ than necessary, which goes against Debian policy.
+ .
+ Such segments can also cause unexpected problems in the presence of symlinked
+ directories.
+ .
+ With Debhelper, running dh&lowbar;link after creating the package structure
+ will fix this problem for you.
+See-Also:
+ debian-policy 10.5
diff --git a/tags/s/symlink-ends-with-slash.tag b/tags/s/symlink-ends-with-slash.tag
new file mode 100644
index 0000000..f58eb43
--- /dev/null
+++ b/tags/s/symlink-ends-with-slash.tag
@@ -0,0 +1,10 @@
+Tag: symlink-ends-with-slash
+Severity: warning
+Check: files/symbolic-links
+Explanation: This symbolic link target ends with a slash (/). That geos against
+ Debian policy, which states that symbolic links should be as short as possible.
+ .
+ With Debhelper, running dh&lowbar;link after creating the package structure
+ will fix this problem for you.
+See-Also:
+ debian-policy 10.5
diff --git a/tags/s/symlink-has-double-slash.tag b/tags/s/symlink-has-double-slash.tag
new file mode 100644
index 0000000..3dbe2e4
--- /dev/null
+++ b/tags/s/symlink-has-double-slash.tag
@@ -0,0 +1,11 @@
+Tag: symlink-has-double-slash
+Severity: warning
+Check: files/symbolic-links
+Explanation: This symbolic link target contains two successive slashes (//).
+ That goes against Debian policy, which states that symbolic links should be
+ as short as possible.
+ .
+ With Debhelper, running dh&lowbar;link after creating the package structure
+ will fix this problem for you.
+See-Also:
+ debian-policy 10.5
diff --git a/tags/s/symlink-has-too-many-up-segments.tag b/tags/s/symlink-has-too-many-up-segments.tag
new file mode 100644
index 0000000..86833db
--- /dev/null
+++ b/tags/s/symlink-has-too-many-up-segments.tag
@@ -0,0 +1,5 @@
+Tag: symlink-has-too-many-up-segments
+Severity: error
+Check: files/symbolic-links
+See-Also: debian-policy 10.5
+Explanation: The symlink references a directory beyond the root directory "/".
diff --git a/tags/s/symlink-is-self-recursive.tag b/tags/s/symlink-is-self-recursive.tag
new file mode 100644
index 0000000..0d37aa2
--- /dev/null
+++ b/tags/s/symlink-is-self-recursive.tag
@@ -0,0 +1,6 @@
+Tag: symlink-is-self-recursive
+Severity: warning
+Check: files/symbolic-links
+Explanation: The symbolic link is recursive to a higher directory of the symlink
+ itself. This means, that you can infinitely chdir with this symlink. This is
+ usually not okay, but sometimes wanted behaviour.
diff --git a/tags/s/symlink-target-in-build-tree.tag b/tags/s/symlink-target-in-build-tree.tag
new file mode 100644
index 0000000..3953bd1
--- /dev/null
+++ b/tags/s/symlink-target-in-build-tree.tag
@@ -0,0 +1,9 @@
+Tag: symlink-target-in-build-tree
+Severity: error
+Check: files/symbolic-links
+Explanation: The package sets a link with a target pointing to common
+ build paths.
+ .
+ This often occurs if the package uses regular expressions to
+ strip the build path without properly regex quoting the build
+ path.
diff --git a/tags/s/symlink-target-in-tmp.tag b/tags/s/symlink-target-in-tmp.tag
new file mode 100644
index 0000000..452f26b
--- /dev/null
+++ b/tags/s/symlink-target-in-tmp.tag
@@ -0,0 +1,9 @@
+Tag: symlink-target-in-tmp
+Severity: error
+Check: files/symbolic-links
+Explanation: Packages must not set links with targets pointing into <code>/tmp</code> or
+ <code>/var/tmp</code>. The File Hierarchy Standard specifies that such files
+ may be removed by the administrator and that programs may not depend on
+ any files in <code>/tmp</code> being preserved across invocations, which
+ combined mean that it makes no sense to ship files in these directories.
+See-Also: filesystem-hierarchy tmptemporaryfiles, filesystem-hierarchy vartmptemporaryfilespreservedbetwee
diff --git a/tags/s/synopsis-is-a-sentence.tag b/tags/s/synopsis-is-a-sentence.tag
new file mode 100644
index 0000000..8a351a5
--- /dev/null
+++ b/tags/s/synopsis-is-a-sentence.tag
@@ -0,0 +1,15 @@
+Tag: synopsis-is-a-sentence
+Severity: info
+Check: fields/description
+Renamed-From: description-synopsis-might-not-be-phrased-properly
+Explanation: The package synopsis (also known as the "short" description, ie. the
+ first line in the package's "Description:" field) either ends with a full
+ stop "." character or starts another sentence.
+ .
+ This is not necessary as the synopsis does not need to be a full
+ sentence. It is recommended that a single descriptive phrase is used
+ instead.
+ .
+ Note also that the synopsis is not part of the rest of the "long"
+ Description: field.
+See-Also: developer-reference 6.2.2
diff --git a/tags/s/synopsis-too-long.tag b/tags/s/synopsis-too-long.tag
new file mode 100644
index 0000000..5ffa77a
--- /dev/null
+++ b/tags/s/synopsis-too-long.tag
@@ -0,0 +1,6 @@
+Tag: synopsis-too-long
+Severity: warning
+Check: fields/description
+Renamed-From: description-too-long
+Explanation: The first line of the "Description:" must be less than 80 characters long.
+See-Also: debian-policy 3.4.1
diff --git a/tags/s/syntax-error-in-debconf-template.tag b/tags/s/syntax-error-in-debconf-template.tag
new file mode 100644
index 0000000..8c010ff
--- /dev/null
+++ b/tags/s/syntax-error-in-debconf-template.tag
@@ -0,0 +1,7 @@
+Tag: syntax-error-in-debconf-template
+Severity: error
+Check: debian/debconf
+Explanation: The template file contains a syntax error.
+ .
+ This issue may hide other issues as Lintian skips some checks on the
+ file in this case.
diff --git a/tags/s/syntax-error-in-debian-changelog.tag b/tags/s/syntax-error-in-debian-changelog.tag
new file mode 100644
index 0000000..a6b3522
--- /dev/null
+++ b/tags/s/syntax-error-in-debian-changelog.tag
@@ -0,0 +1,12 @@
+Tag: syntax-error-in-debian-changelog
+Severity: warning
+Check: debian/changelog
+Explanation: While parsing the Debian changelog, a syntax error was found. If
+ you have old changelog entries that don't follow the current syntax but
+ that you want to keep as-is for the historical record, add the line:
+ .
+ Old Changelog:
+ .
+ with no leading whitespace before the legacy entries. This line and
+ everything after it will be ignored.
+See-Also: debian-policy 4.4
diff --git a/tags/s/syntax-error-in-debian-news-file.tag b/tags/s/syntax-error-in-debian-news-file.tag
new file mode 100644
index 0000000..557dff4
--- /dev/null
+++ b/tags/s/syntax-error-in-debian-news-file.tag
@@ -0,0 +1,5 @@
+Tag: syntax-error-in-debian-news-file
+Severity: warning
+Check: debian/changelog
+Explanation: While parsing the NEWS.Debian file, a syntax error was found.
+See-Also: developer-reference 6.3.4
diff --git a/tags/s/syntax-error-in-dep5-copyright.tag b/tags/s/syntax-error-in-dep5-copyright.tag
new file mode 100644
index 0000000..1ec35c4
--- /dev/null
+++ b/tags/s/syntax-error-in-dep5-copyright.tag
@@ -0,0 +1,9 @@
+Tag: syntax-error-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The machine-readable copyright file didn't pass Debian control file
+ syntax check.
+ .
+ This issue may hide other issues as Lintian skips some checks on the
+ file in this case.
diff --git a/tags/s/syntax-error-in-symbols-file.tag b/tags/s/syntax-error-in-symbols-file.tag
new file mode 100644
index 0000000..b77ce22
--- /dev/null
+++ b/tags/s/syntax-error-in-symbols-file.tag
@@ -0,0 +1,8 @@
+Tag: syntax-error-in-symbols-file
+Severity: error
+Check: debian/shlibs
+Explanation: The symbols file contains an entry that does not follow the syntax
+ rules for symbols files.
+ .
+ This may be due to the entry appearing out of sequence.
+See-Also: deb-symbols(5)
diff --git a/tags/s/systemd-service-alias-without-extension.tag b/tags/s/systemd-service-alias-without-extension.tag
new file mode 100644
index 0000000..58fdc51
--- /dev/null
+++ b/tags/s/systemd-service-alias-without-extension.tag
@@ -0,0 +1,8 @@
+Tag: systemd-service-alias-without-extension
+Severity: warning
+Check: systemd
+See-Also: http://www.freedesktop.org/software/systemd/man/systemd.unit.html#Alias=
+Explanation: The service file lists an alias without a file extension.
+ .
+ The spec mandates that the extension of the listed alias matches
+ the extension of the unit itself.
diff --git a/tags/s/systemd-service-file-missing-documentation-key.tag b/tags/s/systemd-service-file-missing-documentation-key.tag
new file mode 100644
index 0000000..896e36b
--- /dev/null
+++ b/tags/s/systemd-service-file-missing-documentation-key.tag
@@ -0,0 +1,8 @@
+Tag: systemd-service-file-missing-documentation-key
+Severity: info
+Check: systemd
+Explanation: The systemd service file does not contain a <code>Documentation</code> key.
+ .
+ Documentation for systemd service files can be automatically viewed using
+ <code>systemctl help servicename</code> if this field is present.
+See-Also: systemd.unit(5)
diff --git a/tags/s/systemd-service-file-missing-hardening-features.tag b/tags/s/systemd-service-file-missing-hardening-features.tag
new file mode 100644
index 0000000..fe337af
--- /dev/null
+++ b/tags/s/systemd-service-file-missing-hardening-features.tag
@@ -0,0 +1,15 @@
+Tag: systemd-service-file-missing-hardening-features
+Severity: pedantic
+Experimental: yes
+Check: systemd
+Explanation: The specified systemd <code>.service</code> file does not appear to
+ enable any hardening options.
+ .
+ systemd has support for many security-oriented features such as
+ isolating services from the network, private <code>/tmp</code> directories,
+ as well as control over making directories appear read-only or even
+ inaccessible, etc.
+ .
+ Please consider supporting some options, collaborating upstream where
+ necessary about any potential changes.
+See-Also: systemd.service(5), http://0pointer.de/blog/projects/security.html
diff --git a/tags/s/systemd-service-file-missing-install-key.tag b/tags/s/systemd-service-file-missing-install-key.tag
new file mode 100644
index 0000000..0d5dbd6
--- /dev/null
+++ b/tags/s/systemd-service-file-missing-install-key.tag
@@ -0,0 +1,9 @@
+Tag: systemd-service-file-missing-install-key
+Severity: info
+Check: systemd
+Explanation: The systemd service file does not contain a <code>WantedBy=</code> or
+ <code>RequiredBy=</code> key in its <code>[Install]</code> section.
+ .
+ Forgetting to add such a line (e.g. <code>WantedBy=multi-user.target</code>)
+ results in the service file not being started by default.
+See-Also: systemd.unit(5)
diff --git a/tags/s/systemd-service-file-refers-to-obsolete-bindto.tag b/tags/s/systemd-service-file-refers-to-obsolete-bindto.tag
new file mode 100644
index 0000000..592c89a
--- /dev/null
+++ b/tags/s/systemd-service-file-refers-to-obsolete-bindto.tag
@@ -0,0 +1,8 @@
+Tag: systemd-service-file-refers-to-obsolete-bindto
+Severity: warning
+Check: systemd
+Explanation: The systemd service file refers to the obsolete BindTo= option.
+ .
+ The <code>BindTo=</code> option has been deprecated in favour of
+ <code>BindsTo=</code> which should be used instead.
+See-Also: https://github.com/systemd/systemd/commit/7f2cddae09fd2579ae24434df577bb5e5a157d86
diff --git a/tags/s/systemd-service-file-refers-to-obsolete-target.tag b/tags/s/systemd-service-file-refers-to-obsolete-target.tag
new file mode 100644
index 0000000..8986cc1
--- /dev/null
+++ b/tags/s/systemd-service-file-refers-to-obsolete-target.tag
@@ -0,0 +1,8 @@
+Tag: systemd-service-file-refers-to-obsolete-target
+Severity: warning
+Check: systemd
+Explanation: The systemd service file refers to an obsolete target.
+ .
+ Some targets are obsolete by now, e.g. syslog.target or dbus.target. For
+ example, declaring <code>After=syslog.target</code> is unnecessary by now because
+ syslog is socket-activated and will therefore be started when needed.
diff --git a/tags/s/systemd-service-file-refers-to-unusual-wantedby-target.tag b/tags/s/systemd-service-file-refers-to-unusual-wantedby-target.tag
new file mode 100644
index 0000000..d2062e5
--- /dev/null
+++ b/tags/s/systemd-service-file-refers-to-unusual-wantedby-target.tag
@@ -0,0 +1,11 @@
+Tag: systemd-service-file-refers-to-unusual-wantedby-target
+Severity: warning
+Check: systemd
+Explanation: The specified systemd service file declares an unusual
+ <code>WantedBy=</code> relationship.
+ .
+ Most services that want to be started automatically at boot should use
+ <code>WantedBy=multi-user.target</code> or <code>WantedBy=graphical.target</code>.
+ Services that want to be started in rescue or single-user mode should
+ instead use <code>WantedBy=sysinit.target</code>
+See-Also: https://wiki.debian.org/Teams/pkg-systemd/rcSMigration
diff --git a/tags/s/systemd-service-file-refers-to-var-run.tag b/tags/s/systemd-service-file-refers-to-var-run.tag
new file mode 100644
index 0000000..2eb00d2
--- /dev/null
+++ b/tags/s/systemd-service-file-refers-to-var-run.tag
@@ -0,0 +1,13 @@
+Tag: systemd-service-file-refers-to-var-run
+Severity: info
+Check: systemd
+Explanation: The specified systemd service file declares a <code>PIDFile=</code>
+ that references <code>/var/run</code>.
+ .
+ <code>/var/run</code> is now merely a symlink pointing to <code>/run</code> and
+ thus it is now considered best practice that packages use <code>/run</code>
+ directly.
+ .
+ Please update the specified service file.
+Renamed-From:
+ systemd-service-file-pidfile-refers-to-var-run
diff --git a/tags/s/systemd-service-file-shutdown-problems.tag b/tags/s/systemd-service-file-shutdown-problems.tag
new file mode 100644
index 0000000..ffb9a49
--- /dev/null
+++ b/tags/s/systemd-service-file-shutdown-problems.tag
@@ -0,0 +1,18 @@
+Tag: systemd-service-file-shutdown-problems
+Severity: warning
+Experimental: no
+Check: systemd
+See-Also: https://github.com/systemd/systemd/issues/11821
+Explanation: The specified systemd <code>.service</code> file contains both
+ <code>DefaultDependencies=no</code> and <code>Conflicts=shutdown.target</code>
+ directives without <code>Before=shutdown.target</code>.
+ .
+ This can lead to problems during shutdown because the service may
+ linger until the very end of shutdown sequence as nothing requests to
+ stop it before (due to <code>DefaultDependencies=no</code>).
+ .
+ There is race condition between stopping units and systemd getting a
+ request to exit the main loop, so it may proceed with shutdown before
+ all pending stop jobs have been processed.
+ .
+ Please add <code>Before=shutdown.target</code>.
diff --git a/tags/s/systemd-service-file-uses-deprecated-syslog-facility.tag b/tags/s/systemd-service-file-uses-deprecated-syslog-facility.tag
new file mode 100644
index 0000000..71db78c
--- /dev/null
+++ b/tags/s/systemd-service-file-uses-deprecated-syslog-facility.tag
@@ -0,0 +1,11 @@
+Tag: systemd-service-file-uses-deprecated-syslog-facility
+Severity: warning
+Check: systemd
+Explanation: The specified systemd service file specifies
+ <code>StandardOutput=</code> or <code>StandardError=</code> that references
+ <code>syslog</code> or <code>syslog-console</code>.
+ .
+ This is discouraged, and systemd versions 246 and above will log a
+ warning about this.
+See-Also:
+ https://github.com/systemd/systemd/blob/6706384a89ae0c462e7172588c80667190c4d9e2/NEWS#L724
diff --git a/tags/s/systemd-service-file-uses-nobody-or-nogroup.tag b/tags/s/systemd-service-file-uses-nobody-or-nogroup.tag
new file mode 100644
index 0000000..d755ad5
--- /dev/null
+++ b/tags/s/systemd-service-file-uses-nobody-or-nogroup.tag
@@ -0,0 +1,10 @@
+Tag: systemd-service-file-uses-nobody-or-nogroup
+Severity: warning
+Check: systemd
+Explanation: The specified <code>systemd</code> service file declares a <code>User=</code>
+ or <code>Group=</code> that references <code>nobody</code> or <code>nogroup</code>.
+ .
+ The practice is discouraged. Starting with version 246, <code>systemd</code> version will
+ log a warning about it.
+See-Also:
+ https://github.com/systemd/systemd/blob/v246/NEWS#L106-L113
diff --git a/tags/s/systemd-service-file-wraps-init-script.tag b/tags/s/systemd-service-file-wraps-init-script.tag
new file mode 100644
index 0000000..8a895e6
--- /dev/null
+++ b/tags/s/systemd-service-file-wraps-init-script.tag
@@ -0,0 +1,11 @@
+Tag: systemd-service-file-wraps-init-script
+Severity: warning
+Check: systemd
+Explanation: The listed service file simply uses ths existing SysV init script
+ via ExecStart, ExecStop, etc.
+ .
+ The main logic of more complex init scripts should be moved into helper
+ scripts which can be used directly from both the .service file and the
+ init script. This will also make the init scripts more readable and easier
+ to support other alternatives. Note that as /etc/init.d/&ast; files are
+ conffiles, such updates are not guaranteed to reach users.
diff --git a/tags/s/systemd-service-in-odd-location.tag b/tags/s/systemd-service-in-odd-location.tag
new file mode 100644
index 0000000..851d5ae
--- /dev/null
+++ b/tags/s/systemd-service-in-odd-location.tag
@@ -0,0 +1,18 @@
+Tag: systemd-service-in-odd-location
+Severity: error
+Check: systemd
+Explanation: The package ships a systemd service file in a location outside
+ <code>/usr/lib/systemd/system/</code>
+ .
+ Systemd in Debian looks for unit files in <code>/usr/lib/systemd/system/</code>.
+ <code>/lib/systemd/system/</code> and <code>/etc/systemd/system</code>, but the
+ first location is now standard in Debian.
+ .
+ System administrators have the possibility to override service files (or in newer
+ systemd versions, parts of them) by placing files in <code>/etc/systemd/system</code>.
+ The canonical location for service files in Debian is <code>/usr/lib/systemd/system/</code>.
+See-Also:
+ Bug#992465,
+ Bug#987989,
+ https://salsa.debian.org/debian/debhelper/-/commit/d70caa69c64b124e3611c967cfab93aef48346d8,
+ https://lists.debian.org/debian-devel/2021/08/msg00275.html
diff --git a/tags/s/systemd-tmpfile-in-var-run.tag b/tags/s/systemd-tmpfile-in-var-run.tag
new file mode 100644
index 0000000..341a133
--- /dev/null
+++ b/tags/s/systemd-tmpfile-in-var-run.tag
@@ -0,0 +1,12 @@
+Tag: systemd-tmpfile-in-var-run
+Severity: info
+Check: systemd/tmpfiles
+Explanation: The named systemd file declares a temporary file with a location
+ in <code>/var/run</code>.
+ .
+ <code>/var/run</code> is nowadays a just symbolic link to <code>/run</code>.
+ Packages should use <code>/run</code> instead.
+ .
+ Please update the named file.
+See-Also:
+ Bug#984678
diff --git a/tags/t/tab-in-license-text.tag b/tags/t/tab-in-license-text.tag
new file mode 100644
index 0000000..0fb0129
--- /dev/null
+++ b/tags/t/tab-in-license-text.tag
@@ -0,0 +1,9 @@
+Tag: tab-in-license-text
+Severity: warning
+Check: debian/copyright/dep5
+Explanation: A long license text in <code>debian/copyright</code> contains
+ a tab character. It often occurs when a license text is copied
+ from another source, and not reformatted.
+ .
+ DEP-5 disallows the use of tab characters in the license text.
+ Please remove it.
diff --git a/tags/t/tclsh-script-but-no-tclsh-dep.tag b/tags/t/tclsh-script-but-no-tclsh-dep.tag
new file mode 100644
index 0000000..0b15b3b
--- /dev/null
+++ b/tags/t/tclsh-script-but-no-tclsh-dep.tag
@@ -0,0 +1,9 @@
+Tag: tclsh-script-but-no-tclsh-dep
+Severity: error
+Check: scripts
+Explanation: Packages that include tclsh scripts must depend on the virtual
+ package tclsh or, if they require a specific version of tcl, that
+ version of tcl.
+ .
+ In some cases a weaker relationship, such as Suggests or Recommends, will
+ be more appropriate.
diff --git a/tags/t/team-upload-has-incorrect-version-number.tag b/tags/t/team-upload-has-incorrect-version-number.tag
new file mode 100644
index 0000000..154b3e8
--- /dev/null
+++ b/tags/t/team-upload-has-incorrect-version-number.tag
@@ -0,0 +1,7 @@
+Tag: team-upload-has-incorrect-version-number
+Severity: warning
+Check: nmu
+Explanation: A team upload (uploading a package from the same team without adding
+ oneself as maintainer or uploader) is a maintainer upload: it should not
+ get a NMU revision number. Team uploads are recognized by the string
+ "team upload" on the first line of the changelog file.
diff --git a/tags/t/template-uses-unsplit-choices.tag b/tags/t/template-uses-unsplit-choices.tag
new file mode 100644
index 0000000..be97f71
--- /dev/null
+++ b/tags/t/template-uses-unsplit-choices.tag
@@ -0,0 +1,15 @@
+Tag: template-uses-unsplit-choices
+Severity: warning
+Check: debian/debconf
+Explanation: The use of &lowbar;Choices in templates is deprecated.
+ A &lowbar;Choices field must be translated as a single string.
+ .
+ Using &lowbar;&lowbar;Choices allows each choice to be translated separately, easing
+ translation and is therefore recommended.
+ .
+ Instead of simply replacing all occurrences of "&lowbar;Choices" by "&lowbar;&lowbar;Choices",
+ apply the method described in po-debconf(7) under "SPLITTING CHOICES
+ LIST", to avoid breaking existing translations.
+ .
+ If in doubt, please ask for help on the debian-i18n mailing list.
+See-Also: po-debconf(7)
diff --git a/tags/t/temporary-debhelper-file.tag b/tags/t/temporary-debhelper-file.tag
new file mode 100644
index 0000000..3cbc5a3
--- /dev/null
+++ b/tags/t/temporary-debhelper-file.tag
@@ -0,0 +1,10 @@
+Tag: temporary-debhelper-file
+Severity: error
+Check: debhelper/temporary
+Explanation: The named file is a temporary Debhelper file.
+ .
+ The file should have been removed by <code>dh&lowbar;clean</code>. Sometimes
+ that happens when an installable package was renamed or removed before the
+ build directory was cleaned up.
+See-Also:
+ dh_clean(1)
diff --git a/tags/t/test-leaves-python-version-untested.tag b/tags/t/test-leaves-python-version-untested.tag
new file mode 100644
index 0000000..3075cd7
--- /dev/null
+++ b/tags/t/test-leaves-python-version-untested.tag
@@ -0,0 +1,11 @@
+Tag: test-leaves-python-version-untested
+Severity: warning
+Check: testsuite
+Explanation: The named autopkgtest declares <code>python3-all</code> or an equivalent
+ as a runtime prerequisite but the test script does not query the supported Python
+ versions with <code>py3versions --supported</code>.
+ .
+ The test may pass with the standard Python version but could fail in the future with
+ a Python version that is already available now.
+ .
+ It is best to run tests for all Python versions supported by the target system.
diff --git a/tags/t/testsuite-dependency-has-unparsable-elements.tag b/tags/t/testsuite-dependency-has-unparsable-elements.tag
new file mode 100644
index 0000000..4a2705d
--- /dev/null
+++ b/tags/t/testsuite-dependency-has-unparsable-elements.tag
@@ -0,0 +1,11 @@
+Tag: testsuite-dependency-has-unparsable-elements
+Severity: warning
+Check: testsuite
+Explanation: Lintian cannot parse the Depends field for the given autopkgtest.
+ .
+ Please double check that dependency the syntax is correct.
+ .
+ Note that Lintian has a whitelist of known "special" dependencies
+ permitted by autopkgtest (e.g. @builddeps@). Lintian does not accept
+ these as a part of an OR-clause.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/t/third-party-package-in-python-dir.tag b/tags/t/third-party-package-in-python-dir.tag
new file mode 100644
index 0000000..a93aee5
--- /dev/null
+++ b/tags/t/third-party-package-in-python-dir.tag
@@ -0,0 +1,10 @@
+Tag: third-party-package-in-python-dir
+Severity: warning
+Check: languages/python
+Explanation: Third-party Python packages should install their files in
+ <code>/usr/lib/python*VERSION*/site-packages</code> for Python versions
+ before 2.6 and <code>/usr/lib/python*VERSION*/dist-packages</code>
+ for Python 2.6 and later. All other directories in
+ <code>/usr/lib/python*VERSION*</code> are for use by the core python
+ packages.
+See-Also: python-policy 2.5
diff --git a/tags/t/timewarp-standards-version.tag b/tags/t/timewarp-standards-version.tag
new file mode 100644
index 0000000..8cf5108
--- /dev/null
+++ b/tags/t/timewarp-standards-version.tag
@@ -0,0 +1,7 @@
+Tag: timewarp-standards-version
+Severity: warning
+Check: fields/standards-version
+Explanation: The source package refers to a Standards-Version that was released
+ after the date of the most recent <code>debian/changelog</code> entry.
+ Perhaps you forgot to update the timestamp in <code>debian/changelog</code>
+ before building the package?
diff --git a/tags/t/too-long-extended-description-in-templates.tag b/tags/t/too-long-extended-description-in-templates.tag
new file mode 100644
index 0000000..cb6da92
--- /dev/null
+++ b/tags/t/too-long-extended-description-in-templates.tag
@@ -0,0 +1,7 @@
+Tag: too-long-extended-description-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: Some debconf interfaces cannot deal very well with descriptions of
+ more than about 20 lines, so try to keep the extended description below
+ this limit.
+See-Also: developer-reference 6.5.3.2
diff --git a/tags/t/too-long-short-description-in-templates.tag b/tags/t/too-long-short-description-in-templates.tag
new file mode 100644
index 0000000..4046f2f
--- /dev/null
+++ b/tags/t/too-long-short-description-in-templates.tag
@@ -0,0 +1,8 @@
+Tag: too-long-short-description-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: The short description should be kept short (50 characters or so) so
+ that it may be accommodated by most debconf interfaces. Keeping it short
+ also helps translators, as usually translations tend to end up being
+ longer than the original.
+See-Also: developer-reference 6.5.3.2
diff --git a/tags/t/too-many-architectures.tag b/tags/t/too-many-architectures.tag
new file mode 100644
index 0000000..7d8d2fe
--- /dev/null
+++ b/tags/t/too-many-architectures.tag
@@ -0,0 +1,6 @@
+Tag: too-many-architectures
+Severity: error
+Check: fields/architecture
+Explanation: A binary package should list exactly one architecture (the one it is
+ compiled for), or the special value "all" if it is architecture-independent.
+See-Also: debian-policy 5.6.8
diff --git a/tags/t/too-many-contacts.tag b/tags/t/too-many-contacts.tag
new file mode 100644
index 0000000..e34df76
--- /dev/null
+++ b/tags/t/too-many-contacts.tag
@@ -0,0 +1,7 @@
+Tag: too-many-contacts
+Severity: error
+Check: fields/mail-address
+Explanation: The named field identifying a contact person lists too many people.
+See-Also: debian-policy 5.6.2,
+ debian-policy 5.6.3,
+ debian-policy 5.6.4
diff --git a/tags/t/trailing-slash-for-dpkg-maintscript-helper-symlink_to_dir.tag b/tags/t/trailing-slash-for-dpkg-maintscript-helper-symlink_to_dir.tag
new file mode 100644
index 0000000..d8a884c
--- /dev/null
+++ b/tags/t/trailing-slash-for-dpkg-maintscript-helper-symlink_to_dir.tag
@@ -0,0 +1,7 @@
+Tag: trailing-slash-for-dpkg-maintscript-helper-symlink_to_dir
+Severity: error
+Check: scripts
+Explanation: The maintainer script seems to call dpkg-maintscript-helper
+ symlink&lowbar;to&lowbar;dir with a trailing slash for pathname. This renders the
+ package uninstallable.
+See-Also: dpkg-maintscript-helper(1)
diff --git a/tags/t/trailing-whitespace.tag b/tags/t/trailing-whitespace.tag
new file mode 100644
index 0000000..1040168
--- /dev/null
+++ b/tags/t/trailing-whitespace.tag
@@ -0,0 +1,27 @@
+Tag: trailing-whitespace
+Severity: pedantic
+Check: debian/trailing-whitespace
+Renamed-From: file-contains-trailing-whitespace
+Explanation: This file contains lines with trailing whitespace characters.
+ .
+ Whilst often harmless and unsightly, such extra whitespaces can also
+ cause tools to interpret the whitespace characters literally. The
+ tool <code>diff(1)</code> does not like them, either. They are best
+ avoided.
+ .
+ Some of these problems can be hard to track down.
+ .
+ Whitespace at the end of lines may be removed with the following:
+ .
+ $ sed -i -e 's@[[:space:]]&ast;$@@g' debian/control debian/changelog
+ .
+ If you use Emacs, you can also use "M-x wh-cl" (whitespace-cleanup).
+ .
+ However, if you wish to only remove trailing spaces and leave trailing tabs
+ (eg. for Makefiles), you can use the following code snippet:
+ .
+ $ sed -i -e 's@[ ]&ast;$@@g' debian/rules
+ .
+ To remove empty lines from the end of a file, you can use:
+ .
+ $ sed -i -e :a -e '/^\n&ast;$/{$d;N;};/\n$/ba' debian/rules
diff --git a/tags/t/transitional-package-not-oldlibs-optional.tag b/tags/t/transitional-package-not-oldlibs-optional.tag
new file mode 100644
index 0000000..d66a5b4
--- /dev/null
+++ b/tags/t/transitional-package-not-oldlibs-optional.tag
@@ -0,0 +1,13 @@
+Tag: transitional-package-not-oldlibs-optional
+Severity: warning
+Check: fields/section
+Renamed-From:
+ transitional-package-should-be-oldlibs-extra
+ transitional-package-should-be-oldlibs-optional
+Explanation: The package appears to be a transitional package, but it is not
+ priority optional and in the oldlibs section.
+ .
+ Using oldlibs/optional assists package managers in handling the
+ transition package correctly.
+See-Also: Bug#645438,
+ developer-reference 6.8.7
diff --git a/tags/t/translated-default-field.tag b/tags/t/translated-default-field.tag
new file mode 100644
index 0000000..9e9f325
--- /dev/null
+++ b/tags/t/translated-default-field.tag
@@ -0,0 +1,20 @@
+Tag: translated-default-field
+Severity: warning
+Check: debian/po-debconf
+Explanation: You should not mark as translatable "Default:" or "DefaultChoice:"
+ fields, unless explicitly needed (e.g. default country, default language,
+ etc.). If this Default field really should be translated, you should
+ explain translators how they should translate it by using comments or
+ brackets. For example:
+ .
+ # Translators: Default language name, but not translated
+ &lowbar;Default: English
+ .
+ Or:
+ .
+ &lowbar;Default: English[ Default language name, but not translated]
+ .
+ Note that in the first case, Lintian ignores the comment unless it
+ explicitly references translators and it is appears directly before
+ the field in question.
+See-Also: po-debconf(7), Bug#637881
diff --git a/tags/t/trimmed-deb822-field.tag b/tags/t/trimmed-deb822-field.tag
new file mode 100644
index 0000000..787d529
--- /dev/null
+++ b/tags/t/trimmed-deb822-field.tag
@@ -0,0 +1,6 @@
+Tag: trimmed-deb822-field
+Severity: classification
+Check: fields/deb822
+Explanation: The raw but trimmed contents of the named field in the given
+ Deb822 file. The number indicates the section from the top,
+ starting at 1.
diff --git a/tags/t/trimmed-field.tag b/tags/t/trimmed-field.tag
new file mode 100644
index 0000000..168cc3c
--- /dev/null
+++ b/tags/t/trimmed-field.tag
@@ -0,0 +1,5 @@
+Tag: trimmed-field
+Severity: classification
+Check: fields/trimmed
+Explanation: These are the raw but trimmed contents of the named field in
+ the package's primary control file.
diff --git a/tags/t/triplet-dir-and-architecture-mismatch.tag b/tags/t/triplet-dir-and-architecture-mismatch.tag
new file mode 100644
index 0000000..e1ac3d8
--- /dev/null
+++ b/tags/t/triplet-dir-and-architecture-mismatch.tag
@@ -0,0 +1,9 @@
+Tag: triplet-dir-and-architecture-mismatch
+Severity: error
+Check: files/architecture
+See-Also: debian-policy 9.1.1
+Explanation: This package contains a directory under <code>/lib</code> or
+ <code>/usr/lib</code> which doesn't match the proper triplet for the
+ binary package's architecture. This is very likely to be a mistake
+ when indicating the underlying build system where the files should be
+ installed.
diff --git a/tags/t/truetype-font-prohibits-installable-embedding.tag b/tags/t/truetype-font-prohibits-installable-embedding.tag
new file mode 100644
index 0000000..32def69
--- /dev/null
+++ b/tags/t/truetype-font-prohibits-installable-embedding.tag
@@ -0,0 +1,7 @@
+Tag: truetype-font-prohibits-installable-embedding
+Severity: warning
+Check: fonts/truetype
+Explanation: This package installs a TrueType font with restrictive license
+ terms. The font does not permit installable embedding, as defined by
+ the TrueType standard.
+See-Also: https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6OS2.html
diff --git a/tags/t/truetype-font-wrong-filename.tag b/tags/t/truetype-font-wrong-filename.tag
new file mode 100644
index 0000000..dca4250
--- /dev/null
+++ b/tags/t/truetype-font-wrong-filename.tag
@@ -0,0 +1,5 @@
+Tag: truetype-font-wrong-filename
+Severity: warning
+Check: fonts/truetype
+Explanation: This package installs a TrueType font with an extension other than
+ <code>.ttf</code>. The check is insensitive to case.
diff --git a/tags/t/typelib-in-arch-all-package.tag b/tags/t/typelib-in-arch-all-package.tag
new file mode 100644
index 0000000..b621eba
--- /dev/null
+++ b/tags/t/typelib-in-arch-all-package.tag
@@ -0,0 +1,8 @@
+Tag: typelib-in-arch-all-package
+Severity: error
+Check: desktop/gnome/gir
+Explanation: GObject-Introspection compiled typelibs
+ (<code>Foo-23.typelib</code>) are architecture-specific. They must ship in
+ architecture-dependent packages.
+See-Also:
+ /usr/share/doc/gobject-introspection/policy.txt
diff --git a/tags/t/typelib-missing-gir-depends.tag b/tags/t/typelib-missing-gir-depends.tag
new file mode 100644
index 0000000..fe17927
--- /dev/null
+++ b/tags/t/typelib-missing-gir-depends.tag
@@ -0,0 +1,9 @@
+Tag: typelib-missing-gir-depends
+Severity: warning
+Check: desktop/gnome/gir
+Explanation: GObject-Introspection compiled typelibs
+ (<code>Foo-23.typelib</code>) can depend on other typelibs. To generate
+ appropriate dependencies in the binary package, they must specify
+ <code>Depends: ${gir:Depends}</code> in the <code>control</code> file.
+See-Also:
+ /usr/share/doc/gobject-introspection/policy.txt
diff --git a/tags/t/typelib-not-in-multiarch-directory.tag b/tags/t/typelib-not-in-multiarch-directory.tag
new file mode 100644
index 0000000..f9939ce
--- /dev/null
+++ b/tags/t/typelib-not-in-multiarch-directory.tag
@@ -0,0 +1,6 @@
+Tag: typelib-not-in-multiarch-directory
+Severity: warning
+Check: desktop/gnome/gir
+Explanation: Public GObject-Introspection binary typelibs
+ (<code>Foo-23.typelib</code>) should be installed in the multi-arch
+ directory <code>/usr/lib/MULTIARCH-TUPLE/girepository-1.0</code>.
diff --git a/tags/t/typelib-package-name-does-not-match.tag b/tags/t/typelib-package-name-does-not-match.tag
new file mode 100644
index 0000000..bdde8d6
--- /dev/null
+++ b/tags/t/typelib-package-name-does-not-match.tag
@@ -0,0 +1,18 @@
+Tag: typelib-package-name-does-not-match
+Severity: warning
+Check: desktop/gnome/gir
+Explanation: GObject-Introspection binary typelibs (<code>Foo-23.typelib</code>)
+ should normally be made available in a package named gir1.2-foo-23.
+ .
+ If multiple typelibs are shipped in the same package, then that package
+ should have versioned <code>Provides</code> for the names that would have been
+ used for separate packages. This arrangement should only be used if the
+ included typelibs' versions are expected to remain the same at all times.
+ .
+ For example, <code>gir1.2-gtk-3.0</code> is named for the <code>Gtk-3.0</code>
+ typelib, but also contains the <code>Gdk-3.0</code> and <code>GdkX11-3.0</code>
+ typelibs. It should have versioned <code>Provides</code> entries for
+ <code>gir1.2-gdk-3.0 (= ${binary:Version})</code>
+ and <code>gir1.2-gdkx11-3.0 (= ${binary:Version})</code> to indicate this.
+See-Also:
+ /usr/share/doc/gobject-introspection/policy.txt
diff --git a/tags/t/typelib-section-not-introspection.tag b/tags/t/typelib-section-not-introspection.tag
new file mode 100644
index 0000000..aed2b22
--- /dev/null
+++ b/tags/t/typelib-section-not-introspection.tag
@@ -0,0 +1,10 @@
+Tag: typelib-section-not-introspection
+Severity: warning
+Check: desktop/gnome/gir
+Explanation: GObject-Introspection compiled typelibs (<code>Foo-23.typelib</code>)
+ should be made available in a GObject-Introspection package
+ in the <code>introspection</code> section of the archive.
+ .
+ Normally, it would named <code>gir1.2-foo-23</code>.
+See-Also:
+ /usr/share/doc/gobject-introspection/policy.txt
diff --git a/tags/t/typo-in-debhelper-override-target.tag b/tags/t/typo-in-debhelper-override-target.tag
new file mode 100644
index 0000000..09cd141
--- /dev/null
+++ b/tags/t/typo-in-debhelper-override-target.tag
@@ -0,0 +1,13 @@
+Tag: typo-in-debhelper-override-target
+Severity: warning
+Check: debhelper
+Explanation: The listed target in debian/rules is a likely misspelling or it is
+ missing an underscore ("&lowbar;") between the <code>override&lowbar;dh</code>,
+ <code>execute&lowbar;after&lowbar;dh</code> etc. and the command name.
+ .
+ This can result in (for example) a <code>override&lowbar;dh&lowbar;foo</code>-style target
+ silently not being executed by <code>make</code>.
+ .
+ Implementation detail: The typo is detected by using "Levenshtein
+ edit distance" so if the typo involve several characters Lintian may
+ not detect it.
diff --git a/tags/t/typo-in-manual-page.tag b/tags/t/typo-in-manual-page.tag
new file mode 100644
index 0000000..ef3d391
--- /dev/null
+++ b/tags/t/typo-in-manual-page.tag
@@ -0,0 +1,14 @@
+Tag: typo-in-manual-page
+Severity: info
+Check: documentation/manual
+Renamed-From: spelling-error-in-manpage
+Explanation: Lintian found a spelling error in a manual page. Lintian has a list
+ of common misspellings that it looks for. It does not have a
+ dictionary like a spelling checker does.
+ .
+ If the string containing the spelling error is translated with the help
+ of gettext (with the help of po4a, for example) or a similar tool,
+ please fix the error in the translations as well as the English text to
+ avoid making the translations fuzzy. With gettext, for example, this
+ means you should also fix the spelling mistake in the corresponding
+ msgids in the &ast;.po files.
diff --git a/tags/team/pkg-js/deprecated/nodejs-bad-buffer-usage.tag b/tags/team/pkg-js/deprecated/nodejs-bad-buffer-usage.tag
new file mode 100644
index 0000000..86b4906
--- /dev/null
+++ b/tags/team/pkg-js/deprecated/nodejs-bad-buffer-usage.tag
@@ -0,0 +1,6 @@
+Tag: nodejs-bad-buffer-usage
+Severity: warning
+Check: team/pkg-js/deprecated
+Name-Spaced: yes
+Explanation: Replace <code>Buffer()</code> by <code>Buffer.from()</code> or
+ <code>Buffer.alloc()</code> for security reasons.
diff --git a/tags/team/pkg-js/testsuite/no-team-tests.tag b/tags/team/pkg-js/testsuite/no-team-tests.tag
new file mode 100644
index 0000000..dc0f132
--- /dev/null
+++ b/tags/team/pkg-js/testsuite/no-team-tests.tag
@@ -0,0 +1,8 @@
+Tag: no-team-tests
+Severity: warning
+Check: team/pkg-js/testsuite
+Name-Spaced: yes
+Explanation: Source packages maintained by pkg-js should declare a
+ 'Testsuite: autopkgtest-pkg-js' header instead of
+ 'Testsuite: autopkgtest' and avoid duplicating the standard
+ test control file in all the packages.
diff --git a/tags/team/pkg-js/testsuite/no-testsuite-header.tag b/tags/team/pkg-js/testsuite/no-testsuite-header.tag
new file mode 100644
index 0000000..419f8e8
--- /dev/null
+++ b/tags/team/pkg-js/testsuite/no-testsuite-header.tag
@@ -0,0 +1,6 @@
+Tag: no-testsuite-header
+Severity: warning
+Check: team/pkg-js/testsuite
+Name-Spaced: yes
+Explanation: Source packages maintained by pkg-js should declare a
+ 'Testsuite: autopkgtest-pkg-nodejs' header.
diff --git a/tags/team/pkg-js/vcs/no-git.tag b/tags/team/pkg-js/vcs/no-git.tag
new file mode 100644
index 0000000..a9e2f92
--- /dev/null
+++ b/tags/team/pkg-js/vcs/no-git.tag
@@ -0,0 +1,6 @@
+Tag: no-git
+Severity: warning
+Check: team/pkg-js/vcs
+Name-Spaced: yes
+Explanation: All pkg-js maintained packages moved to git. This package
+ still has a non-git Vcs-&ast; header.
diff --git a/tags/team/pkg-js/vcs/no-team-url.tag b/tags/team/pkg-js/vcs/no-team-url.tag
new file mode 100644
index 0000000..065f7fd
--- /dev/null
+++ b/tags/team/pkg-js/vcs/no-team-url.tag
@@ -0,0 +1,6 @@
+Tag: no-team-url
+Severity: warning
+Check: team/pkg-js/vcs
+Name-Spaced: yes
+Explanation: All pkg-js VCS repositories should live under a team-writable
+ location.
diff --git a/tags/team/pkg-perl/testsuite/autopkgtest-needs-use-name.tag b/tags/team/pkg-perl/testsuite/autopkgtest-needs-use-name.tag
new file mode 100644
index 0000000..c3447f7
--- /dev/null
+++ b/tags/team/pkg-perl/testsuite/autopkgtest-needs-use-name.tag
@@ -0,0 +1,12 @@
+Tag: autopkgtest-needs-use-name
+Severity: warning
+Check: team/pkg-perl/testsuite
+Name-Spaced: yes
+Explanation: The pkg-perl use.t autopkgtest uses META.json or META.yml
+ to extract the name of the main module in the package, which will
+ then be checked with 'perl -w -M"module"' and expected to load ok
+ and without warnings or other output. This package does not have
+ content in META.{json,yml} and thus should provide the module name
+ for use.t in debian/tests/pkg-perl/use-name.
+ .
+ See https://perl-team.pages.debian.net/autopkgtest.html
diff --git a/tags/team/pkg-perl/testsuite/no-team-tests.tag b/tags/team/pkg-perl/testsuite/no-team-tests.tag
new file mode 100644
index 0000000..8c2db89
--- /dev/null
+++ b/tags/team/pkg-perl/testsuite/no-team-tests.tag
@@ -0,0 +1,10 @@
+Tag: no-team-tests
+Severity: warning
+Check: team/pkg-perl/testsuite
+Name-Spaced: yes
+Explanation: Source packages maintained by pkg-perl should declare a
+ 'Testsuite: autopkgtest-pkg-perl' header instead of
+ 'Testsuite: autopkgtest' and avoid duplicating the standard
+ test control file in all the packages.
+ .
+ See https://perl-team.pages.debian.net/autopkgtest.html
diff --git a/tags/team/pkg-perl/testsuite/no-testsuite-header.tag b/tags/team/pkg-perl/testsuite/no-testsuite-header.tag
new file mode 100644
index 0000000..84e54d5
--- /dev/null
+++ b/tags/team/pkg-perl/testsuite/no-testsuite-header.tag
@@ -0,0 +1,8 @@
+Tag: no-testsuite-header
+Severity: warning
+Check: team/pkg-perl/testsuite
+Name-Spaced: yes
+Explanation: Source packages maintained by pkg-perl should declare a
+ 'Testsuite: autopkgtest-pkg-perl' header.
+ .
+ See https://perl-team.pages.debian.net/autopkgtest.html
diff --git a/tags/team/pkg-perl/vcs/no-git.tag b/tags/team/pkg-perl/vcs/no-git.tag
new file mode 100644
index 0000000..5879813
--- /dev/null
+++ b/tags/team/pkg-perl/vcs/no-git.tag
@@ -0,0 +1,6 @@
+Tag: no-git
+Severity: error
+Check: team/pkg-perl/vcs
+Name-Spaced: yes
+Explanation: All pkg-perl maintained packages moved to git. This package
+ still has a non-git Vcs-&ast; header.
diff --git a/tags/team/pkg-perl/vcs/no-team-url.tag b/tags/team/pkg-perl/vcs/no-team-url.tag
new file mode 100644
index 0000000..6f150fd
--- /dev/null
+++ b/tags/team/pkg-perl/vcs/no-team-url.tag
@@ -0,0 +1,6 @@
+Tag: no-team-url
+Severity: warning
+Check: team/pkg-perl/vcs
+Name-Spaced: yes
+Explanation: All pkg-perl VCS repositories should live under a team-writable
+ location.
diff --git a/tags/team/pkg-perl/xs-abi/legacy-vendorarch-directory.tag b/tags/team/pkg-perl/xs-abi/legacy-vendorarch-directory.tag
new file mode 100644
index 0000000..65df8c0
--- /dev/null
+++ b/tags/team/pkg-perl/xs-abi/legacy-vendorarch-directory.tag
@@ -0,0 +1,11 @@
+Tag: legacy-vendorarch-directory
+Severity: error
+Check: team/pkg-perl/xs-abi
+Name-Spaced: yes
+Explanation: Since 5.20, Debian perl packages use different directory for placing XS
+ libraries, which varies by API version and possibly architecture. Files
+ placed in the previously used directory (/usr/lib/perl5) will not be used by
+ perl. The build system needs to be fixed to use the value $Config{vendorarch}
+ (available from the Config module) instead of hardcoding the directory.
+ .
+ See Perl Policy 4.1.
diff --git a/tags/u/udeb-contains-documentation-file.tag b/tags/u/udeb-contains-documentation-file.tag
new file mode 100644
index 0000000..38c841d
--- /dev/null
+++ b/tags/u/udeb-contains-documentation-file.tag
@@ -0,0 +1,4 @@
+Tag: udeb-contains-documentation-file
+Severity: error
+Check: documentation
+Explanation: udeb packages should not contain any documentation.
diff --git a/tags/u/udeb-postinst-calls-ldconfig.tag b/tags/u/udeb-postinst-calls-ldconfig.tag
new file mode 100644
index 0000000..285f9e8
--- /dev/null
+++ b/tags/u/udeb-postinst-calls-ldconfig.tag
@@ -0,0 +1,9 @@
+Tag: udeb-postinst-calls-ldconfig
+Severity: error
+Check: maintainer-scripts/ldconfig
+Renamed-From:
+ udeb-postinst-must-not-call-ldconfig
+Explanation: The udeb invokes ldconfig via postinst on install. That is
+ an error in udebs.
+ .
+ ldconfig is not available (and not needed) in debian-installer.
diff --git a/tags/u/udeb-uses-unsupported-compression-for-data-tarball.tag b/tags/u/udeb-uses-unsupported-compression-for-data-tarball.tag
new file mode 100644
index 0000000..658c59a
--- /dev/null
+++ b/tags/u/udeb-uses-unsupported-compression-for-data-tarball.tag
@@ -0,0 +1,9 @@
+Tag: udeb-uses-unsupported-compression-for-data-tarball
+Severity: error
+Check: deb-format
+Explanation: The data tarball of this udeb package is not compressed in format
+ that udpkg (debian-installer's dpkg equivalent) does not support. Thus
+ the udeb is likely to be uninstallable and could break daily or weekly
+ d-i images.
+ .
+ Currently, udpkg supports .gz and .xz compressed tarballs.
diff --git a/tags/u/udev-rule-in-etc.tag b/tags/u/udev-rule-in-etc.tag
new file mode 100644
index 0000000..2d69cf6
--- /dev/null
+++ b/tags/u/udev-rule-in-etc.tag
@@ -0,0 +1,7 @@
+Tag: udev-rule-in-etc
+Severity: error
+Check: udev
+See-Also: Bug#559208
+Explanation: This package ships a udev rule and installs it under
+ <code>/etc/udev/rules.d</code>, which is reserved for user-installed files.
+ The correct directory for system rules is <code>/lib/udev/rules.d</code>.
diff --git a/tags/u/udev-rule-missing-subsystem.tag b/tags/u/udev-rule-missing-subsystem.tag
new file mode 100644
index 0000000..5fea937
--- /dev/null
+++ b/tags/u/udev-rule-missing-subsystem.tag
@@ -0,0 +1,8 @@
+Tag: udev-rule-missing-subsystem
+Severity: warning
+Check: udev
+See-Also: https://wiki.debian.org/USB/GadgetSetup
+Explanation: The package matches vendor/product IDs without specifying
+ subsystem. The vendor/product IDs are subsystem specific. Matching
+ rules using those should specify subsystem too, for example by using
+ SUBSYSTEM=="usb" at the start of the matching rule.
diff --git a/tags/u/udev-rule-missing-uaccess.tag b/tags/u/udev-rule-missing-uaccess.tag
new file mode 100644
index 0000000..1b2eaa8
--- /dev/null
+++ b/tags/u/udev-rule-missing-uaccess.tag
@@ -0,0 +1,9 @@
+Tag: udev-rule-missing-uaccess
+Severity: warning
+Check: udev
+See-Also: https://wiki.debian.org/USB/GadgetSetup
+Explanation: The package set up a device for user access without using the
+ uaccess tag. Some udev rules get the same effect using other markers
+ enabling console user access using rules in
+ /lib/udev/rules.d/70-uaccess.rules. Others should specify
+ TAG+="uaccess" in the udev rule.
diff --git a/tags/u/udev-rule-unreadable.tag b/tags/u/udev-rule-unreadable.tag
new file mode 100644
index 0000000..79cff04
--- /dev/null
+++ b/tags/u/udev-rule-unreadable.tag
@@ -0,0 +1,7 @@
+Tag: udev-rule-unreadable
+Severity: error
+Check: udev
+See-Also: https://wiki.debian.org/USB/GadgetSetup
+Explanation: The udev rule entry should be a file
+ The package contain a non-file in /lib/udev/rules.d/. The directory
+ should only contain readable files.
diff --git a/tags/u/udevadm-called-without-guard.tag b/tags/u/udevadm-called-without-guard.tag
new file mode 100644
index 0000000..2661966
--- /dev/null
+++ b/tags/u/udevadm-called-without-guard.tag
@@ -0,0 +1,14 @@
+Tag: udevadm-called-without-guard
+Severity: warning
+Check: scripts
+Explanation: The specified maintainer script uses <code>set -e</code> but seems to
+ call <code>udevadm(8)</code> without a conditional guard.
+ .
+ <code>udevadm</code> can exist but be non-functional (such as inside a
+ chroot) and thus can result in package installation or upgrade failure
+ if the call fails.
+ .
+ Please guard the return code of the call via wrapping it in a suitable
+ <code>if</code> construct, appending <code>|| true</code> or depending on the
+ <code>udev</code> package.
+See-Also: Bug#890224, udevadm(8)
diff --git a/tags/u/uncompressed-manual-page.tag b/tags/u/uncompressed-manual-page.tag
new file mode 100644
index 0000000..979edc0
--- /dev/null
+++ b/tags/u/uncompressed-manual-page.tag
@@ -0,0 +1,6 @@
+Tag: uncompressed-manual-page
+Severity: error
+Check: documentation/manual
+Renamed-From: manpage-not-compressed
+Explanation: Manual pages have to be installed compressed (using "<code>gzip -9n</code>").
+See-Also: debian-policy 12.1
diff --git a/tags/u/unconditional-use-of-dpkg-statoverride.tag b/tags/u/unconditional-use-of-dpkg-statoverride.tag
new file mode 100644
index 0000000..0fcfb03
--- /dev/null
+++ b/tags/u/unconditional-use-of-dpkg-statoverride.tag
@@ -0,0 +1,7 @@
+Tag: unconditional-use-of-dpkg-statoverride
+Severity: warning
+Check: maintainer-scripts/dpkg-statoverride
+Explanation: The maintainer named script appears to use <code>dpkg-statoverride --add</code>
+ without first calling <code>dpkg-statoverride --list</code> to check the current status.
+See-Also:
+ debian-policy 10.9.1
diff --git a/tags/u/undeclared-elf-prerequisites.tag b/tags/u/undeclared-elf-prerequisites.tag
new file mode 100644
index 0000000..fc02c4e
--- /dev/null
+++ b/tags/u/undeclared-elf-prerequisites.tag
@@ -0,0 +1,13 @@
+Tag: undeclared-elf-prerequisites
+Severity: warning
+Check: binaries/prerequisites
+Renamed-From:
+ missing-depends-line
+Explanation: The installation package contains an ELF executable or object file
+ with dynamic references but does not declare any package prerequisites. The
+ Depends field in the installation <code>control</code> file is empty.
+ .
+ This usually happens when <code>Depends</code> field in the source control file
+ does not mention <code>${shlibs:Depends}</code> or, when not using the
+ <code>dh</code> sequencer, there is no call to <code>dpkg-shlibdeps</code> in
+ <code>debian/rules</code>.
diff --git a/tags/u/undocumented-manual-page.tag b/tags/u/undocumented-manual-page.tag
new file mode 100644
index 0000000..fbd498c
--- /dev/null
+++ b/tags/u/undocumented-manual-page.tag
@@ -0,0 +1,17 @@
+Tag: undocumented-manual-page
+Severity: warning
+Check: documentation/manual
+Renamed-From: link-to-undocumented-manpage
+Explanation: Symbolic links to the undocumented(7) manual page may be provided
+ if no manual page is available, but that is deprecated.
+ .
+ The lack of a manual page is still a bug, and if at all possible you
+ should write one yourself.
+ .
+ For help with writing manual pages, refer to the
+ [Man-Page-HOWTO](http://www.schweikhardt.net/man_page_howto.html), the examples created
+ by <code>dh&lowbar;make</code>, or the
+ <code>/usr/share/doc/man-db/examples</code> directory.
+ If the package provides <code>--help</code> output, you might want to use
+ the <code>help2man</code> utility to generate a simple manual page.
+See-Also: debian-policy 12.1
diff --git a/tags/u/unexpected-conffile.tag b/tags/u/unexpected-conffile.tag
new file mode 100644
index 0000000..1f1df36
--- /dev/null
+++ b/tags/u/unexpected-conffile.tag
@@ -0,0 +1,10 @@
+Tag: unexpected-conffile
+Severity: error
+Check: conffiles
+Explanation: The conffiles control file lists this path, but you should
+ ship no such file.
+ .
+ This condition presently occurs only when <code>DEBIAN/conffiles</code>
+ includes the instruction <code>remove-on-upgrade</code>.
+See-Also:
+ deb-conffiles(5)
diff --git a/tags/u/unicode-trojan.tag b/tags/u/unicode-trojan.tag
new file mode 100644
index 0000000..23253d9
--- /dev/null
+++ b/tags/u/unicode-trojan.tag
@@ -0,0 +1,41 @@
+Tag: unicode-trojan
+Severity: pedantic
+Experimental: yes
+Check: files/unicode/trojan
+Explanation: The named text file contains a Unicode codepoint that has been
+ identified as a potential security risk.
+ .
+ There are two distinct attack vectors. One is homoglyphs in which text looks
+ confusingly similar to what a reader might expects, but is actually different.
+ The second is birectional attacks, in which the rendered text hides
+ potentially malicious characters.
+ .
+ Here are the relevant codepoints:
+ .
+ - ARABIC LETTER MARK (<code>U+061C</code>)
+ - LEFT-TO-RIGHT MARK (<code>U+200E</code>)
+ - RIGHT-TO-LEFT MARK (<code>U+200F</code>)
+ - LEFT-TO-RIGHT EMBEDDING (<code>U+202A</code>)
+ - RIGHT-TO-LEFT EMBEDDING (<code>U+202B</code>)
+ - POP DIRECTIONAL FORMATTING (<code>U+202C</code>)
+ - LEFT-TO-RIGHT OVERRIDE (<code>U+202D</code>)
+ - RIGHT-TO-LEFT OVERRIDE (<code>U+202E</code>)
+ - LEFT-TO-RIGHT ISOLATE (<code>U+2066</code>)
+ - RIGHT-TO-LEFT ISOLATE (<code>U+2067</code>)
+ - FIRST STRONG ISOLATE (<code>U+2068</code>)
+ - POP DIRECTIONAL ISOLATE (<code>U+2069</code>)
+ .
+ You can also run a similar check in your shell with that command:
+ .
+ <code>grep -r $'[\u061C\u200E\u200F\u202A\u202B\u202C\u202D\u202E\u2066\u2067\u2068\u2069]'</code>
+ .
+ The registered vulnerabilities are CVE-2021-42694 ("Homoglyph") and
+ CVE-2021-42574 ("Bidirectional Attack").
+See-Also:
+ https://nvd.nist.gov/vuln/detail/CVE-2021-42694,
+ https://nvd.nist.gov/vuln/detail/CVE-2021-42574,
+ https://www.trojansource.codes,
+ https://www.trojansource.codes/trojan-source.pdf,
+ https://en.wikipedia.org/wiki/Bidirectional_text,
+ https://www.ida.org/research-and-publications/publications/all/i/in/initial-analysis-of-underhanded-source-code,
+ https://www.ida.org/-/media/feature/publications/i/in/initial-analysis-of-underhanded-source-code/d-13166.ashx
diff --git a/tags/u/unknown-architecture.tag b/tags/u/unknown-architecture.tag
new file mode 100644
index 0000000..3076885
--- /dev/null
+++ b/tags/u/unknown-architecture.tag
@@ -0,0 +1,8 @@
+Tag: unknown-architecture
+Severity: warning
+Check: fields/architecture
+Explanation: This package claims to be for an unknown architecture. The
+ architecture should be one of the values supported by dpkg or one of the
+ special values "all" or "any". The special value "source" is only used
+ in &ast;.changes files and does not make sense in a binary package or a &ast;.dsc
+ file.
diff --git a/tags/u/unknown-conffile-instruction.tag b/tags/u/unknown-conffile-instruction.tag
new file mode 100644
index 0000000..acdd392
--- /dev/null
+++ b/tags/u/unknown-conffile-instruction.tag
@@ -0,0 +1,10 @@
+Tag: unknown-conffile-instruction
+Severity: error
+Check: conffiles
+Explanation: The instruction ahead of the file name in your
+ <code>debian/conffiles</code> file does not match any of the known values.
+ .
+ At the time of writing, the only supported value other than blank was
+ 'remove-on-upgrade'.
+See-Also:
+ deb-conffiles(5)
diff --git a/tags/u/unknown-control-file.tag b/tags/u/unknown-control-file.tag
new file mode 100644
index 0000000..40fcbb5
--- /dev/null
+++ b/tags/u/unknown-control-file.tag
@@ -0,0 +1,8 @@
+Tag: unknown-control-file
+Severity: warning
+Check: control-files
+Explanation: The package contains an unknown control file. Policy says that
+ putting additional files in the package control area is generally not a
+ good idea.
+See-Also:
+ debian-policy appendix-2.2
diff --git a/tags/u/unknown-control-interpreter.tag b/tags/u/unknown-control-interpreter.tag
new file mode 100644
index 0000000..6520135
--- /dev/null
+++ b/tags/u/unknown-control-interpreter.tag
@@ -0,0 +1,7 @@
+Tag: unknown-control-interpreter
+Severity: error
+Check: scripts
+Explanation: This package contains a maintainer script that uses an interpreter
+ that the Lintian maintainers have not heard of. This is usually a typo
+ for a common interpreter. If not, please file a wishlist bug on Lintian
+ so that the Lintian maintainers can add this interpreter to their list.
diff --git a/tags/u/unknown-copyright-format-uri.tag b/tags/u/unknown-copyright-format-uri.tag
new file mode 100644
index 0000000..ea63e1b
--- /dev/null
+++ b/tags/u/unknown-copyright-format-uri.tag
@@ -0,0 +1,6 @@
+Tag: unknown-copyright-format-uri
+Severity: pedantic
+Check: debian/copyright/dep5
+Explanation: The copyright file appears to intended as machine-readable, but Lintian
+ cannot recognize its format URI. It could be a typo for a common URI or a
+ syntax error in the first paragraph.
diff --git a/tags/u/unknown-debconf-priority.tag b/tags/u/unknown-debconf-priority.tag
new file mode 100644
index 0000000..81d5f44
--- /dev/null
+++ b/tags/u/unknown-debconf-priority.tag
@@ -0,0 +1,7 @@
+Tag: unknown-debconf-priority
+Severity: error
+Check: debian/debconf
+Explanation: The given maintainer script calls db&lowbar;input or db&lowbar;text with a
+ first argument that doesn't match one of the known priorities. The
+ supported priorities are low, medium, high, and critical.
+See-Also: debconf-devel(7)
diff --git a/tags/u/unknown-debian-watch-file-standard.tag b/tags/u/unknown-debian-watch-file-standard.tag
new file mode 100644
index 0000000..ecfb165
--- /dev/null
+++ b/tags/u/unknown-debian-watch-file-standard.tag
@@ -0,0 +1,9 @@
+Tag: unknown-debian-watch-file-standard
+Severity: warning
+Check: debian/watch/standard
+Renamed-From:
+ debian-watch-file-unknown-version
+Explanation: The <code>version=</code> line in the <code>debian/watch</code> file in this
+ package declares an unknown version. The currently known watch file
+ versions are 2, 3 and 4.
+See-Also: uscan(1)
diff --git a/tags/u/unknown-encoding-in-po-file.tag b/tags/u/unknown-encoding-in-po-file.tag
new file mode 100644
index 0000000..000c66d
--- /dev/null
+++ b/tags/u/unknown-encoding-in-po-file.tag
@@ -0,0 +1,5 @@
+Tag: unknown-encoding-in-po-file
+Severity: warning
+Check: debian/po-debconf
+Explanation: Encoding must be declared in PO files. Otherwise, charset
+ conversions cannot be performed.
diff --git a/tags/u/unknown-essential-value.tag b/tags/u/unknown-essential-value.tag
new file mode 100644
index 0000000..4aeedf0
--- /dev/null
+++ b/tags/u/unknown-essential-value.tag
@@ -0,0 +1,5 @@
+Tag: unknown-essential-value
+Severity: error
+Check: fields/essential
+Explanation: The only valid values for the Essential field are yes and no.
+See-Also: debian-policy 5.6.9
diff --git a/tags/u/unknown-field-in-templates.tag b/tags/u/unknown-field-in-templates.tag
new file mode 100644
index 0000000..8bbced5
--- /dev/null
+++ b/tags/u/unknown-field-in-templates.tag
@@ -0,0 +1,9 @@
+Tag: unknown-field-in-templates
+Severity: error
+Check: debian/debconf
+Explanation: The valid field types are presently <code>Template</code>,
+ <code>Type</code>, <code>Choices</code>, <code>Default</code>, and
+ <code>Description</code>.
+See-Also:
+ debconf-specification 3.1,
+ debconf-devel(7)
diff --git a/tags/u/unknown-field.tag b/tags/u/unknown-field.tag
new file mode 100644
index 0000000..f9a9dea
--- /dev/null
+++ b/tags/u/unknown-field.tag
@@ -0,0 +1,8 @@
+Tag: unknown-field
+Severity: warning
+Check: fields/unknown
+Renamed-From: unknown-field-in-dsc
+ unknown-field-in-control
+Explanation: See the Policy Manual for a list of the possible fields in
+ a package control files.
+See-Also: debian-policy 5.3, debian-policy 5.4
diff --git a/tags/u/unknown-file-in-debian-source.tag b/tags/u/unknown-file-in-debian-source.tag
new file mode 100644
index 0000000..c33a79f
--- /dev/null
+++ b/tags/u/unknown-file-in-debian-source.tag
@@ -0,0 +1,13 @@
+Tag: unknown-file-in-debian-source
+Severity: error
+Check: debian/source-dir
+Explanation: The source package contains a file in <code>debian/source/</code>
+ that Lintian does not know about. Currently the following files are recognized:
+ .
+ - <code>format</code>
+ - <code>include-binaries</code>
+ - <code>lintian-overrides</code>
+ - <code>options</code>
+ - <code>patch-header</code>
+ .
+ Perhaps the name of one of the those files was accidentally mistyped.
diff --git a/tags/u/unknown-file-in-python-module-directory.tag b/tags/u/unknown-file-in-python-module-directory.tag
new file mode 100644
index 0000000..a7690e6
--- /dev/null
+++ b/tags/u/unknown-file-in-python-module-directory.tag
@@ -0,0 +1,8 @@
+Tag: unknown-file-in-python-module-directory
+Severity: error
+Check: languages/python
+Explanation: This package installs the specified "non-Python" file in the
+ top-level of a Python library directory.
+ .
+ This was either a mistake and/or will likely to cause conflicts with other
+ packages.
diff --git a/tags/u/unknown-java-class-version.tag b/tags/u/unknown-java-class-version.tag
new file mode 100644
index 0000000..59826c5
--- /dev/null
+++ b/tags/u/unknown-java-class-version.tag
@@ -0,0 +1,5 @@
+Tag: unknown-java-class-version
+Severity: warning
+Check: languages/java
+Explanation: The package contains a Jar file with Java class files compiled for an
+ unknown Java version. The class file may be corrupt.
diff --git a/tags/u/unknown-locale-code.tag b/tags/u/unknown-locale-code.tag
new file mode 100644
index 0000000..e01c29f
--- /dev/null
+++ b/tags/u/unknown-locale-code.tag
@@ -0,0 +1,13 @@
+Tag: unknown-locale-code
+Severity: warning
+Check: files/locales
+See-Also: http://www.loc.gov/standards/iso639-2/php/code_list.php
+Explanation: The package appears to ship locales for a language but uses an
+ unknown locale code as a subdirectory of <code>/usr/share/locale</code>.
+ This usually results in users of the intended target language not
+ finding the locale. The language codes used in the locale directories
+ are those from the ISO 639-1 and ISO 639-2 standards, not those
+ usually used as TLDs (which are from the ISO 3166 standard).
+ .
+ It is possible that the language code was mistyped or incorrectly
+ guessed from the language's or country's name.
diff --git a/tags/u/unknown-meta-field-in-symbols-file.tag b/tags/u/unknown-meta-field-in-symbols-file.tag
new file mode 100644
index 0000000..2d9f01f
--- /dev/null
+++ b/tags/u/unknown-meta-field-in-symbols-file.tag
@@ -0,0 +1,7 @@
+Tag: unknown-meta-field-in-symbols-file
+Severity: error
+Check: debian/shlibs
+Explanation: The symbols control file contains an unknown meta-information field.
+ .
+ A list of currently supported fields may be found in deb-symbols(5).
+See-Also: deb-symbols(5)
diff --git a/tags/u/unknown-multi-arch-value.tag b/tags/u/unknown-multi-arch-value.tag
new file mode 100644
index 0000000..da5796a
--- /dev/null
+++ b/tags/u/unknown-multi-arch-value.tag
@@ -0,0 +1,5 @@
+Tag: unknown-multi-arch-value
+Severity: error
+Check: fields/multi-arch
+Explanation: The package has an unknown value in its Multi-Arch field. The
+ value must be one of "no", "same", "foreign" or "allowed".
diff --git a/tags/u/unknown-paragraph-in-dep5-copyright.tag b/tags/u/unknown-paragraph-in-dep5-copyright.tag
new file mode 100644
index 0000000..f17a481
--- /dev/null
+++ b/tags/u/unknown-paragraph-in-dep5-copyright.tag
@@ -0,0 +1,6 @@
+Tag: unknown-paragraph-in-dep5-copyright
+Severity: warning
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The machine-readable copyright file contains a paragraph that is neither
+ a standalone license paragraph nor a files paragraph.
diff --git a/tags/u/unknown-priority.tag b/tags/u/unknown-priority.tag
new file mode 100644
index 0000000..d22af52
--- /dev/null
+++ b/tags/u/unknown-priority.tag
@@ -0,0 +1,6 @@
+Tag: unknown-priority
+Severity: error
+Check: fields/priority
+Explanation: The "Priority:" field in this package's control file is not one of
+ the priorities defined in the Policy Manual.
+See-Also: debian-policy 2.5
diff --git a/tags/u/unknown-runtime-tests-feature.tag b/tags/u/unknown-runtime-tests-feature.tag
new file mode 100644
index 0000000..43df623
--- /dev/null
+++ b/tags/u/unknown-runtime-tests-feature.tag
@@ -0,0 +1,7 @@
+Tag: unknown-runtime-tests-feature
+Severity: pedantic
+Check: testsuite
+Explanation: A paragraph in debian/tests/control mentions a non-standard
+ value for the Features field. Though allowed, this may indicate an
+ error, as the value will be ignored.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/u/unknown-runtime-tests-field.tag b/tags/u/unknown-runtime-tests-field.tag
new file mode 100644
index 0000000..09bed92
--- /dev/null
+++ b/tags/u/unknown-runtime-tests-field.tag
@@ -0,0 +1,7 @@
+Tag: unknown-runtime-tests-field
+Severity: pedantic
+Check: testsuite
+Explanation: A paragraph in debian/tests/control mentions a non-standard
+ field. Though allowed, this may indicate an error, as the whole
+ paragraph will be ignored.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/u/unknown-runtime-tests-restriction.tag b/tags/u/unknown-runtime-tests-restriction.tag
new file mode 100644
index 0000000..208c40e
--- /dev/null
+++ b/tags/u/unknown-runtime-tests-restriction.tag
@@ -0,0 +1,7 @@
+Tag: unknown-runtime-tests-restriction
+Severity: pedantic
+Check: testsuite
+Explanation: A paragraph in debian/tests/control mentions a non-standard
+ value for the Restrictions field. Though allowed, this may indicate an
+ error, as the whole paragraph will be ignored.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/u/unknown-section.tag b/tags/u/unknown-section.tag
new file mode 100644
index 0000000..e8e1fd2
--- /dev/null
+++ b/tags/u/unknown-section.tag
@@ -0,0 +1,17 @@
+Tag: unknown-section
+Severity: warning
+Check: fields/section
+Explanation: The "Section:" field in this package's control file is not one of
+ the sections in use on the ftp archive. Valid sections are currently
+ admin, comm, cli-mono, database, debug, devel, doc,
+ editors, electronics, embedded, fonts, games, gnome, gnu-r,
+ gnustep, graphics, hamradio, haskell, httpd, interpreters,
+ java, javascript, kde, libdevel, libs, lisp, localization, kernel, mail,
+ math, misc, net, news, ocaml, oldlibs, otherosfs, perl,
+ php, python, ruby, rust, science, shells, sound, tex, text,
+ utils, vcs, video, web, x11, xfce, zope.
+ .
+ The section name should be preceded by either "contrib/", "non-free/"
+ or "non-free-firmware/" if the package is in the according archive
+ area.
+See-Also: debian-policy 2.4
diff --git a/tags/u/unknown-template-type.tag b/tags/u/unknown-template-type.tag
new file mode 100644
index 0000000..2745b4d
--- /dev/null
+++ b/tags/u/unknown-template-type.tag
@@ -0,0 +1,6 @@
+Tag: unknown-template-type
+Severity: error
+Check: debian/debconf
+Explanation: A "Type:" field in a templates file provided by this package uses an
+ unknown data type. Valid types are currently "string", "boolean", "select",
+ "multiselect", "note", "text", and "password".
diff --git a/tags/u/unknown-testsuite.tag b/tags/u/unknown-testsuite.tag
new file mode 100644
index 0000000..c5497e7
--- /dev/null
+++ b/tags/u/unknown-testsuite.tag
@@ -0,0 +1,7 @@
+Tag: unknown-testsuite
+Severity: warning
+Check: testsuite
+Explanation: The dsc file sets Testsuite to an unrecognised value. This
+ field is most probably copied by dpkg-source from Testsuite in
+ debian/control.
+See-Also: https://salsa.debian.org/ci-team/autopkgtest/tree/master/doc/README.package-tests.rst
diff --git a/tags/u/unknown-trigger.tag b/tags/u/unknown-trigger.tag
new file mode 100644
index 0000000..64e95f3
--- /dev/null
+++ b/tags/u/unknown-trigger.tag
@@ -0,0 +1,8 @@
+Tag: unknown-trigger
+Severity: error
+Check: triggers
+Explanation: The package has a trigger that Lintian does not recognise in its
+ control file.
+ .
+ The package may be uninstallable if dpkg does not support the trigger.
+See-Also: deb-triggers(5)
diff --git a/tags/u/unmerged-usr.tag b/tags/u/unmerged-usr.tag
new file mode 100644
index 0000000..ef65646
--- /dev/null
+++ b/tags/u/unmerged-usr.tag
@@ -0,0 +1,27 @@
+Tag: unmerged-usr
+Severity: classification
+Check: files/hierarchy/merged-usr
+Explanation: The named file is being installed in a legacy location.
+ Many competing distributions install this file under <code>/usr</code>.
+ Debian would like to do the same, but the best way to get there is
+ presently unclear.
+ .
+ Please coordinate with the release team before you change this path to
+ the new location. There is a growing body of evidence that uncoordinated
+ action by individual package maintainers or teams may not be the best
+ path forward.
+ .
+ Debian's Technical Committee voted on February 1, 2021 that the
+ <code>bookworm</code> release should support only the merged-usr root
+ filesystem layout, thus dropping support for the non-merged-usr layout.
+See-Also:
+ https://wiki.debian.org/UsrMerge,
+ https://wiki.debian.org/Teams/Dpkg/MergedUsr,
+ Bug#978636,
+ https://lists.debian.org/debian-devel/2020/11/#00232,
+ https://lists.debian.org/debian-devel/2020/12/#00386,
+ https://lists.debian.org/debian-devel-announce/2019/03/msg00001.html,
+ https://rusty.ozlabs.org/?p=236,
+ https://www.linux-magazine.com/Issues/2019/228/Debian-usr-Merge,
+ https://lwn.net/Articles/773342/,
+ https://www.freedesktop.org/wiki/Software/systemd/TheCaseForTheUsrMerge/
diff --git a/tags/u/unnecessary-source-date-epoch-assignment.tag b/tags/u/unnecessary-source-date-epoch-assignment.tag
new file mode 100644
index 0000000..8a0b015
--- /dev/null
+++ b/tags/u/unnecessary-source-date-epoch-assignment.tag
@@ -0,0 +1,11 @@
+Tag: unnecessary-source-date-epoch-assignment
+Severity: info
+Check: debian/rules
+Explanation: There is an assignment to a <code>SOURCE&lowbar;DATE&lowbar;EPOCH</code> variable in the
+ <code>debian/rules</code> file.
+ .
+ As of dpkg 1.18.8, this is no longer necessary as dpkg exports this
+ variable if it is not already set. However, you can also include
+ <code>/usr/share/dpkg/pkg-info.mk</code> or <code>/usr/share/dpkg/default.mk</code>
+ to ensure it is exported.
+See-Also: https://reproducible-builds.org/specs/source-date-epoch/
diff --git a/tags/u/unnecessary-team-upload.tag b/tags/u/unnecessary-team-upload.tag
new file mode 100644
index 0000000..bb8a698
--- /dev/null
+++ b/tags/u/unnecessary-team-upload.tag
@@ -0,0 +1,5 @@
+Tag: unnecessary-team-upload
+Severity: warning
+Check: nmu
+Explanation: The <code>debian/changelog</code> file refers to a "Team upload" but the
+ uploader is listed amongst the Maintainer/Uploaders.
diff --git a/tags/u/unnecessary-testsuite-autopkgtest-field.tag b/tags/u/unnecessary-testsuite-autopkgtest-field.tag
new file mode 100644
index 0000000..5803c10
--- /dev/null
+++ b/tags/u/unnecessary-testsuite-autopkgtest-field.tag
@@ -0,0 +1,10 @@
+Tag: unnecessary-testsuite-autopkgtest-field
+Severity: warning
+Check: testsuite
+Explanation: You do not need to specify a <code>Testsuite: autopkgtest</code> field if
+ a <code>debian/tests/control</code> file exists. It is automatically added by
+ dpkg-source(1) since dpkg 1.17.1.
+ .
+ Please remove this line from your <code>debian/control</code> file.
+Renamed-From:
+ unnecessary-testsuite-autopkgtest-header
diff --git a/tags/u/unpack-message-for-deb-control.tag b/tags/u/unpack-message-for-deb-control.tag
new file mode 100644
index 0000000..5674cab
--- /dev/null
+++ b/tags/u/unpack-message-for-deb-control.tag
@@ -0,0 +1,8 @@
+Tag: unpack-message-for-deb-control
+Severity: error
+Check: unpack
+Explanation: Unpacking the contents of the <code>control.tar.gz</code>
+ member of this installable package produced the listed error.
+ .
+ It probably means something is broken or the package was somehow
+ constructed in a strange way.
diff --git a/tags/u/unpack-message-for-deb-data.tag b/tags/u/unpack-message-for-deb-data.tag
new file mode 100644
index 0000000..815f7bb
--- /dev/null
+++ b/tags/u/unpack-message-for-deb-data.tag
@@ -0,0 +1,8 @@
+Tag: unpack-message-for-deb-data
+Severity: error
+Check: unpack
+Explanation: Unpacking the contents of the <code>data.tar.gz</code>
+ member of this installable package produced the listed error.
+ .
+ It probably means something is broken or the package was somehow
+ constructed in a strange way.
diff --git a/tags/u/unpack-message-for-orig.tag b/tags/u/unpack-message-for-orig.tag
new file mode 100644
index 0000000..f3cf0f1
--- /dev/null
+++ b/tags/u/unpack-message-for-orig.tag
@@ -0,0 +1,9 @@
+Tag: unpack-message-for-orig
+Severity: error
+Check: unpack
+Explanation: Unpacking the contents of this source package produced the
+ listed error.
+ .
+ It probably means something is broken or the package was somehow
+ constructed in a strange way. You may wish to report this as a bug
+ to upstream.
diff --git a/tags/u/unpack-message-for-source.tag b/tags/u/unpack-message-for-source.tag
new file mode 100644
index 0000000..1ff56f4
--- /dev/null
+++ b/tags/u/unpack-message-for-source.tag
@@ -0,0 +1,8 @@
+Tag: unpack-message-for-source
+Severity: info
+Check: unpack
+Explanation: Unpacking the contents of this source package produced the
+ listed error.
+ .
+ It probably means something is broken or the package was somehow
+ constructed in a strange way.
diff --git a/tags/u/unparsable-menu-item.tag b/tags/u/unparsable-menu-item.tag
new file mode 100644
index 0000000..238ce2b
--- /dev/null
+++ b/tags/u/unparsable-menu-item.tag
@@ -0,0 +1,9 @@
+Tag: unparsable-menu-item
+Severity: error
+Check: menu-format
+Explanation: A given <code>menu</code> file cannot be recognized as being a series of
+ <code>tag=value</code> pairs.
+ .
+ This condition is sometimes caused by unmatched double quotes.
+See-Also:
+ menu-manual 3.2
diff --git a/tags/u/unquoted-string-in-menu-item.tag b/tags/u/unquoted-string-in-menu-item.tag
new file mode 100644
index 0000000..e214b75
--- /dev/null
+++ b/tags/u/unquoted-string-in-menu-item.tag
@@ -0,0 +1,9 @@
+Tag: unquoted-string-in-menu-item
+Severity: warning
+Check: menu-format
+Explanation: The given <code>menu</code> item includes a tag with an unquoted string that
+ looks like <code>section=Games</code> instead of <code>section="Games"</code>.
+ .
+ That use is deprecated. Please quote the string.
+See-Also:
+ menu-manual 3.2
diff --git a/tags/u/unreleased-changelog-distribution.tag b/tags/u/unreleased-changelog-distribution.tag
new file mode 100644
index 0000000..f9cb8ae
--- /dev/null
+++ b/tags/u/unreleased-changelog-distribution.tag
@@ -0,0 +1,6 @@
+Tag: unreleased-changelog-distribution
+Severity: info
+Check: debian/changelog
+Explanation: The distribution in the latest Debian changelog entry indicates
+ that this package was not intended to be released yet.
+See-Also: Bug#873520
diff --git a/tags/u/unreleased-changes.tag b/tags/u/unreleased-changes.tag
new file mode 100644
index 0000000..c69896f
--- /dev/null
+++ b/tags/u/unreleased-changes.tag
@@ -0,0 +1,7 @@
+Tag: unreleased-changes
+Severity: error
+Check: fields/distribution
+Explanation: The distribution in the <code>Changes</code> field copied from
+ <code>debian/changelog</code> indicates that this package was not intended
+ to be released yet.
+See-Also: Bug#542747
diff --git a/tags/u/unstripped-binary-or-object.tag b/tags/u/unstripped-binary-or-object.tag
new file mode 100644
index 0000000..e74ca91
--- /dev/null
+++ b/tags/u/unstripped-binary-or-object.tag
@@ -0,0 +1,8 @@
+Tag: unstripped-binary-or-object
+Severity: error
+Check: binaries/debug-symbols
+See-Also: debian-policy 10.1, debian-policy 10.2
+Explanation: The package installs an unstripped binary or object file.
+ .
+ Please note, that shared libraries have to be stripped with the
+ <code>--strip-unneeded</code> option.
diff --git a/tags/u/unstripped-static-library.tag b/tags/u/unstripped-static-library.tag
new file mode 100644
index 0000000..0797bd5
--- /dev/null
+++ b/tags/u/unstripped-static-library.tag
@@ -0,0 +1,12 @@
+Tag: unstripped-static-library
+Severity: info
+Check: libraries/static
+Explanation: The package installs an unstripped static library.
+ .
+ Please note, that static libraries have to be stripped with the
+ <code>--strip-debug</code> option. You will probably also want to
+ use <code>--remove-section=.comment --remove-section=.note</code>
+ to avoid the static-library-has-unneeded-section tag.
+ .
+ <code>dh&lowbar;strip</code> (after debhelper/9.20150811) will do this
+ automatically for you.
diff --git a/tags/u/unsupported-source-format.tag b/tags/u/unsupported-source-format.tag
new file mode 100644
index 0000000..2d08af9
--- /dev/null
+++ b/tags/u/unsupported-source-format.tag
@@ -0,0 +1,6 @@
+Tag: unsupported-source-format
+Severity: error
+Check: fields/format
+Explanation: This package uses a different source package format than "1.0",
+ "3.0 (quilt)" or "3.0 (native)". Other package formats are supported by
+ dpkg-source, but they are not allowed in the Debian archive.
diff --git a/tags/u/untranslatable-debconf-templates.tag b/tags/u/untranslatable-debconf-templates.tag
new file mode 100644
index 0000000..752cd57
--- /dev/null
+++ b/tags/u/untranslatable-debconf-templates.tag
@@ -0,0 +1,17 @@
+Tag: untranslatable-debconf-templates
+Severity: error
+Check: debian/po-debconf
+Explanation: This package seems to be using debconf templates, but some
+ descriptions are not translatable. You should prepend an underscore
+ before every translatable field, as described in po-debconf(7). This
+ may mean that translators weren't properly warned about new strings.
+ .
+ Translators may be notified of changes using podebconf-report-po, for
+ example:
+ .
+ podebconf-report-po --call --withtranslators --deadline="+10 days" \
+ --languageteam
+ .
+ If the field is not intended for users to see, ensure the first line
+ of the description contains "for internal use".
+See-Also: debian-policy 3.9.1
diff --git a/tags/u/unused-build-dependency-on-cdbs.tag b/tags/u/unused-build-dependency-on-cdbs.tag
new file mode 100644
index 0000000..2eb35c2
--- /dev/null
+++ b/tags/u/unused-build-dependency-on-cdbs.tag
@@ -0,0 +1,5 @@
+Tag: unused-build-dependency-on-cdbs
+Severity: warning
+Check: debhelper
+Explanation: The package build-depends on cdbs, but does not include any cdbs
+ files in <code>debian/rules</code>.
diff --git a/tags/u/unused-debconf-template.tag b/tags/u/unused-debconf-template.tag
new file mode 100644
index 0000000..bfa218b
--- /dev/null
+++ b/tags/u/unused-debconf-template.tag
@@ -0,0 +1,23 @@
+Tag: unused-debconf-template
+Severity: info
+Check: debian/debconf
+Explanation: Templates which are not used by the package should be removed from
+ the templates file.
+ .
+ This will reduce the size of the templates database and prevent
+ translators from unnecessarily translating the template's text.
+ .
+ In some cases, the template is used but Lintian is unable to determine
+ this. Common causes are:
+ .
+ - the maintainer scripts embed a variable in the template name in
+ order to allow a template to be selected from a range of similar
+ templates (e.g. <code>db&lowbar;input low start&lowbar;$service&lowbar;at&lowbar;boot</code>)
+ .
+ - the template is not used by the maintainer scripts but is used by
+ a program in the package
+ .
+ - the maintainer scripts are written in perl. Lintian currently only
+ understands the shell script debconf functions.
+ .
+ If any of the above apply, please install an override.
diff --git a/tags/u/unused-entry-in-debian-source-include-binaries.tag b/tags/u/unused-entry-in-debian-source-include-binaries.tag
new file mode 100644
index 0000000..0180662
--- /dev/null
+++ b/tags/u/unused-entry-in-debian-source-include-binaries.tag
@@ -0,0 +1,9 @@
+Tag: unused-entry-in-debian-source-include-binaries
+Severity: info
+Check: debian/source/include-binaries
+Explanation: An entry in <code>debian/source/include-binaries</code> does not exist
+ in the patched source tree. Please remove the entry.
+ .
+ The format for the file is described in the manual page for
+ <code>dpkg-source</code>.
+See-Also: dpkg-source(1), Bug#528001, https://stackoverflow.com/questions/21057015/debian-include-binaries-format
diff --git a/tags/u/unused-license-paragraph-in-dep5-copyright.tag b/tags/u/unused-license-paragraph-in-dep5-copyright.tag
new file mode 100644
index 0000000..d3fa909
--- /dev/null
+++ b/tags/u/unused-license-paragraph-in-dep5-copyright.tag
@@ -0,0 +1,7 @@
+Tag: unused-license-paragraph-in-dep5-copyright
+Severity: info
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: The license paragraph in the machine-readable copyright file is not
+ referenced by any files paragraph. It could be a typo in the license name or
+ the license paragraph is simply not needed and can be removed.
diff --git a/tags/u/unused-override.tag b/tags/u/unused-override.tag
new file mode 100644
index 0000000..6eab89e
--- /dev/null
+++ b/tags/u/unused-override.tag
@@ -0,0 +1,21 @@
+Tag: unused-override
+Severity: info
+Show-Always: yes
+Check: lintian
+Explanation: Your package specifies the named override but there were no
+ tags that could have been silenced by it.
+ .
+ Maybe you fixed an underlying condition but forgot to remove the
+ override. It is also possible that the Lintian maintainers fixed a
+ false positive.
+ .
+ If the override is now unused, please remove it.
+ .
+ This tag is similar to <code>mismatched-override</code> except there a
+ tag could have been silenced if the context had matched.
+ .
+ Sometimes, overrides end up not being used because a tag appears
+ only on some architectures. In that case, overrides can be equipped
+ with an architecture qualifier.
+See-Also:
+ lintian-manual 2.4.3
diff --git a/tags/u/unusual-control-interpreter.tag b/tags/u/unusual-control-interpreter.tag
new file mode 100644
index 0000000..dc011b2
--- /dev/null
+++ b/tags/u/unusual-control-interpreter.tag
@@ -0,0 +1,7 @@
+Tag: unusual-control-interpreter
+Severity: warning
+Check: scripts
+Explanation: This package contains a control script for an interpreter that is
+ not normally used for control scripts. This is permissible but not
+ recommended. It makes it harder for other developers to understand your
+ package.
diff --git a/tags/u/unusual-documentation-package-name.tag b/tags/u/unusual-documentation-package-name.tag
new file mode 100644
index 0000000..2e4ff3e
--- /dev/null
+++ b/tags/u/unusual-documentation-package-name.tag
@@ -0,0 +1,9 @@
+Tag: unusual-documentation-package-name
+Severity: info
+Check: fields/package
+Explanation: The specified package appears to be a documentation package
+ that ends with the string "-docs". It is recommended that such
+ packages use the more usual "-doc" suffix instead.
+ .
+ Please remove the superfluous trailing "s" from the package name.
+See-Also: debian-policy 12.3
diff --git a/tags/u/unusual-interpreter.tag b/tags/u/unusual-interpreter.tag
new file mode 100644
index 0000000..957a3a2
--- /dev/null
+++ b/tags/u/unusual-interpreter.tag
@@ -0,0 +1,6 @@
+Tag: unusual-interpreter
+Severity: warning
+Check: scripts
+Explanation: This package contains a script for an interpreter that is not shipped
+ in the package and is not known to Lintian. It is possible that there is
+ a typo or the interpreter is not executable.
diff --git a/tags/u/unversioned-copyright-format-uri.tag b/tags/u/unversioned-copyright-format-uri.tag
new file mode 100644
index 0000000..47a8f35
--- /dev/null
+++ b/tags/u/unversioned-copyright-format-uri.tag
@@ -0,0 +1,9 @@
+Tag: unversioned-copyright-format-uri
+Severity: pedantic
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: Format URI of the machine-readable copyright file is not versioned.
+ .
+ Please use
+ <code>https://www.debian.org/doc/packaging-manuals/copyright-format/*version*/</code>
+ as the format URI instead.
diff --git a/tags/u/unwanted-path-too-specific.tag b/tags/u/unwanted-path-too-specific.tag
new file mode 100644
index 0000000..6a681fb
--- /dev/null
+++ b/tags/u/unwanted-path-too-specific.tag
@@ -0,0 +1,13 @@
+Tag: unwanted-path-too-specific
+Severity: warning
+Check: debian/not-installed
+Explanation: The file <code>debian/not-installed</code> lists a path that may
+ cause unexpected build failures. The path is too specific.
+ .
+ A common problem are entries starting with
+ <code>usr/lib/x86&lowbar;64-linux-gnu</code>. The sources will build fine
+ on <code>amd64</code> but not on other architectures, because the
+ paths to do exist.
+ .
+ Please consider using an asterisk, which will work fine.
+See-Also: Bug#961104, Bug#961960, Bug#961973
diff --git a/tags/u/update-debian-copyright.tag b/tags/u/update-debian-copyright.tag
new file mode 100644
index 0000000..05d2aa9
--- /dev/null
+++ b/tags/u/update-debian-copyright.tag
@@ -0,0 +1,6 @@
+Tag: update-debian-copyright
+Experimental: yes
+Severity: pedantic
+Check: debian/copyright/dep5
+Explanation: The most recent copyright year mentioned for files in <code>./debian</code>
+ lags behind the year in the timestamp for the most recent changelog entry.
diff --git a/tags/u/upload-has-backports-version-number.tag b/tags/u/upload-has-backports-version-number.tag
new file mode 100644
index 0000000..9d806af
--- /dev/null
+++ b/tags/u/upload-has-backports-version-number.tag
@@ -0,0 +1,5 @@
+Tag: upload-has-backports-version-number
+Severity: error
+Check: fields/distribution
+Explanation: The version number looks like a backport, but the upload's target
+ distribution is not a backport suite.
diff --git a/tags/u/uploader-name-missing.tag b/tags/u/uploader-name-missing.tag
new file mode 100644
index 0000000..bb9f18e
--- /dev/null
+++ b/tags/u/uploader-name-missing.tag
@@ -0,0 +1,6 @@
+Tag: uploader-name-missing
+Severity: error
+Check: fields/uploaders
+Explanation: The uploader field seems to contain just an email address. It must
+ contain the package uploader's name and email address.
+See-Also: debian-policy 5.6.3
diff --git a/tags/u/uploaders-in-orphan.tag b/tags/u/uploaders-in-orphan.tag
new file mode 100644
index 0000000..a6ec425
--- /dev/null
+++ b/tags/u/uploaders-in-orphan.tag
@@ -0,0 +1,7 @@
+Tag: uploaders-in-orphan
+Severity: error
+Check: nmu
+Renamed-From: orphaned-package-should-not-have-uploaders
+Explanation: Packages with their maintainer set to packages@qa.debian.org, i.e.
+ orphaned packages, should not have uploaders. Adopt the package properly if
+ you want to resume its maintenance.
diff --git a/tags/u/upstart-job-in-etc-init.d-not-registered-via-update-rc.d.tag b/tags/u/upstart-job-in-etc-init.d-not-registered-via-update-rc.d.tag
new file mode 100644
index 0000000..668da83
--- /dev/null
+++ b/tags/u/upstart-job-in-etc-init.d-not-registered-via-update-rc.d.tag
@@ -0,0 +1,12 @@
+Tag: upstart-job-in-etc-init.d-not-registered-via-update-rc.d
+Severity: warning
+Check: init-d
+Explanation: The package installs an upstart-job in <code>/etc/init.d</code>
+ which is not registered in the <code>postinst</code> script. On
+ non-upstart systems this is usually a bug, unless you omit the links
+ intentionally for some reason or create the links some other way.
+ .
+ This tag should only be emitted for vendors that do not use upstart
+ by default (such as Debian). If this tag is emitted by a vendor
+ using upstart (e.g. Ubuntu), it may be a misconfiguration of their
+ Lintian vendor profile.
diff --git a/tags/u/upstream-file-without-utf8-name.tag b/tags/u/upstream-file-without-utf8-name.tag
new file mode 100644
index 0000000..8726043
--- /dev/null
+++ b/tags/u/upstream-file-without-utf8-name.tag
@@ -0,0 +1,14 @@
+Tag: upstream-file-without-utf8-name
+Severity: info
+Check: files/names
+See-Also: debian-policy 10.10
+Explanation: The file name in the upstream source tree is not valid UTF-8.
+ There is probably not much a maintainer can do other than ask upstream
+ to package the sources differently.
+ .
+ Repacking may by an option, but it often has other drawbacks, such as
+ the loss of a cryptographic chain of custody.
+ .
+ Unlike other file names in Lintian, which are printed in UTF-8, the
+ attached reference shows the bytes used by the file system. Unprintable
+ characters may have been replaced.
diff --git a/tags/u/upstream-metadata-exists.tag b/tags/u/upstream-metadata-exists.tag
new file mode 100644
index 0000000..5ab6d8b
--- /dev/null
+++ b/tags/u/upstream-metadata-exists.tag
@@ -0,0 +1,5 @@
+Tag: upstream-metadata-exists
+Severity: classification
+Check: debian/upstream/metadata
+See-Also: https://dep-team.pages.debian.net/deps/dep12/
+Explanation: The sources contain a DEP 12 metadata file.
diff --git a/tags/u/upstream-metadata-field-unknown.tag b/tags/u/upstream-metadata-field-unknown.tag
new file mode 100644
index 0000000..9308651
--- /dev/null
+++ b/tags/u/upstream-metadata-field-unknown.tag
@@ -0,0 +1,10 @@
+Tag: upstream-metadata-field-unknown
+Severity: warning
+Check: debian/upstream/metadata
+Explanation: The named field in the upstream metadata provided with this
+ package is not part of the DEP-12 specification.
+ .
+ Please use only recognized field names.
+See-Also:
+ https://dep-team.pages.debian.net/deps/dep12/,
+ https://wiki.debian.org/UpstreamMetadata
diff --git a/tags/u/upstream-metadata-file-is-missing.tag b/tags/u/upstream-metadata-file-is-missing.tag
new file mode 100644
index 0000000..04dbf27
--- /dev/null
+++ b/tags/u/upstream-metadata-file-is-missing.tag
@@ -0,0 +1,16 @@
+Tag: upstream-metadata-file-is-missing
+Severity: pedantic
+Check: debian/upstream/metadata
+Experimental: yes
+See-Also: https://dep-team.pages.debian.net/deps/dep12/, https://wiki.debian.org/UpstreamMetadata
+Explanation: This source package is not Debian-native but it does not have a
+ <code>debian/upstream/metadata</code> file.
+ .
+ The Upstream MEtadata GAthered with YAml (UMEGAYA) project is an effort
+ to collect meta-information about upstream projects from any source
+ package. This file is in YAML format and it is used in to feed the data
+ in the UltimateDebianDatabase. For example, it can contains the way the
+ authors want their software be cited in publications and some
+ bibliographic references about the software.
+ .
+ Please add a <code>debian/upstream/metadata</code> file.
diff --git a/tags/u/upstream-metadata-in-native-source.tag b/tags/u/upstream-metadata-in-native-source.tag
new file mode 100644
index 0000000..acac795
--- /dev/null
+++ b/tags/u/upstream-metadata-in-native-source.tag
@@ -0,0 +1,15 @@
+Tag: upstream-metadata-in-native-source
+Severity: warning
+Check: debian/upstream/metadata
+See-Also: https://dep-team.pages.debian.net/deps/dep12/, https://wiki.debian.org/UpstreamMetadata
+Explanation: This source package is Debian-native and has a
+ <code>debian/upstream/metadata</code> file.
+ .
+ The Upstream MEtadata GAthered with YAml (UMEGAYA) project is an effort
+ to collect meta-information about upstream projects from any source
+ package. This file is in YAML format and it is used in to feed the data
+ in the UltimateDebianDatabase. For example, it can contains the way the
+ authors want their software be cited in publications and some
+ bibliographic references about the software.
+ .
+ Please remove the <code>debian/upstream/metadata</code> file.
diff --git a/tags/u/upstream-metadata-is-not-a-file.tag b/tags/u/upstream-metadata-is-not-a-file.tag
new file mode 100644
index 0000000..b18f20f
--- /dev/null
+++ b/tags/u/upstream-metadata-is-not-a-file.tag
@@ -0,0 +1,7 @@
+Tag: upstream-metadata-is-not-a-file
+Severity: warning
+Check: debian/upstream/metadata
+See-Also: https://dep-team.pages.debian.net/deps/dep12/
+Explanation: The DEP 12 metadata file in the source is not readable. This
+ could be caused by a dangling symlink, or that the name is used
+ by some non-file directory entry.
diff --git a/tags/u/upstream-metadata-missing-bug-tracking.tag b/tags/u/upstream-metadata-missing-bug-tracking.tag
new file mode 100644
index 0000000..15bae30
--- /dev/null
+++ b/tags/u/upstream-metadata-missing-bug-tracking.tag
@@ -0,0 +1,10 @@
+Tag: upstream-metadata-missing-bug-tracking
+Severity: info
+Check: debian/upstream/metadata
+See-Also: https://dep-team.pages.debian.net/deps/dep12/
+Explanation: The DEP 12 metadata file does not specify any upstream bug
+ tracking information (ie. the <code>Bug-Database</code> or
+ <code>Bug-Submit</code> fields are missing).
+ .
+ The upstream metadata can be found in the source package in the
+ file <code>debian/upstream/metadata</code>.
diff --git a/tags/u/upstream-metadata-missing-repository.tag b/tags/u/upstream-metadata-missing-repository.tag
new file mode 100644
index 0000000..75f1224
--- /dev/null
+++ b/tags/u/upstream-metadata-missing-repository.tag
@@ -0,0 +1,10 @@
+Tag: upstream-metadata-missing-repository
+Severity: info
+Check: debian/upstream/metadata
+See-Also: https://dep-team.pages.debian.net/deps/dep12/
+Explanation: The DEP 12 metadata file does not specify the location of
+ upstream's version control repository (ie. the <code>Repository</code>
+ and <code>Repository-Browse</code> fields are missing).
+ .
+ The upstream metadata can be found in the source package in the
+ file <code>debian/upstream/metadata</code>.
diff --git a/tags/u/upstream-metadata-not-yaml-mapping.tag b/tags/u/upstream-metadata-not-yaml-mapping.tag
new file mode 100644
index 0000000..a03f216
--- /dev/null
+++ b/tags/u/upstream-metadata-not-yaml-mapping.tag
@@ -0,0 +1,12 @@
+Tag: upstream-metadata-not-yaml-mapping
+Severity: warning
+Check: debian/upstream/metadata
+See-Also: https://dep-team.pages.debian.net/deps/dep12/
+Explanation: The DEP 12 metadata file is not well formed. The document
+ level must be a YAML mapping:
+ .
+ Some-Field: some-value
+ Another-Field: another-value
+ .
+ Sometimes, the fields are mistakenly prefaced with a hyphen, which
+ makes them a YAML sequence. In that case, please remove the hyphens.
diff --git a/tags/u/upstream-metadata-yaml-invalid.tag b/tags/u/upstream-metadata-yaml-invalid.tag
new file mode 100644
index 0000000..fcb1c50
--- /dev/null
+++ b/tags/u/upstream-metadata-yaml-invalid.tag
@@ -0,0 +1,6 @@
+Tag: upstream-metadata-yaml-invalid
+Severity: warning
+Check: debian/upstream/metadata
+See-Also: https://dep-team.pages.debian.net/deps/dep12/
+Explanation: The DEP 12 metadata file is not well formed. The formatting
+ need to be adjusted to match the YAML specification.
diff --git a/tags/u/upstream-metadata.tag b/tags/u/upstream-metadata.tag
new file mode 100644
index 0000000..6a1b737
--- /dev/null
+++ b/tags/u/upstream-metadata.tag
@@ -0,0 +1,6 @@
+Tag: upstream-metadata
+Severity: classification
+Check: debian/upstream/metadata
+Explanation: The DEP 12 metadata contains the field and the value indicated.
+See-Also:
+ https://dep-team.pages.debian.net/deps/dep12/
diff --git a/tags/u/use-of-compat-symlink.tag b/tags/u/use-of-compat-symlink.tag
new file mode 100644
index 0000000..1471a71
--- /dev/null
+++ b/tags/u/use-of-compat-symlink.tag
@@ -0,0 +1,7 @@
+Tag: use-of-compat-symlink
+Severity: error
+Check: files/hierarchy/standard
+Explanation: This package uses a directory that, according to the Filesystem
+ Hierarchy Standard, should exist only as a compatibility symlink.
+ Packages should not traverse such symlinks when installing files, they
+ should use the standard directories instead.
diff --git a/tags/u/useless-autogenerated-doxygen-file.tag b/tags/u/useless-autogenerated-doxygen-file.tag
new file mode 100644
index 0000000..2295333
--- /dev/null
+++ b/tags/u/useless-autogenerated-doxygen-file.tag
@@ -0,0 +1,12 @@
+Tag: useless-autogenerated-doxygen-file
+Severity: info
+Check: documentation
+Explanation: The package appears to ship files
+ from doxygen generated documentation used only
+ for internal purpose of doxygen.
+ .
+ These files are only needed to speed up the
+ regeneration of the output when this is done
+ in an incremental fashion (i.e. without first deleting
+ all output files), and are not needed for
+ reading the documentation.
diff --git a/tags/u/useless-autoreconf-build-depends.tag b/tags/u/useless-autoreconf-build-depends.tag
new file mode 100644
index 0000000..5235496
--- /dev/null
+++ b/tags/u/useless-autoreconf-build-depends.tag
@@ -0,0 +1,8 @@
+Tag: useless-autoreconf-build-depends
+Severity: warning
+Check: debhelper
+Explanation: Since compatibility level 10, debhelper enables the <code>autoreconf</code>
+ sequence by default.
+ .
+ It is therefore not necessary to specify build-dependencies on
+ <code>dh-autoreconf</code> or <code>autotools-dev</code> and they can be removed.
diff --git a/tags/u/useless-whatis-entry.tag b/tags/u/useless-whatis-entry.tag
new file mode 100644
index 0000000..102cd1e
--- /dev/null
+++ b/tags/u/useless-whatis-entry.tag
@@ -0,0 +1,16 @@
+Tag: useless-whatis-entry
+Severity: warning
+Check: documentation/manual
+Renamed-From: manpage-has-useless-whatis-entry
+Explanation: The whatis entry for this manual page (the brief description found
+ in the NAME section) is of the form:
+ .
+ program - manual page for program
+ .
+ This conveys no information about what the program is for and is
+ repetitive. The short description should contain brief information about
+ what the program is for to aid in searching with apropos and similar
+ programs.
+ .
+ If this manual page was generated by help2man, use the -n option to
+ provide a more meaningful description.
diff --git a/tags/u/uses-debhelper-compat-file.tag b/tags/u/uses-debhelper-compat-file.tag
new file mode 100644
index 0000000..c7ecd31
--- /dev/null
+++ b/tags/u/uses-debhelper-compat-file.tag
@@ -0,0 +1,15 @@
+Tag: uses-debhelper-compat-file
+Severity: pedantic
+Check: debhelper
+Explanation: This package uses a <code>debian/compat</code> file to denote the
+ required debhelper compatibility number.
+ .
+ However, debhelper has replaced <code>debian/compat</code> with the
+ <code>debhelper-compat</code> virtual package for most circumstances.
+ .
+ Packages not using an experimental or beta compatibility level should
+ Build-Depend on the <code>debhelper-compat</code> virtual package, for
+ example:
+ .
+ Build-Depends: debhelper-compat (= 13)
+See-Also: debhelper(7)
diff --git a/tags/u/uses-deprecated-adttmp.tag b/tags/u/uses-deprecated-adttmp.tag
new file mode 100644
index 0000000..46416d0
--- /dev/null
+++ b/tags/u/uses-deprecated-adttmp.tag
@@ -0,0 +1,7 @@
+Tag: uses-deprecated-adttmp
+Severity: warning
+Check: testsuite
+Explanation: The specified test file appears to use the deprecated
+ <code>ADTTMP</code> variable.
+ .
+ Please replace this with <code>AUTOPKGTEST&lowbar;TMP</code>.
diff --git a/tags/u/uses-deprecated-compression-for-data-tarball.tag b/tags/u/uses-deprecated-compression-for-data-tarball.tag
new file mode 100644
index 0000000..3fdb6b3
--- /dev/null
+++ b/tags/u/uses-deprecated-compression-for-data-tarball.tag
@@ -0,0 +1,12 @@
+Tag: uses-deprecated-compression-for-data-tarball
+Severity: error
+Check: deb-format
+Explanation: The data portion of this binary package uses a deprecated compression
+ format. Although dpkg will support extracting such binary packages for
+ the foreseeable future, creating them will eventually be disallowed. A
+ warning is emitted for lzma since dpkg 1.16.4, and for bzip2 since dpkg
+ 1.17.7.
+ .
+ For lzma, xz is the direct replacement. For bzip2 either gzip or xz can
+ be used as a substitute, depending on the wanted properties: gzip for
+ maximum compatibility and speed, and xz for maximum compression ratio.
diff --git a/tags/u/uses-dpkg-database-directly.tag b/tags/u/uses-dpkg-database-directly.tag
new file mode 100644
index 0000000..d00f4b5
--- /dev/null
+++ b/tags/u/uses-dpkg-database-directly.tag
@@ -0,0 +1,13 @@
+Tag: uses-dpkg-database-directly
+Severity: warning
+Check: files/contents
+Explanation: The listed file or maintainer script appears to access the
+ internal database(s) of dpkg.
+ .
+ The entire dpkg database, its layout and files are an internal
+ interface and no program or package should be accessing it, other
+ than dpkg itself and the suite of dpkg tools.
+ .
+ Whilst the files may be editable by an admin, that's a supported (but
+ unrecommended) feature reserved for humans and not for automatic tools.
+See-Also: https://wiki.debian.org/DpkgConffileHandling
diff --git a/tags/u/uses-implicit-await-trigger.tag b/tags/u/uses-implicit-await-trigger.tag
new file mode 100644
index 0000000..143f072
--- /dev/null
+++ b/tags/u/uses-implicit-await-trigger.tag
@@ -0,0 +1,19 @@
+Tag: uses-implicit-await-trigger
+Severity: warning
+Check: triggers
+Explanation: The listed trigger is present in the control file of the package.
+ The trigger is an <code>await</code> trigger, which may not be obvious from its name.
+ .
+ The <code>await</code> triggers place rather strong requirements on <code>dpkg</code> that often lead
+ to trigger cycles due to changes in other packages.
+ .
+ If the package does not need the guarantees that <code>dpkg</code> provides to <code>await</code>
+ triggers, please use the <code>-noawait</code> variant of the trigger. This is often
+ the case for packages that use the trigger to compile a form of cache.
+ .
+ If the package does need the guarantees provided by <code>dpkg</code>, then please
+ document the rationale in a comment above the trigger and use the
+ <code>-await</code> variant of the trigger to avoid this warning.
+See-Also:
+ deb-triggers(5),
+ Bug#774559
diff --git a/tags/u/uses-no-compression-for-control-tarball.tag b/tags/u/uses-no-compression-for-control-tarball.tag
new file mode 100644
index 0000000..bc768a7
--- /dev/null
+++ b/tags/u/uses-no-compression-for-control-tarball.tag
@@ -0,0 +1,8 @@
+Tag: uses-no-compression-for-control-tarball
+Severity: error
+Check: deb-format
+See-Also: deb(5)
+Explanation: The control portion of this binary package uses a non-compressed
+ format. Although dpkg will support extracting such binary packages
+ since dpkg 1.10.24, creating them is not advised except in special
+ cases.
diff --git a/tags/u/uses-no-compression-for-data-tarball.tag b/tags/u/uses-no-compression-for-data-tarball.tag
new file mode 100644
index 0000000..e94b582
--- /dev/null
+++ b/tags/u/uses-no-compression-for-data-tarball.tag
@@ -0,0 +1,11 @@
+Tag: uses-no-compression-for-data-tarball
+Severity: error
+Check: deb-format
+See-Also: deb(5)
+Explanation: The data portion of this binary package uses a non-compressed
+ format. Although dpkg will support extracting such binary packages
+ since dpkg 1.10.24, creating them is not advised except in special
+ cases.
+ .
+ Except if data is non-compressible, use gzip for
+ maximum compatibility and speed, and xz for maximum compression ratio.
diff --git a/tags/u/uses-pdm-cli.tag b/tags/u/uses-pdm-cli.tag
new file mode 100644
index 0000000..4b28f7d
--- /dev/null
+++ b/tags/u/uses-pdm-cli.tag
@@ -0,0 +1,8 @@
+Tag: uses-pdm-cli
+Severity: info
+Check: languages/python
+Explanation: The source declares <code>python3-pdm</code> as a build prerequisite,
+ but that is a command-line interface (CLI) tool.
+ .
+ Should <code>pdm</code> be required to build these sources, please declare the
+ prerequisite <code>python3-pdm-pep517</code> instead.
diff --git a/tags/u/uses-poetry-cli.tag b/tags/u/uses-poetry-cli.tag
new file mode 100644
index 0000000..97ab42c
--- /dev/null
+++ b/tags/u/uses-poetry-cli.tag
@@ -0,0 +1,8 @@
+Tag: uses-poetry-cli
+Severity: info
+Check: languages/python
+Explanation: The source declares <code>python3-poetry</code> as a build prerequisite,
+ but that is a command-line interface (CLI) tool.
+ .
+ Should <code>poetry</code> be required to build these sources, please declare the
+ prerequisite <code>python3-poetry-core</code> instead.
diff --git a/tags/u/uses-python-distutils.tag b/tags/u/uses-python-distutils.tag
new file mode 100644
index 0000000..f4712d9
--- /dev/null
+++ b/tags/u/uses-python-distutils.tag
@@ -0,0 +1,12 @@
+Tag: uses-python-distutils
+Severity: info
+Check: languages/python/distutils
+Explanation: This package uses the Python distutils module.
+ .
+ In Python 3.10 and 3.11, distutils has been formally marked as deprecated. Code
+ that imports distutils will no longer work from Python 3.12.
+ .
+ Please prepare for this deprecation and migrate away from the Python distutils
+ module.
+ .
+ See-Also: https://peps.python.org/pep-0632
diff --git a/tags/u/using-first-person-in-description.tag b/tags/u/using-first-person-in-description.tag
new file mode 100644
index 0000000..9dd6022
--- /dev/null
+++ b/tags/u/using-first-person-in-description.tag
@@ -0,0 +1,12 @@
+Tag: using-first-person-in-description
+Severity: info
+Check: fields/description
+Explanation: You should avoid the use of first person ("I will do this..." or
+ "We recommend..."). The computer is not a person and the description
+ does not speak for the maintainer or maintainers. Instead, use a more
+ neutral construction and try to rephrase into factual statements about
+ the package.
+ .
+ For example, rather than saying "I don't recommend this package if you
+ are short on memory," say something like "this package is not suitable
+ for low-memory systems."
diff --git a/tags/u/using-first-person-in-templates.tag b/tags/u/using-first-person-in-templates.tag
new file mode 100644
index 0000000..67ad8b9
--- /dev/null
+++ b/tags/u/using-first-person-in-templates.tag
@@ -0,0 +1,11 @@
+Tag: using-first-person-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: You should avoid the use of first person ("I will do this..." or
+ "We recommend..."). The computer is not a person and the Debconf
+ templates do not speak for the Debian developers. You should use neutral
+ construction and often the passive form.
+ .
+ If this template is only used internally by the package and not displayed
+ to the user, put "for internal use" in the short description.
+See-Also: developer-reference 6.5.2.5
diff --git a/tags/u/using-imperative-form-in-templates.tag b/tags/u/using-imperative-form-in-templates.tag
new file mode 100644
index 0000000..b460b8f
--- /dev/null
+++ b/tags/u/using-imperative-form-in-templates.tag
@@ -0,0 +1,7 @@
+Tag: using-imperative-form-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: Do not use useless imperative constructions such as "Please choose...",
+ "Enter...". The interface will make it obvious that the user needs to
+ choose or enter something.
+See-Also: developer-reference 6.5.4.2
diff --git a/tags/u/using-question-in-extended-description-in-templates.tag b/tags/u/using-question-in-extended-description-in-templates.tag
new file mode 100644
index 0000000..01635f7
--- /dev/null
+++ b/tags/u/using-question-in-extended-description-in-templates.tag
@@ -0,0 +1,9 @@
+Tag: using-question-in-extended-description-in-templates
+Severity: warning
+Check: debian/debconf
+Explanation: The extended description of a debconf template should never include
+ a question.
+ .
+ If this template is only used internally by the package and not displayed
+ to the user, put "for internal use" in the short description.
+See-Also: developer-reference 6.5.3.2
diff --git a/tags/u/usr-share-doc-symlink-points-outside-of-usr-share-doc.tag b/tags/u/usr-share-doc-symlink-points-outside-of-usr-share-doc.tag
new file mode 100644
index 0000000..7526291
--- /dev/null
+++ b/tags/u/usr-share-doc-symlink-points-outside-of-usr-share-doc.tag
@@ -0,0 +1,6 @@
+Tag: usr-share-doc-symlink-points-outside-of-usr-share-doc
+Severity: error
+Check: debian/copyright
+Explanation: The /usr/share/doc/*pkg* symbolic link is pointing to a directory
+ outside of <code>/usr/share/doc</code>.
+See-Also: debian-policy 12.5
diff --git a/tags/u/usr-share-doc-symlink-to-foreign-package.tag b/tags/u/usr-share-doc-symlink-to-foreign-package.tag
new file mode 100644
index 0000000..b0c04dc
--- /dev/null
+++ b/tags/u/usr-share-doc-symlink-to-foreign-package.tag
@@ -0,0 +1,13 @@
+Tag: usr-share-doc-symlink-to-foreign-package
+Severity: error
+Check: debian/copyright
+Explanation: If the package installs a symbolic link
+ <code>/usr/share/doc/*pkg1* -&gt; *pkg2*</code>, then *pkg1*
+ and *pkg2* must both come from the same source package.
+ .
+ The best solution is probably to stop symlinking the
+ <code>/usr/share/doc</code> directory for this package and instead include a
+ real /usr/share/doc/*pkg1* directory within *pkg1* with the
+ appropriate contents (such as the <code>copyright</code> and
+ <code>changelog.Debian.gz</code> files).
+See-Also: debian-policy 12.5
diff --git a/tags/u/usr-share-doc-symlink-without-dependency.tag b/tags/u/usr-share-doc-symlink-without-dependency.tag
new file mode 100644
index 0000000..7c5f794
--- /dev/null
+++ b/tags/u/usr-share-doc-symlink-without-dependency.tag
@@ -0,0 +1,21 @@
+Tag: usr-share-doc-symlink-without-dependency
+Severity: error
+Check: debian/copyright
+Explanation: If the package installs a symbolic link
+ <code>/usr/share/doc/*pkg1* -&gt; *pkg2*</code>, then *pkg1*
+ must depend on *pkg2* directory, with the same version as
+ *pkg1*.
+ .
+ Adding the dependency just to fix this bug is often not a good solution.
+ Usually, it's better to include a real <code>/usr/share/doc/*pkg1*</code>
+ directory within *pkg1* and copy the copyright file into that
+ directory.
+ .
+ Transitive dependencies are not allowed here. In other words, if the
+ documentation directory is shipped in *pkg3* and *pkg1* depends
+ on *pkg2*, which in turn depends on *pkg3*, that's still an
+ error. Copyright file extractors are not required to go more than one
+ level deep when resolving dependencies. Each package should have a
+ direct dependency on the package which includes its documentation
+ directory.
+See-Also: debian-policy 12.5
diff --git a/tags/v/vcs-browser-links-to-empty-view.tag b/tags/v/vcs-browser-links-to-empty-view.tag
new file mode 100644
index 0000000..aedcdb7
--- /dev/null
+++ b/tags/v/vcs-browser-links-to-empty-view.tag
@@ -0,0 +1,7 @@
+Tag: vcs-browser-links-to-empty-view
+Severity: warning
+Check: fields/vcs
+Explanation: The VCS-Browser links to an empty view of the repository due to it
+ including a suffix such as <code>?rev=0&sc=0</code>.
+ .
+ You should remove this suffix from the field.
diff --git a/tags/v/vcs-field-bitrotted.tag b/tags/v/vcs-field-bitrotted.tag
new file mode 100644
index 0000000..905a602
--- /dev/null
+++ b/tags/v/vcs-field-bitrotted.tag
@@ -0,0 +1,9 @@
+Tag: vcs-field-bitrotted
+Severity: warning
+Check: fields/vcs
+Explanation: The VCS-&ast; field uses an address which no longer works. Please
+ update it to use the current canonical URI instead.
+ .
+ Note that this check is based on a list of known URIs or/and
+ patterns. Lintian did not send an HTTP request to the URI to test
+ this.
diff --git a/tags/v/vcs-field-has-unexpected-spaces.tag b/tags/v/vcs-field-has-unexpected-spaces.tag
new file mode 100644
index 0000000..63c7c5a
--- /dev/null
+++ b/tags/v/vcs-field-has-unexpected-spaces.tag
@@ -0,0 +1,11 @@
+Tag: vcs-field-has-unexpected-spaces
+Severity: warning
+Check: fields/vcs
+Explanation: The VCS-&ast; field contains more spaces than expected or spaces at
+ places where they were not expected. Where possible, escape valid
+ spaces in URIs to avoid any ambiguity with respect to possible future
+ additional optional fields.
+ .
+ This may be caused by incorrect use of the <code>-b</code> branch
+ separator.
+See-Also: debian-policy 5.6.26
diff --git a/tags/v/vcs-field-mismatch.tag b/tags/v/vcs-field-mismatch.tag
new file mode 100644
index 0000000..5b12288
--- /dev/null
+++ b/tags/v/vcs-field-mismatch.tag
@@ -0,0 +1,9 @@
+Tag: vcs-field-mismatch
+Severity: warning
+Check: fields/vcs
+Explanation: The VCS-&ast; field name appears to mismatch the target URI.
+ .
+ You might have moved the Debian packaging to another version control
+ system but have not updated the field name. For example, using the
+ Vcs-Svn field to point to a Git repository now hosted on
+ salsa.debian.org.
diff --git a/tags/v/vcs-field-not-canonical.tag b/tags/v/vcs-field-not-canonical.tag
new file mode 100644
index 0000000..03acacf
--- /dev/null
+++ b/tags/v/vcs-field-not-canonical.tag
@@ -0,0 +1,10 @@
+Tag: vcs-field-not-canonical
+Severity: info
+Check: fields/vcs
+Explanation: The VCS-&ast; field contains an uncanonical URI. Please update to use
+ the current canonical URI instead. This reduces the network bandwidth used
+ and makes debcheckout work independent of the port forwarding and
+ redirections properly working.
+ .
+ Note that this check is based on a list of known URIs. Lintian did not
+ send an HTTP request to the URI to test this.
diff --git a/tags/v/vcs-field-uses-insecure-uri.tag b/tags/v/vcs-field-uses-insecure-uri.tag
new file mode 100644
index 0000000..489e28f
--- /dev/null
+++ b/tags/v/vcs-field-uses-insecure-uri.tag
@@ -0,0 +1,11 @@
+Tag: vcs-field-uses-insecure-uri
+Severity: info
+Check: fields/vcs
+Explanation: The Vcs-&ast; field uses an unencrypted transport protocol for the
+ URI. It is recommended to use a secure transport such as HTTPS for
+ anonymous read-only access.
+ .
+ Note that you can often just exchange e.g. git:// with https:// for
+ repositories. Though, in some cases (bzr's "lp:" or CVS's pserver) it
+ might not be possible to use an alternative url and still have a
+ working (anonymous read-only) repository.
diff --git a/tags/v/vcs-field-uses-not-recommended-uri-format.tag b/tags/v/vcs-field-uses-not-recommended-uri-format.tag
new file mode 100644
index 0000000..b029573
--- /dev/null
+++ b/tags/v/vcs-field-uses-not-recommended-uri-format.tag
@@ -0,0 +1,10 @@
+Tag: vcs-field-uses-not-recommended-uri-format
+Severity: warning
+Check: fields/vcs
+Explanation: The VCS-&ast; field uses a URI which doesn't match the recommended
+ format, but still looks valid. Examples for not recommended URI formats
+ are protocols that require authentication (like SSH). Instead where
+ possible you should provide a URI that is accessible for everyone
+ without authentication.
+ .
+ This renders debcheckout(1) unusable in these cases.
diff --git a/tags/v/vcs-field-uses-unknown-uri-format.tag b/tags/v/vcs-field-uses-unknown-uri-format.tag
new file mode 100644
index 0000000..c016a2b
--- /dev/null
+++ b/tags/v/vcs-field-uses-unknown-uri-format.tag
@@ -0,0 +1,5 @@
+Tag: vcs-field-uses-unknown-uri-format
+Severity: warning
+Check: fields/vcs
+Explanation: The VCS-&ast; field uses an URI which doesn't match any known format.
+ You might have forgotten the protocol before the hostname.
diff --git a/tags/v/vcs-fields-use-more-than-one-vcs.tag b/tags/v/vcs-fields-use-more-than-one-vcs.tag
new file mode 100644
index 0000000..f89a10b
--- /dev/null
+++ b/tags/v/vcs-fields-use-more-than-one-vcs.tag
@@ -0,0 +1,4 @@
+Tag: vcs-fields-use-more-than-one-vcs
+Severity: info
+Check: fields/vcs
+Explanation: The Vcs-&ast; fields mix more than one version control system.
diff --git a/tags/v/vcs-git-uses-invalid-user-uri.tag b/tags/v/vcs-git-uses-invalid-user-uri.tag
new file mode 100644
index 0000000..0c9ab6b
--- /dev/null
+++ b/tags/v/vcs-git-uses-invalid-user-uri.tag
@@ -0,0 +1,8 @@
+Tag: vcs-git-uses-invalid-user-uri
+Severity: warning
+Check: fields/vcs
+Explanation: The Vcs-Git field is pointing to a personal repository using
+ a git://(git|anonscm).debian.org/~$LOGIN/$PRJ.git style URI. This is not
+ recommended since the repository this points is not automatically updated
+ when pushing to the personal repository. The recommended URI for anonymous
+ access is https://anonscm.debian.org/git/users/$LOGIN/$PRJ.git.
diff --git a/tags/v/vcs-obsolete-in-debian-infrastructure.tag b/tags/v/vcs-obsolete-in-debian-infrastructure.tag
new file mode 100644
index 0000000..5bd8448
--- /dev/null
+++ b/tags/v/vcs-obsolete-in-debian-infrastructure.tag
@@ -0,0 +1,16 @@
+Tag: vcs-obsolete-in-debian-infrastructure
+Severity: warning
+Check: fields/vcs
+Explanation: The specified Vcs-&ast; field points to an area within the &ast;.debian.org
+ infrastructure but refers to a version control system that has been
+ deprecated.
+ .
+ After 1st May 2018, Debian ceased to offer hosting for any version
+ control system other than Git and the Alioth service became read-only
+ in May 2018. Packages should migrate to Git hosting on
+ https://salsa.debian.org.
+ .
+ For further information about salsa.debian.org, including how to add
+ HTTP redirects from alioth, please consult the Debian Wiki.
+See-Also: https://lists.debian.org/debian-devel-announce/2017/08/msg00008.html,
+ https://wiki.debian.org/Salsa
diff --git a/tags/v/vcs-uri.tag b/tags/v/vcs-uri.tag
new file mode 100644
index 0000000..27fd63f
--- /dev/null
+++ b/tags/v/vcs-uri.tag
@@ -0,0 +1,5 @@
+Tag: vcs-uri
+Severity: classification
+Check: fields/vcs
+Explanation: The package uses the specified VCS URI according to the
+ <code>debian/control</code> file.
diff --git a/tags/v/vcs.tag b/tags/v/vcs.tag
new file mode 100644
index 0000000..95c2da6
--- /dev/null
+++ b/tags/v/vcs.tag
@@ -0,0 +1,5 @@
+Tag: vcs
+Severity: classification
+Check: fields/vcs
+Explanation: The package uses the specified VCS (eg. "git") according to the
+ <code>debian/control</code> file.
diff --git a/tags/v/version-refers-to-distribution.tag b/tags/v/version-refers-to-distribution.tag
new file mode 100644
index 0000000..79d6cc3
--- /dev/null
+++ b/tags/v/version-refers-to-distribution.tag
@@ -0,0 +1,14 @@
+Tag: version-refers-to-distribution
+Severity: warning
+Check: debian/changelog
+Explanation: The Debian portion of the package version contains a reference to a
+ particular Debian release or distribution. This should only be done for
+ uploads targeted at a particular release, not at unstable or
+ experimental, and should refer to the release by version number or code
+ name.
+ .
+ Using "testing" or "stable" in a package version targeted at the current
+ testing or stable release is less informative than using the code name or
+ version number and may cause annoying version sequencing issues if the
+ package doesn't change before the next release cycle starts.
+See-Also: developer-reference 5.14.3
diff --git a/tags/v/version-substvar-for-external-package.tag b/tags/v/version-substvar-for-external-package.tag
new file mode 100644
index 0000000..31bba12
--- /dev/null
+++ b/tags/v/version-substvar-for-external-package.tag
@@ -0,0 +1,8 @@
+Tag: version-substvar-for-external-package
+Severity: error
+Check: debian/version-substvars
+Explanation: The first package has a relation on the second package using a
+ dpkg-control substitution variable to generate the versioned part of
+ the relation. However the second package is not built from this
+ source package. Usually this means there is a mistake or typo in the
+ package name in this dependency.
diff --git a/tags/v/very-long-line-length-in-source-file.tag b/tags/v/very-long-line-length-in-source-file.tag
new file mode 100644
index 0000000..507430c
--- /dev/null
+++ b/tags/v/very-long-line-length-in-source-file.tag
@@ -0,0 +1,42 @@
+Tag: very-long-line-length-in-source-file
+Experimental: yes
+Severity: pedantic
+Check: files/contents/line-length
+Explanation: The source file includes a line length that is well beyond
+ the normally human made code line length.
+ .
+ This very long line length does not allow Lintian to do
+ correctly some source file checks.
+ .
+ This line could also be the result of some text injected by
+ a computer program, and thus could lead to FTBFS bugs.
+ .
+ Last but not least, long line in source code could be used
+ to obfuscate the source code and to hide stuff like backdoors
+ or security problems.
+ .
+ It could be due to jslint source comments or other build tool
+ comments.
+ .
+ You may report this issue upstream.
+Renamed-From:
+ insane-line-length-in-source-file
+
+Screen: autotools/long-lines
+Advocates: Russ Allbery <rra@debian.org>
+Reason:
+ Upstream sources using <code>autoconf</code> have traditionally been
+ distributed with generated <code>./configure</code> scripts as well as
+ other third-party <code>m4</code> macro files such as <code>libtool</code>.
+ .
+ When paired with <code>automake</code>, there may also be some intermediate
+ <code>Makefile.in</code> files.
+ .
+ A lot of sources potentially contain such files, but they are not actionable
+ by either the Debian distributor or by the upstream maintainer.
+ .
+ As a side note, modern Debian build protocols will re-create many of those
+ files via <code>dh_autoreconf</code>. They are present merely to aid in
+ bootstrapping systems where the GNU suite may not yet be available.
+See-Also:
+ Bug#996740
diff --git a/tags/v/vim-addon-within-vim-runtime-path.tag b/tags/v/vim-addon-within-vim-runtime-path.tag
new file mode 100644
index 0000000..dcfd1cf
--- /dev/null
+++ b/tags/v/vim-addon-within-vim-runtime-path.tag
@@ -0,0 +1,7 @@
+Tag: vim-addon-within-vim-runtime-path
+Severity: warning
+Check: vim
+Explanation: Vim addons should not be installed directly under a directory contained
+ in the Vim runtime path. Users shall be given the freedom to choose which
+ addons they want to have enabled and which they don't.
+See-Also: vim-policy 3.1
diff --git a/tags/v/virtual-package-depends-without-real-package-depends.tag b/tags/v/virtual-package-depends-without-real-package-depends.tag
new file mode 100644
index 0000000..c4d0e89
--- /dev/null
+++ b/tags/v/virtual-package-depends-without-real-package-depends.tag
@@ -0,0 +1,14 @@
+Tag: virtual-package-depends-without-real-package-depends
+Severity: warning
+Check: fields/package-relations
+Explanation: The package declares a depends on a virtual package without listing a
+ real package as an alternative first.
+ .
+ If this package could ever be a build dependency, it should list a real
+ package as the first alternative to any virtual package in its Depends.
+ Otherwise, the build daemons will not be able to provide a consistent
+ build environment.
+ .
+ If it will never be a build dependency, this isn't necessary, but you may
+ want to consider doing so anyway if there is a real package providing
+ that virtual package that most users will want to use.
diff --git a/tags/w/wayward-symbolic-link-target-in-source.tag b/tags/w/wayward-symbolic-link-target-in-source.tag
new file mode 100644
index 0000000..b7ee8fb
--- /dev/null
+++ b/tags/w/wayward-symbolic-link-target-in-source.tag
@@ -0,0 +1,11 @@
+Tag: wayward-symbolic-link-target-in-source
+Severity: error
+Check: files/symbolic-links
+Renamed-From: source-contains-unsafe-symlink
+Explanation: The named symbolic link in a source package resolves outside
+ the shipped sources.
+ .
+ Please note that this tag is only issued for relative links targets.
+ Absolute link targets are also disqualified because source packages
+ are not anchored and can be unpacked anywhere. They triggers another
+ tag.
diff --git a/tags/w/weak-dependency-on-misc-depends.tag b/tags/w/weak-dependency-on-misc-depends.tag
new file mode 100644
index 0000000..389eda4
--- /dev/null
+++ b/tags/w/weak-dependency-on-misc-depends.tag
@@ -0,0 +1,8 @@
+Tag: weak-dependency-on-misc-depends
+Severity: warning
+Check: debhelper
+See-Also: debhelper(7)
+Explanation: The source package declares a weak dependency on ${misc:Depends} in
+ the given binary package's debian/control entry. A stronger dependency, that
+ is one that ensures the package's installation, is required so that the
+ additional commands are available to the maintainer scripts when they are run.
diff --git a/tags/w/weak-library-dev-dependency.tag b/tags/w/weak-library-dev-dependency.tag
new file mode 100644
index 0000000..bdffdc8
--- /dev/null
+++ b/tags/w/weak-library-dev-dependency.tag
@@ -0,0 +1,21 @@
+Tag: weak-library-dev-dependency
+Severity: error
+Check: debian/control/prerequisite/development
+Explanation: This package seems to contain the development files for a
+ shared library, but the requirement for that shared library to be installed
+ does not include the same version.
+ .
+ A <code>-dev</code> package should normally use <code>(= ${binary:Version})</code>
+ for the prerequisite on the shared library. That will ensure that programs compile
+ and link properly. The symbolic links for the dynamic linker will also point to the
+ correct places.
+ .
+ To be sure, there are some circumstances when a weak prerequisite is warranted, for
+ example to prevent the breaking of binNMUs with architecture-independent <code>-dev</code>
+ packages. Then something like <code>(&gt;= ${source:Upstream-Version}), (&lt;&lt;
+ ${source:Upstream-Version}+1~)</code> may be the right approach, or possibly
+ <code>${source:Version}</code> instead. The goal there is to ensure that a new upstream
+ version of the library does not satisfy the prerequisite, since any minor version change
+ might break the <code>&ast;.so</code> links.
+See-Also:
+ debian-policy 8.5
diff --git a/tags/w/web-application-depends-on-apache2-data-package.tag b/tags/w/web-application-depends-on-apache2-data-package.tag
new file mode 100644
index 0000000..31d9125
--- /dev/null
+++ b/tags/w/web-application-depends-on-apache2-data-package.tag
@@ -0,0 +1,10 @@
+Tag: web-application-depends-on-apache2-data-package
+Severity: warning
+Check: apache2
+Explanation: The package appears to be a web application but declares a package
+ relation with <code>apache2-bin</code>, <code>apache2-data</code> or any of its
+ transitional packages. However, web applications are rarely bound to a specific
+ web server version. Thus, they should depend on <code>apache2</code> only instead.
+ If a web application is actually tied to a particular binary version of the web
+ server a dependency against the virtual <code>apache2-api-YYYYMMDD</code> package
+ is more appropriate.
diff --git a/tags/w/web-application-works-only-with-apache.tag b/tags/w/web-application-works-only-with-apache.tag
new file mode 100644
index 0000000..ea2b0d7
--- /dev/null
+++ b/tags/w/web-application-works-only-with-apache.tag
@@ -0,0 +1,10 @@
+Tag: web-application-works-only-with-apache
+Severity: warning
+Check: apache2
+Renamed-From: web-application-should-not-depend-unconditionally-on-apache2
+Explanation: The package appears to be a web application but declares a dependency
+ against <code>apache2</code> without any alternative. Most web applications should
+ work with any decent web server, thus such a package should be satisfied if any
+ web server providing the virtual "<code>httpd</code>" package is installed. This
+ can be accomplished by declaring a package relation in the form "<code>apache2 |
+ httpd</code>".
diff --git a/tags/w/whitespace-after-continuation-character.tag b/tags/w/whitespace-after-continuation-character.tag
new file mode 100644
index 0000000..789351f
--- /dev/null
+++ b/tags/w/whitespace-after-continuation-character.tag
@@ -0,0 +1,9 @@
+Tag: whitespace-after-continuation-character
+Severity: error
+Check: menu-format
+Explanation: The menu item is split up over two or more continuation lines, but
+ there is additional whitespace after the backslash (<code>\</code>) that
+ indicates where lines should be joined together.
+ .
+ There is no guarantee that such additional whitespace is handled correctly.
+ The backslash should be the end of the line.
diff --git a/tags/w/wiki-copyright-format-uri.tag b/tags/w/wiki-copyright-format-uri.tag
new file mode 100644
index 0000000..a28205c
--- /dev/null
+++ b/tags/w/wiki-copyright-format-uri.tag
@@ -0,0 +1,9 @@
+Tag: wiki-copyright-format-uri
+Severity: pedantic
+Check: debian/copyright/dep5
+See-Also: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Explanation: Format URI of the machine-readable copyright file refers to Debian Wiki.
+ .
+ Debian Wiki is not used for the format development anymore. Please use
+ <code>https://www.debian.org/doc/packaging-manuals/copyright-format/*version*/</code>
+ as the format URI instead.
diff --git a/tags/w/windows-devel-file-in-package.tag b/tags/w/windows-devel-file-in-package.tag
new file mode 100644
index 0000000..c09f8c9
--- /dev/null
+++ b/tags/w/windows-devel-file-in-package.tag
@@ -0,0 +1,7 @@
+Tag: windows-devel-file-in-package
+Severity: warning
+Check: foreign-operating-systems
+Explanation: This package appears to contain development files only meaningful to
+ Windows environments. Such files are generally useless in Debian packages and
+ were usually accidentally included by copying complete directories from the
+ source tarball.
diff --git a/tags/w/windows-thumbnail-database-in-package.tag b/tags/w/windows-thumbnail-database-in-package.tag
new file mode 100644
index 0000000..e658cb2
--- /dev/null
+++ b/tags/w/windows-thumbnail-database-in-package.tag
@@ -0,0 +1,8 @@
+Tag: windows-thumbnail-database-in-package
+Severity: warning
+Check: foreign-operating-systems
+Explanation: There is a file in the package named <code>Thumbs.db</code> or
+ <code>Thumbs.db.gz</code>, which is normally a Windows image thumbnail
+ database. Such databases are generally useless in Debian packages and
+ were usually accidentally included by copying complete directories from
+ the source tarball.
diff --git a/tags/w/wish-script-but-no-wish-dep.tag b/tags/w/wish-script-but-no-wish-dep.tag
new file mode 100644
index 0000000..bc4f4d2
--- /dev/null
+++ b/tags/w/wish-script-but-no-wish-dep.tag
@@ -0,0 +1,9 @@
+Tag: wish-script-but-no-wish-dep
+Severity: error
+Check: scripts
+Explanation: Packages that include wish scripts must depend on the virtual
+ package wish or, if they require a specific version of wish or tk, that
+ version of tk.
+ .
+ In some cases a weaker relationship, such as Suggests or Recommends, will
+ be more appropriate.
diff --git a/tags/w/wrong-bug-number-in-closes.tag b/tags/w/wrong-bug-number-in-closes.tag
new file mode 100644
index 0000000..e3d5fbf
--- /dev/null
+++ b/tags/w/wrong-bug-number-in-closes.tag
@@ -0,0 +1,5 @@
+Tag: wrong-bug-number-in-closes
+Severity: warning
+Check: debian/changelog
+Explanation: Bug numbers can only contain digits.
+See-Also: debian-policy 4.4
diff --git a/tags/w/wrong-compression-in-manual-page.tag b/tags/w/wrong-compression-in-manual-page.tag
new file mode 100644
index 0000000..21e5a22
--- /dev/null
+++ b/tags/w/wrong-compression-in-manual-page.tag
@@ -0,0 +1,6 @@
+Tag: wrong-compression-in-manual-page
+Severity: error
+Check: documentation/manual
+Renamed-From: manpage-not-compressed-with-gzip
+Explanation: Manual pages should be compressed with <code>gzip -9n</code>.
+See-Also: debian-policy 12.1
diff --git a/tags/w/wrong-file-owner-uid-or-gid.tag b/tags/w/wrong-file-owner-uid-or-gid.tag
new file mode 100644
index 0000000..0a5a6da
--- /dev/null
+++ b/tags/w/wrong-file-owner-uid-or-gid.tag
@@ -0,0 +1,14 @@
+Tag: wrong-file-owner-uid-or-gid
+Severity: error
+Check: files/ownership
+Explanation: The user or group ID of the owner of the file is invalid. The
+ owner user and group IDs must be in the set of globally allocated
+ IDs, because other IDs are dynamically allocated and might be used
+ for varying purposes on different systems, or are reserved. The set
+ of the allowed, globally allocated IDs consists of the ranges 0-99,
+ 64000-64999 and 65534.
+ .
+ It's possible for a Policy-compliant package to trigger this tag if the
+ user is created in the preinst maintainer script, but this is a very rare
+ case and doesn't appear to be necessary.
+See-Also: debian-policy 9.2
diff --git a/tags/w/wrong-manual-section.tag b/tags/w/wrong-manual-section.tag
new file mode 100644
index 0000000..9817686
--- /dev/null
+++ b/tags/w/wrong-manual-section.tag
@@ -0,0 +1,8 @@
+Tag: wrong-manual-section
+Severity: warning
+Check: documentation/manual
+Renamed-From: manpage-section-mismatch
+Explanation: A manual page usually should contain a <code>.TH</code> header, specifying the
+ section. The section in this manual page doesn't match with the section in the
+ filename.
+See-Also: groff_man(7), man(1)
diff --git a/tags/w/wrong-name-for-changelog-of-native-package.tag b/tags/w/wrong-name-for-changelog-of-native-package.tag
new file mode 100644
index 0000000..cd1fb0e
--- /dev/null
+++ b/tags/w/wrong-name-for-changelog-of-native-package.tag
@@ -0,0 +1,7 @@
+Tag: wrong-name-for-changelog-of-native-package
+Severity: warning
+Check: debian/changelog
+Explanation: The changelog file of a native Debian package (ie. if there is
+ no upstream source) should usually be installed as
+ /usr/share/doc/*pkg*/changelog.gz
+See-Also: debian-policy 12.7
diff --git a/tags/w/wrong-name-for-debian-changelog-file.tag b/tags/w/wrong-name-for-debian-changelog-file.tag
new file mode 100644
index 0000000..4d5cafc
--- /dev/null
+++ b/tags/w/wrong-name-for-debian-changelog-file.tag
@@ -0,0 +1,6 @@
+Tag: wrong-name-for-debian-changelog-file
+Severity: error
+Check: debian/changelog
+Explanation: The Debian changelog file should usually be installed as
+ /usr/share/doc/*pkg*/changelog.Debian.gz
+See-Also: debian-policy 12.7
diff --git a/tags/w/wrong-name-for-debian-news-file.tag b/tags/w/wrong-name-for-debian-news-file.tag
new file mode 100644
index 0000000..3c117cf
--- /dev/null
+++ b/tags/w/wrong-name-for-debian-news-file.tag
@@ -0,0 +1,7 @@
+Tag: wrong-name-for-debian-news-file
+Severity: warning
+Check: debian/changelog
+Explanation: The Debian news file must be installed as
+ /usr/share/doc/*pkg*/NEWS.Debian.gz with exactly that capitalization
+ or automated tools may not find it correctly.
+See-Also: developer-reference 6.3.4
diff --git a/tags/w/wrong-name-for-manual-page.tag b/tags/w/wrong-name-for-manual-page.tag
new file mode 100644
index 0000000..7f0688e
--- /dev/null
+++ b/tags/w/wrong-name-for-manual-page.tag
@@ -0,0 +1,7 @@
+Tag: wrong-name-for-manual-page
+Severity: error
+Check: documentation/manual
+Renamed-From: manpage-has-wrong-extension
+Explanation: The manual page has an extension other than
+ "*section*[*program*].gz".
+See-Also: debian-policy 12.1
diff --git a/tags/w/wrong-name-for-upstream-changelog.tag b/tags/w/wrong-name-for-upstream-changelog.tag
new file mode 100644
index 0000000..4f8fd94
--- /dev/null
+++ b/tags/w/wrong-name-for-upstream-changelog.tag
@@ -0,0 +1,6 @@
+Tag: wrong-name-for-upstream-changelog
+Severity: warning
+Check: debian/changelog
+Explanation: If there is an upstream changelog file, it should usually be
+ installed as /usr/share/doc/*pkg*/changelog.gz
+See-Also: debian-policy 12.7
diff --git a/tags/w/wrong-path-for-interpreter.tag b/tags/w/wrong-path-for-interpreter.tag
new file mode 100644
index 0000000..4e0ec4c
--- /dev/null
+++ b/tags/w/wrong-path-for-interpreter.tag
@@ -0,0 +1,10 @@
+Tag: wrong-path-for-interpreter
+Severity: error
+Check: scripts
+Explanation: The interpreter you used is installed at another location on Debian
+ systems.
+ .
+ Note that, as a particular exception, Debian Policy ยง 10.4 states that
+ Perl scripts should use <code>/usr/bin/perl</code> directly and not
+ <code>/usr/bin/env</code>, etc.
+See-Also: debian-policy 10.4
diff --git a/tags/w/wrong-section-according-to-package-name.tag b/tags/w/wrong-section-according-to-package-name.tag
new file mode 100644
index 0000000..8dca357
--- /dev/null
+++ b/tags/w/wrong-section-according-to-package-name.tag
@@ -0,0 +1,5 @@
+Tag: wrong-section-according-to-package-name
+Severity: info
+Check: fields/section
+Explanation: This package has a name suggesting that it belongs to a section
+ other than the one it is currently categorized in.
diff --git a/tags/w/wrong-section-for-udeb.tag b/tags/w/wrong-section-for-udeb.tag
new file mode 100644
index 0000000..2666653
--- /dev/null
+++ b/tags/w/wrong-section-for-udeb.tag
@@ -0,0 +1,4 @@
+Tag: wrong-section-for-udeb
+Severity: warning
+Check: fields/section
+Explanation: udeb packages should have "Section: debian-installer".
diff --git a/tags/w/wrong-team.tag b/tags/w/wrong-team.tag
new file mode 100644
index 0000000..48a3ba5
--- /dev/null
+++ b/tags/w/wrong-team.tag
@@ -0,0 +1,8 @@
+Tag: wrong-team
+Severity: warning
+Check: fields/maintainer/team
+Explanation: The package is team-maintained but uses a name from
+ another team's name space.
+ .
+ Sometimes teams split up. This tag was designed to make sure the
+ maintainer address is updated when that happens.
diff --git a/tags/z/zero-byte-executable-in-path.tag b/tags/z/zero-byte-executable-in-path.tag
new file mode 100644
index 0000000..03ba829
--- /dev/null
+++ b/tags/z/zero-byte-executable-in-path.tag
@@ -0,0 +1,9 @@
+Tag: zero-byte-executable-in-path
+Severity: error
+Check: files/names
+Explanation: This package installs the specified empty executable file to the
+ system's PATH. These files do not do anything and produce no error
+ message when run.
+ .
+ This was likely caused by an error in the package build process.
+See-Also: Bug#919341
diff --git a/tags/z/zero-byte-file-in-doc-directory.tag b/tags/z/zero-byte-file-in-doc-directory.tag
new file mode 100644
index 0000000..2df5f54
--- /dev/null
+++ b/tags/z/zero-byte-file-in-doc-directory.tag
@@ -0,0 +1,11 @@
+Tag: zero-byte-file-in-doc-directory
+Severity: warning
+Check: documentation
+Explanation: The documentation directory for this package contains an empty
+ file. This is often due to installing an upstream NEWS or README file
+ without realizing it's empty and hence not useful.
+ .
+ Files in the examples subdirectory are excluded from this check, but
+ there are some cases where empty files are legitimate parts of the
+ documentation without being examples. In those cases, please add an
+ override.
diff --git a/tags/z/zip-parse-error.tag b/tags/z/zip-parse-error.tag
new file mode 100644
index 0000000..59738fa
--- /dev/null
+++ b/tags/z/zip-parse-error.tag
@@ -0,0 +1,5 @@
+Tag: zip-parse-error
+Severity: warning
+Check: languages/java
+Explanation: The package contains a Jar file, but Lintian is unable to parse it.
+ It is possible that the Jar file is corrupt.