summaryrefslogtreecommitdiff
path: root/dev-python/psycopg
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python/psycopg')
-rw-r--r--dev-python/psycopg/Manifest2
-rw-r--r--dev-python/psycopg/psycopg-3.2.5.ebuild119
2 files changed, 121 insertions, 0 deletions
diff --git a/dev-python/psycopg/Manifest b/dev-python/psycopg/Manifest
index 26e86273e46d..07d4e7b7e3ce 100644
--- a/dev-python/psycopg/Manifest
+++ b/dev-python/psycopg/Manifest
@@ -2,6 +2,7 @@ DIST psycopg-3.1.19.gh.tar.gz 507073 BLAKE2B c10e2ba83f4a3bb0646d86c0f1311ae43e3
DIST psycopg-3.2.2.gh.tar.gz 550226 BLAKE2B 2731190da5b044f16eb0f90fb5417244e46fc0906dde6ee9bd1ee4d91613f59ef1943da6662ad1f3db1487b8cc2b4ccb4e0a79ecc056a8f72c7e2b7b70e39abd SHA512 48686101c9d568003ffbf90cf07bc4496fb161f599b60a2b2df41ac120f338bee7edbeae3786071969d6bbb9acdbe868fa568b9cfa3b7a17dec2d47e5d54f002
DIST psycopg-3.2.3.gh.tar.gz 550802 BLAKE2B 1f748fc2dc915fd82b2bc557ae4263ecf1070d5ba08681cb6ae21570acf601b03a2bde7e4324cd506e0146c86db976b003c57e99cd1948a930c074f0674d6ba8 SHA512 cf543652cfd27cf1cad3b1e3b8b50802562cc49f8fbd9ae5bd85ffdf26e30dc470f1f3380261c8cad418945ade8dc4f199ebcba08968cb87fd0b6c241fd8040d
DIST psycopg-3.2.4.gh.tar.gz 555758 BLAKE2B 1b74f8a6ee91266fb6c6a13ee51fd7d18514b4ce662f911f83baba652bb9198cae21636f6f1dad6eae916cc2c22f2322629dea346e61ce94a1d94a80c8e8b5be SHA512 026f4a74011c37e594903931da629fa0150834db0916bc02a45aa31eb79fbbcd9a0b6b59809d4db389e298101646409097d99c4950981ddb43413a7488e4f1ff
+DIST psycopg-3.2.5.gh.tar.gz 558069 BLAKE2B 1913db4e399d9e44e392019471d3b7a5fbbff1da67a87961b084ca2fa34ddf2af3c862093077bfe04503d16187abff4ab62e33b1a3505b7a8cafa836bcf33ba3 SHA512 f4c62e462f6fba04f7b07bf500cbf5ee3e0ffa570c682f507aae0fc5ee88a1eec3f98da05c9a2c957d018f12f53a9567565f8b81914eb36ca92992fa2ccd8156
DIST psycopg2-2.9.10.tar.gz 385672 BLAKE2B 4a3ad64f406c427b785ffeb85f6520aa67ed04de2d1749eb22d8275146b71ba451f7c04c9ead401d6f7a273781492cd6a5a36beba68b36b1e5203ee75f7df503 SHA512 d0916f6a645b5e87f89f2463dc22fad78340a85fbff320d099bf429a42557f40d3a4eebdc670768469aef1e9fcee60123767bfe49e1186e8574f95bfd6f46900
DIST psycopg2-2.9.4.tar.gz 384017 BLAKE2B 4bc0afcc890c8a257c1ccd5c6e4e5301857a80f8b1428aa46c1473c9e18f5d2914a2e592c13336b06106217bb334d9b0321835bdd123f1627cbeb29dedf97bf7 SHA512 259088e42e0ab0d8a1a0ccf04f5e560f32c6179b4a0a0059e91bcf269baa8f4b0f1f949c332c640a2438c927a29b2c144078a861f8e18ba9c764da7c93c73b8d
DIST psycopg2-2.9.9.tar.gz 384926 BLAKE2B 8418fca1329703cedfc86be74d85cae5133a0604bb8a21fa43e5359a46626d38ef227d0cd8fbbeb497e2db517a469d7f3e86b74ef9163617a547e999073a6b4c SHA512 a691fd09762221e854861dedce37b05e5354e0701feea470a6d5046960056ef02a8c9ecfa751adeba485271ea7d5834643b7d3a3c3f3270087f5ed9c68509f5f
@@ -12,4 +13,5 @@ EBUILD psycopg-3.1.19.ebuild 2699 BLAKE2B 4811b1892ad611f109358ebb9ba5f0d2bac235
EBUILD psycopg-3.2.2.ebuild 2750 BLAKE2B b382765a05edabb433fde30defe8526c3e0936afc374fd65e7af6d469a806ad53b5df6ef94d314e21212e4c76a28277ea54a6976fed5e1ae215a6c792aeb540b SHA512 70095274cf0d3baa3f1382329c5f715fe22af31165268e8e86f7b65926ba8dde73dec881e19a3e50d818d1f805638446f323cccc9a216548d55b93e527a0fe9f
EBUILD psycopg-3.2.3.ebuild 2750 BLAKE2B 3fa79a3325434ebfad21aea41e2af7fe45664eb67609a355f2861dcb666a0fc0e36776bed482c0b3656132ed12a668d9994c841b214623a607abf14e1455c571 SHA512 bd3a34e9cd07b2354758e69d40a4bc8bf60e3bb88625fea93647289662b85ea697626bacd29ecf5c2f12a4cf16e15407c8e7f95615a009e20265bb78681b4a5b
EBUILD psycopg-3.2.4.ebuild 2751 BLAKE2B e95d11b2e996a74405a81520d67c8b3eb7abeae221bf02d00dd6aab7923c3656651519e288b205345f5160242d4fc29abc8ab361a267e1feb2a1c416b82364f6 SHA512 32b50523af865569fa8c766e636eebe3622a17f0c2d6b9b36072bbfa82aea273ac1040fe350d9495a2d45b78efae1d1fb83a602132ecde96d24187629d63d187
+EBUILD psycopg-3.2.5.ebuild 2755 BLAKE2B 4bf696e99327e922ad5fb2128fae957fba93927b2b2fb07131cb83b79e6f07ac5aaff45fabdc172f9653c0368b63a0a31227a89dcdaafd1d6b6b91695c56131c SHA512 48c562ad901e5d41c5eb373db90ca685d0b6b6f459bf9bb6ddf4640a67ba3b80cc70fe73d237ae0461b7ee0d5c94bbd267a8c5f5336ce178535141009050bc66
MISC metadata.xml 426 BLAKE2B a573dbbef89ba2c3c7e7aa11e87005879fa823daa8d7e2080ce82dab7196429769b5e2ed0c4ffb363443469dfa47524d900fae75c4d7c8c9da901389e746838f SHA512 e3059428d8c00113696bfd232b2ad3fd4efccc304a31ff45801f30bb07c03acd58aafcab187fd85e4d89eff4db6c18a1395744eb1fd5cf8f11e43aca0f4e60cc
diff --git a/dev-python/psycopg/psycopg-3.2.5.ebuild b/dev-python/psycopg/psycopg-3.2.5.ebuild
new file mode 100644
index 000000000000..d5a124be5907
--- /dev/null
+++ b/dev-python/psycopg/psycopg-3.2.5.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+
+inherit distutils-r1 flag-o-matic
+
+DESCRIPTION="PostgreSQL database adapter for Python"
+HOMEPAGE="
+ https://www.psycopg.org/psycopg3/
+ https://github.com/psycopg/psycopg/
+ https://pypi.org/project/psycopg/
+"
+SRC_URI="
+ https://github.com/psycopg/psycopg/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="+native-extensions"
+
+DEPEND="
+ native-extensions? (
+ >=dev-db/postgresql-8.1:=
+ )
+ !native-extensions? (
+ >=dev-db/postgresql-8.1:*
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/typing-extensions-4.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/tomli[${PYTHON_USEDEP}]
+ ' 3.10)
+ )
+ test? (
+ >=dev-db/postgresql-8.1[server]
+ >=dev-python/anyio-4.0[${PYTHON_USEDEP}]
+ >=dev-python/dnspython-2.1[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ # -Werror=strict-aliasing
+ # https://bugs.gentoo.org/935401
+ # https://github.com/psycopg/psycopg/issues/867
+ #
+ # Do not trust with LTO either.
+ append-flags -fno-strict-aliasing
+ filter-lto
+
+ # Python code + ctypes backend
+ cd psycopg || die
+ distutils-r1_python_compile
+
+ # optional C backend
+ if use native-extensions && [[ ${EPYTHON} != pypy3 ]]; then
+ local DISTUTILS_USE_PEP517=standalone
+ cd ../psycopg_c || die
+ distutils-r1_python_compile
+ fi
+ cd .. || die
+}
+
+src_test() {
+ rm -r psycopg{,_c} || die
+
+ initdb -D "${T}"/pgsql || die
+ # TODO: random port
+ pg_ctl -w -D "${T}"/pgsql start \
+ -o "-h '' -k '${T}'" || die
+ createdb -h "${T}" test || die
+
+ local -x PSYCOPG_TEST_DSN="host=${T} dbname=test"
+ distutils-r1_src_test
+
+ pg_ctl -w -D "${T}"/pgsql stop || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # tests for the psycopg_pool package
+ tests/pool
+ # some broken mypy magic
+ tests/test_module.py::test_version
+ tests/test_module.py::test_version_c
+ tests/test_typing.py
+ tests/crdb/test_typing.py
+ # TODO, relying on undefined ordering in Python?
+ tests/test_dns_srv.py::test_srv
+ )
+
+ local impls=( python )
+ if use native-extensions && [[ ${EPYTHON} != pypy3 ]]; then
+ impls+=( c )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PSYCOPG_IMPL
+ for PSYCOPG_IMPL in "${impls[@]}"; do
+ einfo "Testing with ${PSYCOPG_IMPL} implementation ..."
+ # leak and timing tests are fragile whereas slow tests are slow
+ epytest -p anyio -k "not leak" \
+ -m "not timing and not slow and not flakey"
+ done
+}