forked from pool/python-pyrsistent
Accepting request 1190485 from home:glaubitz:branches:devel:languages:python
- Cherry-pick upstream patch to fix compatibility with Python 3.13 * replace-private-function.patch OBS-URL: https://build.opensuse.org/request/show/1190485 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyrsistent?expand=0&rev=33
This commit is contained in:
@@ -1,3 +1,9 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 30 13:00:09 UTC 2024 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||
|
||||
- Cherry-pick upstream patch to fix compatibility with Python 3.13
|
||||
* replace-private-function.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Jan 5 17:29:47 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
||||
|
||||
|
@@ -25,6 +25,8 @@ License: MIT
|
||||
Group: Development/Languages/Python
|
||||
URL: http://github.com/tobgu/pyrsistent/
|
||||
Source: https://files.pythonhosted.org/packages/source/p/pyrsistent/pyrsistent-%{version}.tar.gz
|
||||
# PATCH-FIX-UPSTREAM - gh/tobgu/pyrsistent#284 - Replace _PyList_Extend with PyList_SetSlice
|
||||
Patch: https://patch-diff.githubusercontent.com/raw/tobgu/pyrsistent/pull/284.patch#/replace-private-function.patch
|
||||
BuildRequires: %{python_module devel}
|
||||
BuildRequires: %{python_module hypothesis}
|
||||
BuildRequires: %{python_module pip}
|
||||
@@ -47,6 +49,7 @@ is left untouched.
|
||||
|
||||
%prep
|
||||
%setup -q -n pyrsistent-%{version}
|
||||
%patch -P0 -p1
|
||||
|
||||
%build
|
||||
export CFLAGS="%{optflags}"
|
||||
|
36
replace-private-function.patch
Normal file
36
replace-private-function.patch
Normal file
@@ -0,0 +1,36 @@
|
||||
From c876adc774e7bb3c896b013f13d7c6ce80e79544 Mon Sep 17 00:00:00 2001
|
||||
From: "Benjamin A. Beasley" <code@musicinmybrain.net>
|
||||
Date: Thu, 26 Oct 2023 09:53:40 -0400
|
||||
Subject: [PATCH] Replace _PyList_Extend with PyList_SetSlice
|
||||
|
||||
This private function is no longer exported in Python 3.13.
|
||||
|
||||
It is possible that a PyList_Extend() function-like macro may be added
|
||||
before Python 3.13 final, but using PyList_SetSlice() directly will
|
||||
still work.
|
||||
|
||||
https://github.com/python/cpython/pull/108451
|
||||
|
||||
https://github.com/python/cpython/issues/111138
|
||||
---
|
||||
pvectorcmodule.c | 4 +---
|
||||
1 file changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/pvectorcmodule.c b/pvectorcmodule.c
|
||||
index 8667abb..9b83a56 100644
|
||||
--- a/pvectorcmodule.c
|
||||
+++ b/pvectorcmodule.c
|
||||
@@ -1313,12 +1313,10 @@ static PyObject *PVectorEvolver_append(PVectorEvolver *self, PyObject *args) {
|
||||
}
|
||||
|
||||
static PyObject *PVectorEvolver_extend(PVectorEvolver *self, PyObject *args) {
|
||||
- PyObject *retVal = _PyList_Extend((PyListObject *)self->appendList, args);
|
||||
- if (retVal == NULL) {
|
||||
+ if (PyList_SetSlice(self->appendList, PY_SSIZE_T_MAX, PY_SSIZE_T_MAX, args) < 0) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
- Py_DECREF(retVal);
|
||||
Py_INCREF(self);
|
||||
return (PyObject*)self;
|
||||
}
|
Reference in New Issue
Block a user