Package: python
Version: 2.7.5-4
Tags: patch
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu ubuntu-patch saucy

Hi folks,

This is a counterpart to bug #722045, which has been filed on the dh-python
package, for the dh_python2 implementation included in python-defaults.

It's my understanding that all the pieces are now in place for the archive
to support :any dependencies on interpreter packages.  Since dh_python* are
the usual ways that these dependencies are generated, it would be helpful if
these tools would output the appropriately-tagged dependencies by default.

The immediate benefit of such a patch is that it makes packages like
libglib2.0-dev, which include python programs and private modules,
cross-installable.  I haven't tested beyond glib so far, but I want to
submit the patch for your review in case you have any preliminary feedback.

Since in practice glib2.0 is using dh_python2 from python and not the
version from the dh-python package, it would be most helpful to have this
issue fixed for python-defaults.

Thanks,
-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slanga...@ubuntu.com                                     vor...@debian.org
# Bazaar merge directive format 2 (Bazaar 0.90)
# revision_id: vor...@debian.org-20130907001845-8yxrvk61d6a27rge
# target_branch: :parent
# testament_sha1: e23af82cbdee2d466ce33aa761674c946cd310de
# timestamp: 2013-09-06 17:19:51 -0700
# base_revision_id: sc...@kitterman.com-20130813043804-\
#   85vortokgsvip6qq
# 
# Begin patch
=== modified file 'debian/changelog'
--- debian/changelog	2013-08-13 04:38:04 +0000
+++ debian/changelog	2013-09-07 00:18:45 +0000
@@ -1,3 +1,10 @@
+python-defaults (2.7.5-4.1) UNRELEASED; urgency=low
+
+  * Non-maintainer upload.
+  * Adjust debpython/depends.py to be multiarch-friendly.
+
+ -- Steve Langasek <vor...@debian.org>  Fri, 06 Sep 2013 17:18:18 -0700
+
 python-defaults (2.7.5-4) unstable; urgency=low
 
   * Add libpython-all-dbg.postinst to convert the doc directory to a symlink

=== modified file 'debpython/depends.py'
--- debpython/depends.py	2012-10-21 20:30:12 +0000
+++ debpython/depends.py	2013-09-07 00:18:45 +0000
@@ -24,7 +24,7 @@
 from debpython.version import DEFAULT, SUPPORTED, debsorted, vrepr, vrange_str
 
 # minimum version required for pycompile/pyclean
-MINPYCDEP = 'python (>= 2.6.6-7~)'
+MINPYCDEP = 'python:any (>= 2.6.6-7~)'
 
 log = logging.getLogger(__name__)
 
@@ -115,20 +115,20 @@
             self.depend(MINPYCDEP)
 
         for interpreter, version in stats['shebangs']:
-            self.depend(interpreter)
+            self.depend("%s:any" % interpreter)
 
         for private_dir, details in stats['private_dirs'].iteritems():
             versions = list(v for i, v in details.get('shebangs', []) if v)
 
             for v in versions:
                 if v in SUPPORTED:
-                    self.depend("python%d.%d" % v)
+                    self.depend("python%d.%d:any" % v)
                 else:
                     log.info('dependency on python%s (from shebang) ignored'
                              ' - it\'s not supported anymore', vrepr(v))
             # /usr/bin/python shebang → add python to Depends
             if any(True for i, v in details.get('shebangs', []) if v is None):
-                self.depend('python')
+                self.depend('python:any')
 
             if details.get('compile', False):
                 self.depend(MINPYCDEP)
@@ -144,12 +144,12 @@
                     if vr == (None, None):
                         pass
                     elif vr[0] == vr[1]:
-                        self.depend("python%s" % vrepr(vr[0]))
+                        self.depend("python%s:any" % vrepr(vr[0]))
                     else:
                         if vr[0]:  # minimum version specified
-                            self.depend("python (>= %s)" % vrepr(vr[0]))
+                            self.depend("python:any (>= %s)" % vrepr(vr[0]))
                         if vr[1]:  # maximum version specified
-                            self.depend("python (<< %d.%d)" % \
+                            self.depend("python:any (<< %d.%d)" % \
                                        (vr[1][0], vr[1][1] + 1))
 
                 for pattern in options.regexpr or []:

# Begin bundle
IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWfuzeDkAApn/gABUREBS9///
fydaLr////FQBVuvcjQC7rmTIClhKEonptU08hppGJp6mTJkeoAA0aDQM0jQ4aaZGIwmmAhgE0wj
BMTIaZGhoBoJlGlPRPKe1TRieoAAADIAAGgBIolPTU9TT0yU03qNAMFH6FMAmjaQMATT9UEkgjTT
QEaGqn4kyam00T00IeUaADQ0aNHr+q7H0xUQ5al9H6xoYabWBU0g0K17jwcgBpRjOhta1y5K3GEZ
KkkRAorRhxHn7q7MTYpjTS0DY/HD/BBch0GdaRORwsRlQrNqGZ8QYQeZZ45Ss/sMe2JWhBg3OXb0
mhWT4/rVA4n9sgiOO+KnBNTNs/fHi+Nq19XIHsiMCpKhiWZmruiq0oLAjIWE1Y4C9Wgw684/hXqw
TOHlqxbFkGoBQKkeGAnLyg4Cu83dA2CZIXFKItA+U+ylhYHwFY5IuRsOp4zQcTv7alRhMwqZXveg
c9K5KtnMhSQOTtAfGZYqwmSVQXmBTdUBEtJAmtCxfwNFrxoSsQnyGc88vx642C452o+JncOFrgcy
Z52OAuqFvJJFsAMAnF7sumMgE7FxUwCoy4GMwhOJpQB/ngVBYdKuAr20GWz/roWHx5qkfTHkk9gU
ClFLv3VyK1Jh+9iBkBIuz1kjoIm8fbBRvgkHK2y4htocMIWouHGevEpHBYBixlYFT0YMHKDwOd2k
FwrMMMDEtr2NBSJs80Im/CyOZtsAc8vWTBeDyCeR0yjeomJ65hpjfTZKEcC5bswMd1mWMKPfas8g
WZDK7oDEpSeY4uMrc0GYw4N9mkB0rjGTymBVInlIKrjokTeBjIOwrCJrgF9htkBVYG7O7IoSJYWu
x7Hlc9SgE9zVDthkBiMAv1WCRTOVQogIsrvALrlsSNJX3EonPFCggEEomRCVRRJcb/fTxWLYOpvB
fNd34Mg6h2b34PndHkuCJw99oiqqqKquoXP9U9OmWHRUYfoocUqDS4nX2kGvkcguw0Y+uQGH0GZQ
Lc/Dz8hPYaLtKNc5T60kYRBpEG8hitEvCBel1klQ9mRmhvb37jU0AL3/QuoFvymWnsVpygfKuvea
7u7uaL/AMuYV7GF+lYxnGMvqKw2gSwA6psIbdshrkcXq2pEO9roxHIJZKarZuTJjNZZRJMWArHgZ
Bw9UcXR3nlIhr6wTZS4TmQvb06jRkKHpoAei/Lnzr7c217Jjtpeehoe5xAVgeQXMZHoXNMHhYkOL
Te/V02RKzUlAZDIdwFtRz7R2vI7b37N6wQOA31Ss67DQZjNtwKIjyqtBOmSjSxCcE9IVBuCamwJF
1IlqiYlH5IUSE9FqHEkrV4UCq8jEuYf9+zGOaPJ5UFvTaGCqOnMxNDcVTA3hojvCZ5V1WB+MEXPD
mJhcNvPE0IriI/fQnWFZkDzYVpWnC431wguJGBBhMkmBDx1yUEMk6D05EtxFQTJmBlBLXkdvwLy9
lAOKO5FniOHMDERDcaytHqSLxFEwcILKVAmsdsA2bWGB6gkVv3E23qJhHBHtOvjBw895LzBavWHG
g8YNuhii2pA8qpdmq0juAz+VPNqVCHgyvhbAgi/rAgpep4UQIY6QmzfA9vf/WlswWXzChnkUBTRW
OYXiGixzPXR8webgYi6yCIeJyDz4JFmrzswKhwURYqmqIOB4XIyZcvOWkybe4aeJaog5DwO80liZ
T0HCHSaxOr66/tsgUIvK9kIJtkKx8mckSEgEu4k6P4/8XckU4UJD7s3g5A==

Attachment: signature.asc
Description: Digital signature

Reply via email to