Package: lintian Severity: wishlist Tags: patch Hi,
Attached is the following: commit 767c26eb22eb0b7ee5ed04ef06be9daed12446e3 Author: Chris Lamb <la...@debian.org> Date: Sun Sep 18 11:19:14 2016 +0100 Check for PACKAGE.maintscript files that include "maint-script-parameters". checks/debhelper.desc | 8 ++++++++ checks/debhelper.pm | 10 ++++++++++ .../debian/debian/maintscript | 2 ++ t/tests/maintscript-includes-maint-script-parameters/desc | 6 ++++++ t/tests/maintscript-includes-maint-script-parameters/tags | 1 + 5 files changed, 27 insertions(+) Regards, -- ,''`. : :' : Chris Lamb `. `'` la...@debian.org / chris-lamb.co.uk `-
>From 767c26eb22eb0b7ee5ed04ef06be9daed12446e3 Mon Sep 17 00:00:00 2001 From: Chris Lamb <la...@debian.org> Date: Sun, 18 Sep 2016 11:19:14 +0100 Subject: [PATCH] Check for PACKAGE.maintscript files that include "maint-script-parameters". --- checks/debhelper.desc | 8 ++++++++ checks/debhelper.pm | 10 ++++++++++ .../debian/debian/maintscript | 2 ++ t/tests/maintscript-includes-maint-script-parameters/desc | 6 ++++++ t/tests/maintscript-includes-maint-script-parameters/tags | 1 + 5 files changed, 27 insertions(+) create mode 100644 t/tests/maintscript-includes-maint-script-parameters/debian/debian/maintscript create mode 100644 t/tests/maintscript-includes-maint-script-parameters/desc create mode 100644 t/tests/maintscript-includes-maint-script-parameters/tags diff --git a/checks/debhelper.desc b/checks/debhelper.desc index 9b9d046..3317d56 100644 --- a/checks/debhelper.desc +++ b/checks/debhelper.desc @@ -361,3 +361,11 @@ Info: The listed target in debian/rules command is a likely misspelling. Implementation detail: The typo is detected by using "Levenshtein edit distance". Therefore, if the typo involve several characters, Lintian may not detect it. + +Tag: maintscript-includes-maint-script-parameters +Severity: normal +Certainty: possible +Info: Lines in a <tt>debian/*.maintscript</tt> correspond to + <tt>dpkg-maintscript-helper(1)</tt> commands and parameters. However, the + "maint-script-parameters" should not be included as debhelper will add those + automatically. See <tt>dh_installdeb(1)</tt> for more information. diff --git a/checks/debhelper.pm b/checks/debhelper.pm index ad80fc8..be8fd25 100644 --- a/checks/debhelper.pm +++ b/checks/debhelper.pm @@ -354,6 +354,16 @@ sub run { _tag_if_executable($file); } elsif ($basename =~ m/^ex\.|\.ex$/i) { tag 'dh-make-template-in-source', $file; + } elsif ($basename =~ m/^(?:(.*)\.)?maintscript$/) { + next unless $file->is_open_ok; + my $fd = $file->open; + while (<$fd>) { + if (m/-- "\$@"\s*$/) { + tag 'maintscript-includes-maint-script-parameters', + $basename, "(line $.)"; + } + } + close($fd); } elsif ($basename =~ m/^(?:.+\.)?debhelper(?:\.log)?$/){ # The regex matches "debhelper", but debhelper/Dh_Lib does not # make those, so skip it. diff --git a/t/tests/maintscript-includes-maint-script-parameters/debian/debian/maintscript b/t/tests/maintscript-includes-maint-script-parameters/debian/debian/maintscript new file mode 100644 index 0000000..9d5ecd5 --- /dev/null +++ b/t/tests/maintscript-includes-maint-script-parameters/debian/debian/maintscript @@ -0,0 +1,2 @@ +rm_conffile /etc/correct.conf 0.2~ foo +rm_conffile /etc/incorrect.conf 0.2~ foo -- "$@" diff --git a/t/tests/maintscript-includes-maint-script-parameters/desc b/t/tests/maintscript-includes-maint-script-parameters/desc new file mode 100644 index 0000000..0313ac0 --- /dev/null +++ b/t/tests/maintscript-includes-maint-script-parameters/desc @@ -0,0 +1,6 @@ +Testname: maintscript-includes-maint-script-parameters +Sequence: 6000 +Version: 1.0 +Description: Check for dh_installdeb .maintscript files +Test-For: + maintscript-includes-maint-script-parameters diff --git a/t/tests/maintscript-includes-maint-script-parameters/tags b/t/tests/maintscript-includes-maint-script-parameters/tags new file mode 100644 index 0000000..ca38ca0 --- /dev/null +++ b/t/tests/maintscript-includes-maint-script-parameters/tags @@ -0,0 +1 @@ +W: maintscript-includes-maint-script-parameters source: maintscript-includes-maint-script-parameters maintscript (line 2) -- 2.9.3