summaryrefslogtreecommitdiff
path: root/dev-python/loky
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/loky')
-rw-r--r--dev-python/loky/Manifest3
-rw-r--r--dev-python/loky/files/loky-2.8.0-cloudpickle-1.5.patch39
-rw-r--r--dev-python/loky/loky-2.8.0-r1.ebuild (renamed from dev-python/loky/loky-2.8.0.ebuild)4
3 files changed, 45 insertions, 1 deletions
diff --git a/dev-python/loky/Manifest b/dev-python/loky/Manifest
index ab6f46db6ca0..09f8a4fbc9de 100644
--- a/dev-python/loky/Manifest
+++ b/dev-python/loky/Manifest
@@ -1,3 +1,4 @@
+AUX loky-2.8.0-cloudpickle-1.5.patch 1892 BLAKE2B c7ffea0bb50617db74d081345642ceef7044d44bbed10088fba6403fe69811957c13557dfcb80ef986337311078b02e3a97f7294075c3641fe9404327ec0a164 SHA512 aff27910cbabebc1c99e8765b11da7552ed09e9a145c841e82213304c7e3a00b028009e882e3b22471441066922a4e67feabac4bf9575f820e46b28fc3c1680e
DIST loky-2.8.0.tar.gz 112383 BLAKE2B 5561d96c0e0d23951dff303bdb1789f200b88e74ca44ef75119112491693c5876a9a70ad3688b3af9eaf12c0000d891067c936ca984404146890fb131f8c261e SHA512 15fbdb56994e08f643b7bd5aa68d193f74ab61ef1230df9e2101fb4602a201a050e3ecf08229fc4ad61e478c893e0b34b81371ef9596733baa0e3d008125cd11
-EBUILD loky-2.8.0.ebuild 730 BLAKE2B 09a62b500925d3b7707f8f3abb06e23ea964fad1e64eccbe34d43752f108b740715f1d27794e0113987750c98addcae8c09a45f4b44cf8169920981353cd4caa SHA512 2baacd860d51f84445e1e808ebdee79b56ee1ed0896c92df6f5b45c6800525dbbc1e2c7b93d9b05117972a999135b385e6d212f3c0975b1848fb0b46c092b3e9
+EBUILD loky-2.8.0-r1.ebuild 785 BLAKE2B 4a96b47729bb985a67d882a880df82f528d23d3a7a55ca27d580322cb9fffb02b9fbc43d74a17d055ee99123d842293c17f65f1889103d99469430b90f5747ff SHA512 b61fd0a822b8b319706d0d444d2d3a2917a124b80bd1155b927193be439d71e6b24d4fdd6650bf19d5d6501fcc3afd261429439fac8d01d897ecc1efe76ceb11
MISC metadata.xml 218 BLAKE2B 086fdcf7b63ca7bd6c58e861d717bb375e1cd372eff26d5d2eeeb176d8c5e6f10e653562abafb50eae7d7508f8e3d421b87e6a749acd0490308672828d0da697 SHA512 4558fee4c51117e21b1f42ca3edbdf1195ed297db798d6bfa0e5fbb7019654a187422b0abde7af5d800caffed66d1e55e4280e8be602bad591424d9776c46781
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 000000000000..05fb70455f0a
--- /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
index 19d795ff7893..ba05e5dcaaab 100644
--- a/dev-python/loky/loky-2.8.0.ebuild
+++ b/dev-python/loky/loky-2.8.0-r1.ebuild
@@ -25,6 +25,10 @@ BDEPEND="
distutils_enable_tests pytest
+PATCHES=(
+ "${FILESDIR}"/${P}-cloudpickle-1.5.patch
+)
+
src_prepare() {
# docker, seriously?
sed -e 's:test_cpu_count_cfs_limit:_&:' \