Control: tags + patch
* Russ Allbery <r...@debian.org>, 2013-04-07, 12:22:
* python(3)-depends-but-no-python(3)-helper 2.5.4 (Nov 2011)
- In total, some 40-46 cases
- both tags are "serious/possible" (E)
- I am considering to promote to "non-experimental".
I was going to propose to un-experimental this one, too.
Unfortunately, a few of these tags are false positive. This is because
people do crazy things like this:
WITH_PYTHON2 = $(shell test -f /usr/bin/dh_python2 && echo "--with python2")
%:
dh $@ ${WITH_PYTHON2}
Lintian has of course no way of knowing with will WITH_PYTHON2 expand
to... But perhaps in these crazy cases people should just add
overrides. (FTR, this is tracked as #659335.)
We could also just assume that anyone using shell substitution
variables in the dh line of debian/rules know what they're doing.
Lintian makes similar assumptions elsewhere in rules handling.
Yes, of course. I don't know why I didn't thought about this earlier.
Thanks!
Here's a patch to implement it.
--
Jakub Wilk
diff --git a/checks/debhelper b/checks/debhelper
--- a/checks/debhelper
+++ b/checks/debhelper
@@ -182,6 +182,11 @@
}
}
}
+ if (m,\$[({]\w,) {
+ # the variable could contain any add-ons
+ $seen_python_helper = 1;
+ $seen_python3_helper = 1;
+ }
if ($seen_python_helper == 0) {
$seen_python_helper = -1; # maybe; we'll check that later
}
diff --git a/checks/debhelper.desc b/checks/debhelper.desc
--- a/checks/debhelper.desc
+++ b/checks/debhelper.desc
@@ -265,7 +265,6 @@
Tag: python-depends-but-no-python-helper
Severity: serious
Certainty: possible
-Experimental: yes
Info: The source package declares a dependency on ${python:Depends} in the
given binary package's debian/control entry. However, debian/rules doesn't
call any helper that would generate this substitution variable.
@@ -277,7 +276,6 @@
Tag: python3-depends-but-no-python3-helper
Severity: serious
Certainty: possible
-Experimental: yes
Info: 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.