Your message dated Sat, 06 Jun 2015 14:21:52 +0000
with message-id <[email protected]>
and subject line Bug#787251: fixed in pyqt5 5.4.1+dfsg-3
has caused the Debian Bug report #787251,
regarding pyqt5: please let pyuic sort the import order
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
787251: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=787251
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: pyqt5
Version: 5.4.1+dfsg-2
Severity: wishlist
Tags: patch
User: [email protected]
Usertags: randomness toolchain
X-Debbugs-CC: [email protected]

Hi!

While working on Debian's “reproducible builds” effort [1], we have
noticed that pyuic doesn't sort the order of imported modules in
generated UI files.
The attached patch fixes this.

Regards,
 Reiner

[1]: https://wiki.debian.org/ReproducibleBuilds

diff --git a/debian/patches/series b/debian/patches/series
index 556cb6c..e32acdc 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1 +1,2 @@
 uiparser_setzorder_fix.diff
+sort_imports.diff
diff --git a/debian/patches/sort_imports.diff b/debian/patches/sort_imports.diff
new file mode 100644
index 0000000..88a53dd
--- /dev/null
+++ b/debian/patches/sort_imports.diff
@@ -0,0 +1,31 @@
+Author: Reiner Herrmann <[email protected]>
+Description: sort imported modules to get reproducible output
+
+Index: pyqt5-5.4.1+dfsg/pyuic/uic/Compiler/compiler.py
+===================================================================
+--- pyqt5-5.4.1+dfsg.orig/pyuic/uic/Compiler/compiler.py
++++ pyqt5-5.4.1+dfsg/pyuic/uic/Compiler/compiler.py
+@@ -114,7 +114,7 @@ class UICompiler(UIParser):
+ 
+         self.factory._cpolicy._writeOutImports()
+ 
+-        for res in self._resources:
++        for res in sorted(self._resources):
+             write_import(res, from_imports)
+ 
+         return {"widgetname": str(w),
+Index: pyqt5-5.4.1+dfsg/pyuic/uic/Compiler/qobjectcreator.py
+===================================================================
+--- pyqt5-5.4.1+dfsg.orig/pyuic/uic/Compiler/qobjectcreator.py
++++ pyqt5-5.4.1+dfsg/pyuic/uic/Compiler/qobjectcreator.py
+@@ -132,8 +132,8 @@ class _CustomWidgetLoader(object):
+             _, module = self._widgets[widget]
+             imports.setdefault(module, []).append(widget)
+ 
+-        for module, classes in imports.items():
+-            write_code("from %s import %s" % (module, ", ".join(classes)))
++        for module, classes in sorted(imports.items()):
++            write_code("from %s import %s" % (module, ", ".join(sorted(classes))))
+ 
+ 
+ class CompilerCreatorPolicy(object):

Attachment: signature.asc
Description: OpenPGP digital signature


--- End Message ---
--- Begin Message ---
Source: pyqt5
Source-Version: 5.4.1+dfsg-3

We believe that the bug you reported is fixed in the latest version of
pyqt5, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Dmitry Shachnev <[email protected]> (supplier of updated pyqt5 package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sat, 06 Jun 2015 12:10:46 +0300
Source: pyqt5
Binary: pyqt5-dev pyqt5-dev-tools pyqt5-doc pyqt5-examples python3-pyqt5 
python3-pyqt5-dbg python3-dbus.mainloop.pyqt5 python3-dbus.mainloop.pyqt5-dbg 
python3-pyqt5.enginio python3-pyqt5.enginio-dbg python3-pyqt5.qtopengl 
python3-pyqt5.qtopengl-dbg python3-pyqt5.qtsql python3-pyqt5.qtsql-dbg 
python3-pyqt5.qtwebkit python3-pyqt5.qtwebkit-dbg python3-pyqt5.qtwebsockets 
python3-pyqt5.qtwebsockets-dbg python3-pyqt5.qtxmlpatterns 
python3-pyqt5.qtxmlpatterns-dbg python3-pyqt5.qtsvg python3-pyqt5.qtsvg-dbg 
python3-pyqt5.qtmultimedia python3-pyqt5.qtmultimedia-dbg python3-pyqt5.qtquick 
python3-pyqt5.qtquick-dbg python3-pyqt5.qtserialport 
python3-pyqt5.qtserialport-dbg python3-pyqt5.qtsensors 
python3-pyqt5.qtsensors-dbg python3-pyqt5.qtx11extras 
python3-pyqt5.qtx11extras-dbg python3-pyqt5.qtpositioning 
python3-pyqt5.qtpositioning-dbg python-pyqt5 python-pyqt5-dbg 
python-dbus.mainloop.pyqt5 python-dbus.mainloop.pyqt5-dbg python-pyqt5.enginio 
python-pyqt5.enginio-dbg
 python-pyqt5.qtopengl python-pyqt5.qtopengl-dbg python-pyqt5.qtsql 
python-pyqt5.qtsql-dbg python-pyqt5.qtwebkit python-pyqt5.qtwebkit-dbg 
python-pyqt5.qtwebsockets python-pyqt5.qtwebsockets-dbg 
python-pyqt5.qtxmlpatterns python-pyqt5.qtxmlpatterns-dbg python-pyqt5.qtsvg 
python-pyqt5.qtsvg-dbg python-pyqt5.qtmultimedia python-pyqt5.qtmultimedia-dbg 
python-pyqt5.qtquick python-pyqt5.qtquick-dbg python-pyqt5.qtserialport 
python-pyqt5.qtserialport-dbg python-pyqt5.qtsensors python-pyqt5.qtsensors-dbg 
python-pyqt5.qtx11extras python-pyqt5.qtx11extras-dbg python-pyqt5.qtpositioning
 python-pyqt5.qtpositioning-dbg
Architecture: source all
Version: 5.4.1+dfsg-3
Distribution: experimental
Urgency: medium
Maintainer: Debian Python Modules Team 
<[email protected]>
Changed-By: Dmitry Shachnev <[email protected]>
Description:
 pyqt5-dev  - Development files for PyQt5
 pyqt5-dev-tools - Development tools for PyQt5
 pyqt5-doc  - Documentation for PyQt5
 pyqt5-examples - Examples and demos for PyQt5
 python-dbus.mainloop.pyqt5 - D-Bus Qt main loop support for Python 2
 python-dbus.mainloop.pyqt5-dbg - D-Bus Qt main loop support for Python 2 
(debug extension)
 python-pyqt5 - Python 2 bindings for Qt5
 python-pyqt5-dbg - Python 2 bindings for Qt5 (debug extensions)
 python-pyqt5.enginio - Python 2 bindings for Enginio library
 python-pyqt5.enginio-dbg - Python 2 bindings for Enginio library (debug 
extension)
 python-pyqt5.qtmultimedia - Python 2 bindings for Qt5's Multimedia module
 python-pyqt5.qtmultimedia-dbg - Python 2 bindings for Qt5's Multimedia module 
(debug extensions)
 python-pyqt5.qtopengl - Python 2 bindings for Qt5's OpenGL module
 python-pyqt5.qtopengl-dbg - Python 2 bindings for Qt5's OpenGL module (debug 
extension)
 python-pyqt5.qtpositioning - Python 2 bindings for QtPositioning module
 python-pyqt5.qtpositioning-dbg - Python 2 bindings for QtPositioning module 
(debug extension)
 python-pyqt5.qtquick - Python 2 bindings for QtQuick module
 python-pyqt5.qtquick-dbg - Python 2 bindings for QtQuick module (debug 
extensions)
 python-pyqt5.qtsensors - Python 2 bindings for QtSensors module
 python-pyqt5.qtsensors-dbg - Python 2 bindings for QtSensors module (debug 
extension)
 python-pyqt5.qtserialport - Python 2 bindings for QtSerialPort module
 python-pyqt5.qtserialport-dbg - Python 2 bindings for QtSerialPort module 
(debug extension)
 python-pyqt5.qtsql - Python 2 bindings for Qt5's SQL module
 python-pyqt5.qtsql-dbg - Python 2 bindings for Qt5's SQL module (debug 
extension)
 python-pyqt5.qtsvg - Python 2 bindings for Qt5's SVG module
 python-pyqt5.qtsvg-dbg - Python 2 bindings for Qt5's SVG module (debug 
