summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-11-01 18:55:14 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2023-11-01 18:55:14 +0000
commit054cf8144e42f15629c6921de998ff8557b81a6e (patch)
tree125cabbb1472f24a208e60fa3248b4f050eba8c6 /dev-python
parent2091a0f79162c6500fde6d334babf73042804b16 (diff)
downloadbaldeagleos-repo-054cf8144e42f15629c6921de998ff8557b81a6e.tar.gz
baldeagleos-repo-054cf8144e42f15629c6921de998ff8557b81a6e.tar.xz
baldeagleos-repo-054cf8144e42f15629c6921de998ff8557b81a6e.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/PyQt5/PyQt5-5.15.10-r1.ebuild (renamed from dev-python/PyQt5/PyQt5-5.15.10.ebuild)2
-rw-r--r--dev-python/boltons/Manifest1
-rw-r--r--dev-python/boltons/boltons-23.1.1.ebuild28
-rw-r--r--dev-python/josepy/Manifest1
-rw-r--r--dev-python/josepy/josepy-1.14.0.ebuild33
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/patsy/patsy-0.5.3-r1.ebuild14
-rw-r--r--dev-python/pslab/Manifest (renamed from dev-python/pslab-python/Manifest)0
-rw-r--r--dev-python/pslab/files/pslab-2.5.0-ad9833_sys_version.patch (renamed from dev-python/pslab-python/files/pslab-python-2.5.0-ad9833_sys_version.patch)0
-rw-r--r--dev-python/pslab/metadata.xml (renamed from dev-python/pslab-python/metadata.xml)0
-rw-r--r--dev-python/pslab/pslab-2.5.0.ebuild (renamed from dev-python/pslab-python/pslab-python-2.5.0.ebuild)11
-rw-r--r--dev-python/rapidfuzz/Manifest1
-rw-r--r--dev-python/rapidfuzz/rapidfuzz-3.5.1.ebuild50
-rw-r--r--dev-python/selenium/Manifest2
-rw-r--r--dev-python/selenium/selenium-4.15.0.ebuild63
-rw-r--r--dev-python/stapler/files/stapler-1.0.0_p20220330-PyPDF2-to-pypdf-r1.patch52
-rw-r--r--dev-python/stapler/stapler-1.0.0_p20220330-r4.ebuild39
-rw-r--r--dev-python/structlog/Manifest1
-rw-r--r--dev-python/structlog/structlog-23.1.0.ebuild31
-rw-r--r--dev-python/structlog/structlog-23.2.0.ebuild2
-rw-r--r--dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild1
-rw-r--r--dev-python/wtforms/Manifest1
-rw-r--r--dev-python/wtforms/wtforms-3.1.1.ebuild36
-rw-r--r--dev-python/zstandard/Manifest1
-rw-r--r--dev-python/zstandard/files/zstandard-0.22.0-build.patch53
-rw-r--r--dev-python/zstandard/zstandard-0.22.0.ebuild74
27 files changed, 457 insertions, 52 deletions
diff --git a/dev-python/PyQt5/PyQt5-5.15.10.ebuild b/dev-python/PyQt5/PyQt5-5.15.10-r1.ebuild
index 95032fc1a5da..7ac9641a1109 100644
--- a/dev-python/PyQt5/PyQt5-5.15.10.ebuild
+++ b/dev-python/PyQt5/PyQt5-5.15.10-r1.ebuild
@@ -81,7 +81,7 @@ DEPEND="
"
RDEPEND="
${DEPEND}
- >=dev-python/PyQt5-sip-12.11:=[${PYTHON_USEDEP}]
+ >=dev-python/PyQt5-sip-12.13:=[${PYTHON_USEDEP}]
"
BDEPEND="
>=dev-python/PyQt-builder-1.14.1[${PYTHON_USEDEP}]
diff --git a/dev-python/boltons/Manifest b/dev-python/boltons/Manifest
index efed86534364..72e706c9b60c 100644
--- a/dev-python/boltons/Manifest
+++ b/dev-python/boltons/Manifest
@@ -1 +1,2 @@
DIST boltons-23.0.0.gh.tar.gz 243426 BLAKE2B 94913e31611d844404df9514e3449ec8142c142c3e3fc223d912a5e6ab22e5a502ebf1594e3ea9143eb57d80745e34d5e19080bb24e1ad9b42b52cc544c608d4 SHA512 f8e2ed488dbdf0dfa4090aac8c6ee97c382fdf8a2728567e2a5542f46bb00932f3b9498865d45a718216d5f9355e419a228c624844c25f89df458e00bc9e2e83
+DIST boltons-23.1.1.tar.gz 244629 BLAKE2B 458e40179e98cfa914d9f66de18f89b2e6192a7ef38e4c827466fd2eabfa05245a9e592f2d0ff570f0d2288039f6564dd931404de7119730d6e4dbe6a9ddd886 SHA512 bc07d46f08f4883cfbaa54cf27dfb53fba57538d7d98b846840efad5ade64fecc6f9cc5d7dd3271236a1e12111d9e537f847995f28df2d7779026e0939e4ca98
diff --git a/dev-python/boltons/boltons-23.1.1.ebuild b/dev-python/boltons/boltons-23.1.1.ebuild
new file mode 100644
index 000000000000..0748200e4275
--- /dev/null
+++ b/dev-python/boltons/boltons-23.1.1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Pure-python utilities in the same spirit as the standard library"
+HOMEPAGE="https://boltons.readthedocs.io/"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+distutils_enable_tests pytest
+
+DOCS=( CHANGELOG.md README.md TODO.rst )
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # breaks on traceback text changes caused by e.g. pytest-qt noise
+ tests/test_tbutils.py::test_exception_info
+ )
+
+ epytest -p no:django
+}
diff --git a/dev-python/josepy/Manifest b/dev-python/josepy/Manifest
index b7d48b5be013..e955d10d99bd 100644
--- a/dev-python/josepy/Manifest
+++ b/dev-python/josepy/Manifest
@@ -1 +1,2 @@
DIST josepy-1.13.0.tar.gz 59045 BLAKE2B e4f3caed3be0775a49d6a9c38bf6e2b61ecc50b4e3804afa9e597b741821ab63a27fe95d1592531fee7152e2076760d838f4efa50ab8b3e2f1e129c9d7457f8c SHA512 fb91946ac4bbb2a81195d200e4fdf06d40865b345005ab4ee328fd72545da2345b44c5b9ffb3115b16ffed65ab3a0c01d5b20d0d2ff3c2c2af30537a6a4721df
+DIST josepy-1.14.0.tar.gz 58794 BLAKE2B f7f6568dd3ffceda2a15297c26cee84efc88cfb666a6edacb6528fe77404a21fc5a77e691eb4260bd9c52125092d3cef3cbf76195f9a9f9800804020d18eea55 SHA512 e003916fb6c8d0907c5b63a20a37f167ca720d377f4fbb434884cc0d50c63aa100ff62ca753615b810b9874f4f95249f9c7c7fa03fa25b1449d2e5a9d4f7f167
diff --git a/dev-python/josepy/josepy-1.14.0.ebuild b/dev-python/josepy/josepy-1.14.0.ebuild
new file mode 100644
index 000000000000..9e28d5bea4c9
--- /dev/null
+++ b/dev-python/josepy/josepy-1.14.0.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="JOSE protocol implementation in Python"
+HOMEPAGE="
+ https://github.com/certbot/josepy/
+ https://pypi.org/project/josepy/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/cryptography-1.5[${PYTHON_USEDEP}]
+ >=dev-python/pyopenssl-0.13[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # I haven't seen a single switch to poetry without major bugs yet...
+ sed -i -e 's:^include:exclude:' pyproject.toml || die
+
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index e9da2ac43cac..a11d7c268c91 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1,3 +1 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
-EBUILD langdetect-1.0.9.ebuild 493 BLAKE2B 0df8bce19bc80f79f8e76bcef5a4c2caf333365fe0cb9a3c076b7858bceded5a3e58921474f866a2709dd657b7ed330c1ec4a7f9d7bab0fcf1bc92d77cabc32d SHA512 ea2a1adcb133ac5fc951ba1aa90ef1ce3dfcc424e59727591763d4875aa044a74188be2d15fd89c6b2e83ed6ea04ec3d9851ed584ae79d2c2c127bde7d994b48
-MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index 020e07f2a3dd..736a1167c898 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -1,12 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
- <maintainer type="person">
- <email>marcin.deranek@slonko.net</email>
- <name>Marcin Deranek</name>
- </maintainer>
- <upstream>
- <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
- </upstream>
- <origin>slonko-overlay</origin>
+
+ <origin>gentoo-guru-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/patsy/patsy-0.5.3-r1.ebuild b/dev-python/patsy/patsy-0.5.3-r1.ebuild
index 7c0729b0ffbd..47720df21163 100644
--- a/dev-python/patsy/patsy-0.5.3-r1.ebuild
+++ b/dev-python/patsy/patsy-0.5.3-r1.ebuild
@@ -3,12 +3,18 @@
EAPI=8
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
DISTUTILS_USE_PEP517=setuptools
+# py3.12: https://github.com/pydata/patsy/issues/196
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
inherit distutils-r1 pypi
DESCRIPTION="Python module to describe statistical models and design matrices"
-HOMEPAGE="https://patsy.readthedocs.io/en/latest/index.html"
+HOMEPAGE="
+ https://patsy.readthedocs.io/en/latest/index.html
+ https://github.com/pydata/patsy/
+ https://pypi.org/project/patsy/
+"
LICENSE="BSD"
SLOT="0"
@@ -17,7 +23,9 @@ KEYWORDS="amd64 arm arm64 ~hppa ~ia64 ~ppc ppc64 ~riscv ~s390 ~sparc x86 ~amd64-
RDEPEND="
dev-python/numpy[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]
- !hppa? ( dev-python/scipy[${PYTHON_USEDEP}] )
+ !hppa? (
+ dev-python/scipy[${PYTHON_USEDEP}]
+ )
"
distutils_enable_tests pytest
diff --git a/dev-python/pslab-python/Manifest b/dev-python/pslab/Manifest
index 1b7fb58e68e3..1b7fb58e68e3 100644
--- a/dev-python/pslab-python/Manifest
+++ b/dev-python/pslab/Manifest
diff --git a/dev-python/pslab-python/files/pslab-python-2.5.0-ad9833_sys_version.patch b/dev-python/pslab/files/pslab-2.5.0-ad9833_sys_version.patch
index b34182266c4a..b34182266c4a 100644
--- a/dev-python/pslab-python/files/pslab-python-2.5.0-ad9833_sys_version.patch
+++ b/dev-python/pslab/files/pslab-2.5.0-ad9833_sys_version.patch
diff --git a/dev-python/pslab-python/metadata.xml b/dev-python/pslab/metadata.xml
index d39bad4e4c1b..d39bad4e4c1b 100644
--- a/dev-python/pslab-python/metadata.xml
+++ b/dev-python/pslab/metadata.xml
diff --git a/dev-python/pslab-python/pslab-python-2.5.0.ebuild b/dev-python/pslab/pslab-2.5.0.ebuild
index 77caa07e3cea..c8b97605421f 100644
--- a/dev-python/pslab-python/pslab-python-2.5.0.ebuild
+++ b/dev-python/pslab/pslab-2.5.0.ebuild
@@ -3,11 +3,12 @@
EAPI=8
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
inherit distutils-r1
+MY_P=pslab-python-${PV}
DESCRIPTION="Python library for communicating with Pocket Science Lab"
HOMEPAGE="
https://pslab.io/
@@ -16,8 +17,9 @@ HOMEPAGE="
"
SRC_URI="
https://github.com/fossasia/pslab-python/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
+ -> ${MY_P}.gh.tar.gz
"
+S=${WORKDIR}/${MY_P}
LICENSE="GPL-3+"
SLOT="0"
@@ -38,11 +40,10 @@ PATCHES=(
"${FILESDIR}"/${PN}-2.5.0-ad9833_sys_version.patch
)
-# Flaky in 2.5.0
EPYTEST_DESELECT=(
+ # Flaky in 2.5.0
tests/test_logic_analyzer.py::test_stop
)
-distutils_enable_tests pytest
-
distutils_enable_sphinx docs dev-python/recommonmark
+distutils_enable_tests pytest
diff --git a/dev-python/rapidfuzz/Manifest b/dev-python/rapidfuzz/Manifest
index e7dcbdd58a2c..0b18516dd996 100644
--- a/dev-python/rapidfuzz/Manifest
+++ b/dev-python/rapidfuzz/Manifest
@@ -4,3 +4,4 @@ DIST rapidfuzz-3.2.0.tar.gz 1472554 BLAKE2B 7946f6139aec1ca9ccc623750bd09601e041
DIST rapidfuzz-3.3.0.tar.gz 1507179 BLAKE2B 59f45a3a2551d4ccc1e3c077abbd2ce2e569be51dd72b0378a2744557d65588d9a98c53048471fe8f1b4600f3b997e26477d65bac983954ae9d8331aea4dc5c3 SHA512 ee3a362f7c9bf4c54cff93a8c3d830541f07ed67628469b1406261fca086bd15eb4a418ece56fa3e4f25e0c6b859080d19582f5eea90547541a39d35ec70ea19
DIST rapidfuzz-3.3.1.tar.gz 1507246 BLAKE2B 66964d155d682704266a32ce6632d91db4c0fdcf82722c6d58e7c305b0c4a341890b3c57d9936cc0f019b4aa5658279fc6d2f8885c17096ed8cb1721e2c633d3 SHA512 13f32818bdf1e71a30610c252afa1685ad64b858bff5b4309b5dfeca5f281096fc9fcd0683ed543bca0cee00db96df1c4fb6e0b76408c3694b508a9735d6cffc
DIST rapidfuzz-3.4.0.tar.gz 1490201 BLAKE2B c82d72d2ef807f236ab9f0807de466f3434fbfc143cbe2128520003f8d300a6bed3a5967ee7bc48a354be4c549557e85a05c4d2d45d294b8a9b93cef71f2d7ff SHA512 b90ef939d53b9ae775422ded53d9523da49c09a4e78aefeb19e2b47f365de00ae0e6d5729171aa28057011551308ae240114edaab7876687983aaed53176f3dd
+DIST rapidfuzz-3.5.1.tar.gz 1524202 BLAKE2B dcd2e8cb206018fdd78bda727a74d65768835eae67e9338b3fc1d9cf25f36aff8cb018285ec8309d6a67f78c6b87e03b42e694d13a1d8a2513403ccb728cf482 SHA512 346f02c69995d250e023475eccc6da8ed99ab837a209d1f5f7c30f22cb42e883dec9ec7cc7d1b7c89176c976cc9a0db00eb5658b5dfb0b6088f02f9686c895c1
diff --git a/dev-python/rapidfuzz/rapidfuzz-3.5.1.ebuild b/dev-python/rapidfuzz/rapidfuzz-3.5.1.ebuild
new file mode 100644
index 000000000000..6a79842b1520
--- /dev/null
+++ b/dev-python/rapidfuzz/rapidfuzz-3.5.1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 2022-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+# custom wrapper over setuptools
+DISTUTILS_USE_PEP517=standalone
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Rapid fuzzy string matching in Python using various string metrics"
+HOMEPAGE="
+ https://github.com/maxbachmann/RapidFuzz/
+ https://pypi.org/project/rapidfuzz/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+# all these are header-only libraries
+DEPEND="
+ >=dev-cpp/taskflow-3.0.0
+ >=dev-cpp/rapidfuzz-cpp-2.2.2
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/rapidfuzz-capi[${PYTHON_USEDEP}]
+ >=dev-python/scikit-build-0.16.2[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # sterilize build flags
+ sed -i -e '/CMAKE_INTERPROCEDURAL_OPTIMIZATION/d' CMakeLists.txt || die
+ # remove bundled libraries
+ rm -r extern || die
+
+ distutils-r1_src_prepare
+
+ # TODO: re-cythonnize when we can reliably dep on Cython >= 3
+ export RAPIDFUZZ_BUILD_EXTENSION=1
+}
diff --git a/dev-python/selenium/Manifest b/dev-python/selenium/Manifest
index f7c2ef45fec1..c1f2ddc4825e 100644
--- a/dev-python/selenium/Manifest
+++ b/dev-python/selenium/Manifest
@@ -1,4 +1,6 @@
DIST selenium-4.13.0.tar.gz 9266949 BLAKE2B fbf6bf204b47648d67f3205729db232097a92bc3fbb491bb98308e1171d4a7b090f57f5153f07a642a5e6f476c12758496021fc2a7fc02ea7d525d9e4bef5fb7 SHA512 9f1531a5693d1f67a7fcafd0623bfaf85876fa0bf6292679a04d5b3976b1e8a46ea2718ae61b8f2da68005d7b6e11cda6eb9390b0094756a26fadec839e3efe8
DIST selenium-4.14.0.tar.gz 9710348 BLAKE2B 038660990ce32c725b7c166031a7e78be5df2f9b1d0abe133e73566a9b9060c189310269fcf5db1330c2a2b1ed2901d8453b7134094528c73ca9dff899258914 SHA512 b41d81eeecdce428bfadfa3dc8c190512eb4243f710730519a3868987fa5f21db4a0fd7666b0dc9f40e56fbcf046f79a799ed32a31b7ab7e3c440d7f990a00bd
+DIST selenium-4.15.0.tar.gz 9954324 BLAKE2B d5baa36c9674e6286be0ce2276fe55eb029f64d9ef8e551d36c6f72458b2e9465107f7e14701163f1ca91d8b32653da72ccccd904fdbe4e89dd3942dc17b59da SHA512 96e1d7684322019adb3ca89c072f2e492d98574f896b905cc037dc9bfc2f58d4713e34d4b8008f6782c3fd43ad316bba95c221fd1cda308e39f4742a51e220e8
DIST selenium-selenium-4.13.0.gh.tar.gz 78263115 BLAKE2B 8f06ee9e6a8ac8a63c3f016d3e310ba22ac0bd5566f06f6d6f71f269084bafa00f0627aaf1103f2f28a8785e81ace1652b64a271a23fdc74a56c0bf118ccd2ca SHA512 7156b28326492efa189ec4d5e53e131f4e8fb3aea97ce6632b0a9a81e04e238645b4994e348fa6e3f689e5472f569dfe95fdb11a6bd8456381b85d41fb0ede61
DIST selenium-selenium-4.14.0.gh.tar.gz 78721372 BLAKE2B f57f5ed30f4439a83308909f5233187f924476de455d9b6504255e56a3217844d206968a96963c0f824c1a7dc5e69a196dde50a0cfb291820e6690be67a87c5e SHA512 b3b3f375ef0589cdc2afb454b50678ebe881d08cea841c697c9a5a4d745fc8ac84f941d2f5bbea9082c6e0c7052b7c5f08207947bb4389b0322c257dc81dcc89
+DIST selenium-selenium-4.15.0.gh.tar.gz 78935989 BLAKE2B 5ff5f620d206ece245a3166cbc77813ec8b5cc79942ad7e5b04df6ed02a0039b1b7af2af4b312cbcfd0e998aab25f4659e3c6aff52ac6d112c9440d49076fb69 SHA512 584e1637202681c2d60418a8e0bf7f8d28cf0edf901f076647c44996a589844a80db27ba52f1cdd22e5af5cc2ccfc890c0c6690a15d0656a35c8ebb9c20e5ee9
diff --git a/dev-python/selenium/selenium-4.15.0.ebuild b/dev-python/selenium/selenium-4.15.0.ebuild
new file mode 100644
index 000000000000..86489a03e95f
--- /dev/null
+++ b/dev-python/selenium/selenium-4.15.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+# upstream sometimes tags it as ${P}, sometimes as ${P}-python, sigh
+TEST_TAG=${P}
+TEST_P=selenium-${TEST_TAG}
+
+DESCRIPTION="Python language binding for Selenium Remote Control"
+HOMEPAGE="
+ https://www.seleniumhq.org/
+ https://github.com/SeleniumHQ/selenium/tree/trunk/py/
+ https://pypi.org/project/selenium/
+"
+SRC_URI+="
+ test? (
+ https://github.com/SeleniumHQ/selenium/archive/${TEST_TAG}.tar.gz
+ -> ${TEST_P}.gh.tar.gz
+ )
+"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+RDEPEND="
+ >=dev-python/certifi-2021.10.8[${PYTHON_USEDEP}]
+ <dev-python/trio-1[${PYTHON_USEDEP}]
+ >=dev-python/trio-0.17[${PYTHON_USEDEP}]
+ <dev-python/trio-websocket-1[${PYTHON_USEDEP}]
+ >=dev-python/trio-websocket-0.9[${PYTHON_USEDEP}]
+ <dev-python/urllib3-3[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.26[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO: we may need extra setup or deps
+ test/selenium
+
+ # expects vanilla certifi
+ test/unit/selenium/webdriver/remote/remote_connection_tests.py::test_get_connection_manager_for_certs_and_timeout
+ )
+
+ cd "${WORKDIR}/${TEST_P}/py" || die
+ rm -rf selenium || die
+ # https://github.com/SeleniumHQ/selenium/blob/selenium-4.8.2-python/py/test/runner/run_pytest.py#L20-L24
+ # seriously?
+ epytest -o "python_files=*_tests.py test_*.py"
+}
diff --git a/dev-python/stapler/files/stapler-1.0.0_p20220330-PyPDF2-to-pypdf-r1.patch b/dev-python/stapler/files/stapler-1.0.0_p20220330-PyPDF2-to-pypdf-r1.patch
new file mode 100644
index 000000000000..8e4a30327ee5
--- /dev/null
+++ b/dev-python/stapler/files/stapler-1.0.0_p20220330-PyPDF2-to-pypdf-r1.patch
@@ -0,0 +1,52 @@
+diff --git a/staplelib/commands.py b/staplelib/commands.py
+index caf75f9..e67f419 100644
+--- a/staplelib/commands.py
++++ b/staplelib/commands.py
+@@ -4,7 +4,7 @@ import math
+ import os
+
+ try:
+- from PyPDF2 import PdfWriter, PdfReader
++ from pypdf import PdfWriter, PdfReader
+ except:
+ from pyPdf import PdfWriter, PdfReader
+
+diff --git a/staplelib/iohelper.py b/staplelib/iohelper.py
+index 8df365c..5474898 100644
+--- a/staplelib/iohelper.py
++++ b/staplelib/iohelper.py
+@@ -7,7 +7,7 @@ import re
+ import sys
+
+ try:
+- from PyPDF2 import PdfWriter, PdfReader
++ from pypdf import PdfWriter, PdfReader
+ except ImportError:
+ from pyPdf import PdfWriter, PdfReader
+
+diff --git a/staplelib/tests.py b/staplelib/tests.py
+index 86db178..423406d 100755
+--- a/staplelib/tests.py
++++ b/staplelib/tests.py
+@@ -5,7 +5,7 @@ import shutil
+ import tempfile
+ import unittest
+
+-from PyPDF2 import PdfReader
++from pypdf import PdfReader
+
+ from staplelib import main, CommandError
+
+diff --git a/pyproject.toml b/pyproject.toml
+index d34823e..765db3d 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -15,7 +15,7 @@ packages = [
+
+ [tool.poetry.dependencies]
+ python = "^3.4"
+-PyPDF2 = ">=1.26"
++pypdf = ">=3.1.0"
+
+ [tool.poetry.dev-dependencies]
+ pytest = "*"
diff --git a/dev-python/stapler/stapler-1.0.0_p20220330-r4.ebuild b/dev-python/stapler/stapler-1.0.0_p20220330-r4.ebuild
new file mode 100644
index 000000000000..61357406d06a
--- /dev/null
+++ b/dev-python/stapler/stapler-1.0.0_p20220330-r4.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+EGIT_COMMIT="382f1edc62296e071093a5419811a2fca9d78d93"
+MY_P="${PN}-${EGIT_COMMIT}"
+DESCRIPTION="Suite of tools for PDF files manipulation written in Python"
+HOMEPAGE="
+ https://github.com/hellerbarde/stapler/
+ https://pypi.org/project/stapler/
+"
+SRC_URI="
+ https://github.com/hellerbarde/stapler/archive/${EGIT_COMMIT}.tar.gz
+ -> ${MY_P}.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/pypdf[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-tests-for-PyPDF2-2.x.patch
+ "${FILESDIR}"/${P}-port-to-PyPDF2-3.0.0.patch
+ "${FILESDIR}"/${P}-use-poetry-core-backend-for-PEP517.patch
+ "${FILESDIR}"/${P}-PyPDF2-to-pypdf-r1.patch
+)
diff --git a/dev-python/structlog/Manifest b/dev-python/structlog/Manifest
index 60c4fb662edf..507d7a177c87 100644
--- a/dev-python/structlog/Manifest
+++ b/dev-python/structlog/Manifest
@@ -1,2 +1 @@
-DIST structlog-23.1.0.tar.gz 746300 BLAKE2B 94e6099729803fff717c24922f90be0484f045e4fe231398242a890e6e18359f9a5c231985818d655141e978fe06546f36540a96ebe332f5bbf6d5500fc111c0 SHA512 24e28791e12a4a106062368771385ac06e80bd50fb051d2a71205cf9e6ebf92ca8a4e6c0efefd8d862699ac8dee9b4d1ccf4ee33f8d76233acf5256d69f9593c
DIST structlog-23.2.0.tar.gz 749288 BLAKE2B c5a619ddacc04e6f2377c66aa343ecfddb8001d5d87c3f10859c2644ce427150771abe4942d57a9ea6db1029af5bde825a0a99218921beea08c4fd147fc5c1cb SHA512 01ddaf3b819da66beefef1810e6d460a2e5ce37f6be3dee144411a3a5db7c81bdfd83a0843172a921406596a2b9f1f87de08caf881c7d701496825203d13bdad
diff --git a/dev-python/structlog/structlog-23.1.0.ebuild b/dev-python/structlog/structlog-23.1.0.ebuild
deleted file mode 100644
index d70688250f19..000000000000
--- a/dev-python/structlog/structlog-23.1.0.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Structured Logging for Python"
-HOMEPAGE="
- https://github.com/hynek/structlog/
- https://pypi.org/project/structlog/
-"
-
-LICENSE="Apache-2.0 MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~riscv ~x86"
-
-BDEPEND="
- dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- dev-python/freezegun[${PYTHON_USEDEP}]
- dev-python/pretend[${PYTHON_USEDEP}]
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/structlog/structlog-23.2.0.ebuild b/dev-python/structlog/structlog-23.2.0.ebuild
index 78babfff7f66..52455316bc48 100644
--- a/dev-python/structlog/structlog-23.2.0.ebuild
+++ b/dev-python/structlog/structlog-23.2.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="|| ( Apache-2.0 MIT )"
SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc64 ~riscv x86"
+KEYWORDS="amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv x86"
BDEPEND="
dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
diff --git a/dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild b/dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild
index f36a4be4785e..213eb53354d4 100644
--- a/dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild
+++ b/dev-python/taskgroup/taskgroup-0.0.0_alpha4.ebuild
@@ -4,6 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=flit
+# py3.11: this is a backport to py3.10, please do not add more targets
PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
inherit distutils-r1 pypi
diff --git a/dev-python/wtforms/Manifest b/dev-python/wtforms/Manifest
index 51e196500c14..902e6688109f 100644
--- a/dev-python/wtforms/Manifest
+++ b/dev-python/wtforms/Manifest
@@ -1,2 +1,3 @@
DIST WTForms-3.0.1.tar.gz 137513 BLAKE2B 17fbb385a28baefaf3fe368b7c7dbd3d6671aaef887ee89617e60e0537ae060248442d4990e7ea926b15d4b85585a1c80ffb61c0fdad2627e5cca90799eb01d7 SHA512 a6db54a7ef9bc96b8fdf69cd65d3810fab9436ff9c056e1cfc580f5ecd0ed8837dcbb7c2adf92419cc5f74e865bb3a023e316407a87d5c5277da5d30e6836fb3
DIST wtforms-3.1.0.tar.gz 134500 BLAKE2B a88f29eb600b50f7de964d9cef1dd195f7731312bf291b3cbfa1664537c4eb242a59d435994c007c2e84eaf19942db5316e58154639bdd8ebee85d336ca5a9dc SHA512 6afc9bb2980668c753887945692525a4039e7a06fb3f0e2b56d1a60c382f099e1b75d722f19786ec0f32a1043b4909b1be28c8aeccadc4745785414835aebf02
+DIST wtforms-3.1.1.tar.gz 134343 BLAKE2B 935e1d0d881573f7fe0cf0099069f49c6f315007755ea27134c8d7db407880f3d5b5e1a427df588aaf427de4e8f09455a09d5c82e666d0fac4055558e3d49e4e SHA512 e7aec26103bf5069cc97474361b4f5788d41181a2560032b8072dc62b29824830b739ddf9df60710685293eec5173d8c44c5fbeee8487f01180a08970abb6c77
diff --git a/dev-python/wtforms/wtforms-3.1.1.ebuild b/dev-python/wtforms/wtforms-3.1.1.ebuild
new file mode 100644
index 000000000000..71c6331cb91f
--- /dev/null
+++ b/dev-python/wtforms/wtforms-3.1.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYPI_PN="WTForms"
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Flexible forms validation and rendering library for python web development"
+HOMEPAGE="
+ https://wtforms.readthedocs.io/
+ https://github.com/wtforms/wtforms/
+ https://pypi.org/project/WTForms/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/markupsafe[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/Babel[${PYTHON_USEDEP}]
+ test? (
+ dev-python/email-validator[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/sqlalchemy[${PYTHON_USEDEP}]
+ dev-python/webob[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/zstandard/Manifest b/dev-python/zstandard/Manifest
index 9423adad5833..3d90d71df78d 100644
--- a/dev-python/zstandard/Manifest
+++ b/dev-python/zstandard/Manifest
@@ -1 +1,2 @@
DIST python-zstandard-0.21.0.gh.tar.gz 711413 BLAKE2B de3c5a5b34242c20452e35ba6bac451a176f9f442dfc7028f5bae9299c8cedafa58edce85b21bbbdd440765a7eef67bf3c996ae1a81d534a18bfc203cdcc1c25 SHA512 51a7a7a6c20733858f96763738f3097f52dae1ca3a33bad3e78e31d6f339d8f2ddb0a7da2fafaa0b162b17e5054c0582ab52054f1215e8c39d8e1f8002babd7c
+DIST python-zstandard-0.22.0.gh.tar.gz 707644 BLAKE2B ce400120f9106d729b50ae091a581f4a9fb2e796ec0872cb7db393aa7a55cf6e22cbff79c3ff780b4f609fbd8289a9744cbdfc730ba51cb09ee4e7c56b1dac9e SHA512 b3041217ad4b6297d0727dd5d22bc83645d43fa591985bef43e8633feb960310a3f2eb1edaa133595941a6932683af91d565266f312c987e6b6c514ce70c9ddb
diff --git a/dev-python/zstandard/files/zstandard-0.22.0-build.patch b/dev-python/zstandard/files/zstandard-0.22.0-build.patch
new file mode 100644
index 000000000000..1a5ff9affeda
--- /dev/null
+++ b/dev-python/zstandard/files/zstandard-0.22.0-build.patch
@@ -0,0 +1,53 @@
+From d7cb41b4ec0239c82d77a6cd7f55b4c7e3fe0c8a Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Wed, 1 Nov 2023 16:17:13 +0100
+Subject: [PATCH] build: fix building with modern setuptools backend
+
+Set correct `sys.path` prior to importing `setup_zstd`, in order to fix
+building with the modern setuptools backend, i.e.:
+
+```
+* Getting build dependencies for wheel...
+<string>:37: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
+<string>:38: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
+Traceback (most recent call last):
+ File "/usr/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
+ main()
+ File "/usr/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 335, in main
+ json_out['return_val'] = hook(**hook_input['kwargs'])
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ File "/usr/lib/python3.12/site-packages/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
+ return hook(config_settings)
+ ^^^^^^^^^^^^^^^^^^^^^
+ File "/tmp/build-env-mgz__6r4/lib/python3.12/site-packages/setuptools/build_meta.py", line 355, in get_requires_for_build_wheel
+ return self._get_build_requires(config_settings, requirements=['wheel'])
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+ File "/tmp/build-env-mgz__6r4/lib/python3.12/site-packages/setuptools/build_meta.py", line 325, in _get_build_requires
+ self.run_setup()
+ File "/tmp/build-env-mgz__6r4/lib/python3.12/site-packages/setuptools/build_meta.py", line 341, in run_setup
+ exec(code, locals())
+ File "<string>", line 49, in <module>
+ModuleNotFoundError: No module named 'setup_zstd'
+
+ERROR Backend subprocess exited when trying to invoke get_requires_for_build_wheel
+```
+---
+ setup.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/setup.py b/setup.py
+index 7cc1f4f..2b2895b 100755
+--- a/setup.py
++++ b/setup.py
+@@ -46,6 +46,8 @@ try:
+ except ImportError:
+ cffi = None
+
++sys.path.insert(0, ".")
++
+ import setup_zstd
+
+ SUPPORT_LEGACY = False
+--
+2.42.0
+
diff --git a/dev-python/zstandard/zstandard-0.22.0.ebuild b/dev-python/zstandard/zstandard-0.22.0.ebuild
new file mode 100644
index 000000000000..6a099a6a2306
--- /dev/null
+++ b/dev-python/zstandard/zstandard-0.22.0.ebuild
@@ -0,0 +1,74 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1
+
+MY_P=python-zstandard-${PV}
+DESCRIPTION="Zstandard Bindings for Python"
+HOMEPAGE="
+ https://github.com/indygreg/python-zstandard/
+ https://pypi.org/project/zstandard/
+"
+SRC_URI="
+ https://github.com/indygreg/python-zstandard/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+SLOT="0"
+LICENSE="BSD"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+DEPEND="
+ app-arch/zstd:=
+"
+RDEPEND="
+ ${DEPEND}
+ $(python_gen_cond_dep '
+ >=dev-python/cffi-1.14.0-r2:=[${PYTHON_USEDEP}]
+ ' 'python*')
+"
+BDEPEND="
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}/${P}-build.patch"
+ )
+
+ # the C backend is repeatedly broken, so force CFFI instead
+ sed -e '/PYTHON_ZSTANDARD_IMPORT_POLICY/s:default:cffi:' \
+ -i zstandard/__init__.py || die
+ # unbundle zstd
+ : > zstd/zstdlib.c || die
+ # it does random preprocessing on that, so we can't use #include
+ cp "${ESYSROOT}/usr/include/zstd.h" zstd/zstd.h || die
+ sed -i -e '/include_dirs/a libraries=["zstd"],' make_cffi.py || die
+
+ distutils-r1_src_prepare
+
+ DISTUTILS_ARGS=(
+ --no-c-backend
+ )
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # unreliable, fails on x86
+ tests/test_data_structures.py::TestCompressionParameters::test_estimated_compression_context_size
+ )
+
+ rm -rf zstandard || die
+ epytest
+}