summaryrefslogtreecommitdiff
path: root/dev-python/peewee
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-07-30 16:42:15 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-07-30 16:42:15 +0100
commitaca0af8133e724b7edf0b5c6efe12c39077a3dc9 (patch)
tree77f3ebc779dbb8fda935ed9895b424d3201f7804 /dev-python/peewee
parentd97adbb13d8d4ce3f0521498a11e3d3af2154de2 (diff)
gentoo auto-resync : 30:07:2023 - 16:42:14
Diffstat (limited to 'dev-python/peewee')
-rw-r--r--dev-python/peewee/Manifest4
-rw-r--r--dev-python/peewee/files/peewee-3.16.2-cython3.patch102
-rw-r--r--dev-python/peewee/peewee-3.16.2-r1.ebuild60
-rw-r--r--dev-python/peewee/peewee-3.16.2.ebuild3
4 files changed, 167 insertions, 2 deletions
diff --git a/dev-python/peewee/Manifest b/dev-python/peewee/Manifest
index 0258fe669235..f2713ddaaf14 100644
--- a/dev-python/peewee/Manifest
+++ b/dev-python/peewee/Manifest
@@ -1,3 +1,5 @@
+AUX peewee-3.16.2-cython3.patch 4551 BLAKE2B e3c57e65250b31b5726ae5b9b4d0f3b2f01cd37b8a6adc4ab17187ab88ad2f1f8eabbd673b04a7220a13b2d994c16b5d16cc511473c1a21d057938598284351b SHA512 526d676672e7452947303a910b98fb8b3e80d98f7bf63871cbb34309e3a844db3b546d073f030ed85dabdcb65b3293e20c3020bbd9e2af25fb203c99321bed77
DIST peewee-3.16.2.gh.tar.gz 912162 BLAKE2B d865a63fb0eeff064b6655029741291ebd002ffa428fe98f87b319874713064eed9500fb45e3710b7e1223ea2537408d51dc4a6f40b525467f074f225c05bf20 SHA512 7e507d9f2ace45c5ec482d657e7722812fae10eea9a23b12caf2611d3739bc6dc70800f21d606d5e854e3209dd6d2ff73b93f004515f6549c3bbc423bce650d8
-EBUILD peewee-3.16.2.ebuild 1010 BLAKE2B 0271a903816b704cd064ed184866375ccbb72316864df3b527973e3ed99fa6aebbfae49eb58dc5c5bf5fba101ade08d3207999627aecba9fa083b6de9b2e4f07 SHA512 fcbfa932042e50ca0d0b83e77efcc3d7b00572a19a2e2af6284798ecd2e67e7add1b824376ef90e16fe06b3e5278abc270beb2dd1c4cfe82ccc76d8190c2184b
+EBUILD peewee-3.16.2-r1.ebuild 1060 BLAKE2B 26942cdd135ad2d5b4709d18b607f52c4b5c12e02041c6cc4863a44a029f5bb016f756f4646ba913905e16381da56f32718dafde5ed49f72a3b10de8c7f59d89 SHA512 17a093ffbefb2b723918fa24477393f8b42a162dcef293cea13b96177ccd8041e9f4762aa49bc0c5565bda248c015ae185f0635d46d1298692ae93b612b2ec63
+EBUILD peewee-3.16.2.ebuild 1041 BLAKE2B d198b980f25f60220cc5ed724bbbdbf3bcef209166b301a32393cecd5a26ddda84fb3fb91ad6810e3dd74666f90f9502596bdb62800cf6282495e25004a21641 SHA512 3fcaefd1eded9bf8a5050143b900bb48086408d119f00cca20e748bd4be8e03abd37d43b50115f9c14008e9b7c008f60ce8663845de945a43bf08531868ba95f
MISC metadata.xml 493 BLAKE2B 60dbc97d8a2acf239b6ae84ae48153ec7985399ef588de5fd3d5e06db137353ba8440eeb811fe90edb66aef70550c514c23f53cf8ee2c5e8146504dae71cef19 SHA512 28227e81ad41534f8dc80dc478cb72e116aa3d5259bb91dd20121fcadd803a04715a986e21d4302a0c8129a4fcafbd71645636b0e5b3384a661f3ee93d41fde2
diff --git a/dev-python/peewee/files/peewee-3.16.2-cython3.patch b/dev-python/peewee/files/peewee-3.16.2-cython3.patch
new file mode 100644
index 000000000000..5ddbd7ae9377
--- /dev/null
+++ b/dev-python/peewee/files/peewee-3.16.2-cython3.patch
@@ -0,0 +1,102 @@
+https://github.com/coleifer/peewee/commit/83c6b78bd5df2c8c942f4fc32c4daedde01e8a63
+
+From 83c6b78bd5df2c8c942f4fc32c4daedde01e8a63 Mon Sep 17 00:00:00 2001
+From: Charles Leifer <coleifer@gmail.com>
+Date: Tue, 18 Jul 2023 17:37:27 -0500
+Subject: [PATCH] Changes for Cython 3.0
+
+--- a/playhouse/_sqlite_ext.pyx
++++ b/playhouse/_sqlite_ext.pyx
+@@ -386,7 +386,7 @@ ctypedef struct peewee_cursor:
+ # We define an xConnect function, but leave xCreate NULL so that the
+ # table-function can be called eponymously.
+ cdef int pwConnect(sqlite3 *db, void *pAux, int argc, const char *const*argv,
+- sqlite3_vtab **ppVtab, char **pzErr) with gil:
++ sqlite3_vtab **ppVtab, char **pzErr) noexcept with gil:
+ cdef:
+ int rc
+ object table_func_cls = <object>pAux
+@@ -407,7 +407,7 @@ cdef int pwConnect(sqlite3 *db, void *pAux, int argc, const char *const*argv,
+ return rc
+
+
+-cdef int pwDisconnect(sqlite3_vtab *pBase) with gil:
++cdef int pwDisconnect(sqlite3_vtab *pBase) noexcept with gil:
+ cdef:
+ peewee_vtab *pVtab = <peewee_vtab *>pBase
+ object table_func_cls = <object>(pVtab.table_func_cls)
+@@ -419,7 +419,8 @@ cdef int pwDisconnect(sqlite3_vtab *pBase) with gil:
+
+ # The xOpen method is used to initialize a cursor. In this method we
+ # instantiate the TableFunction class and zero out a new cursor for iteration.
+-cdef int pwOpen(sqlite3_vtab *pBase, sqlite3_vtab_cursor **ppCursor) with gil:
++cdef int pwOpen(sqlite3_vtab *pBase, sqlite3_vtab_cursor **ppCursor) \
++ noexcept with gil:
+ cdef:
+ peewee_vtab *pVtab = <peewee_vtab *>pBase
+ peewee_cursor *pCur = <peewee_cursor *>0
+@@ -443,7 +444,7 @@ cdef int pwOpen(sqlite3_vtab *pBase, sqlite3_vtab_cursor **ppCursor) with gil:
+ return SQLITE_OK
+
+
+-cdef int pwClose(sqlite3_vtab_cursor *pBase) with gil:
++cdef int pwClose(sqlite3_vtab_cursor *pBase) noexcept with gil:
+ cdef:
+ peewee_cursor *pCur = <peewee_cursor *>pBase
+ object table_func = <object>pCur.table_func
+@@ -454,7 +455,7 @@ cdef int pwClose(sqlite3_vtab_cursor *pBase) with gil:
+
+ # Iterate once, advancing the cursor's index and assigning the row data to the
+ # `row_data` field on the peewee_cursor struct.
+-cdef int pwNext(sqlite3_vtab_cursor *pBase) with gil:
++cdef int pwNext(sqlite3_vtab_cursor *pBase) noexcept with gil:
+ cdef:
+ peewee_cursor *pCur = <peewee_cursor *>pBase
+ object table_func = <object>pCur.table_func
+@@ -483,7 +484,7 @@ cdef int pwNext(sqlite3_vtab_cursor *pBase) with gil:
+
+ # Return the requested column from the current row.
+ cdef int pwColumn(sqlite3_vtab_cursor *pBase, sqlite3_context *ctx,
+- int iCol) with gil:
++ int iCol) noexcept with gil:
+ cdef:
+ bytes bval
+ peewee_cursor *pCur = <peewee_cursor *>pBase
+@@ -502,7 +503,7 @@ cdef int pwColumn(sqlite3_vtab_cursor *pBase, sqlite3_context *ctx,
+ return python_to_sqlite(ctx, row_data[iCol])
+
+
+-cdef int pwRowid(sqlite3_vtab_cursor *pBase, sqlite3_int64 *pRowid):
++cdef int pwRowid(sqlite3_vtab_cursor *pBase, sqlite3_int64 *pRowid) noexcept:
+ cdef:
+ peewee_cursor *pCur = <peewee_cursor *>pBase
+ pRowid[0] = <sqlite3_int64>pCur.idx
+@@ -510,7 +511,7 @@ cdef int pwRowid(sqlite3_vtab_cursor *pBase, sqlite3_int64 *pRowid):
+
+
+ # Return a boolean indicating whether the cursor has been consumed.
+-cdef int pwEof(sqlite3_vtab_cursor *pBase):
++cdef int pwEof(sqlite3_vtab_cursor *pBase) noexcept:
+ cdef:
+ peewee_cursor *pCur = <peewee_cursor *>pBase
+ return 1 if pCur.stopped else 0
+@@ -520,7 +521,8 @@ cdef int pwEof(sqlite3_vtab_cursor *pBase):
+ # get access to the parameters that the function was called with, and call the
+ # TableFunction's `initialize()` function.
+ cdef int pwFilter(sqlite3_vtab_cursor *pBase, int idxNum,
+- const char *idxStr, int argc, sqlite3_value **argv) with gil:
++ const char *idxStr, int argc, sqlite3_value **argv) \
++ noexcept with gil:
+ cdef:
+ peewee_cursor *pCur = <peewee_cursor *>pBase
+ object table_func = <object>pCur.table_func
+@@ -572,7 +574,7 @@ cdef int pwFilter(sqlite3_vtab_cursor *pBase, int idxNum,
+ # SQLite will (in some cases, repeatedly) call the xBestIndex method to try and
+ # find the best query plan.
+ cdef int pwBestIndex(sqlite3_vtab *pBase, sqlite3_index_info *pIdxInfo) \
+- with gil:
++ noexcept with gil:
+ cdef:
+ int i
+ int col_idx
+
diff --git a/dev-python/peewee/peewee-3.16.2-r1.ebuild b/dev-python/peewee/peewee-3.16.2-r1.ebuild
new file mode 100644
index 000000000000..ec4ed7a1c49d
--- /dev/null
+++ b/dev-python/peewee/peewee-3.16.2-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..11} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1
+
+DESCRIPTION="Small Python ORM"
+HOMEPAGE="
+ https://github.com/coleifer/peewee/
+ https://pypi.org/project/peewee/
+"
+SRC_URI="
+ https://github.com/coleifer/${PN}/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE="examples +native-extensions test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ native-extensions? ( dev-db/sqlite:3= )
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-cython3.patch
+)
+
+distutils_enable_sphinx docs
+
+src_compile() {
+ if ! use native-extensions; then
+ local -x NO_SQLITE=1
+ fi
+
+ distutils-r1_src_compile
+}
+
+python_test() {
+ "${EPYTHON}" runtests.py -v 2 || die "tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use examples && DOCS=( examples/ )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/peewee/peewee-3.16.2.ebuild b/dev-python/peewee/peewee-3.16.2.ebuild
index fda9861f01ff..5899a2ffb369 100644
--- a/dev-python/peewee/peewee-3.16.2.ebuild
+++ b/dev-python/peewee/peewee-3.16.2.ebuild
@@ -32,8 +32,9 @@ DEPEND="
RDEPEND="
${DEPEND}
"
+# <cython-3 for bug #911412
BDEPEND="
- dev-python/cython[${PYTHON_USEDEP}]
+ <dev-python/cython-3[${PYTHON_USEDEP}]
"
distutils_enable_sphinx docs