extension)
 python-pyqt5.qtwebkit - Python 2 bindings for Qt5's WebKit module
 python-pyqt5.qtwebkit-dbg - Python 2 bindings for Qt5's WebKit module (debug 
extensions)
 python-pyqt5.qtwebsockets - Python 2 bindings for Qt5's WebSockets module
 python-pyqt5.qtwebsockets-dbg - Python 2 bindings for Qt5's WebSockets module 
(debug extension)
 python-pyqt5.qtx11extras - Python 2 bindings for QtX11Extras module
 python-pyqt5.qtx11extras-dbg - Python 2 bindings for QtX11Extras module (debug 
extension)
 python-pyqt5.qtxmlpatterns - Python 2 bindings for Qt5's XmlPatterns module
 python-pyqt5.qtxmlpatterns-dbg - Python 2 bindings for Qt5's XmlPatterns 
module (debug extension)
 python3-dbus.mainloop.pyqt5 - D-Bus Qt main loop support for Python 3
 python3-dbus.mainloop.pyqt5-dbg - D-Bus Qt main loop support for Python 3 
(debug extension)
 python3-pyqt5 - Python 3 bindings for Qt5
 python3-pyqt5-dbg - Python 3 bindings for Qt5 (debug extensions)
 python3-pyqt5.enginio - Python 3 bindings for Enginio library
 python3-pyqt5.enginio-dbg - Python 3 bindings for Enginio library (debug 
extension)
 python3-pyqt5.qtmultimedia - Python 3 bindings for Qt5's Multimedia module
 python3-pyqt5.qtmultimedia-dbg - Python 3 bindings for Qt5's Multimedia module 
