[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[lintian] 01/01: checks/debhelper.{desc, pm}: Warn about warn packages that use about dh_systemd_enable or dh_systemd_start overrides whilst using debhelper compat level 11 as they are no longer being called. (Closes: #887899)



This is an automated email from the git hooks/post-receive script.

lamby pushed a commit to branch master
in repository lintian.

commit c96ea19be9a9f3c4d2cd52075b9627a7de258bb7
Author: Chris Lamb <lamby@debian.org>
Date:   Mon Jan 22 12:54:16 2018 +1100

    checks/debhelper.{desc,pm}: Warn about warn packages that use about dh_systemd_enable or dh_systemd_start overrides whilst using debhelper compat level 11 as they are no longer being called. (Closes: #887899)
---
 checks/debhelper.desc                                      | 14 ++++++++++++++
 checks/debhelper.pm                                        |  9 +++++++++
 debian/changelog                                           |  5 +++++
 .../debian/debian/rules                                    | 10 ++++++++++
 t/tests/rules-uses-deprecated-systemd-override/desc        |  5 +++++
 t/tests/rules-uses-deprecated-systemd-override/tags        |  2 ++
 6 files changed, 45 insertions(+)

diff --git a/checks/debhelper.desc b/checks/debhelper.desc
index fb23fd7..915c5df 100644
--- a/checks/debhelper.desc
+++ b/checks/debhelper.desc
@@ -406,3 +406,17 @@ Info: The package (for example) <tt>dh $@ --with quilt</tt> in
  source format via the <tt>debian/source/format</tt> file.
  .
  Please remove the <tt>--with quilt</tt> argument.
+
+Tag: debian-rules-uses-deprecated-systemd-override
+Severity: serious
+Certainty: certain
+Info: The <tt>debian/rules</tt> file for this package has an
+ <tt>override_dh_systemd_enable</tt> or <tt>override_dh_systemd_start</tt>
+ target but the package uses debhelper compatibility level 11.
+ .
+ The <tt>dh_systemd_{enable,start}</tt> 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 <tt>dh_installsystemd</tt>.
+Ref: debhelper(7)
diff --git a/checks/debhelper.pm b/checks/debhelper.pm
index 793d399..d70f319 100644
--- a/checks/debhelper.pm
+++ b/checks/debhelper.pm
@@ -66,6 +66,7 @@ sub run {
     my $seen_dh = 0;
     my $seen_python_helper = 0;
     my $seen_python3_helper = 0;
+    my %overrides;
 
     $drules = $droot->child('rules') if $droot;
 
@@ -195,6 +196,7 @@ sub run {
             # Can be multiple targets per rule.
             while ($targets =~ /\boverride_(dh_[^\s]+)/g) {
                 my $dhcommand = $1;
+                $overrides{$dhcommand} = $.;
                 # If maintainer is using wildcards, it's unlikely to be a typo.
                 next if ($dhcommand =~ /%/);
                 next if ($dh_commands_depends->known($dhcommand));
@@ -322,6 +324,13 @@ sub run {
         tag 'dh-clean-k-is-deprecated';
     }
 
+    for my $suffix (qw(enable start)) {
+        my $line = $overrides{"dh_systemd_$suffix"};
+        tag 'debian-rules-uses-deprecated-systemd-override',
+          "override_dh_systemd_$suffix", "(line $line)"
+          if $line and $level >= 11;
+    }
+
     # Check the files in the debian directory for various debhelper-related
     # things.
     for my $file ($droot->children) {
diff --git a/debian/changelog b/debian/changelog
index 2c6b6c9..96e261f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,11 @@ lintian (2.5.72) UNRELEASED; urgency=medium
 
   XXX: generate tag summary
 
+  * checks/debhelper.{desc,pm}:
+    + [CL] Warn about warn packages that use about dh_systemd_enable or
+      dh_systemd_start overrides whilst using debhelper compat level 11 as
+      they are no longer being called.  (Closes: #887899)
+
  -- Chris Lamb <lamby@debian.org>  Sun, 21 Jan 2018 16:42:25 +1100
 
 lintian (2.5.71) unstable; urgency=medium
diff --git a/t/tests/rules-uses-deprecated-systemd-override/debian/debian/rules b/t/tests/rules-uses-deprecated-systemd-override/debian/debian/rules
new file mode 100755
index 0000000..2ebf950
--- /dev/null
+++ b/t/tests/rules-uses-deprecated-systemd-override/debian/debian/rules
@@ -0,0 +1,10 @@
+#!/usr/bin/make -f
+
+%:
+	dh $@
+
+override_dh_systemd_enable:
+	dh_systemd_enable
+
+override_dh_systemd_start:
+	dh_systemd_start
diff --git a/t/tests/rules-uses-deprecated-systemd-override/desc b/t/tests/rules-uses-deprecated-systemd-override/desc
new file mode 100644
index 0000000..dbaefb3
--- /dev/null
+++ b/t/tests/rules-uses-deprecated-systemd-override/desc
@@ -0,0 +1,5 @@
+Testname: rules-uses-deprecated-systemd-override
+Version: 1.0
+Description: Test for override_dh_systemd_enable with compat levels 11
+Test-For:
+ debian-rules-uses-deprecated-systemd-override
diff --git a/t/tests/rules-uses-deprecated-systemd-override/tags b/t/tests/rules-uses-deprecated-systemd-override/tags
new file mode 100644
index 0000000..c476e17
--- /dev/null
+++ b/t/tests/rules-uses-deprecated-systemd-override/tags
@@ -0,0 +1,2 @@
+E: rules-uses-deprecated-systemd-override source: debian-rules-uses-deprecated-systemd-override override_dh_systemd_enable (line 6)
+E: rules-uses-deprecated-systemd-override source: debian-rules-uses-deprecated-systemd-override override_dh_systemd_start (line 9)

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/lintian/lintian.git


Reply to: