Sync from SUSE:SLFO:Main python-cloudpickle revision a944eb55302067c3c60bd291d67c0e81

This commit is contained in:
Adrian Schröter 2024-12-13 11:16:50 +01:00
parent f4ccfe23b9
commit d36f840735
5 changed files with 53 additions and 9 deletions

View File

@ -0,0 +1,18 @@
diff --git a/tests/cloudpickle_test.py b/tests/cloudpickle_test.py
index 5aa4bac..af5ef3e 100644
--- a/tests/cloudpickle_test.py
+++ b/tests/cloudpickle_test.py
@@ -110,7 +110,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()

BIN
cloudpickle-2.2.1.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
cloudpickle-3.0.0-gh.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +1,24 @@
-------------------------------------------------------------------
Mon Sep 9 09:43:13 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Cherry-pick proposed patch from Fedora to fix testsuite with Python 3.13
* Fix-test_extract_class_dict-for-Python-313.patch
-------------------------------------------------------------------
Thu Aug 29 15:43:09 UTC 2024 - Ben Greiner <code@bnavigator.de>
Update to 3.0.0
* Officially support Python 3.12 and drop support for Python 3.6
and 3.7. Dropping support for older Python versions made it
possible to simplify the code base signficantly, hopefully
making it easier to contribute to and maintain the project. (PR
#515)
* Fix pickling of dataclasses and their instances. (issue #386,
PR #513)
* Any color you like as long as it's black. (PR #521)
* Drop setup.py and setuptools in favor of pyproject.toml and
flit. (PR #521)
-------------------------------------------------------------------
Tue Jul 9 10:27:54 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>

View File

@ -18,13 +18,17 @@
%{?sle15_python_module_pythons}
Name: python-cloudpickle
Version: 2.2.1
Version: 3.0.0
Release: 0
Summary: Extended pickling support for Python objects
License: BSD-3-Clause
URL: https://github.com/cloudpipe/cloudpickle
Source: https://files.pythonhosted.org/packages/source/c/cloudpickle/cloudpickle-%{version}.tar.gz
BuildRequires: %{python_module setuptools}
Source: https://github.com/cloudpipe/cloudpickle/archive/refs/tags/v{%version}.tar.gz#/cloudpickle-%{version}-gh.tar.gz
# PATCH-FIX-UPSTREAM gh/cloudpipe/cloudpickle#534 - Fix test_extract_class_dict for Python 3.13 beta 1
Patch: Fix-test_extract_class_dict-for-Python-313.patch
BuildRequires: %{python_module base >= 3.8}
BuildRequires: %{python_module flit-core}
BuildRequires: %{python_module pip}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildArch: noarch
@ -33,6 +37,7 @@ BuildRequires: %{python_module curses}
BuildRequires: %{python_module psutil}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module py}
BuildRequires: %{python_module setuptools if %python-base >= 3.12}
BuildRequires: %{python_module tornado}
%if 0%{?suse_version} > 1600
BuildRequires: %{python_module numpy >= 1.18.5}
@ -57,10 +62,10 @@ functions and classes defined interactively in the __main__ module.
%autosetup -p1 -n cloudpickle-%{version}
%build
%python_build
%pyproject_wheel
%install
%python_install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
@ -73,6 +78,6 @@ export PYTHONPATH=':./tests/cloudpickle_testpkg'
%doc README.md
%license LICENSE
%{python_sitelib}/cloudpickle
%{python_sitelib}/cloudpickle-%{version}*-info
%{python_sitelib}/cloudpickle-%{version}.dist-info
%changelog