(debug extensions)
 python3-pyqt5.qtopengl - Python 3 bindings for Qt5's OpenGL module
 python3-pyqt5.qtopengl-dbg - Python 3 bindings for Qt5's OpenGL module (debug 
extension)
 python3-pyqt5.qtpositioning - Python 3 bindings for QtPositioning module
 python3-pyqt5.qtpositioning-dbg - Python 3 bindings for QtPositioning module 
(debug extension)
 python3-pyqt5.qtquick - Python 3 bindings for QtQuick module
 python3-pyqt5.qtquick-dbg - Python 3 bindings for QtQuick module (debug 
extension)
 python3-pyqt5.qtsensors - Python 3 bindings for QtSensors module
 python3-pyqt5.qtsensors-dbg - Python 3 bindings for QtSensors module (debug 
extension)
 python3-pyqt5.qtserialport - Python 3 bindings for QtSerialPort module
 python3-pyqt5.qtserialport-dbg - Python 3 bindings for QtSerialPort module 
(debug extension)
 python3-pyqt5.qtsql - Python 3 bindings for Qt5's SQL module
 python3-pyqt5.qtsql-dbg - Python 3 bindings for Qt5's SQL module (debug 
extension)
 python3-pyqt5.qtsvg - Python 3 bindings for Qt5's SVG module
 python3-pyqt5.qtsvg-dbg - Python 3 bindings for Qt5's SVG module (debug 
extension)
 python3-pyqt5.qtwebkit - Python 3 bindings for Qt5's WebKit module
 python3-pyqt5.qtwebkit-dbg - Python 3 bindings for Qt5's WebKit module (debug 
extensions)
 python3-pyqt5.qtwebsockets - Python 3 bindings for Qt5's WebSockets module
 python3-pyqt5.qtwebsockets-dbg - Python 3 bindings for Qt5's WebSockets module 
(debug extensions)
 python3-pyqt5.qtx11extras - Python 3 bindings for QtX11Extras module
 python3-pyqt5.qtx11extras-dbg - Python 3 bindings for QtX11Extras module 
(debug extension)
 python3-pyqt5.qtxmlpatterns - Python 3 bindings for Qt5's XmlPatterns module
 python3-pyqt5.qtxmlpatterns-dbg - Python 3 bindings for Qt5's XmlPatterns 
module (debug extension)
Closes: 787251
Changes:
 pyqt5 (5.4.1+dfsg-3) experimental; urgency=medium
 .
   * Update and unify descriptions of binary packages.
   * Backport upstream change to add support for Qt 5.4.2.
   * Let pyuic sort the import order (closes: #787251, thanks to Reiner
     Herrmann for the patch).
   * Build against Qt 5.4.2 to make sure we are ready for the transition.
