summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-01-22 07:23:05 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2026-01-22 07:23:05 +0000
commitaf94af37af925aa5c904f8d0cf1b76c5177dcf3a (patch)
treeecf232d8c50f460fe410cb1aaec8f8c31a673808 /dev-python
parentb9e983aa364b1d28107b2f0d6bac12e24a34815c (diff)
downloadbaldeagleos-repo-af94af37af925aa5c904f8d0cf1b76c5177dcf3a.tar.gz
baldeagleos-repo-af94af37af925aa5c904f8d0cf1b76c5177dcf3a.tar.xz
baldeagleos-repo-af94af37af925aa5c904f8d0cf1b76c5177dcf3a.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/atpublic/atpublic-7.0.0.ebuild2
-rw-r--r--dev-python/boto3/Manifest1
-rw-r--r--dev-python/boto3/boto3-1.42.32.ebuild53
-rw-r--r--dev-python/botocore/Manifest1
-rw-r--r--dev-python/botocore/botocore-1.42.32.ebuild67
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-1.43.4.ebuild61
-rw-r--r--dev-python/ensurepip-wheel/Manifest2
-rw-r--r--dev-python/ensurepip-wheel/ensurepip-wheel-0.46.2.ebuild60
-rw-r--r--dev-python/flatbuffers/flatbuffers-25.12.19.ebuild4
-rw-r--r--dev-python/furo/furo-2025.12.19-r1.ebuild4
-rw-r--r--dev-python/gherkin-official/Manifest1
-rw-r--r--dev-python/gherkin-official/gherkin-official-38.0.0.ebuild31
-rw-r--r--dev-python/grpclib/grpclib-0.4.9.ebuild4
-rw-r--r--dev-python/hcloud/hcloud-2.13.0.ebuild4
-rw-r--r--dev-python/markdown/Manifest2
-rw-r--r--dev-python/markdown/markdown-3.10.1.ebuild (renamed from dev-python/markdown/markdown-3.9.ebuild)4
-rw-r--r--dev-python/numpydoc/numpydoc-1.10.0.ebuild4
-rw-r--r--dev-python/os-service-types/os-service-types-1.8.2.ebuild4
-rw-r--r--dev-python/oslo-log/oslo-log-8.0.0.ebuild4
-rw-r--r--dev-python/packaging/Manifest2
-rw-r--r--dev-python/packaging/packaging-26.0.ebuild40
-rw-r--r--dev-python/pandas/Manifest2
-rw-r--r--dev-python/pandas/pandas-3.0.0.ebuild200
-rw-r--r--dev-python/podman/Manifest4
-rw-r--r--dev-python/podman/podman-5.4.0.1.ebuild49
-rw-r--r--dev-python/podman/podman-5.5.0.ebuild49
-rw-r--r--dev-python/podman/podman-5.7.0.ebuild (renamed from dev-python/podman/podman-5.6.0.ebuild)2
-rw-r--r--dev-python/pyalsa/Manifest1
-rw-r--r--dev-python/pyalsa/pyalsa-1.2.14.ebuild11
-rw-r--r--dev-python/pycparser/Manifest1
-rw-r--r--dev-python/pycparser/pycparser-3.0.ebuild64
-rw-r--r--dev-python/pyfakefs/pyfakefs-6.0.0.ebuild4
-rw-r--r--dev-python/pygresql/pygresql-6.2.0.ebuild4
-rw-r--r--dev-python/pytest-golden/pytest-golden-1.0.0.ebuild4
-rw-r--r--dev-python/ruamel-yaml/ruamel-yaml-0.18.17.ebuild4
-rw-r--r--dev-python/secretstorage/secretstorage-3.5.0.ebuild4
-rw-r--r--dev-python/sphinx-gallery/sphinx-gallery-0.20.0.ebuild4
-rw-r--r--dev-python/sphinx-prompt/sphinx-prompt-1.10.2.ebuild4
-rw-r--r--dev-python/sphinx/sphinx-9.0.4-r1.ebuild4
-rw-r--r--dev-python/sqlalchemy/Manifest2
-rw-r--r--dev-python/sqlalchemy/sqlalchemy-2.0.46.ebuild (renamed from dev-python/sqlalchemy/sqlalchemy-2.0.44.ebuild)8
-rw-r--r--dev-python/stevedore/stevedore-5.6.0.ebuild4
-rw-r--r--dev-python/testtools/testtools-2.8.2.ebuild4
-rw-r--r--dev-python/typer/typer-0.20.1.ebuild4
-rw-r--r--dev-python/uritools/uritools-6.0.1.ebuild4
-rw-r--r--dev-python/uvicorn/uvicorn-0.40.0.ebuild4
-rw-r--r--dev-python/wcwidth/Manifest1
-rw-r--r--dev-python/wcwidth/wcwidth-0.3.0.ebuild32
-rw-r--r--dev-python/wheel/Manifest2
-rw-r--r--dev-python/wheel/wheel-0.46.2.ebuild45
51 files changed, 729 insertions, 152 deletions
diff --git a/dev-python/atpublic/atpublic-7.0.0.ebuild b/dev-python/atpublic/atpublic-7.0.0.ebuild
index 122eba9edb24..f5e350e656cb 100644
--- a/dev-python/atpublic/atpublic-7.0.0.ebuild
+++ b/dev-python/atpublic/atpublic-7.0.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ppc ppc64 ~riscv ~sparc x86"
BDEPEND="
test? (
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index b261ce91a0c9..4934b4f953e0 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -4,4 +4,5 @@ DIST boto3-1.42.21.gh.tar.gz 1068192 BLAKE2B 281cfe3d55f0b094ca7b7e3b192c94736d9
DIST boto3-1.42.25.gh.tar.gz 1069210 BLAKE2B 33aff7204332da82b7b5df93b74a2b17538734441d3cbd8d2dd971e71794301b5ee281ccf6c9aade4848a36f0611e4cc4b5531c2aff8eba920a78eacbe3f6142 SHA512 71b5976e8b5f67f33a25f4e7a27e0a7d2cf0b96ed10558bb3fda181569a77c9323d991376b139eb2b0e2b93cd3dd93e083f1c56bd06956d387ee587a1145166c
DIST boto3-1.42.30.gh.tar.gz 1072966 BLAKE2B c770c5027e9791a2b5cf0a77c907c260c3fd41b2bce68fa9da1f6bd6afe850a0c6c1d438adce8b07294057e2fb86929e713ba23564ffd3e6d1dd8584e6a34bba SHA512 fc5d4ddcf1e4428cfdb851af21ee5b0cb4eeb7a050288fb3b74001a8ca4cfbdad36d837fab1b4836b551e277e381b692fdc24df5de6c65a217cb5ca38a28979c
DIST boto3-1.42.31.gh.tar.gz 1073739 BLAKE2B b8d4917f4567d05278278094ff41e6278746838ba1587917cd6eb018644b2c3b2fe8a82d32537cec19456f0c2afde4b828280ea026637fdf9371fa7db2b3522e SHA512 e8a9f717ba3ab176f1b6450e2143d06850ce89457193df895ba595131dda2149d315db0051656066268680420f8bbabf738f2517dd6ff0621a106fd16df1cc36
+DIST boto3-1.42.32.gh.tar.gz 1074285 BLAKE2B 650353f9502b0857e75ec342d8da128471e091128fd4e18e3b4615ca397a1ffc375d7585ddd250ef9f0c9ed750f692f7ec85830918574bf8c17e12ce74798945 SHA512 0f9de9374c7e3d51700d4d787cdc203fb5f3d42650977e5ce904c7346436554c7775f4d5de0ec031d76964060a6281a53e6c11fb6bc0b14646fa700233f91860
DIST boto3-1.42.9.gh.tar.gz 1059745 BLAKE2B 78fba4fe807a3ea8eea22cd81cff67c90cd36e281665545bc9d7dc9bfaa1089d668e1994ba6e950eedfe2cfa1495f192b43f8fdae2b9b8b6bd74b62e0ab699d8 SHA512 92ecb0d609ba2f7df6a444b9d840e2a070b22ec38f8ae3bd376e9473e5b4efbefc9bc924046cc6d79576967e33eed270633396171e6102331b58519021435fe8
diff --git a/dev-python/boto3/boto3-1.42.32.ebuild b/dev-python/boto3/boto3-1.42.32.ebuild
new file mode 100644
index 000000000000..6e5f06a012ad
--- /dev/null
+++ b/dev-python/boto3/boto3-1.42.32.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+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 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
+ >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
+ >=dev-python/s3transfer-0.16.0[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+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() {
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index bfd67ac20fb0..e5ca77fbfe8f 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -4,4 +4,5 @@ DIST botocore-1.42.21.gh.tar.gz 15742994 BLAKE2B 65de15224f2c720267d0ccd3c42001a
DIST botocore-1.42.25.gh.tar.gz 15746961 BLAKE2B ba4474223e49f36be485d147d54fa5ed1b848022ef4d1fca9169c1cb2c29adafb487834e3bf99154cd658c9c3d47da9cdd6f42ed626c868e258b58aaeb0ce1c6 SHA512 3ab0747b0778d0d0172c12edc76cc7ee647e063c6b86f69998d02bee848cf1fb400c4e6e43ba6acad00846b18ce7de7acf7bab1daf6c1e864bfa8771baa17a6d
DIST botocore-1.42.30.gh.tar.gz 15764580 BLAKE2B 001377314a8c2231b838b48192498c4d4873de90017eb0c82c7409db210f1dbd09db30925d0b4ae7feb9e270ff947b16308a625fdb5910ca95220e443d104461 SHA512 9ab375ba9284780d347eac25b5446b0571991496897732e0dac457d2d8e7b12aa6b5b417478ed02516a407fa689953a715877590a9b16b3c17c584810cc6a8c9
DIST botocore-1.42.31.gh.tar.gz 15766802 BLAKE2B 06171344b9d0c33342ae0728ca4b71a2cfe706b455638668f63bd2b015810460cb12727cadd980ca76a0cc53690c0212418c4afad6fa917336df8eb41d690ddd SHA512 8955a0eef5d28bc1dae69adaf4900e3222a86d83c6dea448b7d845601c3a99d4d440d3fb38bc04d2b953bf274f54df94a588e5d2c2914337b3d61a6b8e2782d4
+DIST botocore-1.42.32.gh.tar.gz 15772486 BLAKE2B a6aac0e927ee993ea9a3477e44fdb4f468f4285b862504b0ce786164016708ca97213229e7bbe760c5c750deea0fbe5b2ba2c839bfe9426d5823a779f9566c88 SHA512 a7272ca27a6a11bd6d149957ab61bae4306da6dc66e23d96b06a3ef0828eb8dd9e0309642a41c424cf702a4129b4005ced013a2f3c9ec7cfe6aa37d2f8fd1bfd
DIST botocore-1.42.9.gh.tar.gz 15723096 BLAKE2B 2cb1489fa48546abe3306935367744f918d053e02af58d6b85ed84a50bbfc659ec20763055e9783d492f6f248af81e571b8452487bf8ca3267e15d12ce8773bb SHA512 54cc19ca34474e8bfd7eda403452af24b6f73e611442ba4b7ed5f4f223ae279bdf95a3bc4945d16eba6ccca53d2dbefee6d2157ecb6b4ef23a1e960d5469dcc9
diff --git a/dev-python/botocore/botocore-1.42.32.ebuild b/dev-python/botocore/botocore-1.42.32.ebuild
new file mode 100644
index 000000000000..f6ce0d9ed8d5
--- /dev/null
+++ b/dev-python/botocore/botocore-1.42.32.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+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 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+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_PLUGINS=()
+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
+ )
+
+ epytest tests/{functional,unit}
+}
diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index 1a9b251ff367..18a7588c0eb8 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -4,3 +4,4 @@ DIST cfn_lint-1.41.0.tar.gz 3408534 BLAKE2B 281ac2561055366f11f5167140bbd71305a0
DIST cfn_lint-1.42.1.tar.gz 3728837 BLAKE2B 6ef135be851ca8ec17854074d8d3ad610b21249774bdc66adf686898f1b2a168c65d706551a22341d891b8bc4afd3788075abd232ce131fb4b5e2ecdc84c6a73 SHA512 9ddf24e494a2eb668c407116a54c34efb946516ef563d6272c08d58e56f24c9c70ff9d37dc25d70ad61d42fa759a1bd896d32035e6c7761d91bc8a0aea23e6c8
DIST cfn_lint-1.43.2.tar.gz 3469790 BLAKE2B 9de3a7e7a15939eadd84f9b2b0f2c77399c2c20036c938782bc112b3f270a6367b85f98d65fbabaff65e4767033d2bc89c92cafe1fef39c14545aa90437c98b4 SHA512 0c1d8a2befb8577ec9d1d1115d133707c6f6d802b6275c7e4ab596a0c4f236ce521c92be645dbeec4b0bef042422d34ca6b8321dd147fe5d302656f46d5199b7
DIST cfn_lint-1.43.3.tar.gz 3457813 BLAKE2B 207774f0d685901cca3c70552e6c6d21123df749645fe824b6cb8a97603eaeae4216bbb6465f65d7bc6c8e980ce973f3b4d1c5836d14b8309cb812fa9d1a6eec SHA512 d11b1f5137f2f43aee8ec85c2ba8a894dff0c9b1f8eab92244acb41a24f593e35ed70e9e74b47eb0993740dc0865abaaba0cd5e3638f6a9d011fd5602f1d5bdf
+DIST cfn_lint-1.43.4.tar.gz 3464983 BLAKE2B af29adad5e8685704857394f0fc328bf4e5e103d4fc769399366d6924308a7ddb766261f30ace7968b33d6b7502056ec6286eb3c1d9824897b60b0bf4ef0c368 SHA512 fab0dee39468c0608594b979cfae45bd6a0c73ff2a0b29ad6bfc91f0ffd61dd44c0e804923d289423ca7e898d81256aa59bfdd2e2414ce8d54b3151b421a265f
diff --git a/dev-python/cfn-lint/cfn-lint-1.43.4.ebuild b/dev-python/cfn-lint/cfn-lint-1.43.4.ebuild
new file mode 100644
index 000000000000..a4c0be4f9142
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-1.43.4.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+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.97.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="
+ >=dev-python/setuptools-77.0.3[${PYTHON_USEDEP}]
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # different line wrapping somehow
+ test/unit/module/template/test_template.py::TestTemplate::test_build_graph
+ # requires git repo
+ test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs
+ # TODO: suddenly started failing in older versions too
+ # https://github.com/aws-cloudformation/cfn-lint/issues/4207
+ test/integration/test_good_templates.py
+ test/unit/module/override/test_exclude.py::TestExclude::test_success_run
+ test/unit/module/test_api.py::TestLintFile::test_good_template
+ test/unit/module/test_rules_collections.py::TestRulesCollection::test_success_run
+ )
+
+ # from tox.ini
+ local -x AWS_DEFAULT_REGION=us-east-1
+ epytest
+}
diff --git a/dev-python/ensurepip-wheel/Manifest b/dev-python/ensurepip-wheel/Manifest
index c6f56f57d7b6..5f603ecd73ed 100644
--- a/dev-python/ensurepip-wheel/Manifest
+++ b/dev-python/ensurepip-wheel/Manifest
@@ -1 +1,3 @@
DIST wheel-0.45.1.tar.gz 107545 BLAKE2B 13c8d60a2e39ded3d911c9e03915b01bda201f7e8cd6de456484ce6eeb2a990861a01f26e5d9f2ac4ca0ab2b6d0fea9db437d6f82cb39db9b1059c3c53202ec0 SHA512 df45f00e9eaeae2f27f813f31591590c961da2f6bff15bba6fb2a14d529c221f39b29894b8da408fe49cd4b760840a0e05c4baef377ccfacd9983c0bba83d6d8
+DIST wheel-0.46.2.tar.gz 60274 BLAKE2B f26a8d40f0fbe2da6bb8a406b79e5eca50de89309a16a8d0830a269e33340a78b624201400c211a69c991f470f14e99457bb63ec8db3bdf6b37c19d391545f34 SHA512 3337b53164ac1a7031e45708aba9cb259833d314d22564533c4af199ce12d8c89a4b22955ff0c0e9bcaa07bae78c81f08ff12c91d30b3c6be4d42dd9ccad1a31
+DIST wheel-0.46.2.tar.gz.provenance 9073 BLAKE2B 41f8c0d2a602ffab3d68bf57ddc18e4b4dd318beba4590037b2b7fa3811151e7b6fdbf8b8633462e47deba38a755fa8ce249c7d08abc98717f0a1f40eb6e3674 SHA512 b62349b72f682cd9667d0cec0732aab902db0659319850fa3882d3be4f5cbbae87a707f5371aef07fa35eb6f0a88558c439b2e0da4941466e3add9c19c47bf1b
diff --git a/dev-python/ensurepip-wheel/ensurepip-wheel-0.46.2.ebuild b/dev-python/ensurepip-wheel/ensurepip-wheel-0.46.2.ebuild
new file mode 100644
index 000000000000..ae0ed6eb87ac
--- /dev/null
+++ b/dev-python/ensurepip-wheel/ensurepip-wheel-0.46.2.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYPI_PN=${PN#ensurepip-}
+PYPI_VERIFY_REPO=https://github.com/pypa/wheel
+# PYTHON_COMPAT used only for testing
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Shared wheel wheel for use in pip tests"
+HOMEPAGE="
+ https://github.com/pypa/wheel/
+ https://pypi.org/project/wheel/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ )
+"
+
+# xdist is slightly flaky here
+EPYTEST_PLUGINS=( pytest-rerunfailures )
+EPYTEST_RERUNS=5
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_compile() {
+ # If we're testing, install for all implementations.
+ # If we're not, just get one wheel built.
+ if use test || [[ -z ${DISTUTILS_WHEEL_PATH} ]]; then
+ distutils-r1_python_compile
+ fi
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # fails if any setuptools plugin imported the module first
+ tests/test_bdist_wheel.py::test_deprecated_import
+ )
+
+ epytest
+}
+
+src_install() {
+ if [[ ${DISTUTILS_WHEEL_PATH} != *py3-none-any.whl ]]; then
+ die "Non-pure wheel produced?! ${DISTUTILS_WHEEL_PATH}"
+ fi
+ # TODO: compress it?
+ insinto /usr/lib/python/ensurepip
+ doins "${DISTUTILS_WHEEL_PATH}"
+}
diff --git a/dev-python/flatbuffers/flatbuffers-25.12.19.ebuild b/dev-python/flatbuffers/flatbuffers-25.12.19.ebuild
index 3ee843b72041..c69fdfe87435 100644
--- a/dev-python/flatbuffers/flatbuffers-25.12.19.ebuild
+++ b/dev-python/flatbuffers/flatbuffers-25.12.19.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -21,7 +21,7 @@ S=${WORKDIR}/${P}/python
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~riscv ~sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/furo/furo-2025.12.19-r1.ebuild b/dev-python/furo/furo-2025.12.19-r1.ebuild
index f778443acc59..bb847d0c21e2 100644
--- a/dev-python/furo/furo-2025.12.19-r1.ebuild
+++ b/dev-python/furo/furo-2025.12.19-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2025 Gentoo Authors
+# Copyright 2021-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -22,7 +22,7 @@ S=${WORKDIR}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
dev-python/accessible-pygments[${PYTHON_USEDEP}]
diff --git a/dev-python/gherkin-official/Manifest b/dev-python/gherkin-official/Manifest
index 33e4ae4cc7b6..ec9c6c5924de 100644
--- a/dev-python/gherkin-official/Manifest
+++ b/dev-python/gherkin-official/Manifest
@@ -1 +1,2 @@
DIST gherkin-37.0.1.gh.tar.gz 3885169 BLAKE2B 0ae0594cc73c135417f95f1f0896427f46428ce5b0bb13b5524c9d32470c7226def0b72b949d221f6dc6fe97da8364de38d51cb0d4a3bea78fbadec7240d380c SHA512 49204fdc22767ed1de1bc155be550b6b9e1636658cbbc014af958da7f800f21d4c83341b21bbbf88a83618f7dce03e4a5ca967a74121389f5dde62f190ddc7dc
+DIST gherkin-38.0.0.gh.tar.gz 3885203 BLAKE2B 48951a0ef8f3aab3cfee7e83a9cb9a494a220f79ee53ce4b194b06d2ff85efeb94479187bbe5bdd25aab2d10a681d1c9ec78533a1ac880c01549320e80268cf9 SHA512 73bd1e147ee540f8855e3a75b9b403aaf653191af23237793ffed473cc8c2c130886c9f72adbe64eebbedc04c2ca0812045a96df727d5cf33e38b0fb9fcee850
diff --git a/dev-python/gherkin-official/gherkin-official-38.0.0.ebuild b/dev-python/gherkin-official/gherkin-official-38.0.0.ebuild
new file mode 100644
index 000000000000..54b4fc8380a2
--- /dev/null
+++ b/dev-python/gherkin-official/gherkin-official-38.0.0.ebuild
@@ -0,0 +1,31 @@
+# Copyright 2024-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=uv-build
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1
+
+DESCRIPTION="Gherkin parser/compiler for Python"
+HOMEPAGE="
+ https://github.com/cucumber/gherkin/
+ https://pypi.org/project/gherkin-official/
+"
+SRC_URI="
+ https://github.com/cucumber/gherkin/archive/refs/tags/v${PV}.tar.gz
+ -> gherkin-${PV}.gh.tar.gz
+"
+S=${WORKDIR}/gherkin-${PV}/python
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64"
+
+RDEPEND="
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
diff --git a/dev-python/grpclib/grpclib-0.4.9.ebuild b/dev-python/grpclib/grpclib-0.4.9.ebuild
index ec2194f66dc2..7b723e0f9bd4 100644
--- a/dev-python/grpclib/grpclib-0.4.9.ebuild
+++ b/dev-python/grpclib/grpclib-0.4.9.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2024-2025 Gentoo Authors
+# Copyright 2024-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -21,7 +21,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
# setup.txt + requirements/runtime.in
RDEPEND="
diff --git a/dev-python/hcloud/hcloud-2.13.0.ebuild b/dev-python/hcloud/hcloud-2.13.0.ebuild
index d477ef6d2702..9d2c2df1f80c 100644
--- a/dev-python/hcloud/hcloud-2.13.0.ebuild
+++ b/dev-python/hcloud/hcloud-2.13.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -24,7 +24,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64"
+KEYWORDS="amd64"
IUSE="examples"
RDEPEND="
diff --git a/dev-python/markdown/Manifest b/dev-python/markdown/Manifest
index 6c954be82f7a..ddfc58e30a69 100644
--- a/dev-python/markdown/Manifest
+++ b/dev-python/markdown/Manifest
@@ -1,2 +1,2 @@
+DIST markdown-3.10.1.tar.gz 365402 BLAKE2B 68742d233466d9f4ccb03b60749dbce79b19b4394f29b8d83632f81123ebb2c4eb69d29e7c3199549b8ec88ba6009c293fc908160bf3086d0d3db911f0205ed4 SHA512 34c9f52172640c28ec281575eba29a841e4086b5c898ab4d7df804d691310732d707cfc0f27b36fa9bc9662191b36453a25279c4d9e3d1e0cf012d95f3d90a9d
DIST markdown-3.10.tar.gz 364931 BLAKE2B 43cdbdcda9e43e0525664e13e36708f6565c7e0a8cf0219ed27d3a6de89835c6423caaa67d075d5dc244ef53739414d56dcd26626b2d11d14b4e23ae356eec99 SHA512 5b07895f8bd560348722a97517ef33b740221092cd2567f19ac5baf823a43916c6243ed603c8f6b94b526b39d9876a040b5ef2f4d50f3de277e6d96a2bcc510c
-DIST markdown-3.9.tar.gz 364585 BLAKE2B d6b42c252a80b40f47d8153d3080a817289fbb3093e95dbea96da930af43f3e7d51ae200352abc09eaa87ef79389c526def488e8cf32e8222e0ef4dea26aa8d8 SHA512 3427e5f5ee18d8973dc32e14c38e455a02a8e77521c8db18a750e4a7ec5f6a00c01e3e6528a6e461f35faab00dad80a7b33098fedcdf1d2b136e19daa3e8b09c
diff --git a/dev-python/markdown/markdown-3.9.ebuild b/dev-python/markdown/markdown-3.10.1.ebuild
index 0590b0d690e3..731f0f345800 100644
--- a/dev-python/markdown/markdown-3.9.ebuild
+++ b/dev-python/markdown/markdown-3.10.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
IUSE="doc test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/numpydoc/numpydoc-1.10.0.ebuild b/dev-python/numpydoc/numpydoc-1.10.0.ebuild
index 13f8214d3aac..d1635a986e52 100644
--- a/dev-python/numpydoc/numpydoc-1.10.0.ebuild
+++ b/dev-python/numpydoc/numpydoc-1.10.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
RDEPEND="
>=dev-python/sphinx-6[${PYTHON_USEDEP}]
diff --git a/dev-python/os-service-types/os-service-types-1.8.2.ebuild b/dev-python/os-service-types/os-service-types-1.8.2.ebuild
index 0f861accf14b..91b1f78de59f 100644
--- a/dev-python/os-service-types/os-service-types-1.8.2.ebuild
+++ b/dev-python/os-service-types/os-service-types-1.8.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~riscv x86"
RDEPEND="
>=dev-python/pbr-6.1.1[${PYTHON_USEDEP}]
diff --git a/dev-python/oslo-log/oslo-log-8.0.0.ebuild b/dev-python/oslo-log/oslo-log-8.0.0.ebuild
index 0cc7fbfc9a64..bb4b10da06b5 100644
--- a/dev-python/oslo-log/oslo-log-8.0.0.ebuild
+++ b/dev-python/oslo-log/oslo-log-8.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~riscv x86"
RDEPEND="
>=dev-python/debtcollector-3.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/packaging/Manifest b/dev-python/packaging/Manifest
index 5939d853ed50..fb0772645bba 100644
--- a/dev-python/packaging/Manifest
+++ b/dev-python/packaging/Manifest
@@ -1,4 +1,6 @@
DIST packaging-25.0.tar.gz 165727 BLAKE2B ad665526339ccc63bbca1e21649f773e626b13f984f0800c6362d5642e8de701d88f7793015bc406f3dc39fa6ce2784f099f925b08d7b5c1d3614d390470080c SHA512 0672602d2e18c3aee71b3e567b0de572bc8613ee3d24a79a655ded23ac08ec4582193225bc0c0ea390ed81cf5efbb46e8afbe0798d14f2235f811f263c25728c
+DIST packaging-26.0.tar.gz 143416 BLAKE2B 0f64797c7dc0c1d452bef437f3c61959efe17db4d0281ca475a45a433b349693a6e2a5183c17921cc233086da765d5af6cd902e4c3cba8975d42908de553a389 SHA512 27a066a7d65ba76189212973b6a0d162f3d361848b1b0c34a82865cf180b3284a837cc34206c297f002a73feae414e25a26c5960bb884a74ea337f582585f1d2
+DIST packaging-26.0.tar.gz.provenance 9319 BLAKE2B 95a46bf39757ebc5daa5a847413936dbf9067c50129009cca898b3010d2cc7d7175b1091ba4b8b3f5c13106a9f9da0b6dc858ab65fd0dbe7164e2c99752c539b SHA512 b1280f2554b17244745ac2c566922c1bb2b68e45a18020633d52c12a0e6be784506f10c0dfcf9a528ff6dedb7a4bfac0f240367fe26707435ee7cc15fb4c45a8
DIST packaging-26.0rc1.tar.gz 142273 BLAKE2B 164a8cc27b161c7aa9214ff545a8c26fc44ebc943a4914bcf58ba050d6d3f243aa0a08033b669066cdb3bc8926ad5bcd30651e5490ee92078c41b559e8ba905b SHA512 6b9a18f23821d957546a022c0efcff3af5fa393c3938132868cd6468128820a606a2235642928cb05afea40ae51b071b5403344c308a251d1d31f83047d1d72a
DIST packaging-26.0rc1.tar.gz.provenance 9673 BLAKE2B 47a90dc7d169887beb4671e2e665b00b0754a7bfe5ab2a3d0ae7e6e044c7ab3abd7c30d5b859af3f6d380c5061f74f77e4a29dc16f5a52e3fc46ed59e92d8067 SHA512 443e51791c9da3b5cdc467af8dfe4d0afa73be748b22b26b58ec81526177f048a6b86ab0c2654cb3b8fa87b741b73416a39eb32dd26a10265fe307443d93eb0a
DIST packaging-26.0rc2.tar.gz 142648 BLAKE2B b423ef17498b3557ca2d6f369b92e583b45b368a32faba816c2a09fc183a5c5ccd190c49cc1b9f511658ebf4fe4aac9e57195e02119426496bffe2061364bb31 SHA512 b643f9ea9fde13d2337812eb91a4a296807a98163e7f2603f5edbb60dfa06044077fa699d4b576b7ad303d63f92488525f77d5b2f6c253282b4693db5825cbf9
diff --git a/dev-python/packaging/packaging-26.0.ebuild b/dev-python/packaging/packaging-26.0.ebuild
new file mode 100644
index 000000000000..c3ece7e7f6cf
--- /dev/null
+++ b/dev-python/packaging/packaging-26.0.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYPI_VERIFY_REPO=https://github.com/pypa/packaging
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Core utilities for Python packages"
+HOMEPAGE="
+ https://github.com/pypa/packaging/
+ https://pypi.org/project/packaging/
+"
+
+LICENSE="|| ( Apache-2.0 BSD-2 )"
+SLOT="0"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+fi
+
+RDEPEND="
+ !<dev-python/setuptools-67
+"
+DEPEND="
+ test? (
+ dev-python/pretend[${PYTHON_USEDEP}]
+ dev-python/tomli-w[${PYTHON_USEDEP}]
+ )
+"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+python_test() {
+ epytest --capture=no
+}
diff --git a/dev-python/pandas/Manifest b/dev-python/pandas/Manifest
index 9344b9878214..1e6d2da13fbb 100644
--- a/dev-python/pandas/Manifest
+++ b/dev-python/pandas/Manifest
@@ -3,6 +3,8 @@ DIST pandas-2.3.0.tar.gz 4484490 BLAKE2B 4fa8ad780e47bb9cfd6dfe3ea89d7c217d2d9bf
DIST pandas-2.3.1.tar.gz 4487493 BLAKE2B d20f7f7b16e02d70f7cef228a20d0b1a1e7a8f4f2376f723b96ea38ca0df6e4bb9943b7ecf5d9f1f614e76f0b4bf84cf94c9a8768a8c5c045595bc052b7763bc SHA512 8d87295b7150708dfcd0d313933aa8ab056cd62eb404a540d3e96df16a5f78921fe1a56fbee15af2d159990465cc1bd939520fa640365b3ac892704dba991aea
DIST pandas-2.3.2.tar.gz 4488684 BLAKE2B d63a81eb06806ed80847322741f0e3e34c8a51af4794b0a18816ae2e10fd27c25b015da95f4a6c2cfb9767b9388025a3b5522817f9013b50c589d5ecf7ae7f64 SHA512 4cbc4db60e36f07e483322eb734d229ef67af042a8f8be5f2285b3607f1a1f122ecdd95884ea12b1850b5d98423e2d0895fa5c738df6b40ff1950fe6d4371708
DIST pandas-2.3.3.tar.gz 4495223 BLAKE2B c31604617900d439020dcdd66fcbca1cf3b720b6f4dd8ea51891946ad04774754cf7636a2ffb9fe746d15911a88153d36d4033b6a0207e9c7a1653a0f677570d SHA512 4179acb9fd9d1c5d543bb19b22483b4c2b17a36d5b10270a02ff4d8370b43c16a93673bf5509a5b1d1c960c0fde9238bbbf5b309c6745d2abf3d934535f3fd85
+DIST pandas-3.0.0.tar.gz 4633005 BLAKE2B 7084d2098e2f95c339c7638333161285e3bc969d0ba68df485c316445ab572ab99f2f4abfac5e22fa117c3af7a45cc412f95822996b75cabb489cc3e1d25673b SHA512 da05f1dc83caeacc95f5d5c84fec1949eea9bc4acd4763a8204a83174c5f45a6555410cac16241a530a584565963c6f6f7ffa7718c31e93d61dc7a47d8fa6c1f
+DIST pandas-3.0.0.tar.gz.provenance 9455 BLAKE2B 22caafd024bd01c8afc97b764ec19a71a4cdf4c2838d9853720ba801e280e5dbd587de2822805617b78bbf9d95c0b6eb81786a30e30aeb2224f9100855678e34 SHA512 b756eb102dc05afb1eed2ff22177dda0fdc0cc54db1ac45a3115748d7d7c09610d9332276bd448fcebb50a1e66242b2131b2e251b67bdedbad56e6b285728581
DIST pandas-3.0.0rc1.tar.gz 4591349 BLAKE2B c724a6415d3769e23166e845a86554d4ec359b79c68a5714495def119dd3228a5b2c428757c7ea8e78e713623b222ef9ecec1908520f8cdc3080c595ecfcdf5a SHA512 e30ec13c82ad93f841c339d5c73d4574c37ee40adfea1d6bbe50c7281ad50715b772f90650a98c8f61c7445f2a055e715f2375d1e1ff694b90cffd14a3a0fd36
DIST pandas-3.0.0rc1.tar.gz.provenance 9566 BLAKE2B c959e091ed7e67c746539a34da5f0991cc3a3e713834e9d017dc0790d827634063d0881e62767ff9abeb4450eba826e11967b0ccdc6c61933c3a4bc6929943f0 SHA512 b4720fd67511b5f3d5b1b5a5232a812d4d4785e8b7ec8cea69b19d46e31c6652ba174361571bf08a488a945f07c8c384d3e26ef3cccb7ddb7f8538e9e9460fd0
DIST pandas-3.0.0rc2.tar.gz 4611940 BLAKE2B 274813d9616479e061290b63a2863711c413324e6aaf376129f5a63144829c51f4d7d6c49558f92501514dae0c2f4d0bd0f1b4f5572ddc1192871df29bc33f4a SHA512 7bd899bb1dc9bd2146e0d409912631ab962bebe4990d3e97a823adf669ac1c9fac4ccf4b2923aaafe461932302efe256aea77f28e0df8808651b415d27e22fa4
diff --git a/dev-python/pandas/pandas-3.0.0.ebuild b/dev-python/pandas/pandas-3.0.0.ebuild
new file mode 100644
index 000000000000..f281ac7b3dd8
--- /dev/null
+++ b/dev-python/pandas/pandas-3.0.0.ebuild
@@ -0,0 +1,200 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=meson-python
+PYPI_VERIFY_REPO=https://github.com/pandas-dev/pandas
+PYTHON_COMPAT=( python3_{10..14} )
+PYTHON_REQ_USE="threads(+)"
+
+VIRTUALX_REQUIRED="manual"
+
+inherit distutils-r1 optfeature pypi toolchain-funcs virtualx
+
+DESCRIPTION="Powerful data structures for data analysis and statistics"
+HOMEPAGE="
+ https://pandas.pydata.org/
+ https://github.com/pandas-dev/pandas/
+ https://pypi.org/project/pandas/
+"
+
+LICENSE="BSD"
+SLOT="0"
+if [[ ${PV} != *_rc* ]]; then
+ KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+fi
+IUSE="big-endian full-support minimal test X"
+RESTRICT="!test? ( test )"
+
+RECOMMENDED_DEPEND="
+ >=dev-python/bottleneck-1.3.4[${PYTHON_USEDEP}]
+ >=dev-python/numexpr-2.8.0[${PYTHON_USEDEP}]
+"
+
+# TODO: add pandas-gbq to the tree
+# TODO: Re-add dev-python/statsmodel[python3_11] dep once it supports python3_11
+# https://github.com/statsmodels/statsmodels/issues/8287
+OPTIONAL_DEPEND="
+ >=dev-python/beautifulsoup4-4.14.2[${PYTHON_USEDEP}]
+ dev-python/blosc[${PYTHON_USEDEP}]
+ >=dev-python/html5lib-1.1[${PYTHON_USEDEP}]
+ >=dev-python/jinja2-3.1.2[${PYTHON_USEDEP}]
+ >=dev-python/lxml-4.8.0[${PYTHON_USEDEP}]
+ >=dev-python/matplotlib-3.6.1[${PYTHON_USEDEP}]
+ >=dev-python/openpyxl-3.0.7[${PYTHON_USEDEP}]
+ >=dev-python/sqlalchemy-1.4.36[${PYTHON_USEDEP}]
+ >=dev-python/tabulate-0.8.10[${PYTHON_USEDEP}]
+ >=dev-python/xarray-2022.3.0[${PYTHON_USEDEP}]
+ >=dev-python/xlrd-2.0.1[${PYTHON_USEDEP}]
+ >=dev-python/xlsxwriter-3.0.3[${PYTHON_USEDEP}]
+ >=dev-python/xlwt-1.3.0[${PYTHON_USEDEP}]
+ !arm? ( !hppa? ( !ppc? ( !x86? (
+ >=dev-python/scipy-1.8.1[${PYTHON_USEDEP}]
+ dev-python/statsmodels[${PYTHON_USEDEP}]
+ ) ) ) )
+ !big-endian? (
+ >=dev-python/tables-3.7.0[${PYTHON_USEDEP}]
+ )
+ X? (
+ || (
+ >=dev-python/pyqt5-5.15.6[${PYTHON_USEDEP}]
+ >=dev-python/qtpy-2.2.0[${PYTHON_USEDEP}]
+ x11-misc/xclip
+ x11-misc/xsel
+ )
+ )
+"
+DEPEND="
+ >=dev-python/numpy-2.3.3:=[${PYTHON_USEDEP}]
+"
+COMMON_DEPEND="
+ ${DEPEND}
+ >=dev-python/python-dateutil-2.8.2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${COMMON_DEPEND}
+ >=dev-build/meson-1.2.1
+ >=dev-python/cython-3.0.5[${PYTHON_USEDEP}]
+ >=dev-python/versioneer-0.28[${PYTHON_USEDEP}]
+ test? (
+ ${VIRTUALX_DEPEND}
+ ${RECOMMENDED_DEPEND}
+ ${OPTIONAL_DEPEND}
+ dev-libs/apache-arrow[brotli,parquet,snappy]
+ >=dev-python/beautifulsoup4-4.14.2[${PYTHON_USEDEP}]
+ >=dev-python/hypothesis-6.46.1[${PYTHON_USEDEP}]
+ >=dev-python/openpyxl-3.0.10[${PYTHON_USEDEP}]
+ >=dev-python/pyarrow-10.0.1[parquet,${PYTHON_USEDEP}]
+ >=dev-python/pymysql-1.0.2[${PYTHON_USEDEP}]
+ >=dev-python/xlsxwriter-3.0.3[${PYTHON_USEDEP}]
+ x11-misc/xclip
+ x11-misc/xsel
+ )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ !minimal? ( ${RECOMMENDED_DEPEND} )
+ full-support? ( ${OPTIONAL_DEPEND} )
+"
+
+EPYTEST_PLUGINS=()
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_test() {
+ virtx distutils-r1_src_test
+}
+
+python_test() {
+ # Note; deselects relative to pandas/
+ local EPYTEST_DESELECT=(
+ # missing data not covered by --no-strict-data-files?
+ # https://github.com/pandas-dev/pandas/issues/63437
+ tests/io/test_common.py::test_read_csv_chained_url_no_error
+
+ # require -Werror
+ # https://github.com/pandas-dev/pandas/pull/63436
+ tests/config/test_config.py::TestConfig::test_case_insensitive
+
+ # deprecation warning
+ 'tests/computation/test_eval.py::TestEval::test_scalar_unary[numexpr-pandas]'
+ )
+
+ if ! tc-has-64bit-time_t; then
+ EPYTEST_DESELECT+=(
+ # Needs 64-bit time_t (TODO: split into 32-bit arch only section)
+ tests/tseries/offsets/test_year.py::test_add_out_of_pydatetime_range
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BusinessDay]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BusinessHour]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BusinessMonthEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BusinessMonthBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BQuarterEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-BQuarterBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-CustomBusinessDay]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-CustomBusinessHour]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-CustomBusinessMonthEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-CustomBusinessMonthBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-MonthEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-MonthBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-SemiMonthBegin]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-SemiMonthEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-QuarterEnd]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-LastWeekOfMonth]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-WeekOfMonth]'
+ 'tests/tseries/offsets/test_common.py::test_apply_out_of_range[tzlocal()-Week]'
+ )
+ fi
+
+ if ! has_version "dev-python/scipy[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ tests/plotting/test_misc.py::test_savefig
+ )
+ fi
+
+ case ${EPYTHON} in
+ python3.14)
+ EPYTEST_DESELECT+=(
+ 'tests/computation/test_eval.py::TestEval::test_simple_cmp_ops[float-float-numexpr-pandas-in]'
+ 'tests/computation/test_eval.py::TestEval::test_simple_cmp_ops[float-float-numexpr-pandas-not in]'
+ 'tests/computation/test_eval.py::TestEval::test_simple_cmp_ops[float-float-python-pandas-in]'
+ 'tests/computation/test_eval.py::TestEval::test_simple_cmp_ops[float-float-python-pandas-not in]'
+ 'tests/computation/test_eval.py::TestEval::test_compound_invert_op[float-float-numexpr-pandas-in]'
+ 'tests/computation/test_eval.py::TestEval::test_compound_invert_op[float-float-numexpr-pandas-not in]'
+ 'tests/computation/test_eval.py::TestEval::test_compound_invert_op[float-float-python-pandas-in]'
+ 'tests/computation/test_eval.py::TestEval::test_compound_invert_op[float-float-python-pandas-not in]'
+ 'tests/computation/test_eval.py::TestOperations::test_simple_arith_ops[numexpr-pandas]'
+ 'tests/computation/test_eval.py::TestOperations::test_simple_arith_ops[python-pandas]'
+ )
+ ;;
+ esac
+
+ local -x LC_ALL=C.UTF-8
+ cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
+ "${EPYTHON}" -c "import pandas; pandas.show_versions()" || die
+ # nonfatal from virtx
+ # --no-strict-data-files is necessary since upstream prevents data
+ # files from even being included in GitHub archives, sigh
+ # https://github.com/pandas-dev/pandas/issues/54907
+ nonfatal epytest pandas/tests \
+ --no-strict-data-files -o xfail_strict=false \
+ -m "not single_cpu and not slow and not network and not db" ||
+ die "Tests failed with ${EPYTHON}"
+}
+
+pkg_postinst() {
+ optfeature "accelerating certain types of NaN evaluations, using specialized cython routines to achieve large speedups." dev-python/bottleneck
+ optfeature "accelerating certain numerical operations, using multiple cores as well as smart chunking and caching to achieve large speedups" ">=dev-python/numexpr-2.1"
+ optfeature "needed for pandas.io.html.read_html" dev-python/beautifulsoup4 dev-python/html5lib dev-python/lxml
+ optfeature "for msgpack compression using blosc" dev-python/blosc
+ optfeature "Template engine for conditional HTML formatting" dev-python/jinja2
+ optfeature "Plotting support" dev-python/matplotlib
+ optfeature "Needed for Excel I/O" ">=dev-python/openpyxl-3.0.10" dev-python/xlsxwriter dev-python/xlrd dev-python/xlwt
+ optfeature "necessary for HDF5-based storage" ">=dev-python/tables-3.7.0"
+ optfeature "R I/O support" dev-python/rpy2
+ optfeature "Needed for parts of pandas.stats" dev-python/statsmodels
+ optfeature "SQL database support" ">=dev-python/sqlalchemy-1.4.36"
+ optfeature "miscellaneous statistical functions" dev-python/scipy
+ optfeature "necessary to use pandas.io.clipboard.read_clipboard support" dev-python/pyqt5 dev-python/qtpy x11-misc/xclip x11-misc/xsel
+}
diff --git a/dev-python/podman/Manifest b/dev-python/podman/Manifest
index 99cba73e39dc..dd7e8c112d53 100644
--- a/dev-python/podman/Manifest
+++ b/dev-python/podman/Manifest
@@ -1,3 +1 @@
-DIST podman-py-5.4.0.1.gh.tar.gz 174543 BLAKE2B b0e8ff4702e1b4d82a41883998b6722c761484000e3ee6fda3b80998587d9e8e4892c2f5fd07ec58aa2d4bb7b44c3556448eff4af53f03dcc9a7b44dfa4437bf SHA512 ba86f42100691126e96401443a9febc87315c8b2f4bb11ee93803205886a910eaedc6c3f801e9cbc661d9c5ad8ee051b77cc63a14465a8c6ed307a3a606f708e
-DIST podman-py-5.5.0.gh.tar.gz 179640 BLAKE2B 6111d889d58d5a0999c4dd0303b191f54668a691af26db247311b05dc784d59e193d97c87f81d1820bf2bbc057ae00774faf3f74b1cae835dc0e1b2d92783b36 SHA512 a48253375e90f426baf046bdffc3df3ee8dc4e66a0ccacf55d86cb847b1937a1135f3518b5ad5e9ddd50f11800e97bd5454ec2098535ccf7f06d7210a0cd63ba
-DIST podman-py-5.6.0.gh.tar.gz 182866 BLAKE2B 0ec5b330d5d14ba5080d1c03251781360d4c035d51a688446b65d6f52d5afbbe711018d44d56c8f628da22e9779b3fa90b2adf34c77ee856316c348ce8cf5b7f SHA512 a5f4d1368221ea68202c1413f54493307fd2220ae386bc23690fa5997d6fb974f41a528f2a74aca92588b5c3aa121b492365356ecebc8a9a09245e07ae4905c3
+DIST podman-py-5.7.0.gh.tar.gz 186239 BLAKE2B 40e0ed15bbee559d89cf63389246a1b3e01da64e25d5cfaed72dc7f9f5098bcf5f1ab92b5d2d1c07ac283cf3c1ffb2bfaccb5372137a67151c2eb901deaadcaa SHA512 4e6d761f8ee2dd4b08062773a0986f44ea52aac2478c97a56f2dfdb60fe561029ecffd5fcf51b067f8730efc51a6e57254a77554169e298a9c61c27a3aa456cb
diff --git a/dev-python/podman/podman-5.4.0.1.ebuild b/dev-python/podman/podman-5.4.0.1.ebuild
deleted file mode 100644
index 6303af957c5b..000000000000
--- a/dev-python/podman/podman-5.4.0.1.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..14} )
-
-inherit distutils-r1
-
-MY_P=podman-py-${PV/_p/.post}
-DESCRIPTION="A library to interact with a Podman server"
-HOMEPAGE="
- https://github.com/containers/podman-py/
- https://pypi.org/project/podman/
-"
-SRC_URI="
- https://github.com/containers/podman-py/archive/v${PV/_p/.post}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/requests-2.24[${PYTHON_USEDEP}]
- >=dev-python/rich-12.5.1[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/requests-mock-1.11.0[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- local EPYTEST_DESELECT=(
- # TODO
- podman/tests/unit/test_volumesmanager.py::VolumesManagerTestCase::test_get_404
- )
-
- # integration tests require a workable podman server,
- # and it doesn't seem to work in ebuild env
- epytest podman/tests/unit
-}
diff --git a/dev-python/podman/podman-5.5.0.ebuild b/dev-python/podman/podman-5.5.0.ebuild
deleted file mode 100644
index 6303af957c5b..000000000000
--- a/dev-python/podman/podman-5.5.0.ebuild
+++ /dev/null
@@ -1,49 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..14} )
-
-inherit distutils-r1
-
-MY_P=podman-py-${PV/_p/.post}
-DESCRIPTION="A library to interact with a Podman server"
-HOMEPAGE="
- https://github.com/containers/podman-py/
- https://pypi.org/project/podman/
-"
-SRC_URI="
- https://github.com/containers/podman-py/archive/v${PV/_p/.post}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/requests-2.24[${PYTHON_USEDEP}]
- >=dev-python/rich-12.5.1[${PYTHON_USEDEP}]
- dev-python/urllib3[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- >=dev-python/requests-mock-1.11.0[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- local EPYTEST_DESELECT=(
- # TODO
- podman/tests/unit/test_volumesmanager.py::VolumesManagerTestCase::test_get_404
- )
-
- # integration tests require a workable podman server,
- # and it doesn't seem to work in ebuild env
- epytest podman/tests/unit
-}
diff --git a/dev-python/podman/podman-5.6.0.ebuild b/dev-python/podman/podman-5.7.0.ebuild
index e9e3587a7d5c..c6da7758c15a 100644
--- a/dev-python/podman/podman-5.6.0.ebuild
+++ b/dev-python/podman/podman-5.7.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pyalsa/Manifest b/dev-python/pyalsa/Manifest
index f92a0906101e..0b3aaffcb8e2 100644
--- a/dev-python/pyalsa/Manifest
+++ b/dev-python/pyalsa/Manifest
@@ -1 +1,2 @@
DIST pyalsa-1.2.14.tar.bz2 40383 BLAKE2B dc2cf0e631b4bf954a0fd09219236067f3ca7fd0a740641b1cdec86f9bf7af6325e58ffd8b6bae3372eb6c1afdf055c2bcad1fa54cb2784edf9a18eb18923870 SHA512 8a3fec7568d9e36bdf39a048f5cfe1c7f656ea08777eac3280329afbb1c9c870136e3fd54fd334762d9942385ddfead9bc15ee86d244d8c50869b34c4cb52f7d
+DIST pyalsa-1.2.14.tar.bz2.sig 833 BLAKE2B 418d82280664f75b281d7ad07ff142a649cc076e4254d6497045b882263b36959178fb48ba33b9df6c02aa4af21bc0d17e1ef16049cb8d7e7df85a8b268f6ac0 SHA512 1653ec264d33d618197bbbe4acbe06d4dab88f7b59c9971c8ac5b8581a2e917836f1099dd4d2817abccc8089fa4f50b6741ba4a144db6438e58acf97d270b055
diff --git a/dev-python/pyalsa/pyalsa-1.2.14.ebuild b/dev-python/pyalsa/pyalsa-1.2.14.ebuild
index cead859ad379..32d3d909c457 100644
--- a/dev-python/pyalsa/pyalsa-1.2.14.ebuild
+++ b/dev-python/pyalsa/pyalsa-1.2.14.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -6,12 +6,16 @@ EAPI=8
DISTUTILS_EXT=1
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..14} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/alsa.asc
-inherit distutils-r1
+inherit distutils-r1 verify-sig
DESCRIPTION="Python bindings for ALSA library"
HOMEPAGE="https://alsa-project.org/wiki/Main_Page"
-SRC_URI="https://www.alsa-project.org/files/pub/pyalsa/${P}.tar.bz2"
+SRC_URI="
+ https://www.alsa-project.org/files/pub/pyalsa/${P}.tar.bz2
+ verify-sig? ( https://www.alsa-project.org/files/pub/pyalsa/${P}.tar.bz2.sig )
+"
LICENSE="LGPL-2.1+"
SLOT="0"
@@ -27,6 +31,7 @@ RDEPEND="
"
BDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
+ verify-sig? ( sec-keys/openpgp-keys-alsa )
"
python_test() {
diff --git a/dev-python/pycparser/Manifest b/dev-python/pycparser/Manifest
index ce3cbc3af6d2..d67b0388aa93 100644
--- a/dev-python/pycparser/Manifest
+++ b/dev-python/pycparser/Manifest
@@ -1,2 +1,3 @@
DIST pycparser-2.22.tar.gz 172736 BLAKE2B a080df68cf114c355949b2911a80e89ed02a64b8d1d03e3c5807222249e5dfd2491f691962885dbadcdaf323b55a05c5597319ac082dcf6c67a9ac952be9a7e2 SHA512 c9a81c78d87162f71281a32a076b279f4f7f2e17253fe14c89c6db5f9b3554a6563ff700c385549a8b51ef8832f99f7bb4ac07f22754c7c475dd91feeb0cf87f
DIST pycparser-2.23.tar.gz 173734 BLAKE2B f9a11de129f6b5495df9a25778cfc73c1ed236f522b2c8ca2676fac14b78f35e2928547ea654adff4ea28a2dfa8a51d3a5b2085ab9f40e0d7b9ed5ec4568eb2b SHA512 317f02bf58482b9d80b7395fe6fe5f756230915473b65b219755ccf0f4f1d3b227f508925fcf81fe28bcd6c113cf93e0075bf16a9a499cb306e1627222b1b1a7
+DIST pycparser-3.0.tar.gz 103492 BLAKE2B 20415045953c72f2aa90f1edd2dbace57958dcae74d8ce4fb5676576e30fc94c3657bbb3f688edaa082263844b0fdb98ef0acb2c06825accc81f52270909ada1 SHA512 333504ef076e369661823abcd1d1f0d4e01ebadd43b7039e403d80fc2418500c2ed2c42e7b997c6eaf9c56b16085dfccacc6d0be2d45f0033a90eac1a7ed49d0
diff --git a/dev-python/pycparser/pycparser-3.0.ebuild b/dev-python/pycparser/pycparser-3.0.ebuild
new file mode 100644
index 000000000000..ccffe8c22e0b
--- /dev/null
+++ b/dev-python/pycparser/pycparser-3.0.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="C parser and AST generator written in Python"
+HOMEPAGE="
+ https://github.com/eliben/pycparser/
+ https://pypi.org/project/pycparser/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ dev-python/ply:=[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+"
+
+distutils_enable_tests unittest
+
+python_prepare_all() {
+ # c_ast.py is preprocessed from _c_ast.cfg, really no point
+ # in regenerating it
+
+ # kill sys.path manipulations to force the tests to use built files
+ sed -i -e '/sys\.path/d' tests/*.py || die
+
+ # Ensure we can find tests in our directory
+ sed -i -e 's/from tests.test_util/from test_util/g' tests/test_*.py || die
+
+ ln -s "${S}"/examples tests/examples || die
+
+ rm tests/test_examples.py || die
+
+ distutils-r1_python_prepare_all
+}
+
+python_test() {
+ # Skip tests if cpp is not in PATH
+ type -P cpp >/dev/null || return 0
+ # change workdir to avoid '.' import
+ cd tests || die
+
+ # Ensure that 'cpp' is called with the right arguments
+ # Tests don't seem to always pass the include they intend to use.
+ mkdir -p "${T}"/bin || die
+ cat > "${T}"/bin/cpp <<-EOF || die
+ #!${BROOT}/bin/bash
+ exec ${BROOT}/usr/bin/cpp -I${S}/utils/fake_libc_include/ \$@
+ EOF
+ chmod +x "${T}"/bin/cpp || die
+
+ PATH="${T}/bin:${PATH}" eunittest
+}
diff --git a/dev-python/pyfakefs/pyfakefs-6.0.0.ebuild b/dev-python/pyfakefs/pyfakefs-6.0.0.ebuild
index 9d2d4ed78e00..965b216750ca 100644
--- a/dev-python/pyfakefs/pyfakefs-6.0.0.ebuild
+++ b/dev-python/pyfakefs/pyfakefs-6.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
EPYTEST_PLUGINS=( "${PN}" )
distutils_enable_tests pytest
diff --git a/dev-python/pygresql/pygresql-6.2.0.ebuild b/dev-python/pygresql/pygresql-6.2.0.ebuild
index 3c2e5f5b11b1..b56f0dbefe67 100644
--- a/dev-python/pygresql/pygresql-6.2.0.ebuild
+++ b/dev-python/pygresql/pygresql-6.2.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -20,7 +20,7 @@ HOMEPAGE="
LICENSE="POSTGRESQL"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~hppa ppc ~sparc x86"
DEPEND="${POSTGRES_DEP}"
RDEPEND="${DEPEND}"
diff --git a/dev-python/pytest-golden/pytest-golden-1.0.0.ebuild b/dev-python/pytest-golden/pytest-golden-1.0.0.ebuild
index e5ade235b55f..9e2c9e994e4e 100644
--- a/dev-python/pytest-golden/pytest-golden-1.0.0.ebuild
+++ b/dev-python/pytest-golden/pytest-golden-1.0.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 ~riscv x86"
RDEPEND="
>=dev-python/pytest-6.1.2[${PYTHON_USEDEP}]
diff --git a/dev-python/ruamel-yaml/ruamel-yaml-0.18.17.ebuild b/dev-python/ruamel-yaml/ruamel-yaml-0.18.17.ebuild
index fa8f8ddfe956..74c9d0e87947 100644
--- a/dev-python/ruamel-yaml/ruamel-yaml-0.18.17.ebuild
+++ b/dev-python/ruamel-yaml/ruamel-yaml-0.18.17.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -20,7 +20,7 @@ S="${WORKDIR}"/${MY_P}
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
dev-python/ruamel-yaml-clib[${PYTHON_USEDEP}]
diff --git a/dev-python/secretstorage/secretstorage-3.5.0.ebuild b/dev-python/secretstorage/secretstorage-3.5.0.ebuild
index aa30d0f92916..67dc7759540b 100644
--- a/dev-python/secretstorage/secretstorage-3.5.0.ebuild
+++ b/dev-python/secretstorage/secretstorage-3.5.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
>=dev-python/cryptography-2.0[${PYTHON_USEDEP}]
diff --git a/dev-python/sphinx-gallery/sphinx-gallery-0.20.0.ebuild b/dev-python/sphinx-gallery/sphinx-gallery-0.20.0.ebuild
index fac164b9ebad..453537aa6ac7 100644
--- a/dev-python/sphinx-gallery/sphinx-gallery-0.20.0.ebuild
+++ b/dev-python/sphinx-gallery/sphinx-gallery-0.20.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc ppc64 x86"
RDEPEND="
dev-python/matplotlib[${PYTHON_USEDEP}]
diff --git a/dev-python/sphinx-prompt/sphinx-prompt-1.10.2.ebuild b/dev-python/sphinx-prompt/sphinx-prompt-1.10.2.ebuild
index 6402937e1c7e..4dd653fce6ce 100644
--- a/dev-python/sphinx-prompt/sphinx-prompt-1.10.2.ebuild
+++ b/dev-python/sphinx-prompt/sphinx-prompt-1.10.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~m68k ppc ppc64 ~riscv ~s390 ~sparc x86"
RDEPEND="
dev-python/sphinx[${PYTHON_USEDEP}]
diff --git a/dev-python/sphinx/sphinx-9.0.4-r1.ebuild b/dev-python/sphinx/sphinx-9.0.4-r1.ebuild
index 4493fd3f1680..8e1686a6ddd8 100644
--- a/dev-python/sphinx/sphinx-9.0.4-r1.ebuild
+++ b/dev-python/sphinx/sphinx-9.0.4-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -25,7 +25,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="BSD-2"
SLOT="0"
if [[ ${PV} != *_rc* ]]; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
fi
IUSE="doc latex"
diff --git a/dev-python/sqlalchemy/Manifest b/dev-python/sqlalchemy/Manifest
index 022b1b529beb..a0fda2458eea 100644
--- a/dev-python/sqlalchemy/Manifest
+++ b/dev-python/sqlalchemy/Manifest
@@ -1,3 +1,3 @@
DIST sqlalchemy-1.4.54.tar.gz 8470350 BLAKE2B 0d97beb4edde38455c03dfc1238655d1cb63aa6e042b941913ec68dca3654de07087ab967f208fda495f048a5068ced70d642c4b8b80ab32e5346fcefa3bf9bc SHA512 e7ea4920d81914d362134a3c6fd4a2dd4fdb75f6ce17358528d568e2b2ac0ee711a71f6beb894e61d6d1e4e5833034ebde651d73a13f873c682f780e1831b427
-DIST sqlalchemy-2.0.44.tar.gz 9819830 BLAKE2B 0b6854671c23ec089fdac8c229fecc053841cd73c5827e8716222cdde13717a241482082a4f52b6dd6aeb9953244414ad7fac9c1b339beee061f9b964fa4887f SHA512 9f34641b3c52e84c3deaf62daa9848ea527840d6aa6dc97e27d13938b0c544ee4389e96e7f7a8820db81c2f88fcece2e7214bb28b5b1f9acac95f7e55addc4ba
DIST sqlalchemy-2.0.45.tar.gz 9869912 BLAKE2B 8d58d90067736d9c4d5cc6167a24cc3193620c3735873713406bcc500b7918aeb59ccc7101c3ed669f81ad6d9af633c40fdc56a0924cfba132d897f561dd9cdb SHA512 f7e603a893273c6bbd4f266bf186a1a043e329a695333a17147a68dadec54bf6b2fad7b11e3534bf6ce4c0e7bed3ad5ebe7a3bae01102258458a6ec33944c4a2
+DIST sqlalchemy-2.0.46.tar.gz 9865393 BLAKE2B c8b88889b0b4a4d5dff467b1e4c3820a8b7aea058e87991a661cf87113205b0c9a117f030bc7801d88a562e4f98a678cb54c3185ea64b4e8951d0b7fa781d767 SHA512 bc1fb1983207384e109c27c09eddbbfd96c80324349d93f084c922f5d1fc82c8f3ec63d9e9f10bdccc3a8ee902aa517adc1cc2db0d05302a52b0425ebbbc3aa7
diff --git a/dev-python/sqlalchemy/sqlalchemy-2.0.44.ebuild b/dev-python/sqlalchemy/sqlalchemy-2.0.46.ebuild
index cd1a86c218f5..7772425a890c 100644
--- a/dev-python/sqlalchemy/sqlalchemy-2.0.44.ebuild
+++ b/dev-python/sqlalchemy/sqlalchemy-2.0.46.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -20,7 +20,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos ~x64-solaris"
IUSE="examples +sqlite test"
RDEPEND="
@@ -53,6 +53,8 @@ python_test() {
local EPYTEST_DESELECT=(
# warning tests are unreliable
test/base/test_warnings.py
+ # TODO: flaky? xdist?
+ test/base/test_concurrency_py3k.py::TestAsyncioCompat::test_await_fallback_no_greenlet
)
local sqlite_version=$(sqlite3 --version | cut -d' ' -f1)
case ${EPYTHON} in
@@ -71,6 +73,8 @@ python_test() {
test/orm/test_utils.py::ContextualWarningsTest::test_configure_mappers_explicit
"test/sql/test_resultset.py::CursorResultTest_sqlite+pysqlite_${sqlite_version//./_}::test_new_row_no_dict_behaviors"
"test/sql/test_compare.py::HasCacheKeySubclass::test_init_args_in_traversal[_MemoizedSelectEntities]"
+ test/sql/test_lambdas.py::LambdaElementTest::test_bindparam_not_cached
+ test/sql/test_compare.py::CompareAndCopyTest::test_all_present
)
;;
esac
diff --git a/dev-python/stevedore/stevedore-5.6.0.ebuild b/dev-python/stevedore/stevedore-5.6.0.ebuild
index bac42868d9ea..0bce97cbc31d 100644
--- a/dev-python/stevedore/stevedore-5.6.0.ebuild
+++ b/dev-python/stevedore/stevedore-5.6.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm arm64 ~hppa ~mips ~ppc64 ~riscv ~s390 ~sparc x86"
BDEPEND="
test? (
diff --git a/dev-python/testtools/testtools-2.8.2.ebuild b/dev-python/testtools/testtools-2.8.2.ebuild
index 0074f1647c5b..ce98e47d6f81 100644
--- a/dev-python/testtools/testtools-2.8.2.ebuild
+++ b/dev-python/testtools/testtools-2.8.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/typer/typer-0.20.1.ebuild b/dev-python/typer/typer-0.20.1.ebuild
index 6c3011a1ea35..30af3cbe5e0b 100644
--- a/dev-python/typer/typer-0.20.1.ebuild
+++ b/dev-python/typer/typer-0.20.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2025 Gentoo Authors
+# Copyright 2025-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64"
+KEYWORDS="amd64 ~arm arm64"
IUSE="cli"
RDEPEND="
diff --git a/dev-python/uritools/uritools-6.0.1.ebuild b/dev-python/uritools/uritools-6.0.1.ebuild
index dc781740c6a1..fb8f00453f42 100644
--- a/dev-python/uritools/uritools-6.0.1.ebuild
+++ b/dev-python/uritools/uritools-6.0.1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv"
+KEYWORDS="amd64 arm64 ~riscv"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
diff --git a/dev-python/uvicorn/uvicorn-0.40.0.ebuild b/dev-python/uvicorn/uvicorn-0.40.0.ebuild
index 8dd2eff87e3e..f41f114838db 100644
--- a/dev-python/uvicorn/uvicorn-0.40.0.ebuild
+++ b/dev-python/uvicorn/uvicorn-0.40.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2025 Gentoo Authors
+# Copyright 2021-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="BSD"
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/wcwidth/Manifest b/dev-python/wcwidth/Manifest
index 11422e84b340..bd9080e14272 100644
--- a/dev-python/wcwidth/Manifest
+++ b/dev-python/wcwidth/Manifest
@@ -1,2 +1,3 @@
DIST wcwidth-0.2.13.tar.gz 101301 BLAKE2B 33637e5582cff1bbc0f11c044d390dc18b635af923c7c89c79c07f20bafb44434ad79801b19d89c9e15b8bee79b52f5652ea3987e5578520aedfbb03f20fd6cb SHA512 1eadda149936cf2eefe5d09c411774dc87c8a358f2dd92d74f427d7b47f07c05557e849c46122d44788c2bd7c97eb85fc5f902d9a158d68ab9e352c5185ba2d5
DIST wcwidth-0.2.14.tar.gz 102293 BLAKE2B b8d8e482b6268269e085f45da943943e91ec6809e5d48cb684339ce3dc7dee8707826f327d63bf21e137d82cac89a3ee755f1685243394c32b205906a4f90e9f SHA512 1fcfd1b1fd0aa0cb4c075f4428a4454bb5fc0285861b8a0d9ee50863d76b5a91cb212453a02f09dbd6b023aa0c6e3968fb925e7f31f263558f0accb4e58af293
+DIST wcwidth-0.3.0.tar.gz 172238 BLAKE2B ffb6a0db47f924cb1263df9e95024e7e76436eaa8852b93c34dfd7c52610f1f4ae5080f7046b0b9d9d9ea2ef5735a64f7dc109f897ce299a524c50cc03e60ce2 SHA512 cac4a83f7a1bf556d437d04818ddc712dca4b7feae81e44880fb03842f81c7449732e6073bfdf40f24381fb2db142630c2ade60a5f84a9d2b3921abb151af905
diff --git a/dev-python/wcwidth/wcwidth-0.3.0.ebuild b/dev-python/wcwidth/wcwidth-0.3.0.ebuild
new file mode 100644
index 000000000000..93cfddfcb5d7
--- /dev/null
+++ b/dev-python/wcwidth/wcwidth-0.3.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Measures number of Terminal column cells of wide-character codes"
+HOMEPAGE="
+ https://pypi.org/project/wcwidth/
+ https://github.com/jquast/wcwidth/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+
+EPYTEST_PLUGINS=()
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -o addopts=
+}
+
+python_install_all() {
+ docinto docs
+ dodoc docs/intro.rst
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/wheel/Manifest b/dev-python/wheel/Manifest
index c6f56f57d7b6..5f603ecd73ed 100644
--- a/dev-python/wheel/Manifest
+++ b/dev-python/wheel/Manifest
@@ -1 +1,3 @@
DIST wheel-0.45.1.tar.gz 107545 BLAKE2B 13c8d60a2e39ded3d911c9e03915b01bda201f7e8cd6de456484ce6eeb2a990861a01f26e5d9f2ac4ca0ab2b6d0fea9db437d6f82cb39db9b1059c3c53202ec0 SHA512 df45f00e9eaeae2f27f813f31591590c961da2f6bff15bba6fb2a14d529c221f39b29894b8da408fe49cd4b760840a0e05c4baef377ccfacd9983c0bba83d6d8
+DIST wheel-0.46.2.tar.gz 60274 BLAKE2B f26a8d40f0fbe2da6bb8a406b79e5eca50de89309a16a8d0830a269e33340a78b624201400c211a69c991f470f14e99457bb63ec8db3bdf6b37c19d391545f34 SHA512 3337b53164ac1a7031e45708aba9cb259833d314d22564533c4af199ce12d8c89a4b22955ff0c0e9bcaa07bae78c81f08ff12c91d30b3c6be4d42dd9ccad1a31
+DIST wheel-0.46.2.tar.gz.provenance 9073 BLAKE2B 41f8c0d2a602ffab3d68bf57ddc18e4b4dd318beba4590037b2b7fa3811151e7b6fdbf8b8633462e47deba38a755fa8ce249c7d08abc98717f0a1f40eb6e3674 SHA512 b62349b72f682cd9667d0cec0732aab902db0659319850fa3882d3be4f5cbbae87a707f5371aef07fa35eb6f0a88558c439b2e0da4941466e3add9c19c47bf1b
diff --git a/dev-python/wheel/wheel-0.46.2.ebuild b/dev-python/wheel/wheel-0.46.2.ebuild
new file mode 100644
index 000000000000..f3bd09289d66
--- /dev/null
+++ b/dev-python/wheel/wheel-0.46.2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYPI_VERIFY_REPO=https://github.com/pypa/wheel
+PYTHON_COMPAT=( python3_{10..14} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="A built-package format for Python"
+HOMEPAGE="
+ https://github.com/pypa/wheel/
+ https://pypi.org/project/wheel/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ )
+"
+
+# xdist is slightly flaky here
+EPYTEST_PLUGINS=( pytest-rerunfailures )
+EPYTEST_RERUNS=5
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # fails if any setuptools plugin imported the module first
+ tests/test_bdist_wheel.py::test_deprecated_import
+ )
+
+ epytest
+}