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

Bug#680111: unblock: wajig/2.7.1



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: freeze-exception

Please unblock package wajig. The change improves multi-arch
handling slightly and fixes a related exception.
diff -Nru wajig-2.7/debian/changelog wajig-2.7.1/debian/changelog
--- wajig-2.7/debian/changelog	2012-07-03 19:02:17.000000000 +0200
+++ wajig-2.7.1/debian/changelog	2012-07-02 21:04:53.000000000 +0200
@@ -1,3 +1,16 @@
+wajig (2.7.1) unstable; urgency=low
+
+  * NEW, NEWDESCRIBE: fix an exception that occurs if package exists only
+    for configured foreign architectures; Closes: #679969
+  * DESCRIBE: if package does not exist for native architecture, check if it
+    does for configured foreign ones before giving up; this is closely
+    related to the above-mentioned fix
+  * Specify a minimum dpkg version (1.16.2), due to the use of
+    --print-foreign-architectures option introduced as a result of the
+    above-mentioned fixes
+
+ -- Tshepang Lekhonkhobe <tshepang@gmail.com>  Mon, 02 Jul 2012 21:04:43 +0200
+
 wajig (2.7) unstable; urgency=low
 
   * NEW, DETAILNEW, and DESCRIBENEW:
diff -Nru wajig-2.7/debian/control wajig-2.7.1/debian/control
--- wajig-2.7/debian/control	2012-07-03 19:02:17.000000000 +0200
+++ wajig-2.7.1/debian/control	2012-07-02 19:24:05.000000000 +0200
@@ -15,7 +15,8 @@
          python3 (>= 3.2),
          apt,
          python3-apt,
-         aptitude
+         aptitude,
+         dpkg (>= 1.16.2)
 Suggests: debconf,
           reportbug,
           apt-move,
diff -Nru wajig-2.7/src/util.py wajig-2.7.1/src/util.py
--- wajig-2.7/src/util.py	2012-07-03 19:02:17.000000000 +0200
+++ wajig-2.7.1/src/util.py	2012-07-02 20:58:52.000000000 +0200
@@ -294,7 +294,17 @@
             try:
                 package = cache[package]
             except KeyError as e:
-                if die:
+                import subprocess
+                command = 'dpkg --print-foreign-architectures'.split()
+                output = subprocess.check_output(command)
+                for arch in output.decode().split():
+                    try:
+                        package = cache["{}:{}".format(package, arch)]
+                        # to avoid noise, only consider the 1st match
+                        break
+                    except KeyError:
+                        pass
+                if not isinstance(package, apt.package.Package) and die:
                     print(str(e).strip('"'))
                     return 1
             packageversion = package.installed
diff -Nru wajig-2.7/src/wajig.py wajig-2.7.1/src/wajig.py
--- wajig-2.7/src/wajig.py	2012-07-03 19:02:17.000000000 +0200
+++ wajig-2.7.1/src/wajig.py	2012-07-02 21:07:31.000000000 +0200
@@ -26,7 +26,7 @@
 import commands
 import perform
 
-VERSION = "2.7"
+VERSION = "2.7.1"
 
 
 def main():

Reply to: