[Python-modules-team] Bug#893611: rpyc: please make the build reproducible
Chris Lamb
lamby at debian.org
Tue Mar 20 13:02:33 UTC 2018
Source: rpyc
Version: 3.4.4-1
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 rpyc could not be built reproducibly as it renders documentation
based on non-determinstic dict/set ordering.
Patch attached.
[0] https://reproducible-builds.org/
Regards,
--
,''`.
: :' : Chris Lamb
`. `'` lamby at debian.org / chris-lamb.co.uk
`-
-------------- next part --------------
--- a/debian/patches/0006-reproducible-build.patch 1969-12-31 19:00:00.000000000 -0500
--- b/debian/patches/0006-reproducible-build.patch 2018-03-20 08:50:04.883372778 -0400
@@ -0,0 +1,30 @@
+Description: Make the build reproducible
+Author: Chris Lamb <lamby at debian.org>
+Last-Update: 2018-03-20
+
+--- rpyc-3.4.4.orig/rpyc/core/protocol.py
++++ rpyc-3.4.4/rpyc/core/protocol.py
+@@ -7,6 +7,7 @@ import itertools
+ import socket
+ import time
+ import gc
++import collections
+
+ from threading import Lock, RLock, Event, Thread
+ from rpyc.lib.compat import pickle, next, is_py3k, maxint, select_error
+@@ -18,13 +19,13 @@ class PingError(Exception):
+ """The exception raised should :func:`Connection.ping` fail"""
+ pass
+
+-DEFAULT_CONFIG = dict(
++DEFAULT_CONFIG = collections.OrderedDict(
+ # ATTRIBUTES
+ allow_safe_attrs = True,
+ allow_exposed_attrs = True,
+ allow_public_attrs = False,
+ allow_all_attrs = False,
+- safe_attrs = set(['__abs__', '__add__', '__and__', '__bool__', '__cmp__', '__contains__',
++ safe_attrs = (['__abs__', '__add__', '__and__', '__bool__', '__cmp__', '__contains__',
+ '__delitem__', '__delslice__', '__div__', '__divmod__', '__doc__',
+ '__eq__', '__float__', '__floordiv__', '__ge__', '__getitem__',
+ '__getslice__', '__gt__', '__hash__', '__hex__', '__iadd__', '__iand__',
--- a/debian/patches/series 2018-03-20 08:37:44.615218463 -0400
--- b/debian/patches/series 2018-03-20 08:44:06.650721192 -0400
@@ -1,2 +1,3 @@
0002-skip-SSH-tests-Test_Ssh-and-Test_Deploy.patch
0005-connect-client-and-server-IP-in-TestUdpRegistry.patch
+0006-reproducible-build.patch
More information about the Python-modules-team
mailing list