Bug#375948: debhelper: dh_python generates incomplete dependencies for private extensions
Package: debhelper
Version: 5.0.37.2
Severity: normal
Tags: patch
Packages with private extensions who are not giving explicitely the
version they build for in debian/pyversions (or XS-Python-Version) will
have incomplete dependencies like "python (<< 2.4)"
instead of the expected "python (>= 2.3), python (<< 2.4)".
The attached patch fixes that. This bug doesn't affect many packages but
it forbids their maintainers to update their packages to follow the new
policy. This in itself is not a big deal since they will continue to work
perfectly with the old policy (the important changes introduced by the new
policy concern mainly packages with public modules/extensions).
Joey, do you plan to work again on debhelper soon (2 weeks have passed
since the first NMU and your last comment)? Or shall I make yet another
NMU to incorporate the 3-4 fixes that we have accumulated?
BTW, all dh_python's little fixes which have accumulared in the BTS
(#375576, #374776, #375936 and this one) are fixed in my copy of
dh_python. I have a public bzr branch where I incorporate fixes as they
come:
http://ouaza.com/~rhertzog/dh-python/
You can do "bzr branch http://ouaza.com/~rhertzog/dh-python/" to grab it
and then later "bzr pull" to update your copy if needed.
Cheers,
-- System Information:
Debian Release: testing/unstable
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15-1-686
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Versions of packages debhelper depends on:
ii binutils 2.17-1 The GNU assembler, linker and bina
ii coreutils 5.96-5 The GNU core utilities
ii dpkg-dev 1.13.22 package building tools for Debian
ii file 4.17-2 Determines file type using "magic"
ii html2text 1.3.2a-3 An advanced HTML to text converter
ii perl 5.8.8-6 Larry Wall's Practical Extraction
ii po-debconf 1.0.5 manage translated Debconf template
debhelper recommends no packages.
-- no debconf information
=== modified file 'dh_python'
--- dh_python
+++ dh_python
@@ -400,14 +400,15 @@
# Private extensions, must be rebuilt for each python version
if ($deps & SO_PRIVATE_MODULE) {
$dep_on_python++;
- $stop_version = next_minor_version($python_version);
# Packages using a private extension can only
# support one version
- # Unless min/max are the same we put "current"
+ # Unless min/max are the same we put $python_version
if ($min_version and ($min_version eq $max_version)) {
$versions_field = $min_version;
} else {
- $versions_field = "current";
+ $versions_field = $python_version;
+ $min_version = $python_version;
+ $stop_version = next_minor_version($python_version);
}
}
Reply to: