summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-06-27 21:32:04 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-06-27 21:32:04 +0000
commit71d907f38c0940b37cafec4a28da3a7fd7b6e53d (patch)
tree8fe7edc2e65ad25aa2b3a53e3310375a21358f3c /dev-python
parent242d6bf8bce68ca44cce5a57637524fbdd27acc6 (diff)
downloadbaldeagleos-repo-71d907f38c0940b37cafec4a28da3a7fd7b6e53d.tar.gz
baldeagleos-repo-71d907f38c0940b37cafec4a28da3a7fd7b6e53d.tar.xz
baldeagleos-repo-71d907f38c0940b37cafec4a28da3a7fd7b6e53d.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/CppHeaderParser/CppHeaderParser-2.7.4-r1.ebuild2
-rw-r--r--dev-python/Faker/Faker-26.0.0.ebuild42
-rw-r--r--dev-python/Faker/Manifest1
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-1.4.0.ebuild70
-rw-r--r--dev-python/cloudflare/cloudflare-3.0.1.ebuild26
-rw-r--r--dev-python/configshell-fb/configshell-fb-1.1.30.ebuild2
-rw-r--r--dev-python/filetype/filetype-1.2.0.ebuild2
-rw-r--r--dev-python/fsspec/Manifest1
-rw-r--r--dev-python/fsspec/fsspec-2024.6.1.ebuild56
-rw-r--r--dev-python/hidapi/hidapi-0.14.0.ebuild2
-rw-r--r--dev-python/langdetect/Manifest2
-rw-r--r--dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch13
-rw-r--r--dev-python/langdetect/langdetect-1.0.9.ebuild4
-rw-r--r--dev-python/langdetect/metadata.xml10
-rw-r--r--dev-python/pdfrw/pdfrw-0.4_p1-r1.ebuild2
-rw-r--r--dev-python/pyamg/Manifest2
-rw-r--r--dev-python/pyamg/pyamg-5.2.0.ebuild50
-rw-r--r--dev-python/pyamg/pyamg-5.2.1.ebuild50
-rw-r--r--dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild2
-rw-r--r--dev-python/pylint/Manifest1
-rw-r--r--dev-python/pylint/pylint-3.2.4.ebuild93
-rw-r--r--dev-python/pythran/pythran-0.16.1.ebuild15
-rw-r--r--dev-python/scipy/scipy-1.14.0.ebuild11
-rw-r--r--dev-python/sentry-sdk/Manifest2
-rw-r--r--dev-python/sentry-sdk/sentry-sdk-2.7.0.ebuild127
-rw-r--r--dev-python/sentry-sdk/sentry-sdk-2.7.1.ebuild127
-rw-r--r--dev-python/swagger-spec-validator/Manifest1
-rw-r--r--dev-python/swagger-spec-validator/files/swagger-spec-validator-3.0.4-fix-importlib.patch22
-rw-r--r--dev-python/swagger-spec-validator/swagger-spec-validator-3.0.4.ebuild46
-rw-r--r--dev-python/thrift/thrift-0.20.0.ebuild13
-rw-r--r--dev-python/tifffile/Manifest1
-rw-r--r--dev-python/tifffile/tifffile-2024.5.22.ebuild47
-rw-r--r--dev-python/tpm2-pytss/Manifest1
-rw-r--r--dev-python/tpm2-pytss/tpm2-pytss-2.3.0.ebuild43
-rw-r--r--dev-python/tqdm/files/tqdm-4.66.4-py313.patch43
-rw-r--r--dev-python/tqdm/tqdm-4.66.4.ebuild5
-rw-r--r--dev-python/twine/Manifest1
-rw-r--r--dev-python/twine/twine-5.1.1.ebuild80
-rw-r--r--dev-python/types-protobuf/Manifest1
-rw-r--r--dev-python/types-protobuf/types-protobuf-5.27.0.20240626.ebuild18
-rw-r--r--dev-python/types-requests/Manifest2
-rw-r--r--dev-python/types-requests/types-requests-2.32.0.20240622.ebuild (renamed from dev-python/types-requests/types-requests-2.31.0.20240311.ebuild)0
-rw-r--r--dev-python/types-setuptools/Manifest1
-rw-r--r--dev-python/types-setuptools/types-setuptools-70.1.0.20240627.ebuild17
45 files changed, 968 insertions, 90 deletions
diff --git a/dev-python/CppHeaderParser/CppHeaderParser-2.7.4-r1.ebuild b/dev-python/CppHeaderParser/CppHeaderParser-2.7.4-r1.ebuild
index 537c41f481fd..e08142bb07af 100644
--- a/dev-python/CppHeaderParser/CppHeaderParser-2.7.4-r1.ebuild
+++ b/dev-python/CppHeaderParser/CppHeaderParser-2.7.4-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
diff --git a/dev-python/Faker/Faker-26.0.0.ebuild b/dev-python/Faker/Faker-26.0.0.ebuild
new file mode 100644
index 000000000000..cca5ce1813b1
--- /dev/null
+++ b/dev-python/Faker/Faker-26.0.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
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} 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 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/python-dateutil-2.4.2[${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 a337ab451f94..2e8c4491ee80 100644
--- a/dev-python/Faker/Manifest
+++ b/dev-python/Faker/Manifest
@@ -1,3 +1,4 @@
DIST Faker-25.8.0.tar.gz 1760950 BLAKE2B 89b18875ae2c3934423d4e7ce9d0da048830f73384db73589372791c6a1798254e3cab54b566ecfbe3263c44edbe12f2c3e7e0d6cbb004e6fc09e9b2e12f7e89 SHA512 88d0c073b48e0df050d3601d97223d64ccf04ad57d59cb37e26a40211633b04301000e7ce12a124e97b32b63225b440f5b44e1d6197f9c8999f7dd0b579a075e
DIST Faker-25.9.1.tar.gz 1762549 BLAKE2B f331ba11899f0711a74aa4c6a3f883113c00ef16960816b26163be2355bfd1aeda1e01fb5ff430d5f34f99a21e74195d8cdd1fb44fb23e3870a6592242564ab9 SHA512 191ccf0cccdf125cabf2af20cf74681d3aa28038eb2551f7e1cd3a285b17e2fc1d8b245888c44d9a1f66b1f9a5ddc1847ff2e421ef9fb8732efeb56e0957a898
DIST Faker-25.9.2.tar.gz 1762726 BLAKE2B 75e11d91eae914a8093e448802924e2bc63815317a36870909709648389dc4d55fa1951b588a7fa6ed1cf1468724158abc16342465156d00e66f1febb545d47c SHA512 6f1272b64bc973f3e9f32bff589aedf8db35ae3c90ea9d459babaf47e327cf26199f05a5cbc888c13aced41722e91335b8c34685b9bebda4a939aad89098bbd1
+DIST Faker-26.0.0.tar.gz 1763318 BLAKE2B 63cf76993c3e4fc229d5d80f3cd03d964f5f7f6fc7f9cb1aa272c075360ebec57289139d09d11d181436b30cdb5abc7fe7d7e5cc11d63e12b0e8746605f85d6a SHA512 ea09d4222b258f52e9d9b2c315ee46f42beb624c038f63d4a82baadafbf4a9cc382b92076bb7c421026c1761cadb246364bfc71a05177458a8e23d2eca2fd6e6
diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index 51276b00a9be..661688179b18 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -4,3 +4,4 @@ DIST cfn_lint-0.87.8.tar.gz 4136317 BLAKE2B eb0c30ff83ea9eca80b0a5e2a364e9d013ba
DIST cfn_lint-1.3.3.tar.gz 2474929 BLAKE2B d5c8685e48739b178a1ab222b90a31626fffc9dfa91e9fbac6554d33d559a675ef50a2670c00a750aeac057777d29ac6a95526829862794ac289d30d53e268ec SHA512 726e96d4b5fa7e3446382cd8050dc99dce1cb848f7a11f5d1795c5a1a408b1d9e9148f7e3aea7887ebb361b1fd597c434ca0fbbf6a31631d8ac021aaf522427f
DIST cfn_lint-1.3.4.tar.gz 2456919 BLAKE2B 31df1d53b01831310abd84ba83f262307c12fba20af6e6fb372a95b0d0ae9bffb690ded617a53cb0efc929e41bff9a51c6caadf246446eeaaa0e505a3d546eea SHA512 436e22c582a179cd667e5a8ae165f4cd3c4faf4ba78ec278adfa70b4bfea105f6a5c922326e3002ff0eed4365d87b1d7f1ee12bd7a55e605b7c59c09a492433d
DIST cfn_lint-1.3.7.tar.gz 2469769 BLAKE2B aa059688cee5dfc35ea76a0d771e3c3d370780d6bacef2f524f60a408b572eb92a23367141cbe195afff0e0599102b4fc05354e2bd9d712f936db32f47a4bf91 SHA512 77dbc087c91d75946838567dd95d4fbd32131e07020d8076748154ae1b2cbeea1f348e650534279fa573732dc22691e65e0e542f539156b0af59ff5422396ffc
+DIST cfn_lint-1.4.0.tar.gz 2428307 BLAKE2B 43987652c8f12dd24f62f9122b4aebb19edd2573e01d28ba121cc3681b3e04f5a5a3c15fd70f57b6ef9b715e686d191fab0cae11554c3c185ea756d89bce624d SHA512 d07b29794443a5df7465052ab1836a67212f5b6801ba1784e054aef26c1d4f2c923aa82032f7df18b22993334e5a957f8db7d7d9aa600edab91da7d92816339b
diff --git a/dev-python/cfn-lint/cfn-lint-1.4.0.ebuild b/dev-python/cfn-lint/cfn-lint-1.4.0.ebuild
new file mode 100644
index 000000000000..cb4c0566bc6f
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-1.4.0.ebuild
@@ -0,0 +1,70 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="CloudFormation Linter"
+HOMEPAGE="
+ https://github.com/aws-cloudformation/cfn-lint/
+ https://pypi.org/project/cfn-lint/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.89.0[${PYTHON_USEDEP}]
+ dev-python/jsonpatch[${PYTHON_USEDEP}]
+ >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}]
+ <dev-python/jsonschema-5[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}]
+ dev-python/junit-xml[${PYTHON_USEDEP}]
+ <dev-python/networkx-4[${PYTHON_USEDEP}]
+ >dev-python/pyyaml-5.4[${PYTHON_USEDEP}]
+ >=dev-python/regex-2021.7.1[${PYTHON_USEDEP}]
+ >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}]
+ >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ test/unit/module/test_template.py::TestTemplate::test_build_graph
+ # requires git repo
+ test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs
+ # Internet
+ test/unit/module/formatters/test_formatters.py::TestFormatters::test_sarif_formatter
+ test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_3
+ # TODO: it looks as if AWS_DEFAULT_REGION didn't work
+ test/unit/module/core/test_run_cli.py::TestCli::test_bad_config
+ test/unit/module/core/test_run_cli.py::TestCli::test_override_parameters
+ test/unit/module/core/test_run_cli.py::TestCli::test_positional_template_parameters
+ test/unit/module/core/test_run_cli.py::TestCli::test_template_config
+ # different graphviz version?
+ test/unit/module/template/test_template.py::TestTemplate::test_build_graph
+ )
+
+ # from tox.ini
+ local -x AWS_DEFAULT_REGION=us-east-1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/cloudflare/cloudflare-3.0.1.ebuild b/dev-python/cloudflare/cloudflare-3.0.1.ebuild
index 366e87104094..4c18fcf59a9e 100644
--- a/dev-python/cloudflare/cloudflare-3.0.1.ebuild
+++ b/dev-python/cloudflare/cloudflare-3.0.1.ebuild
@@ -23,7 +23,7 @@ else
KEYWORDS="~amd64 ~arm64"
fi
LICENSE="MIT test? ( ISC Apache-2.0 MIT BSD CC0-1.0 0BSD )"
-# nodejs package and deps used to test
+# nodejs module and deps used to test
SLOT="3"
RDEPEND=" ${DEPEND}
>=dev-python/httpx-0.23.0[${PYTHON_USEDEP}]
@@ -44,7 +44,6 @@ BDEPEND="test? (
)"
distutils_enable_tests pytest
-RESTRICT="mirror" #mirror restricted only because overlay
RESTRICT+=" !test? ( test )"
src_unpack() {
@@ -69,24 +68,33 @@ python_test() {
local EPYTEST_DESELECT=(
tests/test_client.py::TestCloudflare::test_validate_headers
tests/test_client.py::TestAsyncCloudflare::test_validate_headers )
-
+ #intermittently fail for unknown reasons, passed along to upstream
+ EPYTEST_DESELECT+=(
+ tests/test_client.py::TestAsyncCloudflare::test_copy_build_request
+ tests/test_client.py::TestCloudflare::test_copy_build_request )
epytest
}
src_test() {
- # Run prism mock api server, this is what needs nodejs
+ start_mock
+ distutils-r1_src_test
+ stop_mock
+}
+start_mock() {
+# Run prism mock api server, this is what needs nodejs
node --no-warnings node_modules/@stoplight/prism-cli/dist/index.js mock \
- "cloudflare-spec.yml" >prism.log &
- local MOCK_PID=$!
+ "cloudflare-spec.yml" >prism.log || die "Failed starting prism" &
+ echo $! >"${T}/mock.pid" || die
# Wait for server to come online
echo -n "Waiting for mockserver"
while ! grep -q "✖ fatal\|Prism is listening" "prism.log" ; do
- echo -n "."
+ echo -n "." || die
sleep 0.5
done
if grep -q "✖ fatal" prism.log; then
die "Prism mock server failed"
fi
- distutils-r1_src_test
- kill "${MOCK_PID}"
+}
+stop_mock() {
+ kill $(cat "${T}/mock.pid") || die
}
diff --git a/dev-python/configshell-fb/configshell-fb-1.1.30.ebuild b/dev-python/configshell-fb/configshell-fb-1.1.30.ebuild
index 45d90cc7d9c1..940f4feeaa58 100644
--- a/dev-python/configshell-fb/configshell-fb-1.1.30.ebuild
+++ b/dev-python/configshell-fb/configshell-fb-1.1.30.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
diff --git a/dev-python/filetype/filetype-1.2.0.ebuild b/dev-python/filetype/filetype-1.2.0.ebuild
index c388392ec7f5..3f6af52644cd 100644
--- a/dev-python/filetype/filetype-1.2.0.ebuild
+++ b/dev-python/filetype/filetype-1.2.0.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
diff --git a/dev-python/fsspec/Manifest b/dev-python/fsspec/Manifest
index 9c4d8964ebf2..9b4ffcfc81f2 100644
--- a/dev-python/fsspec/Manifest
+++ b/dev-python/fsspec/Manifest
@@ -1 +1,2 @@
DIST filesystem_spec-2024.6.0.gh.tar.gz 409087 BLAKE2B 2ef06faec98173f0a13be365f1f9debca11e4587557b50a0b546b49c014782f4ab70c008a0a12158ce156dd5052b06fe67e9135f414f0c8a5829bf15b4b96f07 SHA512 97ecc5622787dc96d4cc05e7474da214405ae34d1eeee125752133258ea8c0ed9278d8d868544102a271431b01b797adea3834b3b2441e09c85dea01b56af066
+DIST filesystem_spec-2024.6.1.gh.tar.gz 409416 BLAKE2B c5b2ba4935dcf0a141c952d611b49c4370a07e3c9ed439ae4d7e98f86e93610a2b1eb8c394eb73ed4494555cca1ac169f1ee7b11144cf0d1ecae7316a46092b6 SHA512 67ecf2bc10c3ae28fa64be5ecb659fc466e97b52b152f3f223d347931b04730e58a48e90d7c546a47c5422831103711037fc268c24984cf77ef65ca4714b0e5e
diff --git a/dev-python/fsspec/fsspec-2024.6.1.ebuild b/dev-python/fsspec/fsspec-2024.6.1.ebuild
new file mode 100644
index 000000000000..2427c8312856
--- /dev/null
+++ b/dev-python/fsspec/fsspec-2024.6.1.ebuild
@@ -0,0 +1,56 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+MY_P=filesystem_spec-${PV}
+DESCRIPTION="A specification that python filesystems should adhere to"
+HOMEPAGE="
+ https://github.com/fsspec/filesystem_spec/
+ https://pypi.org/project/fsspec/
+"
+# upstream removed tests in 2024.6.0
+SRC_URI="
+ https://github.com/fsspec/filesystem_spec/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/tqdm[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+
+# Note: this package is not xdist-friendly
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+src_test() {
+ git config --global user.email "you@example.com" || die
+ git config --global user.name "Your Name" || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -p pytest_mock -o tmp_path_retention_policy=all
+}
diff --git a/dev-python/hidapi/hidapi-0.14.0.ebuild b/dev-python/hidapi/hidapi-0.14.0.ebuild
index e0762023b98e..2f2d6b8c39c9 100644
--- a/dev-python/hidapi/hidapi-0.14.0.ebuild
+++ b/dev-python/hidapi/hidapi-0.14.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2023 Gentoo Authors
+# Copyright 2022-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index a11d7c268c91..37a64204a00a 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 494 BLAKE2B 9b3521c5721afa49a58e0c35267f7d82bb56bd7e1d6d3152be0d36cd220180a526cb20b90b1113fbf0fff4a512137570f0b3bcf864498b7b7cc00403cb61ca27 SHA512 16d311400bf84a5f04e15f3da4b68b2810e4b005009f4d03dc8a487176dfc294403c976c412c83dcfa8084a49ef7b7d5389b43fb2ba446ce107ce4595e3558c6
+MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch b/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
deleted file mode 100644
index 637368d2f237..000000000000
--- a/dev-python/langdetect/files/langdetect-1.0.9-explicit-config.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Fix "Package 'langdetect.profiles' is absent from the `packages` configuration."
-
---- a/setup.py
-+++ b/setup.py
-@@ -18,7 +18,7 @@ setup(
- author_email='michal.danilak@gmail.com',
- url='https://github.com/Mimino666/langdetect',
- keywords='language detection library',
-- packages=['langdetect', 'langdetect.utils', 'langdetect.tests'],
-+ packages=['langdetect', 'langdetect.utils', 'langdetect.tests', 'langdetect.profiles'],
- include_package_data=True,
- install_requires=['six'],
- license='MIT',
diff --git a/dev-python/langdetect/langdetect-1.0.9.ebuild b/dev-python/langdetect/langdetect-1.0.9.ebuild
index 630fe63c6f53..c09b7356f549 100644
--- a/dev-python/langdetect/langdetect-1.0.9.ebuild
+++ b/dev-python/langdetect/langdetect-1.0.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2022-2024 Gentoo Authors
+# Copyright 2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,6 +19,4 @@ KEYWORDS="~amd64"
RDEPEND="dev-python/six[${PYTHON_USEDEP}]"
-PATCHES=( "${FILESDIR}/${P}-explicit-config.patch" )
-
distutils_enable_tests unittest
diff --git a/dev-python/langdetect/metadata.xml b/dev-python/langdetect/metadata.xml
index 736a1167c898..020e07f2a3dd 100644
--- a/dev-python/langdetect/metadata.xml
+++ b/dev-python/langdetect/metadata.xml
@@ -1,6 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
<pkgmetadata>
-
- <origin>gentoo-guru-overlay</origin>
+ <maintainer type="person">
+ <email>marcin.deranek@slonko.net</email>
+ <name>Marcin Deranek</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/Mimino666/langdetect/issues</bugs-to>
+ </upstream>
+ <origin>slonko-overlay</origin>
</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/pdfrw/pdfrw-0.4_p1-r1.ebuild b/dev-python/pdfrw/pdfrw-0.4_p1-r1.ebuild
index 155a8ef658cc..bdee1522848d 100644
--- a/dev-python/pdfrw/pdfrw-0.4_p1-r1.ebuild
+++ b/dev-python/pdfrw/pdfrw-0.4_p1-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
diff --git a/dev-python/pyamg/Manifest b/dev-python/pyamg/Manifest
index 44ce22afef1a..dcbaddd9d1f2 100644
--- a/dev-python/pyamg/Manifest
+++ b/dev-python/pyamg/Manifest
@@ -1,2 +1,4 @@
DIST pyamg-5.0.1.gh.tar.gz 4132815 BLAKE2B 578a8b1ff7eb627698ba1f0fc2483c614bf73b38b0f38ba11264a3754d5d6e24dd09b818e42d059e7efc18300bb7eb0f661c8ad9e874fcb4d316c5dcebce27df SHA512 d04291854840bbf349cb7b73a392bf3d043f8db88ed1070e8689d45803c8544470d09c2eb268d57ac994e59b99b3f42c8350f1e3612600069c2b93f65ceb659f
DIST pyamg-5.1.0.gh.tar.gz 4133863 BLAKE2B eb1894f52ef40764f580c23381afbfc1a0ae066ef34ab393adc1ded8f5ed2d881db231f8cfcf94232a531300d920cd54f634382be390be1127648be06464ffb9 SHA512 d770289a9995dd6d7eb7be137e39adeed0968d25d6c5c8c664f14ca3980f09fdda407adb3f634172a9ce49e4d0e205a63dccc21214a027324372a2be1374f062
+DIST pyamg-5.2.0.gh.tar.gz 4133298 BLAKE2B 73f1a53eaedd9c80e23fb49e242342e877b46eacc023abd4949d3036591b3fed7c05aa71a98656227f571f6ecdf714675d6a97749a4a7a19e7f2f7c48f9fcd90 SHA512 9636090199a41145892f50462f8db8148543f48ee16f41a857b003d5bbcfe5cdab0b9f236dbbb8f4298b65316b05ea448b1493789afabdad6376d6dc75eaaf79
+DIST pyamg-5.2.1.gh.tar.gz 4133340 BLAKE2B 04bb2a5bbcd76eed651512634670ea76359fe779c17ea50c2272d7a9656a348c94b6748efaf24f189219bc467c85418e0d6252ac809f4feb269059ee732b2ea6 SHA512 469a5675bb65ff9eadfdbf344c35cb01bebe09c987b493aaeaf5aa98273ebd8071534e25edac82ffc26f39eb3877e1a69cd2a3894de70bcb5396b6cf723aa3b6
diff --git a/dev-python/pyamg/pyamg-5.2.0.ebuild b/dev-python/pyamg/pyamg-5.2.0.ebuild
new file mode 100644
index 000000000000..74d4516157c1
--- /dev/null
+++ b/dev-python/pyamg/pyamg-5.2.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_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Algebraic multigrid solvers in Python"
+HOMEPAGE="
+ https://www.pyamg.org/
+ https://github.com/pyamg/pyamg/
+ https://pypi.org/project/pyamg/
+"
+SRC_URI="
+ https://github.com/pyamg/pyamg/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ dev-python/pybind11[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+RDEPEND="
+ dev-python/CppHeaderParser[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.11.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${DEPEND}
+ >=dev-python/setuptools-scm-7.0.0[${PYTHON_USEDEP}]
+ test? (
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ cd "${T}" || die
+ epytest --pyargs pyamg
+}
diff --git a/dev-python/pyamg/pyamg-5.2.1.ebuild b/dev-python/pyamg/pyamg-5.2.1.ebuild
new file mode 100644
index 000000000000..74d4516157c1
--- /dev/null
+++ b/dev-python/pyamg/pyamg-5.2.1.ebuild
@@ -0,0 +1,50 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Algebraic multigrid solvers in Python"
+HOMEPAGE="
+ https://www.pyamg.org/
+ https://github.com/pyamg/pyamg/
+ https://pypi.org/project/pyamg/
+"
+SRC_URI="
+ https://github.com/pyamg/pyamg/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="
+ dev-python/pybind11[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+"
+RDEPEND="
+ dev-python/CppHeaderParser[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/scipy-1.11.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${DEPEND}
+ >=dev-python/setuptools-scm-7.0.0[${PYTHON_USEDEP}]
+ test? (
+ dev-python/matplotlib[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ cd "${T}" || die
+ epytest --pyargs pyamg
+}
diff --git a/dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild b/dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild
index 96ead778f0ef..1687153e87de 100644
--- a/dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild
+++ b/dev-python/pygdbmi/pygdbmi-0.11.0.0.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="~amd64 ~arm64"
RDEPEND="
>=dev-debug/gdb-9.6
diff --git a/dev-python/pylint/Manifest b/dev-python/pylint/Manifest
index 1885b6ebe4d9..fe2c9224c516 100644
--- a/dev-python/pylint/Manifest
+++ b/dev-python/pylint/Manifest
@@ -1 +1,2 @@
DIST pylint-3.2.3.gh.tar.gz 1444655 BLAKE2B 4d43c107b03cac4e1c054cac97e2082f1adcf8196fe9b6eabf7b582f0c226f7996526326d2cca19c4935c84bd11b0421f5c4b29022a2dd7f601a5b380f4eb4e8 SHA512 07492e98e709b4db0168479544a9ab79cde2bd2ef4c48a479192ae1241f2a96f21d90a83c697f2b43cb7a070fff3bdd77157ffe5cb746df8cc4277f391e27121
+DIST pylint-3.2.4.gh.tar.gz 1446144 BLAKE2B 3b7d8560701b96af8b75ec00d7412f30fbd32a8122b510172f8990c44ad8a9ed03312c3d42d10d6433c47968441f5405a154c6cf4d7a33ad96f73be3820ef31a SHA512 84f5c31d5b67161e615c1b6664e068cd29a35da8d2ad54158d387a5fc61f6544a670413d828a4094c50e935df8c1ec1209124c45ca6b08d76f01f70615aa5610
diff --git a/dev-python/pylint/pylint-3.2.4.ebuild b/dev-python/pylint/pylint-3.2.4.ebuild
new file mode 100644
index 000000000000..8f166f55d954
--- /dev/null
+++ b/dev-python/pylint/pylint-3.2.4.ebuild
@@ -0,0 +1,93 @@
+# 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_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+MY_P=${P/_beta/b}
+DESCRIPTION="Python code static checker"
+HOMEPAGE="
+ https://pypi.org/project/pylint/
+ https://github.com/pylint-dev/pylint/
+"
+SRC_URI="
+ https://github.com/pylint-dev/pylint/archive/v${PV/_beta/b}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="examples"
+
+RDEPEND="
+ <dev-python/astroid-3.3[${PYTHON_USEDEP}]
+ >=dev-python/astroid-3.2.2[${PYTHON_USEDEP}]
+ >=dev-python/dill-0.3.7[${PYTHON_USEDEP}]
+ >=dev-python/isort-4.2.5[${PYTHON_USEDEP}]
+ <dev-python/isort-6[${PYTHON_USEDEP}]
+ >=dev-python/mccabe-0.6[${PYTHON_USEDEP}]
+ <dev-python/mccabe-0.8[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tomlkit-0.10.1[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-1.1.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ $(python_gen_cond_dep '
+ >=dev-python/GitPython-3[${PYTHON_USEDEP}]
+ ' 'python*' )
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-timeout[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # TODO
+ 'tests/test_functional.py::test_functional[dataclass_with_field]'
+ 'tests/test_functional.py::test_functional[no_name_in_module]'
+ 'tests/test_functional.py::test_functional[recursion_error_3159]'
+ 'tests/test_functional.py::test_functional[shadowed_import]'
+ 'tests/test_functional.py::test_functional[use_yield_from]'
+ 'tests/test_functional.py::test_functional[wrong_import_order]'
+ )
+ local EPYTEST_IGNORE=(
+ # No need to run the benchmarks
+ tests/benchmark/test_baseline_benchmarks.py
+ )
+
+ if ! has_version "dev-python/GitPython[${PYTHON_USEDEP}]"; then
+ EPYTEST_IGNORE+=(
+ tests/profile/test_profile_against_externals.py
+ tests/testutils/_primer/test_package_to_lint.py
+ tests/testutils/_primer/test_primer.py
+ )
+ fi
+
+ rm -rf pylint || die
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p timeout
+}
+
+python_install_all() {
+ if use examples ; then
+ docompress -x "/usr/share/doc/${PF}/examples"
+ docinto examples
+ dodoc -r examples/.
+ fi
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pythran/pythran-0.16.1.ebuild b/dev-python/pythran/pythran-0.16.1.ebuild
index 33e14010656c..2d4c0f7966a1 100644
--- a/dev-python/pythran/pythran-0.16.1.ebuild
+++ b/dev-python/pythran/pythran-0.16.1.ebuild
@@ -4,8 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
inherit distutils-r1
@@ -44,10 +43,10 @@ BDEPEND="
test? (
$(python_gen_cond_dep '
dev-python/ipython[${PYTHON_USEDEP}]
- dev-python/pip[${PYTHON_USEDEP}]
- dev-python/scipy[${PYTHON_USEDEP}]
- ' "${PYTHON_TESTED[@]}")
+ ' 3.{10..12})
+ dev-python/pip[${PYTHON_USEDEP}]
dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/scipy[${PYTHON_USEDEP}]
dev-python/wheel[${PYTHON_USEDEP}]
virtual/cblas
!!dev-python/setuptools-declarative-requirements
@@ -97,6 +96,12 @@ python_test() {
pythran/tests/test_set.py::TestSet::test_fct_symmetric_difference_update
)
;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # repr() differences?
+ pythran/tests/test_xdoc.py::TestDoctest::test_tutorial
+ pythran/tests/test_xdoc.py::TestDoctest::test_utils
+ )
esac
fi
diff --git a/dev-python/scipy/scipy-1.14.0.ebuild b/dev-python/scipy/scipy-1.14.0.ebuild
index 57b0fd5f9419..aa1fe5612cf8 100644
--- a/dev-python/scipy/scipy-1.14.0.ebuild
+++ b/dev-python/scipy/scipy-1.14.0.ebuild
@@ -9,7 +9,7 @@ DISTUTILS_USE_PEP517=meson-python
PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
PYTHON_REQ_USE="threads(+)"
-inherit fortran-2 distutils-r1
+inherit flag-o-matic fortran-2 distutils-r1
DESCRIPTION="Scientific algorithms library for Python"
HOMEPAGE="
@@ -95,6 +95,9 @@ python_configure_all() {
-Duse-pythran=$(usex fortran true false)
)
+ # https://bugs.gentoo.org/932721
+ has_version '>=dev-python/numpy-2.0.0' && filter-lto
+
# hide real scipy, to prevent pythran crashing when scipy is being
# rebuilt for new numpy ABI
# https://github.com/serge-sans-paille/pythran/issues/2194
@@ -157,6 +160,12 @@ python_test() {
scipy/optimize/tests/test_hessian_update_strategy.py::TestHessianUpdateStrategy::test_initialize_catch_illegal
)
;;
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # docstring formatting
+ scipy/misc/tests/test_doccer.py::test_decorator
+ )
+ ;;
esac
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
diff --git a/dev-python/sentry-sdk/Manifest b/dev-python/sentry-sdk/Manifest
index 3b375fba0369..c833cb46cc6a 100644
--- a/dev-python/sentry-sdk/Manifest
+++ b/dev-python/sentry-sdk/Manifest
@@ -1,3 +1,5 @@
DIST sentry-python-1.45.0.gh.tar.gz 475425 BLAKE2B 8dc46154dfc1c7c9104a706be032b5269d407dee6845da252f1c603ea4f9486d02d1d3c6bec314064b821dee31b503d07a9c17935ca1f4dd6cc4d7b9c3165094 SHA512 dad23a3f6a8e6ef5fe78e1d38a61977d8974edf306d5688537f331801d8fa0f60743d18cc3dadf6e9a9666c55a01c98b9ff8d8808ece7d8f95ee68a69b6cb9be
DIST sentry-python-2.5.1.gh.tar.gz 515056 BLAKE2B fab3e6e4faa1f07879fc679d43d86fc9590ba3049f5117efe69827a5678b7292c30c9e2d04992a2d75abe54498c3e6fe0366cea210e81b92ccf302c7abcf7e3c SHA512 6467e3836af9f44be93c9a9d0b2e4cf341b7ea4b70937a9624f5d53b746f9a5d2ee5507056c3f58662e0382d88bd3a9851b2ebdf2438bd39e4d5b15096d84a3b
DIST sentry-python-2.6.0.gh.tar.gz 519912 BLAKE2B 065aa2a633c24f163e483fe6ace9696b3bb088caae2eedaff7bbfc09213bec593f1db5a70b41f9771db602ece77d7107f51945683799de35ad59aa2c10f0a47f SHA512 f69ccc15154ea10302610329bc9d80fb9cf249a9996b99b34268468b010a24e90ca46e62b223b3331518a2ee57c6e3e028e6d6b2d1e0c9bbac4f11176403c790
+DIST sentry-python-2.7.0.gh.tar.gz 528187 BLAKE2B cb56a5ca8003ea5242932e3bef14f11cb62ca79b5ac26154f64ba89ff32a0c408e3f49286b9634edea97a8ae462b5425e830151d7d3479746783515c63e646f7 SHA512 b876f2f1c7c4fee69371d5160c8184e0334ffe486a9b0b817ed6efd73a7865fd4a6f03a7c770a3bad0b62d105569183bf36b0d8469d74093f4a9c15db48ae583
+DIST sentry-python-2.7.1.gh.tar.gz 528495 BLAKE2B 7846e726aaca3d916a5b901aa1cde6ac04e79c32f71a631955a354143fc9937ba8881ccf1e3ed387ec12afcd4e6734ea4eee0614512447bcd58d8875fe97cd35 SHA512 afe034553ddb5eeefa00db26e13cebe82d946f990eb62f8cfde670ad5d9d5c93c0ffb2d0ed5f01f55ac533dca66ab6f53553e5b8f011e08705213cb515146516
diff --git a/dev-python/sentry-sdk/sentry-sdk-2.7.0.ebuild b/dev-python/sentry-sdk/sentry-sdk-2.7.0.ebuild
new file mode 100644
index 000000000000..79da2b2a5760
--- /dev/null
+++ b/dev-python/sentry-sdk/sentry-sdk-2.7.0.ebuild
@@ -0,0 +1,127 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+MY_P=sentry-python-${PV}
+DESCRIPTION="Python client for Sentry"
+HOMEPAGE="
+ https://sentry.io/
+ https://github.com/getsentry/sentry-python/
+ https://pypi.org/project/sentry-sdk/
+"
+SRC_URI="
+ https://github.com/getsentry/sentry-python/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/urllib3[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/asttokens[${PYTHON_USEDEP}]
+ dev-python/executing[${PYTHON_USEDEP}]
+ dev-python/fakeredis[${PYTHON_USEDEP}]
+ dev-python/flask-login[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pyrsistent[${PYTHON_USEDEP}]
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-aiohttp[${PYTHON_USEDEP}]
+ dev-python/pytest-forked[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ dev-python/python-socks[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ dev-python/zope-event[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}/sentry-sdk-1.21.0-ignore-warnings.patch"
+)
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # tests require Internet access
+ tests/integrations/httpx/test_httpx.py
+ tests/integrations/requests/test_requests.py
+ tests/integrations/django/test_basic.py
+ tests/integrations/socket/test_socket.py
+ # wtf is it supposed to do?!
+ tests/integrations/gcp/test_gcp.py
+ # TODO
+ tests/integrations/bottle
+ # TODO: most of them hang
+ tests/integrations/starlette
+ # TODO
+ tests/integrations/tornado
+ # requires mockupdb
+ tests/integrations/pymongo
+ # requires AWS access
+ tests/integrations/aws_lambda
+ # requires quart_auth
+ tests/integrations/quart
+ # TODO: require opentelemetry (with py3.10)
+ tests/integrations/opentelemetry
+ # broken (incompatible rq version?)
+ tests/integrations/rq
+ )
+
+ local EPYTEST_DESELECT=(
+ # hangs
+ tests/integrations/threading/test_threading.py::test_propagates_threadpool_hub
+ # broken teardown?
+ tests/test_client.py::test_uwsgi_warnings
+ # too many dependencies installed, sigh
+ tests/test_new_scopes_compat_event.py
+ # Internet
+ tests/integrations/stdlib/test_httplib.py::test_outgoing_trace_headers
+ tests/integrations/stdlib/test_httplib.py::test_outgoing_trace_headers_head_sdk
+ tests/integrations/aiohttp/test_aiohttp.py::test_span_origin
+ tests/integrations/stdlib/test_httplib.py::test_span_origin
+ tests/integrations/stdlib/test_subprocess.py::test_subprocess_span_origin
+ # TODO
+ tests/integrations/aiohttp/test_aiohttp.py::test_basic
+ tests/integrations/django
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_orm_queries
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_query_source
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_transactions
+ tests/integrations/stdlib/test_subprocess.py::test_subprocess_basic
+ tests/integrations/threading/test_threading.py
+ tests/integrations/wsgi/test_wsgi.py
+ tests/test_basics.py::test_auto_enabling_integrations_catches_import_error
+ tests/test_client.py::test_databag_breadth_stripping
+ tests/test_client.py::test_databag_depth_stripping
+ tests/test_client.py::test_databag_string_stripping
+ tests/test_utils.py::test_default_release
+ tests/tracing/test_sampling.py::test_records_lost_event_only_if_traces_sample_rate_enabled
+ tests/tracing/test_sampling.py::test_records_lost_event_only_if_traces_sampler_enabled
+ tests/utils/test_contextvars.py::test_leaks
+ # pointless, fragile to packages being installed in parallel
+ tests/test_utils.py::test_installed_modules
+ # TODO
+ tests/profiler/test_continuous_profiler.py::test_continuous_profiler_auto_start_and_manual_stop
+ tests/profiler/test_continuous_profiler.py::test_continuous_profiler_manual_start_and_stop
+ tests/profiler/test_transaction_profiler.py::test_minimum_unique_samples_required
+ tests/profiler/test_transaction_profiler.py::test_profile_captured
+ tests/profiler/test_transaction_profiler.py::test_profiles_sample_rate
+ tests/profiler/test_transaction_profiler.py::test_profiles_sampler
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -p aiohttp -p pytest_forked -o addopts=
+}
diff --git a/dev-python/sentry-sdk/sentry-sdk-2.7.1.ebuild b/dev-python/sentry-sdk/sentry-sdk-2.7.1.ebuild
new file mode 100644
index 000000000000..79da2b2a5760
--- /dev/null
+++ b/dev-python/sentry-sdk/sentry-sdk-2.7.1.ebuild
@@ -0,0 +1,127 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+MY_P=sentry-python-${PV}
+DESCRIPTION="Python client for Sentry"
+HOMEPAGE="
+ https://sentry.io/
+ https://github.com/getsentry/sentry-python/
+ https://pypi.org/project/sentry-sdk/
+"
+SRC_URI="
+ https://github.com/getsentry/sentry-python/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/urllib3[${PYTHON_USEDEP}]
+ dev-python/certifi[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/asttokens[${PYTHON_USEDEP}]
+ dev-python/executing[${PYTHON_USEDEP}]
+ dev-python/fakeredis[${PYTHON_USEDEP}]
+ dev-python/flask-login[${PYTHON_USEDEP}]
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pyrsistent[${PYTHON_USEDEP}]
+ <dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-aiohttp[${PYTHON_USEDEP}]
+ dev-python/pytest-forked[${PYTHON_USEDEP}]
+ dev-python/pytest-localserver[${PYTHON_USEDEP}]
+ dev-python/python-socks[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ dev-python/werkzeug[${PYTHON_USEDEP}]
+ dev-python/zope-event[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}/sentry-sdk-1.21.0-ignore-warnings.patch"
+)
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # tests require Internet access
+ tests/integrations/httpx/test_httpx.py
+ tests/integrations/requests/test_requests.py
+ tests/integrations/django/test_basic.py
+ tests/integrations/socket/test_socket.py
+ # wtf is it supposed to do?!
+ tests/integrations/gcp/test_gcp.py
+ # TODO
+ tests/integrations/bottle
+ # TODO: most of them hang
+ tests/integrations/starlette
+ # TODO
+ tests/integrations/tornado
+ # requires mockupdb
+ tests/integrations/pymongo
+ # requires AWS access
+ tests/integrations/aws_lambda
+ # requires quart_auth
+ tests/integrations/quart
+ # TODO: require opentelemetry (with py3.10)
+ tests/integrations/opentelemetry
+ # broken (incompatible rq version?)
+ tests/integrations/rq
+ )
+
+ local EPYTEST_DESELECT=(
+ # hangs
+ tests/integrations/threading/test_threading.py::test_propagates_threadpool_hub
+ # broken teardown?
+ tests/test_client.py::test_uwsgi_warnings
+ # too many dependencies installed, sigh
+ tests/test_new_scopes_compat_event.py
+ # Internet
+ tests/integrations/stdlib/test_httplib.py::test_outgoing_trace_headers
+ tests/integrations/stdlib/test_httplib.py::test_outgoing_trace_headers_head_sdk
+ tests/integrations/aiohttp/test_aiohttp.py::test_span_origin
+ tests/integrations/stdlib/test_httplib.py::test_span_origin
+ tests/integrations/stdlib/test_subprocess.py::test_subprocess_span_origin
+ # TODO
+ tests/integrations/aiohttp/test_aiohttp.py::test_basic
+ tests/integrations/django
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_orm_queries
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_query_source
+ tests/integrations/sqlalchemy/test_sqlalchemy.py::test_transactions
+ tests/integrations/stdlib/test_subprocess.py::test_subprocess_basic
+ tests/integrations/threading/test_threading.py
+ tests/integrations/wsgi/test_wsgi.py
+ tests/test_basics.py::test_auto_enabling_integrations_catches_import_error
+ tests/test_client.py::test_databag_breadth_stripping
+ tests/test_client.py::test_databag_depth_stripping
+ tests/test_client.py::test_databag_string_stripping
+ tests/test_utils.py::test_default_release
+ tests/tracing/test_sampling.py::test_records_lost_event_only_if_traces_sample_rate_enabled
+ tests/tracing/test_sampling.py::test_records_lost_event_only_if_traces_sampler_enabled
+ tests/utils/test_contextvars.py::test_leaks
+ # pointless, fragile to packages being installed in parallel
+ tests/test_utils.py::test_installed_modules
+ # TODO
+ tests/profiler/test_continuous_profiler.py::test_continuous_profiler_auto_start_and_manual_stop
+ tests/profiler/test_continuous_profiler.py::test_continuous_profiler_manual_start_and_stop
+ tests/profiler/test_transaction_profiler.py::test_minimum_unique_samples_required
+ tests/profiler/test_transaction_profiler.py::test_profile_captured
+ tests/profiler/test_transaction_profiler.py::test_profiles_sample_rate
+ tests/profiler/test_transaction_profiler.py::test_profiles_sampler
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -p aiohttp -p pytest_forked -o addopts=
+}
diff --git a/dev-python/swagger-spec-validator/Manifest b/dev-python/swagger-spec-validator/Manifest
index 302dfaf890c7..7fa59e541ad9 100644
--- a/dev-python/swagger-spec-validator/Manifest
+++ b/dev-python/swagger-spec-validator/Manifest
@@ -1 +1,2 @@
DIST swagger_spec_validator-3.0.3.gh.tar.gz 48151 BLAKE2B 6156789b6491c61ca33b09ea5a5db8ed30a7d3651e1780a5a287b6d58e159b530c8e1644c685376bade118b295307bad8ea26e3f4cf43a9648e843165e996b1e SHA512 977a6320ce629d102c7c608249d220996aba852d1c0c464be447b6b5a7aa7bb2a61023bc967a41c561a12c4620306c6a077605c4b34b828540d0ee8926d59a94
+DIST swagger_spec_validator-3.0.4.gh.tar.gz 48267 BLAKE2B efcc34606b7f352eceb5842bf0f0497d4c0a3c2315d58e785de1faeea258fdebabcc6fac087ae8bc4f26e6da93eba9ddca76831ad3713682cd596214f446ab82 SHA512 d5e74b14e8800b0ca20be9dc5095ea24c26dcb0720d960d6686cd3687e49e359a8d08cc8595ecb1377dbc79f1f28b299485a1e9d0233b51639d5bf3e3c39c6cc
diff --git a/dev-python/swagger-spec-validator/files/swagger-spec-validator-3.0.4-fix-importlib.patch b/dev-python/swagger-spec-validator/files/swagger-spec-validator-3.0.4-fix-importlib.patch
new file mode 100644
index 000000000000..57b46a23729b
--- /dev/null
+++ b/dev-python/swagger-spec-validator/files/swagger-spec-validator-3.0.4-fix-importlib.patch
@@ -0,0 +1,22 @@
+--- a/swagger_spec_validator/common.py
++++ b/swagger_spec_validator/common.py
+@@ -12,7 +12,7 @@ from urllib.parse import urljoin
+ from urllib.request import pathname2url
+ from urllib.request import urlopen
+
+-import importlib_resources
++import importlib.resources as importlib_resources
+ import yaml
+ from typing_extensions import ParamSpec
+
+--- a/tests/common_test.py
++++ b/tests/common_test.py
+@@ -1,7 +1,7 @@
+ import uuid
+ from unittest import mock
+
+-import importlib_resources
++import importlib.resources as importlib_resources
+
+ from swagger_spec_validator.common import read_file
+ from swagger_spec_validator.common import read_resource_file
diff --git a/dev-python/swagger-spec-validator/swagger-spec-validator-3.0.4.ebuild b/dev-python/swagger-spec-validator/swagger-spec-validator-3.0.4.ebuild
new file mode 100644
index 000000000000..badbc0e85758
--- /dev/null
+++ b/dev-python/swagger-spec-validator/swagger-spec-validator-3.0.4.ebuild
@@ -0,0 +1,46 @@
+# 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_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+MY_P=swagger_spec_validator-${PV}
+DESCRIPTION="Validate Swagger specs against Swagger 1.1 or 2.0 specification"
+HOMEPAGE="
+ https://github.com/Yelp/swagger_spec_validator/
+ https://pypi.org/project/swagger-spec-validator/
+"
+SRC_URI="
+ https://github.com/Yelp/swagger_spec_validator/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RDEPEND="
+ dev-python/jsonschema[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.0.4-fix-importlib.patch"
+)
+
+distutils_enable_tests pytest
+distutils_enable_sphinx docs/source \
+ dev-python/sphinx-rtd-theme
+
+EPYTEST_DESELECT=(
+ # network (resolver)
+ tests/util/validate_spec_url_test.py::test_raise_SwaggerValidationError_on_urlopen_error
+ tests/validator12/validate_spec_url_test.py::test_raise_SwaggerValidationError_on_urlopen_error
+ tests/validator20/validate_spec_url_test.py::test_raise_SwaggerValidationError_on_urlopen_error
+)
diff --git a/dev-python/thrift/thrift-0.20.0.ebuild b/dev-python/thrift/thrift-0.20.0.ebuild
index c01bfdb4dcf2..1d3bc58631aa 100644
--- a/dev-python/thrift/thrift-0.20.0.ebuild
+++ b/dev-python/thrift/thrift-0.20.0.ebuild
@@ -9,11 +9,20 @@ PYTHON_COMPAT=( python3_{8,9,10,11,12} )
inherit distutils-r1
DESCRIPTION="Python implementation of Thrift"
-HOMEPAGE="https://pypi.org/project/thrift/ https://thrift.apache.org/"
+HOMEPAGE="
+ https://pypi.org/project/thrift/
+ https://thrift.apache.org/
+ https://github.com/apache/thrift
+"
SRC_URI="https://downloads.apache.org/${PN}/${PV}/${P}.tar.gz"
S="${WORKDIR}/${P}/lib/py"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 ~riscv x86 ~amd64-linux ~x86-linux"
-RESTRICT="test"
+
+distutils_enable_tests unittest
+
+python_test() {
+ eunittest test
+}
diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest
index 91e978e038b8..aee605896293 100644
--- a/dev-python/tifffile/Manifest
+++ b/dev-python/tifffile/Manifest
@@ -1,2 +1 @@
-DIST tifffile-2024.5.22.gh.tar.gz 348848 BLAKE2B 7e87a56c87eebc548e51b3829a2b1d81991421b2ca2daeb739ab9cd4f2553cd4bcbddd282021bc26bc4289791bd2b61742e0d737591587acde5788bb642b91b3 SHA512 1b25d8505cb25d8a11aa85785115020d2bb6912240c86e6a89ad73c11df1607fcce5ea430d33a8284e38d2e4154f5f9f58709a67270edad6cb124c4b5c4ad11e
DIST tifffile-2024.6.18.gh.tar.gz 349752 BLAKE2B 35f11d963e93e6b1f6b5e4a026dd0f1aed1bf03a2a5e9caab7649ce95c00cdd99988aaa864c549555a8244ec8bfc8d8d900386aa7b9f853fd5aca7b8bece8eb4 SHA512 fdbb5b2b335743f0aef01d5a8f0b577eb24fb1b89d29e20c1971124bdb58f61aab4e3471b6f91e686010c8ca1d5786527357b123c2d801c16d423927315b8c94
diff --git a/dev-python/tifffile/tifffile-2024.5.22.ebuild b/dev-python/tifffile/tifffile-2024.5.22.ebuild
deleted file mode 100644
index 1f53f5beadd7..000000000000
--- a/dev-python/tifffile/tifffile-2024.5.22.ebuild
+++ /dev/null
@@ -1,47 +0,0 @@
-# Copyright 2021-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1
-
-DESCRIPTION="Read and write TIFF files"
-HOMEPAGE="
- https://pypi.org/project/tifffile/
- https://github.com/cgohlke/tifffile/
- https://www.cgohlke.com/
-"
-SRC_URI="
- https://github.com/cgohlke/tifffile/archive/v${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
-
-RDEPEND="
- >=dev-python/numpy-1.19.2[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/defusedxml[${PYTHON_USEDEP}]
- >=dev-python/fsspec-2021.5.0[${PYTHON_USEDEP}]
- dev-python/lxml[${PYTHON_USEDEP}]
- dev-python/xarray[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-python_test() {
- local -x SKIP_LARGE=1
- local -x SKIP_HTTP=1
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/tpm2-pytss/Manifest b/dev-python/tpm2-pytss/Manifest
index e52433cd8399..320d082d4a46 100644
--- a/dev-python/tpm2-pytss/Manifest
+++ b/dev-python/tpm2-pytss/Manifest
@@ -1 +1,2 @@
DIST tpm2-pytss-2.2.1.tar.gz 208114 BLAKE2B fe07f38a6c19bc2b2baf079184f39d3ef28268900a35e14bfa22abb61dd956fdb286560ab6d35d66160147296e590fa3dac3d015f9919e1966f43179c1bdcdb1 SHA512 0acaa37d118d71edb123c5e88ef5af5dd78a73b0f8db15500866b6799d98e4c6107f9da1b8c1bce1c9061e9df85d735a39d9335cea65cac0e058db83aed8ad06
+DIST tpm2-pytss-2.3.0.tar.gz 213848 BLAKE2B 7e9264ab53cfe666991150fe2c0efdd973f7b58b4968b557d6494156ba4d362bd147f580f2ef50b85ac1b43cd9fc4921d71eea42d5a14b9379f82d45b6a6b536 SHA512 d0f76aec77afa773ec0ed7878a0ca4ef3b3475aa64f219d7a5afd89cbca795457536b0a9b5ffa14704200dcb35a89df36f9fc799694f7cc3cfbf98ea551628b1
diff --git a/dev-python/tpm2-pytss/tpm2-pytss-2.3.0.ebuild b/dev-python/tpm2-pytss/tpm2-pytss-2.3.0.ebuild
new file mode 100644
index 000000000000..8b26ab5d02b7
--- /dev/null
+++ b/dev-python/tpm2-pytss/tpm2-pytss-2.3.0.ebuild
@@ -0,0 +1,43 @@
+# 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_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python bindings for TSS"
+HOMEPAGE="
+ https://pypi.org/project/tpm2-pytss/
+ https://github.com/tpm2-software/tpm2-pytss/
+"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="+fapi test"
+
+DEPEND="
+ app-crypt/tpm2-tss:=[fapi=]
+ fapi? ( >=app-crypt/tpm2-tss-3.0.3:= )
+ test? ( app-crypt/swtpm )
+"
+RDEPEND="${DEPEND}
+ dev-python/cffi[${PYTHON_USEDEP}]
+ dev-python/asn1crypto[${PYTHON_USEDEP}]
+ dev-python/cryptography[${PYTHON_USEDEP}]
+ dev-python/pycparser[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/pkgconfig[${PYTHON_USEDEP}]
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+distutils_enable_tests pytest
diff --git a/dev-python/tqdm/files/tqdm-4.66.4-py313.patch b/dev-python/tqdm/files/tqdm-4.66.4-py313.patch
new file mode 100644
index 000000000000..9417ce91a55a
--- /dev/null
+++ b/dev-python/tqdm/files/tqdm-4.66.4-py313.patch
@@ -0,0 +1,43 @@
+From eafdd306861f531c443885048f0abdaa6bc45f8e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Thu, 27 Jun 2024 18:30:55 +0200
+Subject: [PATCH] cli: Fix docstring processing with Python 3.13+
+
+Fix docstring processing code to reindent the docstrings if using Python
+3.13 or newer. Starting with this version, all docstrings are
+automatically dedented by Python, which causes the regular expression to
+fail to match.
+
+Fixes #1585
+---
+ tqdm/cli.py | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/tqdm/cli.py b/tqdm/cli.py
+index 7284f28..1bbce6d 100644
+--- a/tqdm/cli.py
++++ b/tqdm/cli.py
+@@ -4,6 +4,7 @@ Module version for monitoring CLI pipes (`... | python -m tqdm | ...`).
+ import logging
+ import re
+ import sys
++import textwrap
+ from ast import literal_eval as numeric
+
+ from .std import TqdmKeyError, TqdmTypeError, tqdm
+@@ -177,7 +178,11 @@ def main(fp=sys.stderr, argv=None):
+ logging.basicConfig(level=getattr(logging, logLevel),
+ format="%(levelname)s:%(module)s:%(lineno)d:%(message)s")
+
+- d = tqdm.__doc__ + CLI_EXTRA_DOC
++ d = tqdm.__doc__
++ if sys.version_info >= (3, 13):
++ # Python 3.13+ automatically dedents docstrings
++ d = textwrap.indent(d, " ")
++ d += CLI_EXTRA_DOC
+
+ opt_types = dict(RE_OPTS.findall(d))
+ # opt_types['delim'] = 'chr'
+--
+2.45.2
+
diff --git a/dev-python/tqdm/tqdm-4.66.4.ebuild b/dev-python/tqdm/tqdm-4.66.4.ebuild
index d9383a790617..5b230cc00a85 100644
--- a/dev-python/tqdm/tqdm-4.66.4.ebuild
+++ b/dev-python/tqdm/tqdm-4.66.4.ebuild
@@ -29,6 +29,11 @@ BDEPEND="
distutils_enable_tests pytest
+PATCHES=(
+ # https://github.com/tqdm/tqdm/pull/1594
+ "${FILESDIR}/${P}-py313.patch"
+)
+
EPYTEST_IGNORE=(
# Skip unpredictable performance tests
tests/tests_perf.py
diff --git a/dev-python/twine/Manifest b/dev-python/twine/Manifest
index e056de4bfba7..02bc795a109d 100644
--- a/dev-python/twine/Manifest
+++ b/dev-python/twine/Manifest
@@ -1 +1,2 @@
DIST twine-5.1.0.gh.tar.gz 221527 BLAKE2B 45b707883e84ade7cad8bee712e7b68f24eb8ccfd018de5c0522cf98cb66895e6a4324f17e54fa87dacdf97ee092a0fdbc0b5289b30871da36828c987c518c2f SHA512 41a5b94b6929a0a018cd15dd4ede45a361420752235e9b1a8b16979609e6a056bf46cd88efa869c27fa9bae3907f4e45d0c468de8058c3f82f15b48b4274b4cd
+DIST twine-5.1.1.gh.tar.gz 221931 BLAKE2B a95d50e52bde5db64c6ce5b57097188e9cb88763c91f337c3e552ca34bae34882d87bced4b0c55a292de185fce10384edf514b55373c4456ff252471076bcb28 SHA512 95f059235e32134a5320c0835befa2eed6eff35c56685afe4848224042c2e2af484db72f20fd0cfbe979cce8d495e8bb2d2ea38aca2c53ca7af8de378816bedf
diff --git a/dev-python/twine/twine-5.1.1.ebuild b/dev-python/twine/twine-5.1.1.ebuild
new file mode 100644
index 000000000000..c781c8078899
--- /dev/null
+++ b/dev-python/twine/twine-5.1.1.ebuild
@@ -0,0 +1,80 @@
+# 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_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Collection of utilities for publishing packages on PyPI"
+HOMEPAGE="
+ https://twine.readthedocs.io/
+ https://github.com/pypa/twine/
+ https://pypi.org/project/twine/
+"
+SRC_URI="
+ https://github.com/pypa/twine/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/colorama-0.4.3[${PYTHON_USEDEP}]
+ >=dev-python/importlib-metadata-3.6[${PYTHON_USEDEP}]
+ >=dev-python/keyring-15.1[${PYTHON_USEDEP}]
+ >=dev-python/pkginfo-1.8.1[${PYTHON_USEDEP}]
+ >=dev-python/readme-renderer-35.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.20.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-toolbelt-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/rfc3986-1.4.0[${PYTHON_USEDEP}]
+ >=dev-python/rich-12.0.0[${PYTHON_USEDEP}]
+ >=dev-python/urllib3-1.26.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+ test? (
+ dev-python/build[${PYTHON_USEDEP}]
+ dev-python/jaraco-envs[${PYTHON_USEDEP}]
+ dev-python/jaraco-functools[${PYTHON_USEDEP}]
+ dev-python/munch[${PYTHON_USEDEP}]
+ dev-python/portend[${PYTHON_USEDEP}]
+ dev-python/pretend[${PYTHON_USEDEP}]
+ dev-python/pypiserver[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_prepare_all() {
+ # pytest-socket dep relevant only to test_integration, and upstream
+ # disables it anyway
+ sed -i -e '/--disable-socket/d' pytest.ini || die
+ sed -i -e '/--cov/d' pytest.ini || die
+
+ distutils-r1_python_prepare_all
+ export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # Internet
+ tests/test_integration.py
+ )
+ local EPYTEST_DESELECT=(
+ # Regression due to deps?
+ tests/test_check.py::test_fails_rst_no_content
+ # Avoid needing heavy virtualx
+ tests/test_auth.py::test_warns_for_empty_password
+ # https://github.com/pypa/twine/issues/1116
+ 'tests/test_package.py::test_pkginfo_returns_no_metadata[unsupported Metadata-Version]'
+ )
+
+ local -x COLUMNS=80
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/types-protobuf/Manifest b/dev-python/types-protobuf/Manifest
index f96f57b60092..164657a40098 100644
--- a/dev-python/types-protobuf/Manifest
+++ b/dev-python/types-protobuf/Manifest
@@ -1 +1,2 @@
DIST types-protobuf-4.24.0.20240408.tar.gz 52102 BLAKE2B 3312ddd8e28ee490f6ae94978d5ebfca353cbd9051862629cdde08474ae657130bf87cda8cb06f33ea2d38ccb5bfe9097ef3d8f4bb77fba94707b9914ff33466 SHA512 adb4d69ef5d8bab15e6e311c7d1013725419f2b681e64befea2cc435fec69cf0d0e70431ae65b9f617e8b4c86957fdaae88abd57cc306fa55ad51d3c09d5f222
+DIST types-protobuf-5.27.0.20240626.tar.gz 54215 BLAKE2B 49f791cf6cc8cdc0b16172c2afc2f22eb15c8ecb73b89fa323779227e12105dd82fe316e58a2fa9b0421a3e91f0b8206e7b073cf0193a705be3cc339c53df525 SHA512 f7e572985639ef19b4a257e0bc2a931f4c745eb3c8f10d98ccd6c95133b0df3486b40b86418045b94854c46a26da510be1f63c524005580cf1446364aca4eade
diff --git a/dev-python/types-protobuf/types-protobuf-5.27.0.20240626.ebuild b/dev-python/types-protobuf/types-protobuf-5.27.0.20240626.ebuild
new file mode 100644
index 000000000000..beb608256109
--- /dev/null
+++ b/dev-python/types-protobuf/types-protobuf-5.27.0.20240626.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2023-2024 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_{8,9,10,11,12} )
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for protobuf"
+HOMEPAGE="
+ https://pypi.org/project/types-protobuf/
+ https://github.com/python/typeshed/tree/master/stubs/protobuf/
+"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
diff --git a/dev-python/types-requests/Manifest b/dev-python/types-requests/Manifest
index 76cd278bf994..27585e968e11 100644
--- a/dev-python/types-requests/Manifest
+++ b/dev-python/types-requests/Manifest
@@ -1 +1 @@
-DIST types-requests-2.31.0.20240311.tar.gz 16824 BLAKE2B 310a7f4e49189f2ff1b1d65ad7ecd1958a33606ec36ad4d42e3ef793b71df1cf823c73a151a948102c055480b2c992675ec3699c4f67274b454d154a3fb24d5d SHA512 e7116a2225cab57918c3a9e081bebaa173c9a5496889e6ec1c9bc28c94e56c40fc0f785403ceec259a44049f61a9f731434532cf5c186d785d5d20eba7362f3a
+DIST types-requests-2.32.0.20240622.tar.gz 17675 BLAKE2B 8535aabe9bbb9a77e87be71c7a18aad791dcb426f58ed1238dae553aec1646035a4763acf26ffdb7cb83a2d16080651372ea500080df69a4b5352a6de1064194 SHA512 8423eab482aedbcd23dfe4a2d8b8e09c5d0d2bceb139abe7bdc9e680f7ee7706b1a5026fce4ef6ef3eab70db5317db708323c5c9a3273df9a2830a5c6e47780a
diff --git a/dev-python/types-requests/types-requests-2.31.0.20240311.ebuild b/dev-python/types-requests/types-requests-2.32.0.20240622.ebuild
index 77d37dec3cd8..77d37dec3cd8 100644
--- a/dev-python/types-requests/types-requests-2.31.0.20240311.ebuild
+++ b/dev-python/types-requests/types-requests-2.32.0.20240622.ebuild
diff --git a/dev-python/types-setuptools/Manifest b/dev-python/types-setuptools/Manifest
index 3e11d127236d..71825c4d875c 100644
--- a/dev-python/types-setuptools/Manifest
+++ b/dev-python/types-setuptools/Manifest
@@ -1,2 +1,3 @@
DIST types-setuptools-70.0.0.20240524.tar.gz 38370 BLAKE2B 7964344dfb8a9b3594bd3b6f46b1e41b439dff2c035c16c3bb93b0ed23f2e9380e4ba8af50f3ae44217fdab79fb15a5002f6792d1b9d9e1d5e5cd11057f55bfd SHA512 9edace3d84b9bbcb67fb4ff5f0c17ba7416901b1b12359e5394f0a5edb3250bbf81cd39946a4566217f0060fe50b15580df99b1f4e028774e4d36e0b5416a374
DIST types-setuptools-70.1.0.20240625.tar.gz 39232 BLAKE2B 9b02f33fa73204fcb5afcf8115e42cfa55ac08951aa4b8646efe6e3d5828c97da1fb936ab3e1fd87bedc32d2741fbd301db3598f9ce6bd63d729e3fcb4910d71 SHA512 233b0bf84a04d8867174b681714097d37ac72efc2e81f4d4069913ed29b76355df4eebde7da4b62f52b933ef1d02949cc44f1f3f5771eb181d5df878c783f14e
+DIST types-setuptools-70.1.0.20240627.tar.gz 39309 BLAKE2B 42de32fb42a71c0b455341d2c402c477535acfede0f8c8250ed6a87824f75fd7d24bc8830b610727824095f99d181f8e0f1d2a861890b835a1cd2a6e90a7ef5a SHA512 ee12292fc71a299e7d5a6d14b7ac5048b9de4c71834e87ca6c856bc5ad7054f8252e4d864615a625987b1fea3b712bcc76d5d02bd7647a34d9d05e8c8f2343f4
diff --git a/dev-python/types-setuptools/types-setuptools-70.1.0.20240627.ebuild b/dev-python/types-setuptools/types-setuptools-70.1.0.20240627.ebuild
new file mode 100644
index 000000000000..c755b6e96b17
--- /dev/null
+++ b/dev-python/types-setuptools/types-setuptools-70.1.0.20240627.ebuild
@@ -0,0 +1,17 @@
+# Copyright 2023-2024 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_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Typing stubs for setuptools"
+HOMEPAGE="https://pypi.org/project/types-setuptools/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"