forked from pool/python-lmdb
Accepting request 1225041 from devel:languages:python
- add py313-support.patch to fix build with py313 - Update to v1.4.0 OBS-URL: https://build.opensuse.org/request/show/1225041 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-lmdb?expand=0&rev=13
This commit is contained in:
46
py313-support.patch
Normal file
46
py313-support.patch
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
From 206a3754466397baeb418e70be9d35b12cc4079f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Adam Williamson <awilliam@redhat.com>
|
||||||
|
Date: Wed, 4 Sep 2024 19:09:04 +0200
|
||||||
|
Subject: [PATCH] Fix build with Python 3.13+
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Avoid using PyObject_AsReadBuffer, do what PyObject_AsReadBuffer does.
|
||||||
|
|
||||||
|
Note that this is not safe, and it has never been safe,
|
||||||
|
but the code does *exactly* what it used to do (at least on Python 3.8+).
|
||||||
|
|
||||||
|
Fixes https://github.com/jnwatson/py-lmdb/issues/362
|
||||||
|
|
||||||
|
Co-Authored-By: Miro Hrončok <miro@hroncok.cz>
|
||||||
|
---
|
||||||
|
lmdb/cpython.c | 12 ++++++++++++
|
||||||
|
1 file changed, 12 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/lmdb/cpython.c b/lmdb/cpython.c
|
||||||
|
index 3030883..81fdb06 100644
|
||||||
|
--- a/lmdb/cpython.c
|
||||||
|
+++ b/lmdb/cpython.c
|
||||||
|
@@ -545,9 +545,21 @@ val_from_buffer(MDB_val *val, PyObject *buf)
|
||||||
|
type_error("Won't implicitly convert Unicode to bytes; use .encode()");
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
+#if PY_VERSION_HEX < 0x030d0000
|
||||||
|
return PyObject_AsReadBuffer(buf,
|
||||||
|
(const void **) &val->mv_data,
|
||||||
|
(Py_ssize_t *) &val->mv_size);
|
||||||
|
+#else
|
||||||
|
+ Py_buffer view;
|
||||||
|
+ int ret;
|
||||||
|
+ ret = PyObject_GetBuffer(buf, &view, PyBUF_SIMPLE);
|
||||||
|
+ if(ret == 0) {
|
||||||
|
+ val->mv_data = view.buf;
|
||||||
|
+ val->mv_size = view.len;
|
||||||
|
+ PyBuffer_Release(&view);
|
||||||
|
+ }
|
||||||
|
+ return ret;
|
||||||
|
+#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
/* ------------------- */
|
||||||
@@ -1,3 +1,8 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Nov 19 10:20:27 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- add py313-support.patch to fix build with py313
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Jul 1 16:53:38 UTC 2024 - Mia Herkt <mia@0x0.st>
|
Mon Jul 1 16:53:38 UTC 2024 - Mia Herkt <mia@0x0.st>
|
||||||
|
|
||||||
@@ -12,7 +17,7 @@ Thu Apr 6 16:05:15 UTC 2023 - Mia Herkt <mia@0x0.st>
|
|||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue Dec 13 15:43:15 UTC 2022 - Yogalakshmi Arunachalam <yarunachalam@suse.com>
|
Tue Dec 13 15:43:15 UTC 2022 - Yogalakshmi Arunachalam <yarunachalam@suse.com>
|
||||||
|
|
||||||
- Update to v1.4.0
|
- Update to v1.4.0
|
||||||
* Update manifest and a copyright
|
* Update manifest and a copyright
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ License: OLDAP-2.8
|
|||||||
Group: Development/Languages/Python
|
Group: Development/Languages/Python
|
||||||
URL: https://github.com/dw/py-lmdb/
|
URL: https://github.com/dw/py-lmdb/
|
||||||
Source: https://files.pythonhosted.org/packages/source/l/lmdb/lmdb-%{version}.tar.gz
|
Source: https://files.pythonhosted.org/packages/source/l/lmdb/lmdb-%{version}.tar.gz
|
||||||
|
Patch1: https://github.com/jnwatson/py-lmdb/pull/368/commits/206a3754466397baeb418e70be9d35b12cc4079f.patch#/py313-support.patch
|
||||||
BuildRequires: %{python_module cffi}
|
BuildRequires: %{python_module cffi}
|
||||||
BuildRequires: %{python_module devel}
|
BuildRequires: %{python_module devel}
|
||||||
BuildRequires: %{python_module pytest}
|
BuildRequires: %{python_module pytest}
|
||||||
@@ -52,7 +53,7 @@ LMDB is a tiny database with the following properties:
|
|||||||
LMDB uses the operating system’s buffer cache.
|
LMDB uses the operating system’s buffer cache.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n lmdb-%{version}
|
%autosetup -p1 -n lmdb-%{version}
|
||||||
|
|
||||||
%build
|
%build
|
||||||
export LMDB_FORCE_SYSTEM=1
|
export LMDB_FORCE_SYSTEM=1
|
||||||
|
|||||||
Reference in New Issue
Block a user