[Python-modules-team] Bug#878707: python-amqp: please make the build reproducible

Chris Lamb lamby at debian.org
Mon Oct 16 00:34:53 UTC 2017


Source: python-amqp
Version: 1.4.9-2
Severity: wishlist
Tags: patch
User: reproducible-builds at lists.alioth.debian.org
Usertags: randomness
X-Debbugs-Cc: reproducible-bugs at lists.alioth.debian.org

Hi,

Whilst working on the Reproducible Builds effort [0], we noticed
that python-amqp could not be built reproducibly.

This is due to the generated documentation non-deterministically
orders the skip_attrs set.

Patch attached.

 [0] https://reproducible-builds.org/


Regards,

-- 
      ,''`.
     : :'  :     Chris Lamb
     `. `'`      lamby at debian.org / chris-lamb.co.uk
       `-
-------------- next part --------------
--- a/amqp/five.py	2017-10-15 20:30:33.599193127 -0400
--- b/amqp/five.py	2017-10-15 20:33:07.841817590 -0400
@@ -116,7 +116,7 @@
     BytesIO = WhateverIO = StringIO         # noqa
 
 
-def with_metaclass(Type, skip_attrs=set(['__dict__', '__weakref__'])):
+def with_metaclass(Type, skip_attrs=None):
     """Class decorator to set metaclass.
 
     Works with both Python 3 and Python 3 and it does not add
@@ -125,6 +125,9 @@
 
     """
 
+    if skip_attrs is None:
+        skip_attrs = set(['__dict__', '__weakref__'])
+
     def _clone_with_metaclass(Class):
         attrs = dict((key, value) for key, value in items(vars(Class))
                      if key not in skip_attrs)


More information about the Python-modules-team mailing list