Accepting request 1130333 from devel:languages:python

- update to 0.20:
  * Enable support for pattern matching (#96)
  * add support for aix/sunos (#98)
  * Python 3.12 compatibility (#105)
  * Add __contains__ to MapKeys (#99)
  * Add PEP 585 GenericAlias support (#101)
  * Move metadata to `pyproject.toml`, fix test fixture inclusion
    in sdist (#111)
- drop python312.patch (upstream)

- add python312.patch to fix build with python 3.12
- Update to version 0.19
- drop skip_32bit_tests.patch, test_none_collisions-32-bit.patch (upstream)
  * python 3.9 support
- skip tests that fail on 32bit

OBS-URL: https://build.opensuse.org/request/show/1130333
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-immutables?expand=0&rev=15
This commit is contained in:
Dominique Leuenberger 2023-12-02 16:12:25 +00:00 committed by Git OBS Bridge
commit 70cc2312d6
5 changed files with 22 additions and 100 deletions

BIN
immutables-0.19.tar.gz (Stored with Git LFS)

Binary file not shown.

3
immutables-0.20.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1d2f83e6a6a8455466cd97b9a90e2b4f7864648616dfa6b19d18f49badac3876
size 88933

View File

@ -1,3 +1,16 @@
-------------------------------------------------------------------
Fri Dec 1 16:59:24 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 0.20:
* Enable support for pattern matching (#96)
* add support for aix/sunos (#98)
* Python 3.12 compatibility (#105)
* Add __contains__ to MapKeys (#99)
* Add PEP 585 GenericAlias support (#101)
* Move metadata to `pyproject.toml`, fix test fixture inclusion
in sdist (#111)
- drop python312.patch (upstream)
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Aug 14 20:48:16 UTC 2023 - Dirk Müller <dmueller@suse.com> Mon Aug 14 20:48:16 UTC 2023 - Dirk Müller <dmueller@suse.com>

View File

@ -18,14 +18,12 @@
%{?sle15_python_module_pythons} %{?sle15_python_module_pythons}
Name: python-immutables Name: python-immutables
Version: 0.19 Version: 0.20
Release: 0 Release: 0
Summary: Immutable collections for Python Summary: Immutable collections for Python
License: Apache-2.0 License: Apache-2.0
URL: https://github.com/MagicStack/immutables URL: https://github.com/MagicStack/immutables
Source: https://files.pythonhosted.org/packages/source/i/immutables/immutables-%{version}.tar.gz Source: https://files.pythonhosted.org/packages/source/i/immutables/immutables-%{version}.tar.gz
# PATCH-FIX-UPSTREAM: https://github.com/MagicStack/immutables/commit/f7978225ea562e128b07cae936acd7926d9e64e7
Patch1: python312.patch
BuildRequires: %{python_module devel >= 3.8} BuildRequires: %{python_module devel >= 3.8}
BuildRequires: %{python_module pytest} BuildRequires: %{python_module pytest}
BuildRequires: %{python_module setuptools} BuildRequires: %{python_module setuptools}
@ -45,9 +43,6 @@ export CFLAGS="%{optflags}"
%install %install
%python_install %python_install
%{python_expand rm %{buildroot}%{$python_sitearch}/immutables/*.[ch]
%fdupes %{buildroot}%{$python_sitearch}
}
%check %check
export IMMU_SKIP_MYPY_TESTS=1 export IMMU_SKIP_MYPY_TESTS=1

View File

@ -1,86 +0,0 @@
From f7978225ea562e128b07cae936acd7926d9e64e7 Mon Sep 17 00:00:00 2001
From: Elvis Pranskevichus <elvis@edgedb.com>
Date: Fri, 21 Jul 2023 15:30:33 -0700
Subject: [PATCH] Python 3.12 compatibility (#105)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Also, drop 3.6 and 3.7 as unsupported.
Fixes: #104
Closes: #97
Closes: #100
Closes: #103
Co-authored-by: Petr Vaněk <arkamar@atlas.cz>
Co-authored-by: Anton Agestam <git@antonagestam.se>
--- a/immutables/_map.c
+++ b/immutables/_map.c
@@ -529,10 +529,10 @@ _map_dump_format(_PyUnicodeWriter *writer, const char *format, ...)
int ret;
va_list vargs;
-#ifdef HAVE_STDARG_PROTOTYPES
- va_start(vargs, format);
-#else
+#if PY_VERSION_HEX < 0x030C00A1 && !defined(HAVE_STDARG_PROTOTYPES)
va_start(vargs);
+#else
+ va_start(vargs, format);
#endif
msg = PyUnicode_FromFormatV(format, vargs);
va_end(vargs);
@@ -1247,7 +1247,7 @@ map_node_bitmap_dealloc(MapNode_Bitmap *self)
Py_ssize_t i;
PyObject_GC_UnTrack(self);
- Py_TRASHCAN_SAFE_BEGIN(self)
+ Py_TRASHCAN_BEGIN(self, map_node_bitmap_dealloc)
if (len > 0) {
i = len;
@@ -1257,7 +1257,7 @@ map_node_bitmap_dealloc(MapNode_Bitmap *self)
}
Py_TYPE(self)->tp_free((PyObject *)self);
- Py_TRASHCAN_SAFE_END(self)
+ Py_TRASHCAN_END
}
static int
@@ -1664,7 +1664,7 @@ map_node_collision_dealloc(MapNode_Collision *self)
Py_ssize_t len = Py_SIZE(self);
PyObject_GC_UnTrack(self);
- Py_TRASHCAN_SAFE_BEGIN(self)
+ Py_TRASHCAN_BEGIN(self, map_node_collision_dealloc)
if (len > 0) {
@@ -1674,7 +1674,7 @@ map_node_collision_dealloc(MapNode_Collision *self)
}
Py_TYPE(self)->tp_free((PyObject *)self);
- Py_TRASHCAN_SAFE_END(self)
+ Py_TRASHCAN_END
}
static int
@@ -2083,14 +2083,14 @@ map_node_array_dealloc(MapNode_Array *self)
Py_ssize_t i;
PyObject_GC_UnTrack(self);
- Py_TRASHCAN_SAFE_BEGIN(self)
+ Py_TRASHCAN_BEGIN(self, map_node_array_dealloc)
for (i = 0; i < HAMT_ARRAY_NODE_SIZE; i++) {
Py_XDECREF(self->a_array[i]);
}
Py_TYPE(self)->tp_free((PyObject *)self);
- Py_TRASHCAN_SAFE_END(self)
+ Py_TRASHCAN_END
}
static int