summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-10-08 18:09:06 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-10-08 18:09:06 +0000
commit2bc55c92c078bd0b6eb0a81a138a0cd9eb28dab3 (patch)
tree9987b7977557662ddbf1ec2e13f1213c294493aa /dev-python
parent0a0082a8a3f182757dcf3fe63770f89cefbbd614 (diff)
downloadbaldeagleos-repo-2bc55c92c078bd0b6eb0a81a138a0cd9eb28dab3.tar.gz
baldeagleos-repo-2bc55c92c078bd0b6eb0a81a138a0cd9eb28dab3.tar.xz
baldeagleos-repo-2bc55c92c078bd0b6eb0a81a138a0cd9eb28dab3.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Faker/Faker-30.3.0.ebuild42
-rw-r--r--dev-python/Faker/Manifest1
-rw-r--r--dev-python/aiodns/aiodns-3.2.0.ebuild2
-rw-r--r--dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.0.ebuild2
-rw-r--r--dev-python/aiohttp/Manifest3
-rw-r--r--dev-python/aiohttp/aiohttp-3.10.5.ebuild2
-rw-r--r--dev-python/aiohttp/aiohttp-3.10.6_rc2.ebuild112
-rw-r--r--dev-python/aiohttp/aiohttp-3.10.7.ebuild123
-rw-r--r--dev-python/aiohttp/aiohttp-3.9.5.ebuild111
-rw-r--r--dev-python/argcomplete/Manifest1
-rw-r--r--dev-python/argcomplete/argcomplete-3.5.1.ebuild43
-rw-r--r--dev-python/black/Manifest1
-rw-r--r--dev-python/black/black-24.10.0.ebuild49
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.35.35.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.35.35.ebuild76
-rw-r--r--dev-python/gevent/Manifest1
-rw-r--r--dev-python/gevent/gevent-23.9.1.ebuild31
-rw-r--r--dev-python/gevent/metadata.xml16
-rw-r--r--dev-python/google-api-python-client/Manifest1
-rw-r--r--dev-python/google-api-python-client/google-api-python-client-2.148.0.ebuild50
-rw-r--r--dev-python/markupsafe/Manifest1
-rw-r--r--dev-python/markupsafe/markupsafe-3.0.0.ebuild29
-rw-r--r--dev-python/piexif/piexif-1.1.3-r3.ebuild39
-rw-r--r--dev-python/pycares/pycares-4.4.0.ebuild2
-rw-r--r--dev-python/pyprof2calltree/pyprof2calltree-1.4.5-r1.ebuild4
-rw-r--r--dev-python/pyproject-metadata/Manifest1
-rw-r--r--dev-python/pyproject-metadata/pyproject-metadata-0.8.1.ebuild32
-rw-r--r--dev-python/python-tests/Manifest3
-rw-r--r--dev-python/python-tests/python-tests-3.13.0.ebuild69
-rw-r--r--dev-python/sphinx-rtd-theme/Manifest1
-rw-r--r--dev-python/sphinx-rtd-theme/sphinx-rtd-theme-3.0.0.ebuild42
-rw-r--r--dev-python/trustme/Manifest1
-rw-r--r--dev-python/trustme/trustme-1.2.0.ebuild37
-rw-r--r--dev-python/tuf/Manifest1
-rw-r--r--dev-python/tuf/tuf-5.1.0.ebuild32
-rw-r--r--dev-python/uv/Manifest2
-rw-r--r--dev-python/uv/uv-0.4.19.ebuild144
-rw-r--r--dev-python/vcrpy/Manifest1
-rw-r--r--dev-python/vcrpy/vcrpy-6.0.2.ebuild65
41 files changed, 825 insertions, 403 deletions
diff --git a/dev-python/Faker/Faker-30.3.0.ebuild b/dev-python/Faker/Faker-30.3.0.ebuild
new file mode 100644
index 000000000000..aea1a8ba7ec6
--- /dev/null
+++ b/dev-python/Faker/Faker-30.3.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A Python package that generates fake data for you"
+HOMEPAGE="
+ https://github.com/joke2k/faker/
+ https://pypi.org/project/Faker/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/python-dateutil-2.4.2[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ !dev-ruby/faker
+"
+BDEPEND="
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP},tiff]
+ dev-python/validators[${PYTHON_USEDEP}]
+ )
+"
+
+# note: tests are flaky with xdist
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin
+ epytest
+ epytest --exclusive-faker-session tests/pytest/session_overrides
+}
diff --git a/dev-python/Faker/Manifest b/dev-python/Faker/Manifest
index 49544338546b..6af70180697f 100644
--- a/dev-python/Faker/Manifest
+++ b/dev-python/Faker/Manifest
@@ -1,3 +1,4 @@
DIST faker-29.0.0.tar.gz 1795098 BLAKE2B 96f6ee6166cc4dde4c6c8e1be2ac9cc1f529c5afe371cbb75c264777fdb390aa6dfaf199e6671b9f3e4658937c7fc0953aa31e548d3ea2e7ae948d8e2ced8e7c SHA512 09f46d2693b611277312cd39a5a6b7a40271c7136fd42c8a02c6d55ab10caeddb8d614db81ea76bc37879b21c6bb53297b04b7169410da7d6d183cb1406f60d9
DIST faker-30.0.0.tar.gz 1795010 BLAKE2B 01e93e39bb22db8220400d28f92ad08f4f1f971b7023cd76c6ae5b965800c6f44a0d67d22b48c4ced732b89efa8b7290e94b1a163f164c3f67d1e830174cba4e SHA512 21bd8d4d2ada7c579cad16ed019bce1187427dd1c5806bc97d055ca9e6a2477bbd2fd5861dc60bb1961ff6613fedabdff9cb59b453434fc80bbb52b336b78f89
DIST faker-30.1.0.tar.gz 1796615 BLAKE2B 448e1361fc397d13898778f32148a0ff6b13dd8ad232a29931ce08a5575986f832adb1167cff5de3a866bfdf5e8b06645bc46643f2b690e82c7d18c721fa84e4 SHA512 53828e30eeff7ffd5ce3b34dbdbe8d0b38b119f58e44dc3f0a5af47df48d8226101fa00dbb08594d03dd0369f7c6067f5f573eaf329133b3a7fdc3846f0e3780
+DIST faker-30.3.0.tar.gz 1797350 BLAKE2B 3c8da599ea115637687d168acc299803844ec42d645ea6485f80911becdde4c0e93a1a065f831048651f1c749c74d05f57eb978ddb95f229f58d194710b3fbf8 SHA512 843d7b46ad5585b715a73a831f8f5fb912f545dcec1d12fbf2296278feb8b0838aad613df8f39b1c515657e617737795ce5775eba89d0d4e645325dc2f50b0ad
diff --git a/dev-python/aiodns/aiodns-3.2.0.ebuild b/dev-python/aiodns/aiodns-3.2.0.ebuild
index 1f269deee0cc..847092cd8cd2 100644
--- a/dev-python/aiodns/aiodns-3.2.0.ebuild
+++ b/dev-python/aiodns/aiodns-3.2.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
# Tests fail with network-sandbox, since they try to resolve google.com
PROPERTIES="test_network"
diff --git a/dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.0.ebuild b/dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.0.ebuild
index 739210cd1d89..d1596483f0a8 100644
--- a/dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.0.ebuild
+++ b/dev-python/aiohappyeyeballs/aiohappyeyeballs-2.4.0.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="PSF-2"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
BDEPEND="
test? (
diff --git a/dev-python/aiohttp/Manifest b/dev-python/aiohttp/Manifest
index 92d2445aa0d3..cfc9b8815c04 100644
--- a/dev-python/aiohttp/Manifest
+++ b/dev-python/aiohttp/Manifest
@@ -1,7 +1,4 @@
DIST aiohttp-3.10.5.tar.gz 7524360 BLAKE2B 57ca70d1a075ae7f9ba9b86a19be52e05e88518e28baefb16e852ce83707bfbad9cb06af08a2cea3371349649e85ab6dfb3426ee2759a4e84456041373575a8b SHA512 bb932d24b3ce332d8a232ef3bf1fbe9b0a7df9986ad5e81d5f41bc31a81204653e5250c4f0ee77a9eeb53d404bd907b12977d31caae54c00ef0146350629e750
DIST aiohttp-3.10.6.tar.gz 7538429 BLAKE2B 55df48ae6321aa9d18ecf02ea16a34a328ad36ec87b0af77291c89684cd8de1fe35617187a700229c056f062ea50e8bd2249c2adb4e39a0899cab6fcd5521ac4 SHA512 9f5a989db03a1c9ae7a67c2888259466a4e9d3926f6e7bd8c31bb7981b7378dd8712a839e9c746e3502cbcdaef03b5c9dfe5fd65d0fde0af938bfbf4c7341327
-DIST aiohttp-3.10.6rc2.tar.gz 7538723 BLAKE2B 3de1cb0bfa9fea7ec8bcdab5a7850de700cb73b7a066ab269743e2bdbf84066e4555515dc81aea7c84be10ed9fc9487610577b44db164e49e61f19155c4dda35 SHA512 311f9ba7cafc7f1211c5c1859e235e0fd6941c32c77bfd0b74472dcf4b599b145fcc9e8496cb00300ae45c994d7b53082f39bc42a2a1cec304b92f9ce8109822
-DIST aiohttp-3.10.7.tar.gz 7538967 BLAKE2B c022b01ec3b2bb6549b00c43231692b643be9cda4af3c82748f55c813f12a0f16963c086fa99746e0f9bd8f95f5c1570b647ab0ca9f30aed501b563a6de773f6 SHA512 bfef47dfe14a7cc23f2962abfede36105b5061d3c537b4309b09d83ced545ff9f2e0a2f3713cac30ac5ce31ca951dbc6d1beafa571254a0a84b1f1f8d6ed6831
DIST aiohttp-3.10.8.tar.gz 7540022 BLAKE2B 8407815a0f65035032c9c59174642784a9ad5845d6655c32f29369d3a7ffdd63d52310ec61ed3a106122a4aeb22ed0db5264a353b7e483bb63021cdd9526b5b6 SHA512 f19a58e698908faf164592037d57f1d133e064616b5552df26639a9a7248e90a960cb1b070dbbb90c058579cbdcc4edb72b2846bd20ab2867b4b0c670ddd177f
DIST aiohttp-3.10.9.tar.gz 7541983 BLAKE2B 3bcfcd09c537fbd2a976f95b5c8387280ec0256bbc231b2bc5a07a1524e6926bfdebd182b1365d950b5a1465f44c4db004a645af7490c57cd4637978595fa6d4 SHA512 0b52ba3ff2c78113117f56818ab177791f2764b2e5ce6531ce5b0481ab9d22b4fe621d70c1c2067eab8cfdd423a2cf0fdaefd8b13231aecf0491326bdf12d1a0
-DIST aiohttp-3.9.5.tar.gz 7504841 BLAKE2B f051ee88d45952219f72d542f1c6d0cc33c699c6c5fb5dbe3bc054ee4d0e03121b219c8c8524fd1236a8b878329b0997b8afe07d6c66074102d4a2052a8738ff SHA512 da11468a2f131275593395b052700a99cf79055a32d48327dca0f58547ad30add8cd0a375dbd831e2f06fe7a739183251e4ad69c16f3d141799bbed45a8a5dc4
diff --git a/dev-python/aiohttp/aiohttp-3.10.5.ebuild b/dev-python/aiohttp/aiohttp-3.10.5.ebuild
index 38f9591450a9..c4db079b711a 100644
--- a/dev-python/aiohttp/aiohttp-3.10.5.ebuild
+++ b/dev-python/aiohttp/aiohttp-3.10.5.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test-rust"
RDEPEND="
diff --git a/dev-python/aiohttp/aiohttp-3.10.6_rc2.ebuild b/dev-python/aiohttp/aiohttp-3.10.6_rc2.ebuild
deleted file mode 100644
index 543b49c82225..000000000000
--- a/dev-python/aiohttp/aiohttp-3.10.6_rc2.ebuild
+++ /dev/null
@@ -1,112 +0,0 @@
-# Copyright 1999-2024 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_{9,10,11,12,13} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="HTTP client/server for asyncio"
-HOMEPAGE="
- https://github.com/aio-libs/aiohttp/
- https://pypi.org/project/aiohttp/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="test-rust"
-
-RDEPEND="
- >=dev-python/aiodns-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/aiohappyeyeballs-2.3.0[${PYTHON_USEDEP}]
- >=dev-python/aiosignal-1.1.2[${PYTHON_USEDEP}]
- >=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
- dev-python/brotlicffi[${PYTHON_USEDEP}]
- >=dev-python/frozenlist-1.1.1[${PYTHON_USEDEP}]
- >=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
- >=dev-python/yarl-1.12.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- <dev-python/async-timeout-5[${PYTHON_USEDEP}]
- >=dev-python/async-timeout-4.0[${PYTHON_USEDEP}]
- ' 3.10)
-"
-BDEPEND="
- dev-python/cython[${PYTHON_USEDEP}]
- test? (
- dev-python/freezegun[${PYTHON_USEDEP}]
- www-servers/gunicorn[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- dev-python/re-assert[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/time-machine[${PYTHON_USEDEP}]
- ' 'python3*')
- test-rust? (
- dev-python/trustme[${PYTHON_USEDEP}]
- )
- )
-"
-
-DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-src_prepare() {
- # increase the timeout a little
- sed -e '/abs=/s/0.001/0.01/' -i tests/test_helpers.py || die
- # xfail_strict fails on py3.10
- sed -i -e '/--cov/d' -e '/xfail_strict/d' setup.cfg || die
- sed -i -e 's:-Werror::' Makefile || die
-
- distutils-r1_src_prepare
-}
-
-python_configure_all() {
- # workaround missing files
- mkdir tools || die
- > requirements/cython.txt || die
- > tools/gen.py || die
- chmod +x tools/gen.py || die
- # force rehashing first
- emake requirements/.hash/cython.txt.hash
- > .update-pip || die
- > .install-cython || die
- emake cythonize
-}
-
-python_test() {
- local EPYTEST_IGNORE=(
- # proxy is not packaged
- tests/test_proxy_functional.py
- # python_on_whales is not packaged
- tests/autobahn/test_autobahn.py
- )
-
- local EPYTEST_DESELECT=(
- # Internet
- tests/test_client_session.py::test_client_session_timeout_zero
- # broken by irrelevant deprecation warnings
- tests/test_circular_imports.py::test_no_warnings
- )
-
- case ${EPYTHON} in
- pypy3)
- # upstream unconditionally blocks building C extensions
- # on PyPy3 but the test suite needs an explicit switch,
- # sigh
- local -x AIOHTTP_NO_EXTENSIONS=1
- ;;
- esac
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=pytest_mock,xdist.plugin
- rm -rf aiohttp || die
- epytest -m "not internal and not dev_mode" \
- -p rerunfailures --reruns=5
-}
diff --git a/dev-python/aiohttp/aiohttp-3.10.7.ebuild b/dev-python/aiohttp/aiohttp-3.10.7.ebuild
deleted file mode 100644
index ea5accf26b33..000000000000
--- a/dev-python/aiohttp/aiohttp-3.10.7.ebuild
+++ /dev/null
@@ -1,123 +0,0 @@
-# Copyright 1999-2024 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_{9,10,11,12,13} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="HTTP client/server for asyncio"
-HOMEPAGE="
- https://github.com/aio-libs/aiohttp/
- https://pypi.org/project/aiohttp/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-IUSE="+native-extensions test-rust"
-
-RDEPEND="
- >=dev-python/aiodns-3.2.0[${PYTHON_USEDEP}]
- >=dev-python/aiohappyeyeballs-2.3.0[${PYTHON_USEDEP}]
- >=dev-python/aiosignal-1.1.2[${PYTHON_USEDEP}]
- >=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
- dev-python/brotlicffi[${PYTHON_USEDEP}]
- >=dev-python/frozenlist-1.1.1[${PYTHON_USEDEP}]
- >=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
- >=dev-python/yarl-1.12.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- <dev-python/async-timeout-5[${PYTHON_USEDEP}]
- >=dev-python/async-timeout-4.0[${PYTHON_USEDEP}]
- ' 3.10)
-"
-BDEPEND="
- native-extensions? (
- dev-python/cython[${PYTHON_USEDEP}]
- )
- test? (
- dev-python/freezegun[${PYTHON_USEDEP}]
- www-servers/gunicorn[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- dev-python/re-assert[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/time-machine[${PYTHON_USEDEP}]
- ' 'python3*')
- test-rust? (
- dev-python/trustme[${PYTHON_USEDEP}]
- )
- )
-"
-
-DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-src_prepare() {
- # increase the timeout a little
- sed -e '/abs=/s/0.001/0.01/' -i tests/test_helpers.py || die
- # xfail_strict fails on py3.10
- sed -i -e '/--cov/d' -e '/xfail_strict/d' setup.cfg || die
- sed -i -e 's:-Werror::' Makefile || die
-
- distutils-r1_src_prepare
-}
-
-python_configure() {
- if [[ ! -d tools && ${EPYTHON} != pypy3 ]] && use native-extensions
- then
- # workaround missing files
- mkdir tools || die
- > requirements/cython.txt || die
- > tools/gen.py || die
- chmod +x tools/gen.py || die
- # force rehashing first
- emake requirements/.hash/cython.txt.hash
- > .update-pip || die
- > .install-cython || die
- emake cythonize
- fi
-}
-
-python_compile() {
- # implicitly disabled for pypy3
- if ! use native-extensions; then
- local -x AIOHTTP_NO_EXTENSIONS=1
- fi
-
- distutils-r1_python_compile
-}
-
-python_test() {
- local EPYTEST_IGNORE=(
- # proxy is not packaged
- tests/test_proxy_functional.py
- # python_on_whales is not packaged
- tests/autobahn/test_autobahn.py
- )
-
- local EPYTEST_DESELECT=(
- # Internet
- tests/test_client_session.py::test_client_session_timeout_zero
- # broken by irrelevant deprecation warnings
- tests/test_circular_imports.py::test_no_warnings
- )
-
- # upstream unconditionally blocks building C extensions
- # on PyPy3 but the test suite needs an explicit switch
- if [[ ${EPYTHON} == pypy3 ]] || ! use native-extensions; then
- local -x AIOHTTP_NO_EXTENSIONS=1
- fi
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=pytest_mock,xdist.plugin
- rm -rf aiohttp || die
- epytest -m "not internal and not dev_mode" \
- -p rerunfailures --reruns=5
-}
diff --git a/dev-python/aiohttp/aiohttp-3.9.5.ebuild b/dev-python/aiohttp/aiohttp-3.9.5.ebuild
deleted file mode 100644
index 3eb9aaef2c77..000000000000
--- a/dev-python/aiohttp/aiohttp-3.9.5.ebuild
+++ /dev/null
@@ -1,111 +0,0 @@
-# Copyright 1999-2024 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_{9,10,11,12,13} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="HTTP client/server for asyncio"
-HOMEPAGE="
- https://github.com/aio-libs/aiohttp/
- https://pypi.org/project/aiohttp/
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="test-rust"
-
-RDEPEND="
- >=dev-python/aiosignal-1.1.2[${PYTHON_USEDEP}]
- >=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
- dev-python/brotlicffi[${PYTHON_USEDEP}]
- >=dev-python/frozenlist-1.1.1[${PYTHON_USEDEP}]
- >=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
- >=dev-python/yarl-1.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- <dev-python/async-timeout-5[${PYTHON_USEDEP}]
- >=dev-python/async-timeout-4.0[${PYTHON_USEDEP}]
- ' 3.10)
-"
-BDEPEND="
- dev-python/cython[${PYTHON_USEDEP}]
- test? (
- dev-python/freezegun[${PYTHON_USEDEP}]
- www-servers/gunicorn[${PYTHON_USEDEP}]
- dev-python/pytest-forked[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- dev-python/re-assert[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/time-machine[${PYTHON_USEDEP}]
- ' 'python3*')
- test-rust? (
- dev-python/trustme[${PYTHON_USEDEP}]
- )
- )
-"
-
-DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-src_prepare() {
- # increase the timeout a little
- sed -e '/abs=/s/0.001/0.01/' -i tests/test_helpers.py || die
- # xfail_strict fails on py3.10
- sed -i -e '/--cov/d' -e '/xfail_strict/d' setup.cfg || die
- sed -i -e 's:-Werror::' Makefile || die
-
- distutils-r1_src_prepare
-}
-
-python_configure_all() {
- # workaround missing files
- mkdir tools || die
- > requirements/cython.txt || die
- > tools/gen.py || die
- chmod +x tools/gen.py || die
- # force rehashing first
- emake requirements/.hash/cython.txt.hash
- > .update-pip || die
- > .install-cython || die
- emake cythonize
-}
-
-python_test() {
- local EPYTEST_IGNORE=(
- # proxy is not packaged
- tests/test_proxy_functional.py
- # python_on_whales is not packaged
- tests/autobahn/test_autobahn.py
- )
-
- local EPYTEST_DESELECT=(
- # Internet
- tests/test_client_session.py::test_client_session_timeout_zero
- # broken by irrelevant deprecation warnings
- tests/test_circular_imports.py::test_no_warnings
- # TODO
- tests/test_client_session.py::test_request_tracing_url_params
- )
-
- case ${EPYTHON} in
- pypy3)
- # upstream unconditionally blocks building C extensions
- # on PyPy3 but the test suite needs an explicit switch,
- # sigh
- local -x AIOHTTP_NO_EXTENSIONS=1
- ;;
- esac
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x PYTEST_PLUGINS=pytest_mock,xdist.plugin,pytest_forked
- rm -rf aiohttp || die
- epytest --forked -m "not internal and not dev_mode"
-}
diff --git a/dev-python/argcomplete/Manifest b/dev-python/argcomplete/Manifest
index da657160e57f..5c4c179a6f63 100644
--- a/dev-python/argcomplete/Manifest
+++ b/dev-python/argcomplete/Manifest
@@ -1 +1,2 @@
DIST argcomplete-3.5.0.tar.gz 82237 BLAKE2B 7a5acd6f1311ec153333363e207037634b6901cca1415bd68d8e009888fa8cdfdfc3a50189f14c5da4bddfa5c861bbc009cf0d34248ff168caaa6ebad6ad8a7d SHA512 89c305a97b0808301976a48f9c8cb914e7cc12e33540cebd1c6514bbed8017db27b2232e3526abb74fe4f152f23c211be5a48aeafd63bbfca2dcc42f92b4877e
+DIST argcomplete-3.5.1.tar.gz 82280 BLAKE2B be4467ffae1fb5f6e433e2f80c43e33cc455883c7e8962d2add7dabfb8d6415daa9fc67538c394d4582828faf5036ceaaf8b1e158457529574405aa72ce51d8d SHA512 478680a65f2786f9bca0fd598a3c0d938759f8aacaec5506a08875dcd73fb0e13f3446d6500c694bb1943ebb65fdfd1544a51364c8f79d44eb02eb06294af9cc
diff --git a/dev-python/argcomplete/argcomplete-3.5.1.ebuild b/dev-python/argcomplete/argcomplete-3.5.1.ebuild
new file mode 100644
index 000000000000..3e9d949f06cf
--- /dev/null
+++ b/dev-python/argcomplete/argcomplete-3.5.1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Bash tab completion for argparse"
+HOMEPAGE="
+ https://github.com/kislyuk/argcomplete/
+ https://pypi.org/project/argcomplete/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# pip is called as an external tool
+BDEPEND="
+ test? (
+ app-shells/fish
+ app-shells/tcsh
+ app-shells/zsh
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ >=dev-python/pip-19
+ )
+"
+
+PATCHES=(
+ # increase test timeouts -- this is particularly necessary
+ # for entry point tests because they read metadata of all installed
+ # packages which can take real long on systems with lots of packages
+ "${FILESDIR}/argcomplete-3.1.6-timeout.patch"
+)
+
+python_test() {
+ "${EPYTHON}" test/test.py -v || die
+}
diff --git a/dev-python/black/Manifest b/dev-python/black/Manifest
index 1ba94d5b0a17..dff2fec2c746 100644
--- a/dev-python/black/Manifest
+++ b/dev-python/black/Manifest
@@ -1,2 +1,3 @@
+DIST black-24.10.0.tar.gz 645813 BLAKE2B ba53b3d38d982c81d66291318ba6ab7df75779207fea77af3a4554cebaa23061d9d22f97613faa38b869694edcf56ae0001ff27eb34fba1e1bc8732dbf0a0796 SHA512 36285528b2a3ca9b68b806cf43cf04061f80e0ad5e693c70d2dc254b59d15f41ec5c2a4328d4cda42abe005def2d86d8fc501c1649b223a225c8bddddf82589a
DIST black-24.4.2.tar.gz 642299 BLAKE2B aa62394dc4a14fd6dd49502a86e46e7f707d6342127e2fb3b5cb7365ab392f5a0514df548d30219e9b6ed1f9d8ca80241ea206a06011ef8dc3d770191d3328ce SHA512 f3fb63fdbff947a217ad371939a6eaac1e818f58fb924516639f3c9469f0db6fbda8d4b207163d4a6db8a58a048fefe46fbfdb1ddf40f91348bd767208e60f35
DIST black-24.8.0.tar.gz 644810 BLAKE2B 8961bca9caf4db7178b3bdc4cccbf8bea667329cb2a13e388fa966b0cc9c059edf6ee17f281b72b9b8b66359781d525cc3983b2cb7a5e0638418d9454e51b188 SHA512 2ba2579964764032d30378232f5874a5d71981eb76706ed12004c08c78eaa56bfb8e0740e513280b9246f54082443c64aa31d31955fdccae9c6e6ba96f54e1cc
diff --git a/dev-python/black/black-24.10.0.ebuild b/dev-python/black/black-24.10.0.ebuild
new file mode 100644
index 000000000000..afb4d1c176e6
--- /dev/null
+++ b/dev-python/black/black-24.10.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 optfeature pypi
+
+DESCRIPTION="The uncompromising Python code formatter"
+HOMEPAGE="
+ https://black.readthedocs.io/en/stable/
+ https://github.com/psf/black/
+ https://pypi.org/project/black/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ >=dev-python/click-8.0.0[${PYTHON_USEDEP}]
+ >=dev-python/mypy_extensions-0.4.3[${PYTHON_USEDEP}]
+ >=dev-python/packaging-22.0[${PYTHON_USEDEP}]
+ >=dev-python/pathspec-0.9.0[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-1.1.0[${PYTHON_USEDEP}]
+ >=dev-python/typing-extensions-4.0.1[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/aiohttp-3.10[${PYTHON_USEDEP}]
+ dev-python/aiohttp-cors[${PYTHON_USEDEP}]
+ dev-python/colorama[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+pkg_postinst() {
+ optfeature "blackd - HTTP API for black" \
+ "dev-python/aiohttp dev-python/aiohttp-cors"
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 2ee28430069d..0ce508126634 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -5,3 +5,4 @@ DIST boto3-1.35.31.gh.tar.gz 868424 BLAKE2B 28c352784c8af273f29318b788ed2c29b88e
DIST boto3-1.35.32.gh.tar.gz 869127 BLAKE2B a7a269b71f8a784118d0d9092ef95b9eb8344c6791e37a68d1645bf629f7b724e556dba02fad5685af5dff543a3646dda9005cdf0c7a92b47431dd1ba9ce6d26 SHA512 2cd51232be313b407b4a2b799bdd487242f3e61a9bc63df2d59422ea5b7abb2f9c382b151d17efe0dfed31b1d0cf9719a746fd3c8de314e080e774c1c4951ffc
DIST boto3-1.35.33.gh.tar.gz 869945 BLAKE2B dfff3fe81c88f6bb971ad832559974d54e2ef74c8c8398148906b301183787e0adfb28b7095b7fea48e2079bff0c7eda12305f666f463b63f02988738ac01707 SHA512 e7a0bf1d1aaa83dc519b46ca97cab04ba785772f3042a6c7ee1a1780c5cefb412438a5b99d27c9b7a3adaae4f643addcfe0b75001b129671b503106a5d6440fe
DIST boto3-1.35.34.gh.tar.gz 870029 BLAKE2B 5cd9cfa0a742b8d01a6229183c3545945bb5ac89aa5b469123fcfda8a1dc3c0b505bad00a28cd6f48d14526a069d6206151d5482529ce1e35fe16f5f8180753a SHA512 6488c9dd37886bd500d09c4eef51b50c70e4d8cb2e796caec0b5fd57bb67df0663845f0fbf8507ad0d133759d1a83ac720a0bcbd703624383d1cddeb7dd92d1a
+DIST boto3-1.35.35.gh.tar.gz 870230 BLAKE2B 00f8272dc5f184ace7fd38921a1b131d2154452951a0fa5170a1eeb8aab0d0c61d69836053fefd19ac6808d2c50ac2505b76ec9088761aadf8ed9509115bfb13 SHA512 9f7bebc232754f21fe1fcc4d8536ce39ab00d0fd0cd5560d256250b8efc8d60f8183825b67f90db0a8dd31ea48073d84b508acddaaf03cb68c98c9ecb0a92b23
diff --git a/dev-python/boto3/boto3-1.35.35.ebuild b/dev-python/boto3/boto3-1.35.35.ebuild
new file mode 100644
index 000000000000..d91ce27598cf
--- /dev/null
+++ b/dev-python/boto3/boto3-1.35.35.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_XDIST=1
+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() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index 124ea48d0d06..1a786704091f 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -5,3 +5,4 @@ DIST botocore-1.35.31.gh.tar.gz 13414420 BLAKE2B 942455ccd037fb7cd9142a43cbc316c
DIST botocore-1.35.32.gh.tar.gz 13422242 BLAKE2B d1b553be9301b5c9aa674e9aa32d15b69e3fd56eb9d906fb979967a1df6fbf69fac6795dad133bcaf63c8c955d3f234087a7285ba7f603de83f015fc7fcea1fa SHA512 174bed147fc9708e2c1e500276597396a4f63d0417bfeb6058296a9aaeb6f21a56e8bd63d06248641e99f0e38e1dbc5c1a3ce8c17c28e1c3eea8044f58ce0642
DIST botocore-1.35.33.gh.tar.gz 13432128 BLAKE2B 363eb3dd1f819294ff099a9af0a8deca0078d7d7ec533f3c64a86bc5a0228b7d9180dbbde5ebd8af4e5114373021981c5137ca314ce18773a1339f65506700b0 SHA512 a5a7f3afbb9ded8df9419892427d9c71f281e1f974a5b797405ed564f27f26e9b33580de4d5d2ac96096fff46425a39db2b2ee09718d1db89b3847ed7f53d60c
DIST botocore-1.35.34.gh.tar.gz 13432167 BLAKE2B b39c70faa7312fecc748286162c3b3f21ed56ba705d0f8385a157c25d3d25ceb2d3ca7fb8234372600e5738bc7dd562e67368a863b4853da890009af6fff75ae SHA512 116a5698b1a9e60ea47adb1fe51148c0a5025e8ce940bf5b5c8009e77ea0cc850febc45df9581dda0e2238f2d42f6b8afd674d80e11d88047719874b5cb63198
+DIST botocore-1.35.35.gh.tar.gz 13440561 BLAKE2B 7dedca0fa7e492279f1bc138c7cd4d71a302853d311441f57520bde7643c3f47d7c6952d69f0ac9591f6e639cb22986414a01df626c022dc2c8a84d98804160a SHA512 670301f0a56b6c610d9ace6d36b36f14b62aa74daab3087d2ce24370d27485de17928386a5319f4f4483f88096e2e1f8e71923918511649e20535fe88c1b5b42
diff --git a/dev-python/botocore/botocore-1.35.35.ebuild b/dev-python/botocore/botocore-1.35.35.ebuild
new file mode 100644
index 000000000000..2fce84c7e05c
--- /dev/null
+++ b/dev-python/botocore/botocore-1.35.35.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+
+RDEPEND="
+ <dev-python/jmespath-2[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
+"
+# unbundled packages
+RDEPEND+="
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_XDIST=1
+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
+ )
+
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # memory use tests, probably fragile
+ tests/functional/leak/test_resource_leaks.py::TestDoesNotLeakMemory
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/gevent/Manifest b/dev-python/gevent/Manifest
deleted file mode 100644
index 3f18a7f86531..000000000000
--- a/dev-python/gevent/Manifest
+++ /dev/null
@@ -1 +0,0 @@
-DIST gevent-23.9.1.tar.gz 5847705 BLAKE2B b1d2f95728e545e4970235c7cd352f2a3ed742f01a4f2421423d6e9fd36d7fadae5ffe1dba326535501ec8179c36d83ec5e5c4aeced70673921db85fc9e1b042 SHA512 c0600a5f9e50040009c3467ad802dda8a48422dca4e781acc9ca3428446399932da2f07d7345936ef634783611cf664d219f614980ed6b936f4a510e56ea753c
diff --git a/dev-python/gevent/gevent-23.9.1.ebuild b/dev-python/gevent/gevent-23.9.1.ebuild
deleted file mode 100644
index 3e64cfebf8e8..000000000000
--- a/dev-python/gevent/gevent-23.9.1.ebuild
+++ /dev/null
@@ -1,31 +0,0 @@
-# Copyright 2021-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{9,10,11,12,13} )
-DISTUTILS_USE_PEP517=standalone
-PYTHON_REQ_USE="ssl(+),threads(+)"
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Coroutine-based network library"
-HOMEPAGE="https://www.gevent.org/ https://pypi.org/project/gevent/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
-
-IUSE="monitor recommended"
-
-RDEPEND="
- >=dev-python/greenlet-3.0[${PYTHON_USEDEP}]
- dev-python/zope-event[${PYTHON_USEDEP}]
- dev-python/zope-interface[${PYTHON_USEDEP}]
- monitor? ( >=dev-python/psutil-5.7.0[${PYTHON_USEDEP}] )
- recommended? (
- >=dev-python/cffi-1.12.2[${PYTHON_USEDEP}]
- >=dev-python/psutil-5.7.0[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="${RDEPEND}"
diff --git a/dev-python/gevent/metadata.xml b/dev-python/gevent/metadata.xml
deleted file mode 100644
index eae4a31a4f41..000000000000
--- a/dev-python/gevent/metadata.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
-<pkgmetadata>
- <maintainer type="person">
- <email>dev@notyourcomputer.net</email>
- <name>Shaoyu Tseng</name>
- </maintainer>
- <upstream>
- <doc>https://www.gevent.org/</doc>
- </upstream>
- <use>
- <flag name="monitor">Enhancements to gevent’s self-monitoring capabilities. This includes the psutil library which is needed to monitor memory usage.</flag>
- <flag name="recommended">A shortcut for installing suggested extras together. This includes the non-test extras defined here, plus additions that improve gevent’s operation on certain platforms (for example, in the past, it has included backports of newer APIs).</flag>
- </use>
- <origin>gentoo-guru-overlay</origin>
-</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest
index e5155d176f25..04a2333e0ca5 100644
--- a/dev-python/google-api-python-client/Manifest
+++ b/dev-python/google-api-python-client/Manifest
@@ -1,2 +1,3 @@
DIST google_api_python_client-2.146.0.tar.gz 11690645 BLAKE2B 850f8b5b383ab8485b4b8aef77e94a18971498b51e1689aa707997931ba908e97e590681900beec42fc0f50adcbe8488657fbf0be0d8d5c6a55dc424a49ed86c SHA512 5789e69f1d279f8e53d40348af770aa03738853ebf19cfd4e50f23dca3412ca7d360993e4e00c4f0e654c65b3dbddfc2ffca069ebb26cc13b674bd622e90ae2a
DIST google_api_python_client-2.147.0.tar.gz 11729279 BLAKE2B 319442376870b780cf9c42e6e9c7d25f5f2b4b1ecda33f3179773cb18c9c447748528e575dfd122cb5153870c7fc26900e092d24a9362deacb905fc6fa740205 SHA512 5a4abdfbaebfeee4c2ded84f19e1f5b4f888179964e76b7cc88c75b7dbe75c735d0a024f068a5fa8f0994b56671c94c60d9bd81648c123309e1c1087329b1a2f
+DIST google_api_python_client-2.148.0.tar.gz 11762466 BLAKE2B b075c0379896460e0550dfee3fdc015f1a31dc3e30387a5c5e231c6f4b7ec3b922e0e4f6ad56da4c37773a03e791725679f8e29e200c4c9b08321d8dd39186e6 SHA512 3dcad3530a46095979fcdbbffa97a74e48d2fc4cff35863c65f6d0994a7e92ad884f533f41ce3744fdcb4a5fe5fd61ba04eabeeb40e9dd7a826ac9c4ccdb8a60
diff --git a/dev-python/google-api-python-client/google-api-python-client-2.148.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.148.0.ebuild
new file mode 100644
index 000000000000..595a1e3cbd88
--- /dev/null
+++ b/dev-python/google-api-python-client/google-api-python-client-2.148.0.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Google API Client for Python"
+HOMEPAGE="
+ https://github.com/googleapis/google-api-python-client/
+ https://pypi.org/project/google-api-python-client/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/httplib2-0.15[${PYTHON_USEDEP}]
+ <dev-python/httplib2-1[${PYTHON_USEDEP}]
+ >=dev-python/google-api-core-2.3.1[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-1.35.0[${PYTHON_USEDEP}]
+ >=dev-python/google-auth-httplib2-0.1.0[${PYTHON_USEDEP}]
+ >=dev-python/uritemplate-3.0.0[${PYTHON_USEDEP}]
+ <dev-python/uritemplate-5[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/mock[${PYTHON_USEDEP}]
+ dev-python/pandas[${PYTHON_USEDEP}]
+ dev-python/parameterized[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # require Internet access (and credentials)
+ tests/test_discovery.py::DiscoveryErrors::test_credentials_and_credentials_file_mutually_exclusive
+ tests/test_discovery.py::DiscoveryFromDocument::test_api_endpoint_override_from_client_options_mapping_object
+ tests/test_discovery.py::Universe::test_client_options_universe_configured_with_mtls
+ tests/test_discovery.py::Universe::test_universe_env_var_configured_with_mtls
+ )
+
+ epytest tests
+}
diff --git a/dev-python/markupsafe/Manifest b/dev-python/markupsafe/Manifest
index f4ec7c22901f..dc644b53f7c4 100644
--- a/dev-python/markupsafe/Manifest
+++ b/dev-python/markupsafe/Manifest
@@ -1 +1,2 @@
DIST MarkupSafe-2.1.5.tar.gz 19384 BLAKE2B d6ae0e1864983f4ab92f2fd9b58a012a8c76e6f47957681d4acc362b2129d63fe4f4625600a89081afe0e99f868eb604d6c75fec88de9a18ebb32c15f091681b SHA512 3ba5af43d23c266377f5d32b11e1faa7955ea8c67eb1c32886c308527f93e75e387294d0eec7794c0c20aad0c705b27f3d1f86b04202f3b63068d12d4053cc71
+DIST markupsafe-3.0.0.tar.gz 20102 BLAKE2B 26da6978f6d5c5285673f01a3ae47c45c9af94067b408142159e931e794178b5c25d8e90e9e03d3951e246dfc9ad417c374f4dbd86978ffb4fe3d8530931defe SHA512 bacfe1f18f30af0ae99842f117a309fbb583f3a05fa2cb347606f3186538cae0d9c6ad558a58a6b731542752cba66c02660d923b293aa94ea88aa7f05b9b8aeb
diff --git a/dev-python/markupsafe/markupsafe-3.0.0.ebuild b/dev-python/markupsafe/markupsafe-3.0.0.ebuild
new file mode 100644
index 000000000000..a23173e62b98
--- /dev/null
+++ b/dev-python/markupsafe/markupsafe-3.0.0.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYPI_PN="MarkupSafe"
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Implements a XML/HTML/XHTML Markup safe string for Python"
+HOMEPAGE="
+ https://palletsprojects.com/p/markupsafe/
+ https://github.com/pallets/markupsafe/
+ https://pypi.org/project/MarkupSafe/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/piexif/piexif-1.1.3-r3.ebuild b/dev-python/piexif/piexif-1.1.3-r3.ebuild
new file mode 100644
index 000000000000..46260bb9c44e
--- /dev/null
+++ b/dev-python/piexif/piexif-1.1.3-r3.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit edos2unix distutils-r1 pypi
+
+DESCRIPTION="Exif manipulation with pure Python"
+HOMEPAGE="
+ https://github.com/hMatoba/Piexif/
+ https://pypi.org/project/piexif/
+"
+SRC_URI="$(pypi_sdist_url "${PN}" "${PV}" .zip)"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+distutils_enable_tests pytest
+
+BDEPEND="
+ app-arch/unzip
+ test? ( dev-python/pillow[jpeg,${PYTHON_USEDEP}] )
+"
+
+PATCHES=(
+ # From https://github.com/hMatoba/Piexif/pull/109
+ "${FILESDIR}"/${P}-tests-pillow-7.2.0.patch
+)
+
+src_prepare() {
+ edos2unix tests/s_test.py # to be able to patch it
+ default
+}
diff --git a/dev-python/pycares/pycares-4.4.0.ebuild b/dev-python/pycares/pycares-4.4.0.ebuild
index 2f1cb977e144..09d420396c72 100644
--- a/dev-python/pycares/pycares-4.4.0.ebuild
+++ b/dev-python/pycares/pycares-4.4.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test"
# Tests fail with network-sandbox, since they try to resolve google.com
PROPERTIES="test_network"
diff --git a/dev-python/pyprof2calltree/pyprof2calltree-1.4.5-r1.ebuild b/dev-python/pyprof2calltree/pyprof2calltree-1.4.5-r1.ebuild
index c48a647ff9ac..fc30258f3df0 100644
--- a/dev-python/pyprof2calltree/pyprof2calltree-1.4.5-r1.ebuild
+++ b/dev-python/pyprof2calltree/pyprof2calltree-1.4.5-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -8,7 +8,7 @@ PYTHON_COMPAT=( python3_{9,10,11,12,13} )
inherit distutils-r1
-DESCRIPTION="convert python profile data to kcachegrind calltree form"
+DESCRIPTION="Convert python profile data to kcachegrind calltree form"
HOMEPAGE="
https://github.com/pwaller/pyprof2calltree/
https://pypi.org/project/pyprof2calltree/
diff --git a/dev-python/pyproject-metadata/Manifest b/dev-python/pyproject-metadata/Manifest
index a4c4a5ee9e3f..e51400abbd10 100644
--- a/dev-python/pyproject-metadata/Manifest
+++ b/dev-python/pyproject-metadata/Manifest
@@ -1,4 +1,5 @@
DIST pyproject_metadata-0.8.0.tar.gz 14862 BLAKE2B 03c9a7fc9c53c56b27ea5c72789db10aa045d239c81bf30e926c0ed44d6b61028a27c4dbe02a40eb4ae7ce4a93efb24c63dd4b66f2e98f185fc68d96e96c350a SHA512 e3ec79bcb066fd952a7e88b62534775746b20a52b9952a303e80466c465e394264b8984ca30a1461cd8437334ae7b1a299be7d8036e99e3dcf59828d70650442
+DIST pyproject_metadata-0.8.1.tar.gz 15404 BLAKE2B 1f2ab911043b0511b2e13e78d1e208643a3d29d4b7152d305d432827d32402f0ae944e74eadc41faff7d641c642dfbc4482ce3c8aad6dfae385ff6c7df465465 SHA512 a9677d7d8d6004a86c92d3eb44c37494e2a4709c1ffcaad444d0f0e573ae56c753e6ec27efab6def03f89c357db7966f7dc9a819bf2cab02af2ee8718e7b5a39
DIST pyproject_metadata-0.9.0b4.tar.gz 21975 BLAKE2B c80494dcb30bc40c5b64522a79343151750324907382448fedc449830ef14ea9cd74a2fb4a8ce663a95052b91b04354b736274d7149eb116862bd4757b6b9a09 SHA512 f8e023a88fe60278924fd839c69b3c9def8707c5a619aa24898677b9d1aec79c8b4513dbcbbb80a610dc033621ead8bc23840c921836d1e35d3d0605874be757
DIST pyproject_metadata-0.9.0b5.tar.gz 26016 BLAKE2B 63586f314884f7b088abe9602582131aa45808a624006d508c234c801ada9eb117d42e29f4e3db4e73cc6fcc69e3f3b9f6469749e4614568e6bc25cbe7b36acb SHA512 5e9603d6b826ad52c2490afa107fd22ab8b78fc5e7f3dc220822df69a34f6845ee35c7cf167029250fedf62dea8162203579bcb879e182183485bfaacdc3bb50
DIST pyproject_metadata-0.9.0b6.tar.gz 28932 BLAKE2B f82d1df56056f340a46a11a3a7a293a30b78d5067f52c4308f1e011b281e76fa2c8a191009687961acb808ead1248a90bcdee178ddd23c0571342782734d30ae SHA512 a2aa62e01022b018dc94deb72df6636c036f1484d608455a4751c80543ed91bb62c8f49e1121c0da2e11f85d71ffab3f098afb1e7fdf69b5d6fb834cd7a98d15
diff --git a/dev-python/pyproject-metadata/pyproject-metadata-0.8.1.ebuild b/dev-python/pyproject-metadata/pyproject-metadata-0.8.1.ebuild
new file mode 100644
index 000000000000..cef3e7ff2c2f
--- /dev/null
+++ b/dev-python/pyproject-metadata/pyproject-metadata-0.8.1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="PEP 621 metadata parsing"
+HOMEPAGE="
+ https://github.com/pypa/pyproject-metadata/
+ https://pypi.org/project/pyproject-metadata/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+
+RDEPEND="
+ >=dev-python/packaging-19[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-1.0.0[${PYTHON_USEDEP}]
+ ' 3.10)
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/python-tests/Manifest b/dev-python/python-tests/Manifest
index 304491228916..1c80235a7e47 100644
--- a/dev-python/python-tests/Manifest
+++ b/dev-python/python-tests/Manifest
@@ -6,6 +6,8 @@ DIST Python-3.12.6.tar.xz 20434028 BLAKE2B 527fafdbfd0c1784ff72a93cdeb3f49666bae
DIST Python-3.12.6.tar.xz.asc 963 BLAKE2B d5f9e4c5053610a1a53769278e69d8a25e2fb047afb2a55dfee67917d8d200ebc159e614327ac87f34a4a9718cb3436b55190322ee231116b26074a78bb72642 SHA512 91a15bb7e8dd26616a2cdabe69c3ee81668cc67cb55a88b2be20433d24c9f8ae41c8f93f67aff2fa5858cd5b94600409cd472bd437a2fd33153483734ecd863f
DIST Python-3.12.7.tar.xz 20444032 BLAKE2B eed8744261cab3b401963ec5187a8b814adb9a18f8d0a6a3d59c027a83cf8408524af9b20204b0a0861d173cc33c45ae37bb1542a1ace3344dc59c649087ff1f SHA512 4a363d3f852ad8f4fd1484aa4cec35494a3811be48ef67fadb2bdf2e2489ed07dc78fad6ab475257db503ddd64d39f9800f23a1c94b6bbd15b7f632cff0c90ae
DIST Python-3.12.7.tar.xz.asc 963 BLAKE2B 8c7db3d1971d93a10c611a2e6dd3679d0b331b48df87b5fe410b089061e48753d98af67084d4f051a31ae803fce3aa3c7af7cba9c692640f50068bd1e46f40e6 SHA512 4d0a7a0da2c81888e93d8ff89ca2ed4bb85a7b0bd00f0d54a14e2c201affac2677ef3984d2b5aea253e624f6465548d9032eefdd9033c1eb3864d82cfd8d3df0
+DIST Python-3.13.0.tar.xz 22532980 BLAKE2B 4a4e397199402de8c9fe8e4d63443ed972cbe8a4f541743908d699c7987127d159d600fd14145b6a946e8671426279d230c9155fdc5863c1e49a945eedcbf21b SHA512 44a143c9b96b55b01885ec020c3364265bda55289615cd7d5071915b0d0178a6f35e7551a89090001fcb7f3172d38177a56bf8b8532b15c9dbc50295c9210152
+DIST Python-3.13.0.tar.xz.asc 963 BLAKE2B d05f02692a9fea42b73dbfe5dc42bd6533555e5ecb848510d2b94bb7f0e55d4a0f89bcd20b073ed2c7f7a68be35b12cb6dbff6bc16fc9a4592ded2c339ada7fd SHA512 1b8bb0fe4eb93e31ec1770e90b94d44b5864c0391aad5dcba3a30d8e505d9b17107385414353c0060007f8a536254f49b8e919f36ddf6421a6e4330f817f1a3e
DIST Python-3.13.0rc3.tar.xz 22527884 BLAKE2B 9c6423e9871b30af70ece10598e798da443b40b3e40cae86ec59d396184df005627a5edeedf34d31c7953f972850e41d1cc708edd8e39c1327d319b0f6973049 SHA512 152e5b6d64048c1779612e66d5999c424ca7c61c8a0f4973f7b3019629d6a7923b422aec0bee30e7bc2d589a807d87e15a19b8fb4446bcf082eb663885a49b36
DIST Python-3.13.0rc3.tar.xz.asc 963 BLAKE2B e03d902eee320939cb77094e1b64e0101d0172ebdcc502255da1c0fc84476f43fafe900321c78cd78248a751b3a3921572ba4f305ed77ed78f175184b21f667f SHA512 c8f80b12f5e3021a11fc3ef5ce84572db9de7165ce89a03206cb0727b54f90ca2e444a16df064e6423e15b7bf2364db088b0c9315967dd340e735eabf7b892ce
DIST python-gentoo-patches-3.10.15_p1.tar.xz 24048 BLAKE2B 191c28ad9bc781d6f3077870e8d40ff98a47a64009ecfbbd10fe2b3c5330692181837fd3e9b336fd01f936a39160fc12761b2ef9bc00843248ab978cda2e2767 SHA512 4461e351c991694415e2812e558d6c3d3f79295358623dc955bc0839691a170d95a3efd31c0bf9f0d6191e4184d7b55fdb485b948d591782fef5b060d7660cce
@@ -13,4 +15,5 @@ DIST python-gentoo-patches-3.11.10_p1.tar.xz 10592 BLAKE2B 1cc02d22b55cb76beba13
DIST python-gentoo-patches-3.12.6_p2.tar.xz 8144 BLAKE2B 2f36ce972e0b3e2884c9df629e3aeb1af05e4c77dffb866ff28e08a0a7df3c7cf36a9de250d148d909c07fd5bad483c95b3267818657c04e7d0d6fe512e21f9a SHA512 caa86c6cf693f9293b3aa8944452d117b78c1c3f8d6a6aa658cb5c2d2ffb0cecc6cf14b293872bd2101766ee7167ba88183904b2814090f8cbc64c1fa3b771be
DIST python-gentoo-patches-3.12.6_p4.tar.xz 8764 BLAKE2B a75b9bc3768f1e07272f43d1a8f0fb6858eee7c786bc3141cd152382c287ee984b92ff1301e5894db7c24af994ee52ac7374a3edf692aa4255c1413b73209020 SHA512 237c9e8b50173a757204621d7019f68f230ea3e520ea1f078528acfb509fe7f44c0919a8ac0245e79b1a51c3e3545dd9ded51047451048ca782e35b1c4365363
DIST python-gentoo-patches-3.12.7_p1.tar.xz 10228 BLAKE2B 71cc6034201198d9483414fa362d68b550bfcbf75ca6f44dd8ab9d90b201098a05cbf4799b1db9359f4dc464acfcee9b0ce59045db27e8e9ce916b5aab010448 SHA512 22f9256c28b96723ad86878cbe44da155e280a8df08c6bcc568dc5296aca1a6fcc41ab823ee9e6d34ce5954bbedb76aea7dba2d9189e0558c536e8b2b9a3c8ce
+DIST python-gentoo-patches-3.13.0.tar.xz 8316 BLAKE2B 8fb8ba8f41f310140ad7066b614952023112d5043e5d82058364125611785144c1843e87eecb7669bcbab51c40d0694069526219f7419a7009517ce0821b74ba SHA512 0eb31ebfa3411020aa70b3b66fd7eec98b4b7a686b0e8f1f7ed76a8186a7c1ee85ccd9565a86a1d7ec13b975855eeb7303036af05e2dfdce3d64e4ad99299df4
DIST python-gentoo-patches-3.13.0rc3.tar.xz 8004 BLAKE2B e1ec0d1b0d84fd5875111ed9916879bb78fcf764f6d6c12f570083df9215e0585ff4137636756bf3674f991f3bccdd859ec21d37c4b6a8dd738da03ecdedaa75 SHA512 1495f5f68d6ae10ad676b075cf4540dcdc38b254a9f4309d76097bdda427e06b65df173c99cd9c4f74646a4a29f10faa38a5a0342b1a40c1ebb6f92cf5a6f3b4
diff --git a/dev-python/python-tests/python-tests-3.13.0.ebuild b/dev-python/python-tests/python-tests-3.13.0.ebuild
new file mode 100644
index 000000000000..cfe398eecb56
--- /dev/null
+++ b/dev-python/python-tests/python-tests-3.13.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit python-r1 verify-sig
+
+MY_PV=${PV/_}
+MY_P="Python-${MY_PV%_p*}"
+PYVER=$(ver_cut 1-2)
+PATCHSET="python-gentoo-patches-${MY_PV}"
+
+DESCRIPTION="Test modules from dev-lang/python"
+HOMEPAGE="
+ https://www.python.org/
+ https://github.com/python/cpython/
+"
+SRC_URI="
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+ verify-sig? (
+ https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc
+ )
+"
+S="${WORKDIR}/${MY_P}/Lib"
+
+LICENSE="PSF-2"
+SLOT="${PYVER}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ ~dev-lang/python-${PV}:${PYVER}
+ !<dev-lang/python-3.13.0_rc1_p3-r1:${PYVER}
+"
+BDEPEND="
+ ${RDEPEND}
+ verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 )
+"
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc
+
+src_unpack() {
+ if use verify-sig; then
+ verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc}
+ fi
+ default
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+
+ cd .. || die
+ default
+}
+
+src_install() {
+ python_setup
+ # keep in sync with TESTSUBDIRS in Makefile.pre.in
+ python_moduleinto "/usr/lib/python${PYVER}"
+ python_domodule test
+ python_moduleinto "/usr/lib/python${PYVER}/idlelib"
+ python_domodule idlelib/idle_test
+}
diff --git a/dev-python/sphinx-rtd-theme/Manifest b/dev-python/sphinx-rtd-theme/Manifest
index b559a0e251d3..57871a1dd7b2 100644
--- a/dev-python/sphinx-rtd-theme/Manifest
+++ b/dev-python/sphinx-rtd-theme/Manifest
@@ -1 +1,2 @@
DIST sphinx_rtd_theme-2.0.0.tar.gz 2785005 BLAKE2B a9971cba0bf04d786e41144fc04c8450be3291f0f5c3164b793258a489d5c1348bded906f47071ebd9aa4fa022bca157a18f758d3e2f48765ae5c65655a8c25f SHA512 3de989e24f2c187058b19017a92cf2159af0fdb32e5c3bc46992797a3be0f23ad75e1fd9b758e7d672eb38524798b4800de2e1b405910ea043dbd7d6f32a05da
+DIST sphinx_rtd_theme-3.0.0.tar.gz 7620317 BLAKE2B e604f6eed7752070a2ab3fab4d55db83f21afe12a257ea2a4852c707c1ee580fe880a32e14c6b1ffa50091d71a26850e960d166e578be5027e13b267d9787c8d SHA512 34d88e49cb00e30bcdb7f1082224f28dbe02dc757558c54869cfbb2fe7ecb664a8c87c79596c044062bd62ac3d078af9619a5420df60a47e60b2f7e3c27984a0
diff --git a/dev-python/sphinx-rtd-theme/sphinx-rtd-theme-3.0.0.ebuild b/dev-python/sphinx-rtd-theme/sphinx-rtd-theme-3.0.0.ebuild
new file mode 100644
index 000000000000..26d1c51b5832
--- /dev/null
+++ b/dev-python/sphinx-rtd-theme/sphinx-rtd-theme-3.0.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="ReadTheDocs.org theme for Sphinx"
+HOMEPAGE="
+ https://github.com/readthedocs/sphinx_rtd_theme/
+ https://pypi.org/project/sphinx-rtd-theme/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/docutils-0.18[${PYTHON_USEDEP}]
+ >=dev-python/sphinx-6[${PYTHON_USEDEP}]
+ >=dev-python/sphinxcontrib-jquery-4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/readthedocs-sphinx-ext[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # remove upper bounds
+ sed -i -e 's:,\?<[0-9.]*::' setup.cfg || die
+ distutils-r1_src_prepare
+
+ # CI=1 disables rebuilding webpack that requires npm use
+ # yes, that surely makes sense
+ export CI=1
+}
diff --git a/dev-python/trustme/Manifest b/dev-python/trustme/Manifest
index ec7d7832b7b2..86478191e038 100644
--- a/dev-python/trustme/Manifest
+++ b/dev-python/trustme/Manifest
@@ -1 +1,2 @@
DIST trustme-1.1.0.tar.gz 29611 BLAKE2B 71210845c3bb919b731ab14db72376aa701c547c4b062e4dab9ccbb6b97c3416cb48b92a998aa26c85720b38514998e62005dd310513fc80a54502432ee4000b SHA512 f0ad39ffd9f4074107c90258738412ff8ca8ed1b4138e38edc6edad9a5cb8787a53a47fa78b12eba189774902ee3728961feed54b3b5e944e4737749912627b2
+DIST trustme-1.2.0.tar.gz 26350 BLAKE2B 885b96d8ef63a8bf0b96583ecac2c19148f7df28a9e2ad8816fe0d0f752718bb91d84f3d01a7e73663133a3094eb8199ad6eea609e27958db4720a14ff62b1be SHA512 84cfa02cf00bac1a304dacbae8b3d673307d066116e38c396f25fb868174f020c415921d4c56a6a37354e5205f294cf95611a8c4f2b02f82dda2aa9b2e80192b
diff --git a/dev-python/trustme/trustme-1.2.0.ebuild b/dev-python/trustme/trustme-1.2.0.ebuild
new file mode 100644
index 000000000000..ede861ff4367
--- /dev/null
+++ b/dev-python/trustme/trustme-1.2.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="#1 quality TLS certs while you wait, for the discerning tester"
+HOMEPAGE="
+ https://github.com/python-trio/trustme/
+ https://pypi.org/project/trustme/
+"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ >=dev-python/cryptography-3.1[${PYTHON_USEDEP}]
+ >=dev-python/idna-2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/service-identity[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/tuf/Manifest b/dev-python/tuf/Manifest
index bd1e3b173e1f..fc75e8fc16f5 100644
--- a/dev-python/tuf/Manifest
+++ b/dev-python/tuf/Manifest
@@ -1 +1,2 @@
DIST tuf-5.0.0.tar.gz 266998 BLAKE2B 6fcf909955f7c2515ede1922c9534ca439cc68d07af81ba53d8811f74fd4510655cc17395f1e0e5df0e3ea752e74862e8d1397b9b3a272565e793c70af9de352 SHA512 c8ae86480320fb33e6d92292da0e687a3d7c90c2bcc234518d934671a954a0970e158cc48ab95be51e6eb21eb63a769c47be9a7880b446d5b0eba9f34570c07d
+DIST tuf-5.1.0.tar.gz 269105 BLAKE2B 56462bce222685784a8e26395792e24c22b59b4216c0488437a169313a655b7b3280044643042f7828f0343a5c215900f824fe5a61fb8fa5c2ab866ccfe03827 SHA512 1559b6c6700e947941a70e1c57dd9b05893e5da9690e4b4c81b35e95fa11551a1ec7db4d11a7ee71ffb9f489f9f39e49a3ee7bbdeccacd265e061db59d584ff8
diff --git a/dev-python/tuf/tuf-5.1.0.ebuild b/dev-python/tuf/tuf-5.1.0.ebuild
new file mode 100644
index 000000000000..bf253c0438fd
--- /dev/null
+++ b/dev-python/tuf/tuf-5.1.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A secure updater framework for Python"
+HOMEPAGE="
+ https://github.com/theupdateframework/python-tuf/
+ https://pypi.org/project/tuf/
+"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/requests-2.19.1[${PYTHON_USEDEP}]
+ <dev-python/securesystemslib-2[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
+
+python_test() {
+ cd tests || die
+ local -x PYTHONPATH="..:${PYTHONPATH}"
+ eunittest
+}
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index f8721bc6e8d6..95bdb581dd67 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -7,3 +7,5 @@ DIST uv-0.4.16.gh.tar.gz 2685666 BLAKE2B 34159ce43382bcd5b10191b6b9ed763ca831c75
DIST uv-0.4.17.gh.tar.gz 2698002 BLAKE2B aa208d30d3378e6ea21d1cb9f9c3c7d55169485964a3a7e8b97119e25624cdbb84776e5695ed0d265df3d12254acbe03b68739be1468fb07ac0a94ce9a408105 SHA512 0681f50b8edb52479d1cc08f44a7b37f176cf439bae440259e42339138d9b036ce9b025e9a517e090c7ef5674828275a99b0735ab7174aaf334f0bb95b8ed71c
DIST uv-0.4.18-crates.tar.xz 45322392 BLAKE2B 3486f46b76a6a9420b52043a227ebb4dbdd185bbc5848a9606c1eb2e6575b12d060f084243fbb55fbfc1bb936f0bb051fae4a9628639778a33b2ff1eac50c58e SHA512 121c6241422668662233de6a2f084a323be4df4dfcfa9ae168f5f6aa41fc77cfc09b56dfa95eaf7ca95769a9d4ed334bed439d3bbd18c682e377c610162821e4
DIST uv-0.4.18.gh.tar.gz 2692682 BLAKE2B 8239bcd761ee771c0bfeba3d3d6dd1438e8f86ffe2f211893a8457160440d0ba8a8ca11b6e4c7a9a93d3f3749ceae3ac2ea1c7ed1397a5ae41e130f6eb17025d SHA512 694793867a016f7c5fd6520b0d91f1ee1e0bff25efe86628c365837849b74b5a6c8527d977ddf4eed52619291b7ae6df751c77f368e184882938711be5ac9ed7
+DIST uv-0.4.19-crates.tar.xz 45735064 BLAKE2B edd35a94b5340e8d343696374d053d0478ff008ab200d3a0b087cfdca02046564d3c579aab02008f3dc51417277633247e0a439ec9130168a9676b6f72bbc2ab SHA512 c15f90c76582c32c4058f52520d6f14ecb3dd0b03788045c81947e79b3e679a6b666e8d37bf4b8de364bf51ee718968b3dcdc4e0473464db295fa859e9e5be19
+DIST uv-0.4.19.gh.tar.gz 2676746 BLAKE2B cefb8eca5de939e3cf3d365a927bfe036fa8efe27b8a2553c71c2c4d3247523cae08f20bec5f00ae3876698f0644bd1e1f224aecbfe5480983e77e1b4385bd27 SHA512 5836364371a7fa72f061b82f7e45c0c6794f8533ff15f9be8cfd9a9cd8eb9686307b09cd600b8d04ddd0baf56028cbdbd311412afd28778abde7307e9df9ce9d
diff --git a/dev-python/uv/uv-0.4.19.ebuild b/dev-python/uv/uv-0.4.19.ebuild
new file mode 100644
index 000000000000..98825ce3a93f
--- /dev/null
+++ b/dev-python/uv/uv-0.4.19.ebuild
@@ -0,0 +1,144 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [async_zip]='https://github.com/charliermarsh/rs-async-zip;011b24604fa7bc223daaad7712c0694bac8f0a87;rs-async-zip-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;388685a8711092971930986644cfed152d1a1f6c;pubgrub-%commit%'
+ [reqwest-middleware]='https://github.com/astral-sh/reqwest-middleware;5e3eaf254b5bd481c75d2710eed055f95b756913;reqwest-middleware-%commit%/reqwest-middleware'
+ [reqwest-retry]='https://github.com/astral-sh/reqwest-middleware;5e3eaf254b5bd481c75d2710eed055f95b756913;reqwest-middleware-%commit%/reqwest-retry'
+ [tl]='https://github.com/charliermarsh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%'
+)
+
+inherit cargo check-reqs
+
+CRATE_PV=0.4.19
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/uv-${CRATE_PV}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT
+ MPL-2.0 Unicode-DFS-2016
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-arch/zstd:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ >=virtual/rust-1.80
+ test? (
+ dev-lang/python:3.8
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+}
+
+src_prepare() {
+ default
+
+ # remove patch.* that breaks GIT_CRATES
+ local reqmw=${GIT_CRATES[reqwest-middleware]}
+ reqmw=${reqmw#*;}
+ reqmw=${reqmw%;*}
+ sed -i -e "/^\[patch/,\$s@^\(reqwest-middleware = \).*@\1 { path = \"${WORKDIR}/reqwest-middleware-${reqmw}/reqwest-middleware\" }@" Cargo.toml || die
+
+ # enable system libraries where supported
+ export ZSTD_SYS_USE_PKG_CONFIG=1
+ # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys?
+
+ # remove unbundled sources, just in case
+ find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die
+
+ # bzip2-sys requires a pkg-config file
+ # https://github.com/alexcrichton/bzip2-rs/issues/104
+ mkdir "${T}/pkg-config" || die
+ export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}
+ cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die
+ Name: bzip2
+ Version: 9999
+ Description:
+ Libs: -lbz2
+ EOF
+}
+
+src_configure() {
+ local myfeatures=(
+ git
+ pypi
+ python
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ # work around https://github.com/astral-sh/uv/issues/4376
+ local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
+ local -x COLUMNS=100
+ local -x PYTHONDONTWRITEBYTECODE=
+
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+}
diff --git a/dev-python/vcrpy/Manifest b/dev-python/vcrpy/Manifest
index c46c3f45a3a1..6b02aaa02da9 100644
--- a/dev-python/vcrpy/Manifest
+++ b/dev-python/vcrpy/Manifest
@@ -1 +1,2 @@
DIST vcrpy-6.0.1.gh.tar.gz 337497 BLAKE2B a00571d7ed0dd895cc120e3e2615e8e6ea3e86344813e87f836a182be45389b200925ae2a02dc754b0b77db642d3be453b3b8c909b26197222b84fa95c6da804 SHA512 79ba9ea29db20ddc3db5676d7bdb05da17848eb126ed63d813a1d2b0de80573fff3afaec2ffe1af491a0310ce922c7545c4569035d0f5868f171db25965c217f
+DIST vcrpy-6.0.2.gh.tar.gz 338830 BLAKE2B 946c30bc7d0a5663b2dea8989b298665fba6ce63dcb59127e7e444a1384457d65838ba0b24bac7c6285196c3fe796014aa68373ebf902f3e4e8928b76df3a120 SHA512 7e6b86bd60d2a2bd9ca8843f08143ec75656fc017ef7a9df29d4ee45e09bf985e9591204c466372459eb7987951ac2dbc730783e127e0db610e25261656275b2
diff --git a/dev-python/vcrpy/vcrpy-6.0.2.ebuild b/dev-python/vcrpy/vcrpy-6.0.2.ebuild
new file mode 100644
index 000000000000..2b7d21437de0
--- /dev/null
+++ b/dev-python/vcrpy/vcrpy-6.0.2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{9,10,11,12,13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Automatically mock your HTTP interactions to simplify and speed up testing"
+HOMEPAGE="
+ https://github.com/kevin1024/vcrpy/
+ https://pypi.org/project/vcrpy/
+"
+SRC_URI="
+ https://github.com/kevin1024/vcrpy/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+RDEPEND="
+ >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.16.2[${PYTHON_USEDEP}]
+ dev-python/urllib3[${PYTHON_USEDEP}]
+ dev-python/wrapt[${PYTHON_USEDEP}]
+ dev-python/yarl[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/pytest-httpbin-2.0.0-r1[${PYTHON_USEDEP}]
+ dev-python/httpx[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # these tests are failing with recent dev-python/werkzeug; losely related:
+ # https://github.com/kevin1024/vcrpy/issues/645
+ tests/integration/test_record_mode.py::test_new_episodes_record_mode_two_times
+ tests/integration/test_urllib2.py::test_random_body
+ tests/integration/test_urllib2.py::test_multiple_requests
+ # Internet
+ "tests/integration/test_urllib3.py::test_post[https]"
+ )
+
+ local EPYTEST_IGNORE=(
+ # requires boto3
+ tests/integration/test_boto3.py
+ # Internet
+ tests/integration/test_tornado.py
+ tests/integration/test_aiohttp.py
+ )
+
+ local -x REQUESTS_CA_BUNDLE=$("${EPYTHON}" -m pytest_httpbin.certs)
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -m 'not online' -p httpbin -p rerunfailures --reruns=5
+}