summaryrefslogtreecommitdiff
path: root/dev-python/cloudpickle
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/cloudpickle')
-rw-r--r--dev-python/cloudpickle/Manifest3
-rw-r--r--dev-python/cloudpickle/cloudpickle-3.0.0.ebuild8
-rw-r--r--dev-python/cloudpickle/files/cloudpickle-3.0.0-py313.patch32
3 files changed, 40 insertions, 3 deletions
diff --git a/dev-python/cloudpickle/Manifest b/dev-python/cloudpickle/Manifest
index 52e9abb991f4..9d35a22bd175 100644
--- a/dev-python/cloudpickle/Manifest
+++ b/dev-python/cloudpickle/Manifest
@@ -1,3 +1,4 @@
+AUX cloudpickle-3.0.0-py313.patch 1225 BLAKE2B 59400a08fa7db0943989fce0039cc9707f107660c9e1fab0bd698459c215e3e50725fdd3f9b00f8a879c0e1a63de2a4c7edc1bde2fd467f1f957c76cc3f54dd8 SHA512 eb7c8094320fb6e27cd6df77b4224c460c481b9b6e2b7046c84f171b1074e1e4ff4d1b29deeaf27b7bd0e2be12254fcbeeb6609dd5449d9bc66371f21cbc64c6
DIST cloudpickle-3.0.0.gh.tar.gz 59519 BLAKE2B 6d5c7b98990bb4d59ffc4e75efe109814430c8b73753d630b169ce0c455e5d5105782a314d4921b5051d458758980c954b8a84cf79a9534c9a382a8066d03c27 SHA512 e091cc0de2489c06e020fac2852d25f7fd832036a2b2c4c34f0cda0c642a1c65413fc0f21dc51fec75803e7c7da37f26f613620150acd9ab4aa2bb7b1eaabb79
-EBUILD cloudpickle-3.0.0.ebuild 994 BLAKE2B af222b1c1e3a3ba286c250acee5d4f8b747251e59b96c49a5d11ae4c2c20c460170697ee17fe4396aaa9820588dd0571e8939537f5edb68f2de92e00382784df SHA512 e31a5006c3d80ce588916b76219bf8a1b1266eabc41994fbc1b8790f354e71b5ae88ef9f43db84f0ffc3ce86f64bcbb718c8ca8cbdf4a7d500d0dfc21651d3dc
+EBUILD cloudpickle-3.0.0.ebuild 1030 BLAKE2B ee385acae896629d205e472debc093e426e438ec217e2e0f96d010c48013d8c9c807125450fee348fc6fa82d5fd066ffab5250ce96d98c0e34e51a1f529dd858 SHA512 1e4c0ecbdbf2251499405b0ee82a46ba6b5b55bcad415e67246125539c5484895539108f4c2f592cbf903defe37fdfa8e3aedfc9a4b3a2d7580e3c2f4a412eb8
MISC metadata.xml 400 BLAKE2B 6b8036e6fee459cd45ff48884ade7ba9471d948ff06e46062584e5953fdaea8197525ec02e2dc44d4daa6326c7a1859680340e616f27d72ea1d98fe5c011a5cd SHA512 70c88c748d18923d3205c9f2ebc683e6b73240d4f8215f1bf3c3c91bb5eaac259066dc735f10806c43375432df581545831c616ab3aa7218981193956e6c0450
diff --git a/dev-python/cloudpickle/cloudpickle-3.0.0.ebuild b/dev-python/cloudpickle/cloudpickle-3.0.0.ebuild
index f0be98a6dc11..d0b42b0d4e92 100644
--- a/dev-python/cloudpickle/cloudpickle-3.0.0.ebuild
+++ b/dev-python/cloudpickle/cloudpickle-3.0.0.ebuild
@@ -4,8 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=flit
-# py3.13: https://github.com/cloudpipe/cloudpickle/issues/533
-PYTHON_COMPAT=( pypy3 python3_{10..12} )
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
inherit distutils-r1
@@ -31,6 +30,11 @@ BDEPEND="
distutils_enable_tests pytest
+PATCHES=(
+ # https://github.com/cloudpipe/cloudpickle/pull/534
+ "${FILESDIR}/${P}-py313.patch"
+)
+
python_test() {
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
local -x PYTHONPATH=${PYTHONPATH}:tests/cloudpickle_testpkg
diff --git a/dev-python/cloudpickle/files/cloudpickle-3.0.0-py313.patch b/dev-python/cloudpickle/files/cloudpickle-3.0.0-py313.patch
new file mode 100644
index 000000000000..5b9655b82716
--- /dev/null
+++ b/dev-python/cloudpickle/files/cloudpickle-3.0.0-py313.patch
@@ -0,0 +1,32 @@
+From 3dc53183e86bb9f0ee9d45ff9d4971036c61ecba Mon Sep 17 00:00:00 2001
+From: Lumir Balhar <lbalhar@redhat.com>
+Date: Wed, 15 May 2024 10:43:50 +0200
+Subject: [PATCH] Fix test_extract_class_dict for Python 3.13 beta 1
+
+Resolves: https://github.com/cloudpipe/cloudpickle/issues/533
+Closes: https://github.com/cloudpipe/cloudpickle/pull/534
+---
+ tests/cloudpickle_test.py | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/tests/cloudpickle_test.py b/tests/cloudpickle_test.py
+index 4041bf7..6d0d915 100644
+--- a/tests/cloudpickle_test.py
++++ b/tests/cloudpickle_test.py
+@@ -108,7 +108,12 @@ def test_extract_class_dict():
+ return "c"
+
+ clsdict = _extract_class_dict(C)
+- assert sorted(clsdict.keys()) == ["C_CONSTANT", "__doc__", "method_c"]
++ expected_keys = ["C_CONSTANT", "__doc__", "method_c"]
++ # New attribute in Python 3.13 beta 1
++ # https://github.com/python/cpython/pull/118475
++ if sys.version_info >= (3, 13):
++ expected_keys.insert(2, "__firstlineno__")
++ assert sorted(clsdict.keys()) == expected_keys
+ assert clsdict["C_CONSTANT"] == 43
+ assert clsdict["__doc__"] is None
+ assert clsdict["method_c"](C()) == C().method_c()
+--
+2.45.2
+