Checksums-Sha1:
 ebedfc68d2e673c89f5c8148b242168d35457b33 7907 pyqt5_5.4.1+dfsg-3.dsc
 ede34176a984a4eaa00b5bdb940c12414d6e963c 15860 pyqt5_5.4.1+dfsg-3.debian.tar.xz
 6f6fbb92d44c0455323a14ab489dac4267fef4f2 284996 pyqt5-dev_5.4.1+dfsg-3_all.deb
 0ecfa0714990f99d334db0b27f80e72f572434ac 353414 pyqt5-doc_5.4.1+dfsg-3_all.deb
 ec1719f465a834b91dc62fc86f6f6e20996e20f1 1726264 
pyqt5-examples_5.4.1+dfsg-3_all.deb
Checksums-Sha256:
 179a94426bb3c4508df9d18a2390106841f8c6495a07175012a75178f1758888 7907 
pyqt5_5.4.1+dfsg-3.dsc
 e058e317028151ef186ecc0251a5736692034076768f6627513cd5eb5bcc5d8b 15860 
pyqt5_5.4.1+dfsg-3.debian.tar.xz
 07ba81059752d089999d108831d12b571ac26185aa9507a53b5abf6af798a043 284996 
pyqt5-dev_5.4.1+dfsg-3_all.deb
 66acc9eb8949a07f006de5fecc8ee59898479f23ef6cb60a8d18d0375b601c51 353414 
pyqt5-doc_5.4.1+dfsg-3_all.deb
 6eec78073980be3b7656da187c236746368b6f965de6409037e3d8380faa4058 1726264 
pyqt5-examples_5.4.1+dfsg-3_all.deb
Files:
 6bbb3d49093ed73891163bbba695506b 7907 python optional pyqt5_5.4.1+dfsg-3.dsc
 32e00aea72a370cc4a79119b17387202 15860 python optional 
pyqt5_5.4.1+dfsg-3.debian.tar.xz
 61ca6cc3701066fb2c3e5ebf5923e295 284996 python optional 
pyqt5-dev_5.4.1+dfsg-3_all.deb
 095dc28e0c1cd5fe9ca6c8aaab155361 353414 doc optional 
pyqt5-doc_5.4.1+dfsg-3_all.deb
 d6dca1bc7551985084db97087c0e96ea 1726264 python optional 
pyqt5-examples_5.4.1+dfsg-3_all.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBCAAGBQJVcv9eAAoJENb+cQNj+F3TJzsP/04rAUmgYeeEVxVCHo6AuLCS
s74A6bZuYAbroIPi6mYzCII/brSTLXGqV1iFRwa0gImh+vtlcY6cXwqyzrAGcQlL
hWzp07Sz97tIc+gUnHGsHUJIJM2nJgJZBdLLxTGqa05oFeH6WKThrhg/+OjpDGeF
41pus2EGsa+4YNBpisLwYLVgJnvJWyLRwhX7xqbRFiijjX2vWKRns0e+Ytgmy9Pj
t3KvEqeW6FMJ/kjbnuvAmS01tvc5qzB4t7UB5MIVEoI1iHNo2mmupIwm4EsImlHD
rp5Q3zG29fKNvP+Fa1Z+XH1u0r0utsstdZleMVgaQKzQ2gz5RwhJIHeimOTLB/hg
Zrbs0jH8u/mRgep4mx8D3H5VYe33Pxo9KGDJ/NE0YMDtmnb2fVc3VefDOhtj3cT2
pWgQLlL1kKLfqOfb29caO9V05UT6uCHbU+9mfD5tMfI1cnDLKcO80dwdHWIbxjor
gQCIH7GAPmMzBWk8LFZai9F8oDu1KjV8wxmfY3NmYK8qVCdESZNjLNEeJs+HItax
PVkWCnvD1g5UXcMVOtfyP3k+7iFxvV5jyQVF36VbMiDzcExjevCaO0N6zaSSZgUu
fIEcfV41ic2mDr+nt9/KqSXNEWJ7JLZgMTteaiRdYvS/3JwaDgRlwm4DFJyoQFk2
G/SF4BKR3qZZ6nnoZZ1U
=xQ5l
-----END PGP SIGNATURE-----

--- End Message ---
_______________________________________________
Python-modules-team mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/python-modules-team

Reply via email to