summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2022-09-23 09:55:48 +0200
committerMichał Górny <mgorny@gentoo.org>2022-09-23 10:11:50 +0200
commit8497d6cf4ab0bfa8b6e45c85a8b13fe4b111bcfc (patch)
tree8880853873c03117ac7673535de61ec662230d31 /dev-python/apsw
parentsci-mathematics/z3: Remove old (diff)
downloadgentoo-8497d6cf4ab0bfa8b6e45c85a8b13fe4b111bcfc.tar.gz
gentoo-8497d6cf4ab0bfa8b6e45c85a8b13fe4b111bcfc.tar.bz2
gentoo-8497d6cf4ab0bfa8b6e45c85a8b13fe4b111bcfc.zip
dev-python/apsw: Bump to 3.39.3.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/apsw')
-rw-r--r--dev-python/apsw/Manifest1
-rw-r--r--dev-python/apsw/apsw-3.39.3.0.ebuild55
-rw-r--r--dev-python/apsw/files/apsw-3.39.3.0-test.patch36
3 files changed, 92 insertions, 0 deletions
diff --git a/dev-python/apsw/Manifest b/dev-python/apsw/Manifest
index a529717cb763..29b5faaeabc1 100644
--- a/dev-python/apsw/Manifest
+++ b/dev-python/apsw/Manifest
@@ -1,3 +1,4 @@
DIST apsw-3.38.5-r1.gh.tar.gz 338186 BLAKE2B 145e38d4057be498f85a655ad7a437ec19a895769f58505b4b99093be30e67498faf9572494009db8e20e6700fa5e514605af131d045a4e8bb41587b828f5a88 SHA512 58331ca2db993f87316a55075ee9c440d4bd6e985e8ca11079391bd9cc2a907271ffe5c21d66840e336cd9e6568f6134c8b8fa5d28bbc7c77a1dddd48e8b99b7
DIST apsw-3.39.2.0.gh.tar.gz 345634 BLAKE2B 433455fdb0dbc6192bbb3ef47cc1d54faa310715b81312b999a84f90de61e5362e4af8d3a705816100381ae920283d84a50fb2e51308227eecf9de5b7166c4ac SHA512 4d3eb68d47cf8114e7823969277d0f42c4091632d4aeab61f66e91e99601b6a5286875515e860e27a2f736c943dad1657f5c47cbdd23a3d1479d3019bfd1c05b
DIST apsw-3.39.2.1.gh.tar.gz 363389 BLAKE2B 001efa8904c724ec051ac18d80ce55ce646c12ea4a218536494fa0e5804781ccc6c66287575c21553c0a97f4a806a5c7ab671116667d0368c32f7e614fd32a2f SHA512 10f08320157be96ad409472b50480b1b1875ec88ccb00690851aaef5864aa2bfc8000fce10ef0f00b820cfd5cebad950f0e7bba432018524cb292a6738ff30e8
+DIST apsw-3.39.3.0.gh.tar.gz 364874 BLAKE2B e23ca9ce125b2097f2e859d19053405070a3a09e061d27a175d4a3b721c4b68ac220b0522ca4e49075b937ebafdef8ba0cc5b0adc1ea389ee7c0c195b9f0850a SHA512 f9977f4112f2a7b11c0b0ab3576eada7b816dd69c518a637fc0152ba8fc4d12330febdd91abaf00af9e26049041024b590a4d60a9f055bf49c3301c92a68b539
diff --git a/dev-python/apsw/apsw-3.39.3.0.ebuild b/dev-python/apsw/apsw-3.39.3.0.ebuild
new file mode 100644
index 000000000000..08791f688c61
--- /dev/null
+++ b/dev-python/apsw/apsw-3.39.3.0.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="APSW - Another Python SQLite Wrapper"
+HOMEPAGE="
+ https://github.com/rogerbinns/apsw/
+ https://pypi.org/project/apsw/
+"
+SRC_URI="
+ https://github.com/rogerbinns/apsw/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="ZLIB"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc64 ~x86"
+IUSE="doc"
+
+DEPEND="
+ >=dev-db/sqlite-${PV%.*}:3
+"
+RDEPEND="
+ ${DEPEND}
+"
+
+PATCHES=(
+ # upstream backport for test problem
+ # https://github.com/rogerbinns/apsw/commit/ce1604f15544cffd5403764f6508bbe63726b5e3
+ "${FILESDIR}"/${P}-test.patch
+)
+
+src_configure() {
+ cat >> setup.cfg <<-EOF || die
+ [build_ext]
+ use_system_sqlite_config=True
+ EOF
+}
+
+python_test() {
+ esetup.py build_test_extension
+ cd "${T}" || die
+ "${EPYTHON}" -m apsw.tests -v || die "Tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( doc/. )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/apsw/files/apsw-3.39.3.0-test.patch b/dev-python/apsw/files/apsw-3.39.3.0-test.patch
new file mode 100644
index 000000000000..764fe4844bca
--- /dev/null
+++ b/dev-python/apsw/files/apsw-3.39.3.0-test.patch
@@ -0,0 +1,36 @@
+From a28713a9ebcc8d393beb270ca9fd5bf3b86a52bb Mon Sep 17 00:00:00 2001
+From: Roger Binns <rogerb@rogerbinns.com>
+Date: Thu, 22 Sep 2022 08:33:13 -0700
+Subject: [PATCH] Ensure uncompleted statement is present
+
+It turns out that under some circumstances Python hasattr
+is actually doing a getattr. That means an incomplete statement
+needs to be present for the hasattr to not raise an exception.
+
+See #370
+---
+ apsw/tests.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/apsw/tests.py b/apsw/tests.py
+index bdaf70d..e9ad3c0 100644
+--- a/apsw/tests.py
++++ b/apsw/tests.py
+@@ -772,6 +772,7 @@ class APSW(unittest.TestCase):
+ c.execute("drop table foo; create table foo (%s)" % (", ".join(["[%s] %s" % (n, t) for n, t in cols]), ))
+ c.execute("insert into foo([x a space]) values(1)")
+ c.execute("create temp table two(fred banana); insert into two values(7); create temp view three as select fred as [a space] from two")
++ c.execute("select 3") # see issue #370
+ has_full=any(o=="ENABLE_COLUMN_METADATA" or o.startswith("ENABLE_COLUMN_METADATA=") for o in apsw.compile_options) if apsw.using_amalgamation else hasattr(c, "description_full")
+ for row in c.execute("select * from foo"):
+ self.assertEqual(cols, c.getdescription())
+@@ -8835,4 +8836,4 @@ if __name__ == '__main__':
+ del re
+ gc.collect()
+
+- exit(exitcode)
+\ No newline at end of file
++ exit(exitcode)
+--
+2.37.3
+