summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Nuitka/Manifest1
-rw-r--r--dev-python/Nuitka/Nuitka-1.6.1.ebuild54
-rw-r--r--dev-python/alembic/alembic-1.11.1.ebuild6
-rw-r--r--dev-python/b2sdk/Manifest1
-rw-r--r--dev-python/b2sdk/b2sdk-1.17.2.ebuild23
-rw-r--r--dev-python/b2sdk/b2sdk-1.21.0.ebuild61
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.26.148.ebuild66
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.29.148.ebuild79
-rw-r--r--dev-python/cx_Freeze/Manifest1
-rw-r--r--dev-python/cx_Freeze/cx_Freeze-6.15.1.ebuild65
-rw-r--r--dev-python/fakeredis/Manifest1
-rw-r--r--dev-python/fakeredis/fakeredis-2.14.1.ebuild78
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/phx-class-registry/Manifest1
-rw-r--r--dev-python/phx-class-registry/phx-class-registry-3.0.5-r1.ebuild1
-rw-r--r--dev-python/phx-class-registry/phx-class-registry-4.0.6.ebuild23
-rw-r--r--dev-python/pylast/Manifest1
-rw-r--r--dev-python/pylast/pylast-5.2.0.ebuild31
-rw-r--r--dev-python/pytest-check/Manifest1
-rw-r--r--dev-python/pytest-check/pytest-check-2.1.5.ebuild26
-rw-r--r--dev-python/python-gnupg/python-gnupg-0.5.0.ebuild6
-rw-r--r--dev-python/rapidfuzz/Manifest1
-rw-r--r--dev-python/rapidfuzz/rapidfuzz-3.1.1.ebuild49
-rw-r--r--dev-python/readthedocs-sphinx-ext/Manifest1
-rw-r--r--dev-python/readthedocs-sphinx-ext/readthedocs-sphinx-ext-2.2.1.ebuild30
-rw-r--r--dev-python/sexpdata/Manifest1
-rw-r--r--dev-python/sexpdata/sexpdata-1.0.1.ebuild25
30 files changed, 632 insertions, 15 deletions
diff --git a/dev-python/Nuitka/Manifest b/dev-python/Nuitka/Manifest
index 1627093f0b16..a7e9f702a214 100644
--- a/dev-python/Nuitka/Manifest
+++ b/dev-python/Nuitka/Manifest
@@ -2,4 +2,5 @@ DIST Nuitka-1.5.5.tar.gz 4172962 BLAKE2B 403ea94d2e2311c036359e80a9923f80bdaec91
DIST Nuitka-1.5.6.tar.gz 4172386 BLAKE2B 62909f36529ecb487c0f5010e19c1dd7b2033b6b7a00bed5ad5efe26b500eccf27f76f526caefdfd59bf2a796c82770310b0b5cc90a7d2d7b2aff24b285f2885 SHA512 dccf931acbdf18d905d3e9299dcbf47f50f8780e9beabc9d6266bc0b8ed174c8e5cb762257477742f3745284b84495ec6ea77f3e9f4e280113dade4ec8e11c6e
DIST Nuitka-1.5.7.tar.gz 4179130 BLAKE2B 1918f0263edf89884658f49d0241f9993c6da8e0965f1a599ffed66cb635cea2729329183b1227a0b0e81f6d4e78c5ef1c1ca92c5148b635864e4caa536d0ab6 SHA512 aee0ec2d0a80b78262f3e4c972d1b156d41bea5323d3a12ed5afa47b41d6e372eb773968135217588a70f6b9ead2d215651999eb0e2f02d82e5996f89a9ea5e6
DIST Nuitka-1.5.8.tar.gz 4172897 BLAKE2B 1b4a50c6aacb6c41b4e068bc369a1c43839c8bca15c2786f3a37e8a3c6f2250e31c66192fd8ec79eb154e18e2f574819d27bc8ff3d80a97a248401966084d827 SHA512 963daea25553dc945e3f15020c7fcdabe6847ffd45167c84d68905dfe00630c132994587d1c9fc2076f19f29a46feab6b35ff15b9734d717ce50646192fa3039
+DIST Nuitka-1.6.1.tar.gz 4251346 BLAKE2B e35fd67cf6d5e30ad2f9c9271fbb3309e5520af77dc6c62f407378e68785f2dcaae92d1723d797178a5171407daec3eda64c00d80845d83ea8e3f49bd14c31cf SHA512 6f47cec56eefd14dd6902fbb59aebf5a46513b45cf774ddce9e5b71ce374befae17c4c86cccb92c70c8f18a2e8595e5e9a1e78fa7bb5a5008cd86289185f3f4f
DIST Nuitka-1.6.tar.gz 4222249 BLAKE2B c4451092bfeee7b632e5ebb7162ba46f9fad29d9837f4913948aafb84b4fc6e69845fe52886962c053b419ad3307e5929fa201a4aad5c7e80dd388e41f1504d6 SHA512 3951e354acc76b63c9d61267d4f14ee75d97bc3ec838326b33d59d2ad1809a7a33605e1a6544f6c5d23a57b97fe067b9ca154744ee90d5bc77c53b90b128ecbc
diff --git a/dev-python/Nuitka/Nuitka-1.6.1.ebuild b/dev-python/Nuitka/Nuitka-1.6.1.ebuild
new file mode 100644
index 000000000000..1158b562d51b
--- /dev/null
+++ b/dev-python/Nuitka/Nuitka-1.6.1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+
+inherit distutils-r1 flag-o-matic optfeature pypi
+
+DESCRIPTION="Python to native compiler"
+HOMEPAGE="
+ https://www.nuitka.net/
+ https://github.com/Nuitka/Nuitka/
+ https://pypi.org/project/Nuitka/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~loong ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ dev-util/scons[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ test? ( dev-util/ccache )
+"
+
+DOCS=( Changelog.pdf Developer_Manual.pdf README.pdf )
+
+distutils-r1_src_prepare() {
+ # remove vendored version of SCons that is Python2 only
+ # this should be removed when upstream removes support for Python2
+ rm -vR "nuitka/build/inline_copy/lib/scons-2.3.2/SCons" || die
+ eapply_user
+}
+
+python_install() {
+ distutils-r1_python_install
+ doman doc/nuitka3.1 doc/nuitka3-run.1
+}
+
+python_test() {
+ append-ldflags -Wl,--no-warn-search-mismatch
+ ./tests/basics/run_all.py search || die
+}
+
+pkg_postinst() {
+ optfeature "support for stand-alone executables" app-admin/chrpath
+}
diff --git a/dev-python/alembic/alembic-1.11.1.ebuild b/dev-python/alembic/alembic-1.11.1.ebuild
index 15a1a21d58a0..b6a2493e61be 100644
--- a/dev-python/alembic/alembic-1.11.1.ebuild
+++ b/dev-python/alembic/alembic-1.11.1.ebuild
@@ -29,6 +29,12 @@ RDEPEND="
distutils_enable_tests pytest
+python_test() {
+ # setup.cfg contains -p no:warnings in addopts which triggers
+ # datetime.utcfromtimestamp() deprecation warning as an error in py3.12
+ epytest -o addopts=
+}
+
python_install_all() {
use doc && local HTML_DOCS=( docs/. )
distutils-r1_python_install_all
diff --git a/dev-python/b2sdk/Manifest b/dev-python/b2sdk/Manifest
index 38085fc65275..f7ad9421884e 100644
--- a/dev-python/b2sdk/Manifest
+++ b/dev-python/b2sdk/Manifest
@@ -1 +1,2 @@
DIST b2sdk-1.17.2.tar.gz 308753 BLAKE2B 07b6f71f604475d861257a1a7c567fc561a90c1c8c5768d21d63a82ff1c57240a81f8ebf96f1b3113cbea181140a128ebad9ed524e410a9c163a04a1de1ee2a0 SHA512 e618e18de16b021dc86a4b5ee9d315294eba5c3421318a4ea668681dc0420d6c3798f17c17be6475dddad7cfada8bf615916a5dc41ef905b8ecd7623b2a0c7bb
+DIST b2sdk-1.21.0.tar.gz 335333 BLAKE2B 7aa3a9664844e1f5ef71b7eec2fc28f456bed0a8ae431a90f23865cb9d73526090f78926b943f67bb1745bb9760718666202a9bd67790d92d90c14a0f1510bab SHA512 3d431ce8a3be536d6e49d20a0e6eef2d435bfccf2dd36c0b501c03ebd013de68063302f3ae4d8c9cd6fcfa7b77e3ea2c00b06c3a5e044e30f545a4ab5248fa62
diff --git a/dev-python/b2sdk/b2sdk-1.17.2.ebuild b/dev-python/b2sdk/b2sdk-1.17.2.ebuild
index 9d1fa3356184..c0d218988467 100644
--- a/dev-python/b2sdk/b2sdk-1.17.2.ebuild
+++ b/dev-python/b2sdk/b2sdk-1.17.2.ebuild
@@ -3,6 +3,7 @@
EAPI=7
+DISTUTILS_USE_PEP517="setuptools"
PYTHON_COMPAT=( python3_{7,8,9,10,11} )
inherit distutils-r1
@@ -39,6 +40,8 @@ BDEPEND+=" test? (
# These tests seem to require some b2 authentication (they're integration tests
# so this is not unreasonable)
python_test() {
+ # note: used to avoid an ExcessiveLineLength lint below.
+ local sqlite_test_path="test/unit/account_info/test_sqlite_account_info.py"
epytest \
--deselect test/integration/test_large_files.py::TestLargeFile::test_large_file \
--deselect test/integration/test_raw_api.py::test_raw_api \
@@ -46,14 +49,14 @@ python_test() {
--deselect test/integration/test_download.py::TestDownload::test_small \
--deselect test/integration/test_download.py::TestDownload::test_small_unverified \
--deselect test/integration/test_download.py::TestDownload::test_gzip \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_invalid_profile_name \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_profile_and_file_name_conflict \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_profile_and_env_var_conflict \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_profile_and_xdg_config_env_var \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_profile \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_file_name \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_env_var \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_default_file_if_exists \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_xdg_config_env_var \
- --deselect test/unit/account_info/test_sqlite_account_info.py::TestSqliteAccountProfileFileLocation::test_default_file
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_invalid_profile_name \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_file_name_conflict \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_env_var_conflict \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_xdg_config_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_file_name \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_default_file_if_exists \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_xdg_config_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_default_file
}
diff --git a/dev-python/b2sdk/b2sdk-1.21.0.ebuild b/dev-python/b2sdk/b2sdk-1.21.0.ebuild
new file mode 100644
index 000000000000..4ca406b59008
--- /dev/null
+++ b/dev-python/b2sdk/b2sdk-1.21.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 2021-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+inherit distutils-r1
+
+DESCRIPTION="The client library for BackBlaze's B2 product"
+HOMEPAGE="https://github.com/Backblaze/b2-sdk-python"
+SRC_URI="https://github.com/Backblaze/b2-sdk-python/releases/download/v${PV}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.17.2-disable-requirement-installation.patch"
+)
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ >=dev-python/logfury-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.9.1[${PYTHON_USEDEP}]
+ >=dev-python/tqdm-4.5.0[${PYTHON_USEDEP}]
+ ')
+"
+
+distutils_enable_tests pytest
+
+BDEPEND+=" test? (
+ $(python_gen_cond_dep '
+ >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}]
+ >=dev-python/pytest-lazy-fixture-0.6.3[${PYTHON_USEDEP}]
+ ')
+)"
+
+# These tests seem to require some b2 authentication (they're integration tests
+# so this is not unreasonable)
+python_test() {
+ # note: used to avoid an ExcessiveLineLength lint below.
+ local sqlite_test_path="test/unit/account_info/test_sqlite_account_info.py"
+ epytest \
+ --deselect test/integration/test_large_files.py::TestLargeFile::test_large_file \
+ --deselect test/integration/test_raw_api.py::test_raw_api \
+ --deselect test/integration/test_download.py::TestDownload::test_large_file \
+ --deselect test/integration/test_download.py::TestDownload::test_small \
+ --deselect test/integration/test_download.py::TestDownload::test_small_unverified \
+ --deselect test/integration/test_download.py::TestDownload::test_gzip \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_invalid_profile_name \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_file_name_conflict \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_env_var_conflict \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile_and_xdg_config_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_profile \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_file_name \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_default_file_if_exists \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_xdg_config_env_var \
+ --deselect ${sqlite_test_path}::TestSqliteAccountProfileFileLocation::test_default_file
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index b07efaf786b2..9c577b199c68 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -2,3 +2,4 @@ DIST boto3-1.26.137.gh.tar.gz 650777 BLAKE2B e4a7d02ccefbda53b33558dc107457eaa1d
DIST boto3-1.26.142.gh.tar.gz 655602 BLAKE2B e9d5671308e71bb43a97953407f4aba5b78594ed39b26c3c992af9db8864e3c363ab874a66b5b015083c4a18fe7415bb1761137367783a70ff22564ada8a8842 SHA512 c2eabdb47898aa26fc8ba8a8ebfa43a86153188af1f1600bfa741bd3af1ce68a8692e461aecb5a29df94885e1c977b06c3cd009f1cec52a2e7a9dc853a2c3942
DIST boto3-1.26.146.gh.tar.gz 658035 BLAKE2B 29104a4ebd16ca8b2a0631bb747ed8b5af9fd6a5c86927937e6fc3ded14857c5244dc3ae4db1aec880f845b32d505edb1ef652a29f9f4d48f8a935a3ff239dbd SHA512 910c49bfdca0f39e089eab50ca24f9cfa3c75cae8c33d53155f0df2dd4c6ae1729dc235bfb3f5880cd50bdeeb60327490bf2372ca2cc14600d24dc90b51d6120
DIST boto3-1.26.147.gh.tar.gz 658916 BLAKE2B a612b3edd3f1ad232cf504f96750e759bed5e7abebae375bd4ac2918913c5863b5ef9bd6a2e534f7d08799c826c0fcf65cdbdb687960136f0d05192792cb6102 SHA512 6b845401d46e34602584da2fc10ea9c36fcb55beef2ba2c8ad724d030c54968e74690580080f2da218bc7d7886d7fb3d4b22abfbd90b5af5d6d86c9f6c45b52f
+DIST boto3-1.26.148.gh.tar.gz 659957 BLAKE2B cac68eca82a00d596cf03d833394d7da0cdde0b2159a5fac1592faf7b5ea5ca9d41ee20ca10164ffdfb717193b4173fcf5e377d426edb672bf8510a0f4d1fa67 SHA512 8df8029ff11faa6d864920a5b5690f2b895ed500aa45970a7f4da5f33b52415cdfd6f582671b0e8f80205efd73a697e8a0c05e4335e2d921f9204b74df6de23d
diff --git a/dev-python/boto3/boto3-1.26.148.ebuild b/dev-python/boto3/boto3-1.26.148.ebuild
new file mode 100644
index 000000000000..03c610b184f7
--- /dev/null
+++ b/dev-python/boto3/boto3-1.26.148.ebuild
@@ -0,0 +1,66 @@
+# 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_{7,8,9,10,11} )
+
+inherit distutils-r1 multiprocessing
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/boto/boto3"
+ inherit git-r3
+ BOTOCORE_PV=${PV}
+else
+ SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ "
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+ # botocore is x.(y+3).z
+ BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) + 3)).$(ver_cut 3-)"
+fi
+
+RDEPEND="
+ >=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.6.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # don't lock versions to narrow ranges
+ sed -e '/botocore/ d' \
+ -e '/jmespath/ d' \
+ -e '/s3transfer/ d' \
+ -i setup.py || die
+
+ # do not rely on bundled deps in botocore (sic!)
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ epytest tests/{functional,unit} -n "$(makeopts_jobs)"
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 4ad59acbbef7..2b6f36968400 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -2,3 +2,4 @@ DIST botocore-1.29.137.gh.tar.gz 11508178 BLAKE2B 2f74fd2f3923672a4fcd501f1c5ba4
DIST botocore-1.29.142.gh.tar.gz 11528069 BLAKE2B 860a5ab68d26424702006b221e62e29cfe21ba93593be61e4ef7e89ab50c6afb4b305f2ef3b2d80fd428cf7791933e43b20e1d4934d330653290a7b2aa16f6c4 SHA512 f408175054095bdd3094dd789de333e4e669cee72fdbc5b03551fc006cbcda5cf69eaa6daa2eb3bf09b30524f50d4b7b334d7b18051e55eca12caa16529b41bf
DIST botocore-1.29.146.gh.tar.gz 11553866 BLAKE2B 7b5b060480de459af9045be8724272fb876c8663b39b1a1ea3575cee83d233dc4e04735682f7eac9299ae0219a5995ddd3379d75c6d2e1bece565e2294b3cc23 SHA512 e786137deaac49fa9db7c8c4df1ff8be195dd400432fbb2e6a23608181161234fa5c3a81a293b4ae1133d1a40e0341b3a081f0d845672e8d0c604fdffc2bc1b5
DIST botocore-1.29.147.gh.tar.gz 11567478 BLAKE2B e5b8b83057cdb1aa8fd654aeedba326a3641adefd8ace5ce7724b5e780f81a773a4ea20a53a3d5bd2db25e687730b5949608a554f4b550204123aee46b7d2feb SHA512 a72a91dd440e1ef4a4a85044284a5201a277c0b3c2d0a30358c920ccb10b5caf0914b0ed3bf8207834e6acc604528d1512356cb4bd0bfdce9b38e39aa98c2296
+DIST botocore-1.29.148.gh.tar.gz 11587262 BLAKE2B ea2bcb115976e98b3f60ab8f7d49c7876bd1b3f188f51fd83f3cd5d86f57888f1a3cd127afea041424c2f6eaa16c0128848ee1805f5d789e0768886ac0e9e1c4 SHA512 8b02f5203be6e44f9002079532989ae6daecf0e1b6417f1f746d5846c37ec6e98d1fd01d7ecf58735fd27abed3cd74709a9dd9f624921ca58cea0a47c5915b85
diff --git a/dev-python/botocore/botocore-1.29.148.ebuild b/dev-python/botocore/botocore-1.29.148.ebuild
new file mode 100644
index 000000000000..509d06dedf97
--- /dev/null
+++ b/dev-python/botocore/botocore-1.29.148.ebuild
@@ -0,0 +1,79 @@
+# 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_{7,8,9,10,11} )
+
+inherit distutils-r1 multiprocessing
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+LICENSE="Apache-2.0"
+SLOT="0"
+
+if [[ "${PV}" == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/boto/botocore"
+ inherit git-r3
+else
+ SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ "
+ KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin deps
+ sed -i -e "s:>=.*':':" setup.py || die
+
+ # unbundle deps
+ rm -r botocore/vendored || die
+ find -name '*.py' -exec sed -i \
+ -e 's:from botocore[.]vendored import:import:' \
+ -e 's:from botocore[.]vendored[.]:from :' \
+ {} + || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # rely on bundled six
+ tests/functional/test_six_imports.py::test_no_bare_six_imports
+ tests/functional/test_six_threading.py::test_six_thread_safety
+ # fails on unrelated warnings
+ tests/unit/test_client.py::TestAutoGeneratedClient::test_BOTO_DISABLE_COMMONNAME
+ tests/unit/test_client.py::TestClientErrors::test_BOTO_DISABLE_COMMONNAME
+ # TODO
+ tests/functional/test_credentials.py::SSOSessionTest::test_token_chosen_from_provider
+ # urllib3-2 compatibility, mock relies on implementation details
+ tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_expect_100_continue_no_response_from_server
+ tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_expect_100_continue_returned
+ tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_expect_100_continue_sends_307
+ tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_expect_100_sends_connection_header
+ tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_handles_expect_100_with_different_reason_phrase
+ tests/unit/test_awsrequest.py::TestAWSHTTPConnection::test_state_reset_on_connection_close
+ )
+
+ epytest tests/{functional,unit} -n "$(makeopts_jobs)"
+}
diff --git a/dev-python/cx_Freeze/Manifest b/dev-python/cx_Freeze/Manifest
index a30dab99c55c..77c0f944e482 100644
--- a/dev-python/cx_Freeze/Manifest
+++ b/dev-python/cx_Freeze/Manifest
@@ -2,3 +2,4 @@ DIST cx_Freeze-6.13.1.gh.tar.gz 1486207 BLAKE2B aa0151fed482714e41a859059f967295
DIST cx_Freeze-6.14.5.gh.tar.gz 1648095 BLAKE2B 81707d17c2118a8db4d768b2fbe83278c6b01509a5a1d3e7f3a41efaa29607fc4b254e9d545a4697b77d4932100f344a8013ac59084bb74d97d1b12cb927ec6e SHA512 52233a138da3250e97668a5c225e78b864bebaa43ea2b30de01af2de7739f48a25030e10d36ccec609240822de308ad030eaa26c2ede8b29318d2b30647cf1c8
DIST cx_Freeze-6.14.9.gh.tar.gz 1649748 BLAKE2B 08fefea6ed9610b672ca8a4a6e480cedf8fd75c967880e74f94c12368ec1ff71a9d34baae02342f7c4484e65beda5dc71dd39e13b8c340c5b7dd2e89b38ba0f1 SHA512 bfe3e5d3dcf96cff448b034a779b93c37dacda489ee4eabd92e8f4708c6d7a9fe2430bc512f40c6af8c6f851fff24a3626b80f10295af1357e4a58563474e8eb
DIST cx_Freeze-6.15.0.gh.tar.gz 1650636 BLAKE2B 9d99a78bc4d6b6498e10c54352a6fbfce3f2ee9bba9cc5b7fa752eba465d29355c6e4222e4f3c3012793820f435591f2e3e634e512765720d0c96a7799ab5998 SHA512 90fc3fba50ab7a9a263371fc9e57df768792b78175cd7ed39f2308b2a5e6bf0eb992616d29ff0d34c8bf040d167bac1882e0e1d2425d2f248e4de2e755c72503
+DIST cx_Freeze-6.15.1.gh.tar.gz 1651345 BLAKE2B 9c0c29f19e09184ad7b0a6954649c30fa1c941ff822b1c5ec745b1a6c7dd58fc77b06c070641a9200fc4910bdfc49937841ba2b547b16ec48f9fd30dfee6cd03 SHA512 d6540736d437242fd89fc34f0ff81691eebb455c0ddca8b90ee6ec436105d908e9fed580a08e23999f70b5e3aa2f2e66ee35eec092eecab0501e9b3117af23b3
diff --git a/dev-python/cx_Freeze/cx_Freeze-6.15.1.ebuild b/dev-python/cx_Freeze/cx_Freeze-6.15.1.ebuild
new file mode 100644
index 000000000000..8da7b8e64700
--- /dev/null
+++ b/dev-python/cx_Freeze/cx_Freeze-6.15.1.ebuild
@@ -0,0 +1,65 @@
+# 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_{7,8,9,10,11} )
+
+inherit distutils-r1
+
+DESCRIPTION="Create standalone executables from Python scripts"
+HOMEPAGE="
+ https://cx-freeze.readthedocs.io/
+ https://github.com/marcelotduarte/cx_Freeze/
+ https://pypi.org/project/cx-Freeze/
+"
+SRC_URI="
+ https://github.com/marcelotduarte/cx_Freeze/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="PYTHON"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ $(python_gen_cond_dep '
+ dev-python/importlib-metadata[${PYTHON_USEDEP}]
+ ' 3.9)
+ dev-util/patchelf
+ virtual/libcrypt:=
+"
+BDEPEND="
+ test? (
+ app-arch/rpm
+ dev-python/bcrypt[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/openpyxl[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pydantic[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ )
+"
+
+PATCHES=(
+ # bug #491602
+ "${FILESDIR}/${PN}-6.8.2-buildsystem.patch"
+)
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # remove pythonic dep on patchelf exec
+ sed -i -e '/patchelf/d' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ # rpm test expects .pyc
+ local -x PYTHONDONTWRITEBYTECODE=
+ rm -rf cx_Freeze || die
+ epytest
+}
diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index 8326485c9a44..b403bc1cd86b 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -1,3 +1,4 @@
DIST fakeredis-2.12.1.tar.gz 97486 BLAKE2B 5207d9b946eb5720083b045e29b960cc2eb3ab5ed7b633f00106d0777186cfb02ecc10607d24a67d7b2eded35915e6710a4880f560e49fbca470c487ec0a2b87 SHA512 99e4e0bf7a4be9cc9dc96eecfe2fd1f106664bab2eff4f575468933809cf306c36237ebc9d86efdd9c0823e05a08d466f35a7e43359602b47c582ab16d7bb7ef
DIST fakeredis-2.13.0.tar.gz 98084 BLAKE2B c147332f2575be7f63aef48199920480d550efbadeee9de255b17cb9c7d6791a059ee3d4bdc500ecf44dcc22de6fdd11d170daf3e19de8e910833b1de12232c6 SHA512 30335e456f7ac2498fc175f9fd154a766064a05e6eb996df9d533412525a3d4279c9359ac5e43a2b9ec9bb1d653639aa10d4e1765a4e4c1bc84f764fa1efdb42
DIST fakeredis-2.14.0.tar.gz 101919 BLAKE2B 7582b3986bc7102a02a69a321e539dc15d425d918397e896eed9d544816697c55e938511ae69201eae3a5c1e814afe7f0c472d48a249be976178a7c0279472ae SHA512 a63b46420d9ca2348b0ed0f4ef2c0227a4dbc46efef2fae5beae2513cc77732be830669910f14d59ecb2f1fa3b698e29855658239fea4ff458c4ba62fd9fa4cb
+DIST fakeredis-2.14.1.tar.gz 101789 BLAKE2B 2e38319aa8bb23c9cd2196d8dbcf489fead785bffa3b464b7e420f28b247c911ea9f3775328f8fec7c26b1a77e32d6a21acf627fe7b603f311b0f3820fa06b54 SHA512 71b7f034ad5ccdd569052a82d2e15ec21db4b5a26bc5c660f76bb88c0b7aaa252234e899644dfd63086aaf8a9400ea13acc6439fdca08f84c8392949815f33d2
diff --git a/dev-python/fakeredis/fakeredis-2.14.1.ebuild b/dev-python/fakeredis/fakeredis-2.14.1.ebuild
new file mode 100644
index 000000000000..54db59c15a69
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-2.14.1.ebuild
@@ -0,0 +1,78 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Fake implementation of redis API for testing purposes"
+HOMEPAGE="
+ https://github.com/cunla/fakeredis-py/
+ https://pypi.org/project/fakeredis/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/redis-4.2[${PYTHON_USEDEP}]
+ <dev-python/sortedcontainers-3[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.4.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # also lupa
+ test/test_aioredis2.py::test_failed_script_error
+ # TODO
+ "test/test_fakeredis.py::test_set_get_nx[StrictRedis]"
+ "test/test_fakeredis.py::test_lpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_rpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_zadd_minus_zero[StrictRedis]"
+ "test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis]"
+ test/test_mixins/test_set_commands.py::test_smismember_wrong_type
+ )
+ local EPYTEST_IGNORE=(
+ # these tests fail a lot...
+ test/test_hypothesis.py
+ )
+ local args=(
+ # tests requiring lupa (lua support)
+ -k 'not test_eval and not test_lua and not test_script'
+ )
+ epytest "${args[@]}"
+}
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index a11d7c268c91..e9da2ac43cac 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1 +1,3 @@
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 ddb5b0f1787e..020e07f2a3dd 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -2,9 +2,11 @@
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
- <email>cyber+gentoo@sysrq.in</email>
- <name>Anna</name>
+ <email>marcin.deranek@slonko.net</email>
+ <name>Marcin Deranek</name>
</maintainer>
-
- <origin>gentoo-guru-overlay</origin>
+ <upstream>
+ <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
+ </upstream>
+ <origin>slonko-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/phx-class-registry/Manifest b/dev-python/phx-class-registry/Manifest
index 4622fc776439..3891dc45e3f3 100644
--- a/dev-python/phx-class-registry/Manifest
+++ b/dev-python/phx-class-registry/Manifest
@@ -1 +1,2 @@
DIST phx-class-registry-3.0.5.tar.gz 23756 BLAKE2B 7ba98323cb91a328b7dbe3df2def174d950c9f78da2fbd62c81dbf3803d570d42794a20ca3219b41f8f5b739efd3317ce8672f70169db492c2cda8a980460fb1 SHA512 324171cbf14132e02c58026d90c87d408fd321d95258cf8cd66de472a125177c4131ca1e47fad279db3384a8a3a50832eb1287a4b577c76c79a9391fa1d998c6
+DIST phx-class-registry-4.0.6.tar.gz 26010 BLAKE2B 8c0f65f97efbe0dbae15d11ab52c7081f62654a485a784a6668eb37dbe3dbecf16f1fbc62edab06aafb34afd25ad1cb411de5b8768c10d4a501debc385de715f SHA512 da6d328359aae7488b1a34b4248e480c2f5e9c52e1f82bfeeba2be6d43a6014231fec0c32430e9f73c6761206197bb7e3db0b6bad9c847a5643d1609c3534293
diff --git a/dev-python/phx-class-registry/phx-class-registry-3.0.5-r1.ebuild b/dev-python/phx-class-registry/phx-class-registry-3.0.5-r1.ebuild
index af2c2615454c..c2eba2650d1c 100644
--- a/dev-python/phx-class-registry/phx-class-registry-3.0.5-r1.ebuild
+++ b/dev-python/phx-class-registry/phx-class-registry-3.0.5-r1.ebuild
@@ -4,6 +4,7 @@
EAPI=7
PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+DISTUTILS_USE_PEP517=setuptools
inherit distutils-r1
DESCRIPTION="An intersection of the Registry and Factory pattern"
diff --git a/dev-python/phx-class-registry/phx-class-registry-4.0.6.ebuild b/dev-python/phx-class-registry/phx-class-registry-4.0.6.ebuild
new file mode 100644
index 000000000000..d33383ae25f2
--- /dev/null
+++ b/dev-python/phx-class-registry/phx-class-registry-4.0.6.ebuild
@@ -0,0 +1,23 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="An intersection of the Registry and Factory pattern"
+HOMEPAGE="https://github.com/todofixthis/class-registry"
+SRC_URI="https://github.com/todofixthis/class-registry/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+S="${WORKDIR}/class-registry-${PV}"
+
+distutils_enable_tests unittest
+
+python_test() {
+ "${EPYTHON}" -m unittest || die "Tests failed with ${EPYTHON}"
+}
diff --git a/dev-python/pylast/Manifest b/dev-python/pylast/Manifest
index bafc1a429dbb..58c1c5ba4fa2 100644
--- a/dev-python/pylast/Manifest
+++ b/dev-python/pylast/Manifest
@@ -1 +1,2 @@
DIST pylast-5.1.0.gh.tar.gz 40178 BLAKE2B f290afa72d71cb2f88793aaa31aa059a603375e91b310c3ca9180ed5626c589f3d91ae1961db15e256b01bd019b8e59dd48be45ff96683707c05ee9170dfed84 SHA512 64c71f5365638f3bdb435ac2d7405bd1e7a3ebe95fee97469c64bee63ad9850d45781756ebd59942c70780830fbb0519874908d2894e227acadedb5120c3b9ab
+DIST pylast-5.2.0.tar.gz 41137 BLAKE2B a7742bd2a23e281ab1a12d0198c74f1b5d8302700cb58490a5b3bff693098c8c3bf548ed52ca7f8cefecbcc10972c57da9ca04fe1d791141aacbb84ead9592ed SHA512 1ae76ff4ec6f009388abfcf8525f1c19e47cbabaace1f5e8c518819d0856168d855b789e3c08a9699dd7ab88ebfc7c3ab81c2d74a0fa1fd210450741b99da8c6
diff --git a/dev-python/pylast/pylast-5.2.0.ebuild b/dev-python/pylast/pylast-5.2.0.ebuild
new file mode 100644
index 000000000000..acc81c327245
--- /dev/null
+++ b/dev-python/pylast/pylast-5.2.0.ebuild
@@ -0,0 +1,31 @@
+# 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_{7,8,9,10,11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python interface to last.fm and other api-compatible websites"
+HOMEPAGE="
+ https://pypi.org/project/pylast/
+ https://github.com/pylast/pylast/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/httpx[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/flaky[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-check/Manifest b/dev-python/pytest-check/Manifest
index c8f491c364e5..7c7037110490 100644
--- a/dev-python/pytest-check/Manifest
+++ b/dev-python/pytest-check/Manifest
@@ -1 +1,2 @@
DIST pytest-check-2.1.4.tar.gz 24770 BLAKE2B 72973951e900276e771c083ad8869afbff5305c922c4cbc3fa02b302c6c72f24616ec89f25c2cbc7a2fbe333a4a8c00e2436a2f55345cc8b9791a1e5c2e64125 SHA512 8bf110f7c8e7d76c394ece5b6ba83cdf4ebc459d3a79541c5077237a1caecd0ecc82a74ebc796de9cbc921f48d1c739d1c40dcbd9c2efa3b1ab01f0234238bed
+DIST pytest_check-2.1.5.tar.gz 24990 BLAKE2B d7b09fe1f4b2932b4d9cfc12e0cc3a2c8082a97727cc6bec01f0db32b67af5860c8677749bf48068e496896fdf5a6beab57eb1fb39facddfb8defa995ff1ccfd SHA512 b3886f96db1ca20e4d337ea527e38e67faa1d79ace3c2cde2760ff66bc7fb5a77eeca2d3833a0abcf16e6f1f6922a82a8fddf7949ddf78e5238c9018761f2829
diff --git a/dev-python/pytest-check/pytest-check-2.1.5.ebuild b/dev-python/pytest-check/pytest-check-2.1.5.ebuild
new file mode 100644
index 000000000000..cd8d61a2cb5a
--- /dev/null
+++ b/dev-python/pytest-check/pytest-check-2.1.5.ebuild
@@ -0,0 +1,26 @@
+# Copyright 2021-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{7,8,9,10,11} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="pytest plugin that allows multiple failures per test"
+HOMEPAGE="
+ https://github.com/okken/pytest-check/
+ https://pypi.org/project/pytest-check/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/colorama-0.4.6[${PYTHON_USEDEP}]
+ dev-python/pytest[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-gnupg/python-gnupg-0.5.0.ebuild b/dev-python/python-gnupg/python-gnupg-0.5.0.ebuild
index 7a969831b105..200663258203 100644
--- a/dev-python/python-gnupg/python-gnupg-0.5.0.ebuild
+++ b/dev-python/python-gnupg/python-gnupg-0.5.0.ebuild
@@ -9,7 +9,11 @@ VERIFY_SIG_OPENPGP_KEY_PATH="${BROOT}"/usr/share/openpgp-keys/vinaysajip.asc
inherit distutils-r1 verify-sig
DESCRIPTION="A Python wrapper for GnuPG"
-HOMEPAGE="https://docs.red-dove.com/python-gnupg/"
+HOMEPAGE="
+ https://docs.red-dove.com/python-gnupg/
+ https://github.com/vsajip/python-gnupg/
+ https://pypi.org/project/python-gnupg/
+"
SRC_URI="https://github.com/vsajip/python-gnupg/releases/download/${PV}/${P}.tar.gz"
SRC_URI+=" verify-sig? ( https://github.com/vsajip/python-gnupg/releases/download/${PV}/${P}.tar.gz.asc )"
diff --git a/dev-python/rapidfuzz/Manifest b/dev-python/rapidfuzz/Manifest
index 7028ef15de82..0e591174a695 100644
--- a/dev-python/rapidfuzz/Manifest
+++ b/dev-python/rapidfuzz/Manifest
@@ -1,2 +1,3 @@
DIST rapidfuzz-3.0.0.tar.gz 1230857 BLAKE2B b15bcca17288cc428b485b0c6e1d322027eee5c8c0261b7f0240e4f5908ff2d53e05124855213a1923d96ec7537b75263c17f220bfaf792ab92f2f455d761027 SHA512 bafdb6045baa78154026dc0eb2498eb0031f03c36e8b17a9219d6e0c55041a9b6c164f4fcc0523480903fece0ab4e2e50a8f969a52b6934fcfbad80d8eadba25
DIST rapidfuzz-3.1.0.tar.gz 1251075 BLAKE2B 3a9e3dd4105910ad393efe795c4b7fe603f77ba922a6fa30a7b31f2f14a708651490c1afccbc9a5f217a348a8c20f779172a600331be51298ef746b0ade819ea SHA512 ff583a7b87d64b3b00d785533af3ba76d1ffa5dbc65111f4b72c2e7d84a43fe149e2f5546c6af130617e58e35556a7b2143ff6ed24dcf199d24b81ff7b46abc0
+DIST rapidfuzz-3.1.1.tar.gz 1279245 BLAKE2B bd3fa008a29fa9d7c2af8708d498e1b6f4497bf23c42d3692a9d5e61ab605b4511fe26213f405cd6b1a9531f106664577fb741eac1da0a8b70c5ef7b2879b3f8 SHA512 d83e07fd3a0b3085e6b93ddf53207110ae329241c23091c561f07fbcabf630a291c4fda3c5bd2baf91d80f5426ac0cdaeda92e87b617214594bfb67b787b85db
diff --git a/dev-python/rapidfuzz/rapidfuzz-3.1.1.ebuild b/dev-python/rapidfuzz/rapidfuzz-3.1.1.ebuild
new file mode 100644
index 000000000000..ae84b0c75e52
--- /dev/null
+++ b/dev-python/rapidfuzz/rapidfuzz-3.1.1.ebuild
@@ -0,0 +1,49 @@
+# 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_{7,8,9,10,11} )
+
+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 ~ia64 ~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.0.0
+ 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
+
+ export RAPIDFUZZ_BUILD_EXTENSION=1
+}
diff --git a/dev-python/readthedocs-sphinx-ext/Manifest b/dev-python/readthedocs-sphinx-ext/Manifest
index 6668a7cd5ea7..e3c39d586af2 100644
--- a/dev-python/readthedocs-sphinx-ext/Manifest
+++ b/dev-python/readthedocs-sphinx-ext/Manifest
@@ -1 +1,2 @@
DIST readthedocs-sphinx-ext-2.2.0.tar.gz 12721 BLAKE2B 3ac02a96a059e6d6b94af4318a5e816f8664e1164edb315d7540d1bfcce3b0edbbe9d567b0dc2931179cb309714175c64a3684b9d568551cc240ccbefc77a10a SHA512 8f7009a0716751de2fe2fed726aa08bb382d15ef6c4fb66e6c29537f985a92ab7cc137f81a4f6200e794cb7f495ebf561356194f57c694509b67e7686bef52c5
+DIST readthedocs-sphinx-ext-2.2.1.tar.gz 12644 BLAKE2B eb7b5f8d91dcf9f413cabe790537ed9179790c48e5778f026f07d442f4b446c6968b86c7e7eef4d548307ebd85ece8ff5a1fb3877ac4e3187ee8c53be86fc7dc SHA512 d2933228678549b7ab53bf7b8720eb23a5fcc05983dea56ab762906fc8a1445b2b94e0c12d647e18e6156fa1460a31ec0e7a7d7e4e8f5c46c5e39a9f35c382b9
diff --git a/dev-python/readthedocs-sphinx-ext/readthedocs-sphinx-ext-2.2.1.ebuild b/dev-python/readthedocs-sphinx-ext/readthedocs-sphinx-ext-2.2.1.ebuild
new file mode 100644
index 000000000000..c30960101db6
--- /dev/null
+++ b/dev-python/readthedocs-sphinx-ext/readthedocs-sphinx-ext-2.2.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{7,8,9,10,11} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Code specific for Read the Docs and Sphinx"
+HOMEPAGE="
+ https://github.com/readthedocs/readthedocs-sphinx-ext/
+ https://pypi.org/project/readthedocs-sphinx-ext/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/jinja-2.9[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/sphinx[${PYTHON_USEDEP}]
+"
+
+# unittest should be sufficient but tests are very verbose, so pytest's
+# output capture is most welcome
+distutils_enable_tests pytest
diff --git a/dev-python/sexpdata/Manifest b/dev-python/sexpdata/Manifest
index f073d38fc5bb..3b9a667c8a58 100644
--- a/dev-python/sexpdata/Manifest
+++ b/dev-python/sexpdata/Manifest
@@ -1 +1,2 @@
DIST sexpdata-1.0.0.gh.tar.gz 16540 BLAKE2B 6babe7b098d9e66bc9cbd6c8a8e91b8d9743ee93ca6745f626421ecab498fc70a02e16e5e3973b97b886feaf4042489f6903736c43f4264252122e1f190b9fc4 SHA512 1ef72d6441907ea3eae00b6d89344281930ac3ad82aee429fa45d2f876aef890019b0bae0241d1670d8f9842dd47a1be76d33dd510b38b09b904334a3924bb56
+DIST sexpdata-1.0.1.gh.tar.gz 17298 BLAKE2B 41132d8d2af06efdae024cbb8e05e9fa4fcb03ffb0af5f1b04df2fae8ed3a5bd8a45f93951cf575edf3facb0f9867a6e78d82ab166f0ec89df4a13b0827d7213 SHA512 e945eeec3743d92a76748c6fe22ca510ec5df6a3f2249a0d8020ae84854c50940add39437c680d3e44aafee7d9bb442db875b46afd290bfb6e8d31e16c6da9da
diff --git a/dev-python/sexpdata/sexpdata-1.0.1.ebuild b/dev-python/sexpdata/sexpdata-1.0.1.ebuild
new file mode 100644
index 000000000000..78483040f4bd
--- /dev/null
+++ b/dev-python/sexpdata/sexpdata-1.0.1.ebuild
@@ -0,0 +1,25 @@
+# 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_{7,8,9,10,11} )
+
+inherit distutils-r1
+
+DESCRIPTION="a simple S-expression parser/serializer"
+HOMEPAGE="
+ https://github.com/jd-boyd/sexpdata/
+ https://pypi.org/project/sexpdata/
+"
+SRC_URI="
+ https://github.com/jd-boyd/sexpdata/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+
+distutils_enable_tests pytest