* [gentoo-commits] repo/gentoo:master commit in: dev-python/loky/files/, dev-python/loky/
@ 2020-07-02 12:42 Michał Górny
0 siblings, 0 replies; only message in thread
From: Michał Górny @ 2020-07-02 12:42 UTC (permalink / raw
To: gentoo-commits
commit: cc9f77e7cb0fe3de5c8bf85b9dc41648c2dbf3e0
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 2 11:43:08 2020 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Thu Jul 2 12:42:49 2020 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cc9f77e7
dev-python/loky: Add a patch for cloudpickle-1.5+
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
.../loky/files/loky-2.8.0-cloudpickle-1.5.patch | 39 ++++++++++++++++++++++
.../{loky-2.8.0.ebuild => loky-2.8.0-r1.ebuild} | 7 ++--
2 files changed, 43 insertions(+), 3 deletions(-)
diff --git a/dev-python/loky/files/loky-2.8.0-cloudpickle-1.5.patch b/dev-python/loky/files/loky-2.8.0-cloudpickle-1.5.patch
new file mode 100644
index 00000000000..05fb70455f0
--- /dev/null
+++ b/dev-python/loky/files/loky-2.8.0-cloudpickle-1.5.patch
@@ -0,0 +1,39 @@
+From 0e930389f4785f9d311b090f92057563e22b9768 Mon Sep 17 00:00:00 2001
+From: tomMoral <thomas.moreau.2010@gmail.com>
+Date: Thu, 2 Jul 2020 13:37:14 +0200
+Subject: [PATCH] FIX cloudpickle customization mechanism
+
+---
+ loky/backend/reduction.py | 12 ++++++++----
+ 1 file changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/loky/backend/reduction.py b/loky/backend/reduction.py
+index 0bad5f63..d87fbdff 100644
+--- a/loky/backend/reduction.py
++++ b/loky/backend/reduction.py
+@@ -189,6 +189,10 @@ def __init__(self, writer, reducers=None, protocol=HIGHEST_PROTOCOL):
+ self.dispatch = self._dispatch.copy()
+ else:
+ if getattr(self, "dispatch_table", None) is not None:
++ # Make sure dispatch table is an instance level field
++ # as it is not the case for isntance for cloudpickle1.5+
++ # see joblib/loky#259
++ self.dispatch_table = self.dispatch_table.copy()
+ self.dispatch_table.update(self._dispatch_table.copy())
+ else:
+ self.dispatch_table = self._dispatch_table.copy()
+@@ -202,10 +206,10 @@ def register(self, type, reduce_func):
+ if sys.version_info < (3,):
+ # Python 2 pickler dispatching is not explicitly customizable.
+ # Let us use a closure to workaround this limitation.
+- def dispatcher(self, obj):
+- reduced = reduce_func(obj)
+- self.save_reduce(obj=obj, *reduced)
+- self.dispatch[type] = dispatcher
++ def dispatcher(self, obj):
++ reduced = reduce_func(obj)
++ self.save_reduce(obj=obj, *reduced)
++ self.dispatch[type] = dispatcher
+ else:
+ self.dispatch_table[type] = reduce_func
+
diff --git a/dev-python/loky/loky-2.8.0.ebuild b/dev-python/loky/loky-2.8.0-r1.ebuild
similarity index 86%
rename from dev-python/loky/loky-2.8.0.ebuild
rename to dev-python/loky/loky-2.8.0-r1.ebuild
index 6d84a226623..ba05e5dcaaa 100644
--- a/dev-python/loky/loky-2.8.0.ebuild
+++ b/dev-python/loky/loky-2.8.0-r1.ebuild
@@ -25,13 +25,14 @@ BDEPEND="
distutils_enable_tests pytest
+PATCHES=(
+ "${FILESDIR}"/${P}-cloudpickle-1.5.patch
+)
+
src_prepare() {
# docker, seriously?
sed -e 's:test_cpu_count_cfs_limit:_&:' \
-i tests/test_loky_module.py || die
- # suddenly started failing :-(
- sed -e 's:test_serialization:_&:' \
- -i tests/_test_process_executor.py || die
distutils-r1_src_prepare
}
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2020-07-02 12:43 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-07-02 12:42 [gentoo-commits] repo/gentoo:master commit in: dev-python/loky/files/, dev-python/loky/ Michał Górny
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox