summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-05-12 14:32:48 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2024-05-12 14:32:48 +0000
commit2ea9e9988bb62d22d6e189a65a0dc0218b8103db (patch)
treedba985637358ca69fdb87390fc5711880f1959e7 /dev-python
parentc2f35c3c3b326b5a16c2f7f7cb347716f3865254 (diff)
downloadbaldeagleos-repo-2ea9e9988bb62d22d6e189a65a0dc0218b8103db.tar.gz
baldeagleos-repo-2ea9e9988bb62d22d6e189a65a0dc0218b8103db.tar.xz
baldeagleos-repo-2ea9e9988bb62d22d6e189a65a0dc0218b8103db.zip
Adding metadata
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Faker/Faker-25.1.0.ebuild43
-rw-r--r--dev-python/Faker/Manifest1
-rw-r--r--dev-python/accessible-pygments/Manifest1
-rw-r--r--dev-python/accessible-pygments/accessible-pygments-0.0.5.ebuild39
-rw-r--r--dev-python/adblock/adblock-0.6.0.ebuild2
-rw-r--r--dev-python/aiohttp/aiohttp-3.9.5.ebuild2
-rw-r--r--dev-python/aiostream/Manifest1
-rw-r--r--dev-python/aiostream/aiostream-0.6.1.ebuild40
-rw-r--r--dev-python/apprise/Manifest1
-rw-r--r--dev-python/apprise/apprise-1.8.0.ebuild38
-rw-r--r--dev-python/astor/astor-0.8.1-r1.ebuild6
-rw-r--r--dev-python/atomicwrites/atomicwrites-1.4.1.ebuild2
-rw-r--r--dev-python/attrs/attrs-23.2.0.ebuild6
-rw-r--r--dev-python/attrs/files/attrs-23.2.0-py313.patch93
-rw-r--r--dev-python/autocommand/autocommand-2.2.2.ebuild2
-rw-r--r--dev-python/babelfish/Manifest1
-rw-r--r--dev-python/babelfish/babelfish-0.6.1.ebuild25
-rw-r--r--dev-python/bareos/Manifest1
-rw-r--r--dev-python/bareos/bareos-22.1.4.ebuild18
-rw-r--r--dev-python/bitstring/Manifest1
-rw-r--r--dev-python/bitstring/bitstring-4.2.2.ebuild32
-rw-r--r--dev-python/black/black-24.4.2.ebuild2
-rw-r--r--dev-python/boltons/boltons-24.0.0.ebuild8
-rw-r--r--dev-python/boto3/Manifest4
-rw-r--r--dev-python/boto3/boto3-1.34.103.ebuild (renamed from dev-python/boto3/boto3-1.34.100.ebuild)0
-rw-r--r--dev-python/boto3/boto3-1.34.88.ebuild53
-rw-r--r--dev-python/boto3/boto3-1.34.93.ebuild2
-rw-r--r--dev-python/boto3/boto3-1.34.99.ebuild53
-rw-r--r--dev-python/botocore/Manifest4
-rw-r--r--dev-python/botocore/botocore-1.34.103.ebuild (renamed from dev-python/botocore/botocore-1.34.100.ebuild)0
-rw-r--r--dev-python/botocore/botocore-1.34.88.ebuild67
-rw-r--r--dev-python/botocore/botocore-1.34.93.ebuild2
-rw-r--r--dev-python/botocore/botocore-1.34.99.ebuild67
-rw-r--r--dev-python/brotlicffi/brotlicffi-1.1.0.0.ebuild2
-rw-r--r--dev-python/cffi/Manifest1
-rw-r--r--dev-python/cffi/cffi-1.17.0_pre20240424.ebuild79
-rw-r--r--dev-python/cfn-lint/Manifest1
-rw-r--r--dev-python/cfn-lint/cfn-lint-0.87.2.ebuild64
-rw-r--r--dev-python/chardet/chardet-5.2.0.ebuild2
-rw-r--r--dev-python/clang-python/Manifest1
-rw-r--r--dev-python/clang-python/clang-python-19.0.0_pre20240509.ebuild53
-rw-r--r--dev-python/click/click-8.1.7.ebuild2
-rw-r--r--dev-python/colorama/colorama-0.4.6.ebuild2
-rw-r--r--dev-python/configupdater/configupdater-3.2.ebuild2
-rw-r--r--dev-python/cssselect/cssselect-1.2.0.ebuild2
-rw-r--r--dev-python/decorator/decorator-5.1.1-r1.ebuild2
-rw-r--r--dev-python/defusedxml/Manifest1
-rw-r--r--dev-python/defusedxml/defusedxml-0.8.0_rc2.ebuild42
-rw-r--r--dev-python/distlib/distlib-0.3.8.ebuild4
-rw-r--r--dev-python/distlib/files/distlib-0.3.8-py313.patch22
-rw-r--r--dev-python/docutils/Manifest2
-rw-r--r--dev-python/docutils/docutils-0.19.ebuild76
-rw-r--r--dev-python/docutils/docutils-0.21.1.ebuild86
-rw-r--r--dev-python/docutils/docutils-0.21.2.ebuild2
-rw-r--r--dev-python/docutils/files/docutils-0.19-pygments-2.14.patch672
-rw-r--r--dev-python/docutils/files/docutils-0.21.1-test.patch42
-rw-r--r--dev-python/ephemeral-port-reserve/ephemeral-port-reserve-1.1.4.ebuild2
-rw-r--r--dev-python/flaky/flaky-3.8.1.ebuild1
-rw-r--r--dev-python/flask-compress/Manifest1
-rw-r--r--dev-python/flask-compress/flask-compress-1.14.ebuild29
-rw-r--r--dev-python/flask-compress/flask-compress-1.15.ebuild2
-rw-r--r--dev-python/freezegun/Manifest1
-rw-r--r--dev-python/freezegun/freezegun-1.5.0.ebuild12
-rw-r--r--dev-python/freezegun/freezegun-1.5.1.ebuild47
-rw-r--r--dev-python/genty/genty-1.3.2-r3.ebuild30
-rw-r--r--dev-python/google-api-python-client/Manifest2
-rw-r--r--dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild2
-rw-r--r--dev-python/google-api-python-client/google-api-python-client-2.129.0.ebuild (renamed from dev-python/google-api-python-client/google-api-python-client-2.126.0.ebuild)2
-rw-r--r--dev-python/h11/h11-0.14.0.ebuild2
-rw-r--r--dev-python/h2/Manifest2
-rw-r--r--dev-python/h2/h2-4.1.0-r1.ebuild19
-rw-r--r--dev-python/hatchling/Manifest2
-rw-r--r--dev-python/hatchling/hatchling-1.22.5-r1.ebuild92
-rw-r--r--dev-python/hatchling/hatchling-1.23.0.ebuild92
-rw-r--r--dev-python/hatchling/hatchling-1.24.2.ebuild2
-rw-r--r--dev-python/hpack/Manifest2
-rw-r--r--dev-python/hpack/hpack-4.0.0-r1.ebuild8
-rw-r--r--dev-python/html5lib/html5lib-1.1-r2.ebuild49
-rw-r--r--dev-python/hyperframe/hyperframe-6.0.1-r1.ebuild2
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.100.6.ebuild91
-rw-r--r--dev-python/importlib-resources/importlib-resources-6.4.0.ebuild2
-rw-r--r--dev-python/ini2toml/ini2toml-0.14.ebuild27
-rw-r--r--dev-python/ipython/Manifest1
-rw-r--r--dev-python/ipython/ipython-8.23.0.ebuild179
-rw-r--r--dev-python/ipython/ipython-8.24.0.ebuild2
-rw-r--r--dev-python/iso8601/iso8601-2.1.0.ebuild2
-rw-r--r--dev-python/jaraco-envs/jaraco-envs-2.6.0.ebuild2
-rw-r--r--dev-python/jaraco-path/jaraco-path-3.7.0.ebuild2
-rw-r--r--dev-python/jaraco-vcs/jaraco-vcs-2.2.0.ebuild2
-rw-r--r--dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild2
-rw-r--r--dev-python/jupyterlab/Manifest2
-rw-r--r--dev-python/jupyterlab/jupyterlab-4.1.6.ebuild80
-rw-r--r--dev-python/jupyterlab/jupyterlab-4.1.7.ebuild80
-rw-r--r--dev-python/jupyterlab/jupyterlab-4.1.8.ebuild2
-rw-r--r--dev-python/keyring/Manifest1
-rw-r--r--dev-python/keyring/keyring-25.1.0.ebuild52
-rw-r--r--dev-python/keyring/keyring-25.2.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/lit/Manifest1
-rw-r--r--dev-python/lit/lit-19.0.0_pre20240509.ebuild45
-rw-r--r--dev-python/mapbox_earcut/mapbox_earcut-1.0.1-r1.ebuild (renamed from dev-python/mapbox_earcut/mapbox_earcut-1.0.1.ebuild)5
-rw-r--r--dev-python/markdown-it-py/markdown-it-py-3.0.0.ebuild2
-rw-r--r--dev-python/markupsafe/markupsafe-2.1.5.ebuild16
-rw-r--r--dev-python/mcbootflash/Manifest1
-rw-r--r--dev-python/mcbootflash/mcbootflash-8.0.2.ebuild35
-rw-r--r--dev-python/mdurl/mdurl-0.1.2.ebuild2
-rw-r--r--dev-python/mechanize/Manifest1
-rw-r--r--dev-python/mechanize/files/mechanize-0.4.9-test.patch23
-rw-r--r--dev-python/mechanize/mechanize-0.4.10.ebuild2
-rw-r--r--dev-python/mechanize/mechanize-0.4.9.ebuild39
-rw-r--r--dev-python/minidb/Manifest1
-rw-r--r--dev-python/minidb/minidb-2.0.7.ebuild22
-rw-r--r--dev-python/minidb/minidb-2.0.8.ebuild2
-rw-r--r--dev-python/mistune/mistune-3.0.2.ebuild4
-rw-r--r--dev-python/mkdocs-ansible/Manifest2
-rw-r--r--dev-python/mkdocs-ansible/files/mkdocs-ansible-0.2.0-prune_deps.patch20
-rw-r--r--dev-python/mkdocs-ansible/mkdocs-ansible-0.2.0.ebuild41
-rw-r--r--dev-python/mkdocs-ansible/mkdocs-ansible-24.2.1.ebuild41
-rw-r--r--dev-python/mkdocs-material/Manifest1
-rw-r--r--dev-python/mkdocs-material/mkdocs-material-9.5.18.ebuild67
-rw-r--r--dev-python/mkdocs-material/mkdocs-material-9.5.19.ebuild2
-rw-r--r--dev-python/mypy/mypy-1.10.0.ebuild2
-rw-r--r--dev-python/olefile/olefile-0.47.ebuild2
-rw-r--r--dev-python/outcome/outcome-1.3.0_p0.ebuild2
-rw-r--r--dev-python/owslib/Manifest1
-rw-r--r--dev-python/owslib/owslib-0.31.0.ebuild45
-rw-r--r--dev-python/parse_type/parse_type-0.6.2.ebuild5
-rw-r--r--dev-python/pdm/Manifest2
-rw-r--r--dev-python/pdm/pdm-2.15.2.ebuild (renamed from dev-python/pdm/pdm-2.15.0.ebuild)0
-rw-r--r--dev-python/peewee/Manifest1
-rw-r--r--dev-python/peewee/peewee-3.17.5.ebuild72
-rw-r--r--dev-python/pexpect/pexpect-4.9.0.ebuild23
-rw-r--r--dev-python/pillow/files/pillow-10.3.0-py313.patch23
-rw-r--r--dev-python/pillow/pillow-10.3.0.ebuild2
-rw-r--r--dev-python/pip/pip-24.0.ebuild13
-rw-r--r--dev-python/ply/ply-3.11-r2.ebuild2
-rw-r--r--dev-python/poetry-plugin-export/Manifest3
-rw-r--r--dev-python/poetry-plugin-export/poetry-plugin-export-1.7.0.ebuild33
-rw-r--r--dev-python/poetry-plugin-export/poetry-plugin-export-1.8.0.ebuild (renamed from dev-python/poetry-plugin-export/poetry-plugin-export-1.6.0.ebuild)4
-rw-r--r--dev-python/poetry/Manifest4
-rw-r--r--dev-python/poetry/poetry-1.7.1.ebuild88
-rw-r--r--dev-python/poetry/poetry-1.8.0.ebuild96
-rw-r--r--dev-python/poetry/poetry-1.8.3.ebuild (renamed from dev-python/poetry/poetry-1.8.1.ebuild)4
-rw-r--r--dev-python/priority/priority-2.0.0-r1.ebuild18
-rw-r--r--dev-python/psycopg/Manifest1
-rw-r--r--dev-python/psycopg/psycopg-3.1.19.ebuild109
-rw-r--r--dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild11
-rw-r--r--dev-python/puremagic/Manifest1
-rw-r--r--dev-python/puremagic/puremagic-1.21.ebuild32
-rw-r--r--dev-python/puremagic/puremagic-1.22.ebuild2
-rw-r--r--dev-python/py/py-1.11.0-r1.ebuild5
-rw-r--r--dev-python/pygraphviz/Manifest1
-rw-r--r--dev-python/pygraphviz/pygraphviz-1.13.ebuild50
-rw-r--r--dev-python/pyperscan/pyperscan-0.3.0.ebuild4
-rw-r--r--dev-python/pyphen/Manifest1
-rw-r--r--dev-python/pyphen/pyphen-0.14.0.ebuild25
-rw-r--r--dev-python/pyphen/pyphen-0.15.0.ebuild2
-rw-r--r--dev-python/pypiserver/pypiserver-2.1.1.ebuild2
-rw-r--r--dev-python/pyproject-fmt-rust/Manifest116
-rw-r--r--dev-python/pyproject-fmt-rust/metadata.xml9
-rw-r--r--dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.0.1.ebuild160
-rw-r--r--dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.0.4.ebuild160
-rw-r--r--dev-python/pyproject-fmt/Manifest2
-rw-r--r--dev-python/pyproject-fmt/pyproject-fmt-2.0.2.ebuild33
-rw-r--r--dev-python/pyproject-fmt/pyproject-fmt-2.0.3.ebuild33
-rw-r--r--dev-python/pytest-datadir/pytest-datadir-1.5.0.ebuild2
-rw-r--r--dev-python/pytest-expect/pytest-expect-1.1.0-r2.ebuild2
-rw-r--r--dev-python/pytest-freezegun/pytest-freezegun-0.4.2-r1.ebuild2
-rw-r--r--dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild2
-rw-r--r--dev-python/pytest-home/pytest-home-0.5.1.ebuild2
-rw-r--r--dev-python/pytest-regressions/pytest-regressions-2.5.0.ebuild2
-rw-r--r--dev-python/pytest-rerunfailures/pytest-rerunfailures-14.0.ebuild12
-rw-r--r--dev-python/pytest-subprocess/pytest-subprocess-1.5.0.ebuild2
-rw-r--r--dev-python/pytest-timeout/pytest-timeout-2.3.1.ebuild6
-rw-r--r--dev-python/pytest/Manifest1
-rw-r--r--dev-python/pytest/pytest-8.1.1.ebuild113
-rw-r--r--dev-python/pytest/pytest-8.1.2.ebuild2
-rw-r--r--dev-python/python-dotenv/python-dotenv-1.0.1.ebuild2
-rw-r--r--dev-python/python-ironicclient/Manifest1
-rw-r--r--dev-python/python-ironicclient/python-ironicclient-5.6.0.ebuild49
-rw-r--r--dev-python/pytools/Manifest1
-rw-r--r--dev-python/pytools/pytools-2024.1.1.ebuild33
-rw-r--r--dev-python/pytools/pytools-2024.1.2.ebuild2
-rw-r--r--dev-python/pyyaml/pyyaml-6.0.1-r1.ebuild2
-rw-r--r--dev-python/regex/Manifest1
-rw-r--r--dev-python/regex/regex-2024.5.10.ebuild37
-rw-r--r--dev-python/requests_download/Manifest2
-rw-r--r--dev-python/requests_download/requests_download-0.1.2-r1.ebuild25
-rw-r--r--dev-python/requests_download/requests_download-0.1.2-r2.ebuild7
-rw-r--r--dev-python/roman/Manifest1
-rw-r--r--dev-python/roman/roman-4.1.ebuild26
-rw-r--r--dev-python/roman/roman-4.2.ebuild2
-rw-r--r--dev-python/rst-linker/rst-linker-2.6.0.ebuild2
-rw-r--r--dev-python/scripttest/scripttest-1.3.0-r2.ebuild2
-rw-r--r--dev-python/selenium/selenium-4.20.0.ebuild2
-rw-r--r--dev-python/semantic-version/semantic-version-2.10.0.ebuild5
-rw-r--r--dev-python/sentry-sdk/sentry-sdk-2.0.1.ebuild2
-rw-r--r--dev-python/setuptools-gettext/Manifest1
-rw-r--r--dev-python/setuptools-gettext/setuptools-gettext-0.1.14.ebuild36
-rw-r--r--dev-python/setuptools-rust/setuptools-rust-1.9.0.ebuild2
-rw-r--r--dev-python/setuptools/setuptools-69.5.1-r1.ebuild2
-rw-r--r--dev-python/sh/sh-2.0.6.ebuild2
-rw-r--r--dev-python/shtab/shtab-1.7.1.ebuild2
-rw-r--r--dev-python/socksio/socksio-1.0.0.ebuild2
-rw-r--r--dev-python/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild2
-rw-r--r--dev-python/soupsieve/soupsieve-2.5.ebuild2
-rw-r--r--dev-python/sphinx/files/sphinx-7.3.7-opt-defusedxml.patch34
-rw-r--r--dev-python/sphinx/sphinx-7.3.7-r2.ebuild (renamed from dev-python/sphinx/sphinx-7.3.7-r1.ebuild)7
-rw-r--r--dev-python/sphinxcontrib-qthelp/sphinxcontrib-qthelp-1.0.7.ebuild5
-rw-r--r--dev-python/sqlglot/Manifest4
-rw-r--r--dev-python/sqlglot/sqlglot-23.15.0.ebuild (renamed from dev-python/sqlglot/sqlglot-23.13.7.ebuild)0
-rw-r--r--dev-python/sqlglot/sqlglot-23.15.8.ebuild (renamed from dev-python/sqlglot/sqlglot-23.14.0.ebuild)0
-rw-r--r--dev-python/stone/Manifest2
-rw-r--r--dev-python/stone/stone-3.3.4.ebuild (renamed from dev-python/stone/stone-3.3.3.ebuild)0
-rw-r--r--dev-python/stripe/Manifest2
-rw-r--r--dev-python/stripe/stripe-9.4.0.ebuild2
-rw-r--r--dev-python/stripe/stripe-9.6.0.ebuild (renamed from dev-python/stripe/stripe-9.3.0.ebuild)4
-rw-r--r--dev-python/sybil/Manifest1
-rw-r--r--dev-python/sybil/sybil-6.1.1.ebuild39
-rw-r--r--dev-python/tavern/Manifest1
-rw-r--r--dev-python/tavern/tavern-2.11.0.ebuild66
-rw-r--r--dev-python/tempora/tempora-5.5.1.ebuild2
-rw-r--r--dev-python/textdistance/Manifest1
-rw-r--r--dev-python/textdistance/textdistance-4.6.1.ebuild36
-rw-r--r--dev-python/textdistance/textdistance-4.6.2.ebuild2
-rw-r--r--dev-python/textual/Manifest2
-rw-r--r--dev-python/textual/textual-0.58.1.ebuild (renamed from dev-python/textual/textual-0.56.4.ebuild)0
-rw-r--r--dev-python/tifffile/Manifest1
-rw-r--r--dev-python/tifffile/tifffile-2024.5.10.ebuild47
-rw-r--r--dev-python/tomli-w/tomli-w-1.0.0-r1.ebuild2
-rw-r--r--dev-python/tomli/tomli-2.0.1-r1.ebuild2
-rw-r--r--dev-python/tomlkit/Manifest1
-rw-r--r--dev-python/tomlkit/tomlkit-0.12.5.ebuild43
-rw-r--r--dev-python/tox/Manifest1
-rw-r--r--dev-python/tox/tox-4.14.2.ebuild87
-rw-r--r--dev-python/tox/tox-4.15.0.ebuild2
-rw-r--r--dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-Revert-test-skip-some-FAPI-tests-if-testing-agains-t.patch83
-rw-r--r--dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-cryptography-fixes-for-newer-version-of-cryptography.patch53
-rw-r--r--dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-scripts-update-regex-for-defines.patch28
-rw-r--r--dev-python/tpm2-pytss/tpm2-pytss-2.2.1.ebuild6
-rw-r--r--dev-python/trustme/files/trustme-1.1.0-aki.patch96
-rw-r--r--dev-python/trustme/trustme-1.1.0-r1.ebuild43
-rw-r--r--dev-python/trustme/trustme-1.1.0.ebuild7
-rw-r--r--dev-python/types-psutil/Manifest1
-rw-r--r--dev-python/types-psutil/types-psutil-5.9.5.20240511.ebuild17
-rw-r--r--dev-python/u-msgpack-python/u-msgpack-python-2.8.0.ebuild2
-rw-r--r--dev-python/unittest-mixins/unittest-mixins-1.6-r2.ebuild2
-rw-r--r--dev-python/uv/Manifest3
-rw-r--r--dev-python/uv/uv-0.1.42.ebuild121
-rw-r--r--dev-python/virtualenv/virtualenv-20.26.1.ebuild2
-rw-r--r--dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild2
-rw-r--r--dev-python/webencodings/webencodings-0.5.1-r2.ebuild11
-rw-r--r--dev-python/websockets/websockets-12.0.ebuild2
-rw-r--r--dev-python/wsproto/wsproto-1.2.0.ebuild2
-rw-r--r--dev-python/ytmusicapi/Manifest1
-rw-r--r--dev-python/ytmusicapi/ytmusicapi-1.7.1.ebuild23
260 files changed, 2836 insertions, 2790 deletions
diff --git a/dev-python/Faker/Faker-25.1.0.ebuild b/dev-python/Faker/Faker-25.1.0.ebuild
new file mode 100644
index 000000000000..b50c6e807fe1
--- /dev/null
+++ b/dev-python/Faker/Faker-25.1.0.ebuild
@@ -0,0 +1,43 @@
+# 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}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin
+ local EPYTEST_DESELECT=(
+ tests/providers/test_job.py::TestCsCZ::test_job
+ )
+ epytest
+}
diff --git a/dev-python/Faker/Manifest b/dev-python/Faker/Manifest
index 04accb982628..6eb7a72c7e5b 100644
--- a/dev-python/Faker/Manifest
+++ b/dev-python/Faker/Manifest
@@ -1,3 +1,4 @@
DIST Faker-24.11.0.tar.gz 1726502 BLAKE2B 52429b5b0db4e1fd55d2a4b30ed007417f37e36fbec8d4fe43dea316920d85877668f4e66107011fef5874b74b25c1465fcfc0990ee3f40810df064622bb5373 SHA512 d5ee8c7c048d113c37b13608406d96966745ab46b095fcb30c9107a27a7af909c9d4d6bf9c7bb478ad7d0604b3cb6b33b93b0ba9e1a321c20870d651f57617a5
DIST Faker-24.14.1.tar.gz 1759770 BLAKE2B e58feb12255de946b6c10cd9e3098f4423a47554e6aafcabb1094c7aab7e0dbbd2eea2077411094611c64b92307060c5da383390dc4a14545a9fe54b654e20e7 SHA512 d6afa8c25fe223999bdc776a7c2c12c43e9ad5886d6bb4744fe29c8b358def151b251a37a74a8576e5daedae360c19146f870a1438b63763ffb74b1577a5ae2f
DIST Faker-25.0.1.tar.gz 1759603 BLAKE2B 710c362ec8a077880d9728c75d775b318d2c3d65f1bb5488474b2c26fa48094a64e57f667c6b43d841224ced8c08ff98c87677d678e5fb738a3e17c941fcacf7 SHA512 0f0cfc86f76584320fc6ab0afae40da8c022b65fca07eff639ba9a89744814afc7f9e37c987a73d0ec025fa971c0468f3b8b026b16dc4a5813bacb9562a33384
+DIST Faker-25.1.0.tar.gz 1760306 BLAKE2B eb8a35853f8e70902d8ff59532cc8c5766f6986314b88afb973adfd6c8a0184ebcd9d1eecee1e9dd48bc393ba1270be88a3c3f463df8e0679aff7f00544cfd4d SHA512 6d53c843685d735664d6d986e8af76a520372900ea06cb54f86656ebb322d34543aa7aee8417cabb8c81a0ccc3ee3b212114790ff46aeb60cf29071bbf5c0361
diff --git a/dev-python/accessible-pygments/Manifest b/dev-python/accessible-pygments/Manifest
index c3f6487d5040..783a4e37143d 100644
--- a/dev-python/accessible-pygments/Manifest
+++ b/dev-python/accessible-pygments/Manifest
@@ -1 +1,2 @@
DIST accessible-pygments-0.0.4.gh.tar.gz 4540933 BLAKE2B 1fdd376b9f069590552632a806f161404aeb3ae0c9b522705ea64476bccc97e3f888af270fba5e05680bb87e2d3283f2c93259c687e137efc56a38ca4d71b507 SHA512 b45b3c17bcfb2d66d397ee7e535c35159ab79080163f8ace286d73ea65a08f7e39c757414755d7f59bdae22a52198e26546ae61893bd9cd5c901d2e2b1efb2b1
+DIST accessible-pygments-0.0.5.gh.tar.gz 2273172 BLAKE2B ed07ecb1ef0d6dcc2b02383d1620c373bb54c65522752404a0e2e2382e374d35c11d7ad6978889b4fd20d4536b38d5ea951a2e6366725279123f5357ecff8a0a SHA512 2f5984c4f95a13dc566a0f916168fb293332f175da61f88ef7dcbc9f2bfcd8781d891b7830ed401839eef09ad65f7cbf94bb5a153bc5b4454ddf4c28573948d2
diff --git a/dev-python/accessible-pygments/accessible-pygments-0.0.5.ebuild b/dev-python/accessible-pygments/accessible-pygments-0.0.5.ebuild
new file mode 100644
index 000000000000..9b4705342051
--- /dev/null
+++ b/dev-python/accessible-pygments/accessible-pygments-0.0.5.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2023-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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="A collection of accessible pygments styles"
+HOMEPAGE="
+ https://pypi.org/project/accessible-pygments/
+ https://github.com/Quansight-Labs/accessible-pygments/
+"
+# no tests in sdist, as of 0.0.5
+SRC_URI="
+ https://github.com/Quansight-Labs/accessible-pygments/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/pygments-1.5[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ dev-python/hatch-fancy-pypi-readme[${PYTHON_USEDEP}]
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
diff --git a/dev-python/adblock/adblock-0.6.0.ebuild b/dev-python/adblock/adblock-0.6.0.ebuild
index 5bcdec537091..67cdaec5208e 100644
--- a/dev-python/adblock/adblock-0.6.0.ebuild
+++ b/dev-python/adblock/adblock-0.6.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2023 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/aiohttp/aiohttp-3.9.5.ebuild b/dev-python/aiohttp/aiohttp-3.9.5.ebuild
index 2110a43f4c09..b078788959c5 100644
--- a/dev-python/aiohttp/aiohttp-3.9.5.ebuild
+++ b/dev-python/aiohttp/aiohttp-3.9.5.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test-rust"
RDEPEND="
diff --git a/dev-python/aiostream/Manifest b/dev-python/aiostream/Manifest
index 25aa9658bef7..d3612255de2d 100644
--- a/dev-python/aiostream/Manifest
+++ b/dev-python/aiostream/Manifest
@@ -1 +1,2 @@
DIST aiostream-0.5.2.gh.tar.gz 42945 BLAKE2B 36e4f3c7834df589da3e7ec8bafb6a5b6fe40a1e868fbe0b9b81233f6721852b0e31b12144775db8785835cd5a3a0ca0a88784f7955388efd55b6ce97311b10e SHA512 282139cda0f7d08dd11af88bc3a568054906c2e0e2708f72e0ce3a67d13a44822612e3989c398ab346f8c043f17ad2e5cd2f958b1461325ad9768affec8f63fc
+DIST aiostream-0.6.1.gh.tar.gz 45466 BLAKE2B 848594d9ae191e32553dbff25ffa5926a2fd069bdc36d202f861603495ed5b33e04c4d6ae04704ca3f1d3525b73bf4f83455acc74fcfa831991c8c1ea504fe65 SHA512 0e7a87196ee7749247a6554a9347f2d8a46474db58e3793a8ac2c76b92b61e8ec7d372a05c692fcb600e81be502745ec1e7320e9dba75f50ebeff2a1ffdc35bd
diff --git a/dev-python/aiostream/aiostream-0.6.1.ebuild b/dev-python/aiostream/aiostream-0.6.1.ebuild
new file mode 100644
index 000000000000..b349d7a18e84
--- /dev/null
+++ b/dev-python/aiostream/aiostream-0.6.1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="Generator-based operators for asynchronous iteration"
+HOMEPAGE="
+ https://pypi.org/project/aiostream/
+ https://github.com/vxgmichel/aiostream/
+"
+SRC_URI="
+ https://github.com/vxgmichel/aiostream/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/typing-extensions[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ sed -i -e 's:--cov aiostream::' \
+ pyproject.toml || die
+ distutils-r1_src_prepare
+}
diff --git a/dev-python/apprise/Manifest b/dev-python/apprise/Manifest
index a4f7dfc1e0cf..a32f0b5c3d39 100644
--- a/dev-python/apprise/Manifest
+++ b/dev-python/apprise/Manifest
@@ -1 +1,2 @@
DIST apprise-1.7.6.tar.gz 1656123 BLAKE2B 49720f6ba6522f3496ad5cbf5bf72340c6b21f207d11f3c3fcdd113db2e01730b64209fad1d0c7f1ed357251e567a0fe8c875b2ab8f1befdeeab9af59f5678e3 SHA512 39fdfd129d9e8bc16070a015bc9e2b4f4bf6e61e1b87ee45ec11e99e7e87dcc3896312c7ff71d0dac9532cee36709de40d6397d98b8affda069cb3a436ab8683
+DIST apprise-1.8.0.tar.gz 1651688 BLAKE2B 32458b2a4787c0366db54890b505ca86cf1abee4299d32fd49f8fc8d37b87a6123c902747f97466b061857e7f284ed78c4001e61f587f3b47e17194324217d37 SHA512 312165b1b5c05ee632b5f2631eafc4af2b318881444851966ff6893775caa303b8d8fc819de9c2f8790eb224ac849535c5e5038a2f51dc30d477a503ed48b920
diff --git a/dev-python/apprise/apprise-1.8.0.ebuild b/dev-python/apprise/apprise-1.8.0.ebuild
new file mode 100644
index 000000000000..1fb4c1bf85d5
--- /dev/null
+++ b/dev-python/apprise/apprise-1.8.0.ebuild
@@ -0,0 +1,38 @@
+# 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="Push Notifications that work with just about every platform"
+HOMEPAGE="
+ https://pypi.org/project/apprise/
+ https://github.com/caronc/apprise/
+"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~riscv"
+IUSE="+dbus mqtt"
+
+RDEPEND="
+ dev-python/click[${PYTHON_USEDEP}]
+ dev-python/markdown[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/requests-oauthlib[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dbus? ( dev-python/dbus-python[${PYTHON_USEDEP}] )
+ mqtt? ( dev-python/paho-mqtt[${PYTHON_USEDEP}] )
+"
+BDEPEND="
+ dev-python/Babel[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/astor/astor-0.8.1-r1.ebuild b/dev-python/astor/astor-0.8.1-r1.ebuild
index 7ff1d3bee6e6..49d3ef355f71 100644
--- a/dev-python/astor/astor-0.8.1-r1.ebuild
+++ b/dev-python/astor/astor-0.8.1-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
@@ -10,8 +10,8 @@ inherit distutils-r1 pypi
DESCRIPTION="Read/rewrite/write Python ASTs"
HOMEPAGE="
- https://pypi.org/project/astor
- https://github.com/berkerpeksag/astor
+ https://pypi.org/project/astor/
+ https://github.com/berkerpeksag/astor/
"
LICENSE="BSD"
diff --git a/dev-python/atomicwrites/atomicwrites-1.4.1.ebuild b/dev-python/atomicwrites/atomicwrites-1.4.1.ebuild
index 3efaab48ab06..56e795e8df97 100644
--- a/dev-python/atomicwrites/atomicwrites-1.4.1.ebuild
+++ b/dev-python/atomicwrites/atomicwrites-1.4.1.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/attrs/attrs-23.2.0.ebuild b/dev-python/attrs/attrs-23.2.0.ebuild
index d6b05c3daa8e..e588018997fa 100644
--- a/dev-python/attrs/attrs-23.2.0.ebuild
+++ b/dev-python/attrs/attrs-23.2.0.ebuild
@@ -28,7 +28,9 @@ BDEPEND="
dev-python/cloudpickle[${PYTHON_USEDEP}]
' python3_{10..12})
dev-python/hypothesis[${PYTHON_USEDEP}]
- dev-python/zope-interface[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/zope-interface[${PYTHON_USEDEP}]
+ ' python3_{10..12} pypy3)
)
"
@@ -37,4 +39,6 @@ distutils_enable_tests pytest
PATCHES=(
# https://github.com/python-attrs/attrs/pull/1249
"${FILESDIR}/${P}-pytest-8.patch"
+ # https://github.com/python-attrs/attrs/pull/1255
+ "${FILESDIR}/${P}-py313.patch"
)
diff --git a/dev-python/attrs/files/attrs-23.2.0-py313.patch b/dev-python/attrs/files/attrs-23.2.0-py313.patch
new file mode 100644
index 000000000000..f7ea8f5e659f
--- /dev/null
+++ b/dev-python/attrs/files/attrs-23.2.0-py313.patch
@@ -0,0 +1,93 @@
+From f9ff9135b472c78a7333d6272c62b92217897464 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Lum=C3=ADr=20=27Frenzy=27=20Balhar?=
+ <frenzy.madness@gmail.com>
+Date: Thu, 7 Mar 2024 10:23:46 +0100
+Subject: [PATCH] Fix test_ne in test_cmp.py for Python 3.13 (#1255)
+
+* Fix test_ne in test_cmp.py for Python 3.13
+
+Compiler in Python 3.13+ strips indents from docstrings
+so they need to be compared without it for new Pythons.
+
+Fixes: https://github.com/python-attrs/attrs/issues/1228
+
+* [pre-commit.ci] auto fixes from pre-commit.com hooks
+
+for more information, see https://pre-commit.ci
+
+---------
+
+Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
+---
+ src/attr/_compat.py | 1 +
+ tests/test_cmp.py | 11 +++++++----
+ 2 files changed, 8 insertions(+), 4 deletions(-)
+
+diff --git a/src/attr/_compat.py b/src/attr/_compat.py
+index 46b05ca..9010047 100644
+--- a/src/attr/_compat.py
++++ b/src/attr/_compat.py
+@@ -14,6 +14,7 @@ PY_3_8_PLUS = sys.version_info[:2] >= (3, 8)
+ PY_3_9_PLUS = sys.version_info[:2] >= (3, 9)
+ PY310 = sys.version_info[:2] >= (3, 10)
+ PY_3_12_PLUS = sys.version_info[:2] >= (3, 12)
++PY_3_13_PLUS = sys.version_info[:2] >= (3, 13)
+
+
+ if sys.version_info < (3, 8):
+diff --git a/tests/test_cmp.py b/tests/test_cmp.py
+index 07bfc52..b84b66f 100644
+--- a/tests/test_cmp.py
++++ b/tests/test_cmp.py
+@@ -4,10 +4,10 @@
+ Tests for methods from `attrib._cmp`.
+ """
+
+-
+ import pytest
+
+ from attr._cmp import cmp_using
++from attr._compat import PY_3_13_PLUS
+
+
+ # Test parameters.
+@@ -54,6 +54,9 @@ order_ids = [c[0].__name__ for c in order_data]
+ cmp_data = eq_data + order_data
+ cmp_ids = eq_ids + order_ids
+
++# Compiler strips indents from docstrings in Python 3.13+
++indent = "" if PY_3_13_PLUS else " " * 8
++
+
+ class TestEqOrder:
+ """
+@@ -325,7 +328,7 @@ class TestDundersUnnamedClass:
+ method = self.cls.__ne__
+ assert method.__doc__.strip() == (
+ "Check equality and either forward a NotImplemented or\n"
+- " return the result negated."
++ f"{indent}return the result negated."
+ )
+ assert method.__name__ == "__ne__"
+
+@@ -393,7 +396,7 @@ class TestDundersPartialOrdering:
+ method = self.cls.__ne__
+ assert method.__doc__.strip() == (
+ "Check equality and either forward a NotImplemented or\n"
+- " return the result negated."
++ f"{indent}return the result negated."
+ )
+ assert method.__name__ == "__ne__"
+
+@@ -465,7 +468,7 @@ class TestDundersFullOrdering:
+ method = self.cls.__ne__
+ assert method.__doc__.strip() == (
+ "Check equality and either forward a NotImplemented or\n"
+- " return the result negated."
++ f"{indent}return the result negated."
+ )
+ assert method.__name__ == "__ne__"
+
+--
+2.45.0
+
diff --git a/dev-python/autocommand/autocommand-2.2.2.ebuild b/dev-python/autocommand/autocommand-2.2.2.ebuild
index 5c2c6ee2ac68..7fde041a743b 100644
--- a/dev-python/autocommand/autocommand-2.2.2.ebuild
+++ b/dev-python/autocommand/autocommand-2.2.2.ebuild
@@ -4,7 +4,7 @@
EAPI=8
DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{10..12} pypy3 )
+PYTHON_COMPAT=( python3_{10..13} pypy3 )
inherit distutils-r1
diff --git a/dev-python/babelfish/Manifest b/dev-python/babelfish/Manifest
index 73a014db0e1b..cd4c5efb1ad0 100644
--- a/dev-python/babelfish/Manifest
+++ b/dev-python/babelfish/Manifest
@@ -1 +1,2 @@
DIST babelfish-0.6.0.gh.tar.gz 90886 BLAKE2B deee75aef23cbcb7c64f385c303310e5ce1ef0a3180729e47e59b8e85015ff36360a4be74ef32869421c6d90cf185ad427a7d55b9ef3cf20f551233dae3d425f SHA512 9d3309e67815c301578533fdaf8baae946ba87148b458f7b01315203d2d4356dd770c1a0b7a0ffbba14036b77f1463d67e3b5732efa6682cb6afdae1a8fd0a4b
+DIST babelfish-0.6.1.gh.tar.gz 93127 BLAKE2B 6c1f56432671c0ad7b18401e78637acf8488fa2aa924a4df961403e570f1adbff6d868d6e8e3797e4b26a790b65b2aad8600fc7feb665bb3a73a6a5d4664865f SHA512 e5936b08f7ecf38beea3a2da2ee32cfd93f312548459c18370326a72011aed5ed8a1908b13a091979c3fe83a984b99f299ed6c3d39a47784b4d5c48145796d04
diff --git a/dev-python/babelfish/babelfish-0.6.1.ebuild b/dev-python/babelfish/babelfish-0.6.1.ebuild
new file mode 100644
index 000000000000..5418dde56297
--- /dev/null
+++ b/dev-python/babelfish/babelfish-0.6.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="Python library to work with countries and languages"
+HOMEPAGE="
+ https://github.com/Diaoul/babelfish/
+ https://pypi.org/project/babelfish/
+"
+SRC_URI="
+ https://github.com/Diaoul/babelfish/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+distutils_enable_tests pytest
diff --git a/dev-python/bareos/Manifest b/dev-python/bareos/Manifest
index 58563338c54e..9834da74c158 100644
--- a/dev-python/bareos/Manifest
+++ b/dev-python/bareos/Manifest
@@ -1,2 +1,3 @@
DIST bareos-22.1.2.tar.gz 14746158 BLAKE2B 5d8c9c098f61bd35b11f907a3e215a7c08b504c3e529c67a4c8c5cbbf24775158966800e63efca260b4cc513417332cdf43a158d21684f09be3d89dd93258880 SHA512 76d53425b2a28f4f7887b323a70bf9b37df44302e0e25aff7156c1b3ee26ffa60bbfb45ed29a0f2fe763d5c38b8f7135ac2a3e405d8e2b10717f4893baf9c327
+DIST bareos-22.1.4.tar.gz 14747141 BLAKE2B 1b155c35f22120b07151a54ef314c6f8f42ea14c3f194d787a58ece41f8de148f0b34d0cc6a54f578b1bb5c4d3ae2a7736829f6d2cd642d8e001f1797a18052a SHA512 4285f0f524c6f30ae8f7dd67e2a732cf983663f56b053968a7f10d753e38bc2ee1e2673d1fb6a9b516994b51b45215fac153e301b893c9cb31a164ebff0d4c85
DIST bareos-23.0.2.tar.gz 14724410 BLAKE2B 0fe86c10d62ad322dfbcd5ac972aec27d6f0ad31e156d359398739b2bfd784a02ce89b26b6bdfcf279265114a4e6e13efe21edab8b87cff15f1f9f3ad055c64b SHA512 a8d8270c8060480fe87da9252de86a75eea1cc427db63536f848d19a2c23c499ca294a9656d9a6aac73a756f84c96a2d72f13d1cede7948e18bf93efc2ecfc29
diff --git a/dev-python/bareos/bareos-22.1.4.ebuild b/dev-python/bareos/bareos-22.1.4.ebuild
new file mode 100644
index 000000000000..8418ac127496
--- /dev/null
+++ b/dev-python/bareos/bareos-22.1.4.ebuild
@@ -0,0 +1,18 @@
+# Copyright 2022-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+DISTUTILS_USE_PEP517=setuptools
+inherit distutils-r1
+
+DESCRIPTION="python bindings for bareos network backup suite"
+HOMEPAGE="https://www.bareos.com/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/Release/${PV}.tar.gz -> ${P}.tar.gz"
+S=${WORKDIR}/${PN}-Release-${PV}/python-bareos
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="mirror test"
diff --git a/dev-python/bitstring/Manifest b/dev-python/bitstring/Manifest
index c471b470fc53..9106b3f81176 100644
--- a/dev-python/bitstring/Manifest
+++ b/dev-python/bitstring/Manifest
@@ -1,2 +1,3 @@
DIST bitstring-4.1.4.tar.gz 232014 BLAKE2B fad74a1a2931504b44c7d95c4e88b058c17ee189ab7b4ec6987d1284c273329b7850cd1aff8e93eb6badf7d52284db006f1f1118ee5f871694f2bd5b4b10e449 SHA512 e05d983ac340565b193c4b4d5f7f5fceea3ba68f04c348ab42cd1d783ac64e1b1adb0ce9bcaac20335137f103d51df198421c7cfee1e5c1ad9f3c9b89b77b679
DIST bitstring-4.2.1.tar.gz 249982 BLAKE2B f13212c3e4a6a516d045e5c6da3a2a943b05e5fa8f406b74d81972fc553d5032bec285766b7057bbaef5fc66aedcdb3f6efbbe72b89711dad7a451182801f419 SHA512 e54f5941b357d783e2951da8673cf38f6498d4e51949ab3200a05ce590208ca35ab7a300075013b6b2d6dfe6422cd81aa2d29b55c6a8088d9417d8c7a58f4716
+DIST bitstring-4.2.2.tar.gz 249409 BLAKE2B ff9d9eb6d789a13632f00e1a7361ad03e8c21e74f2b5b9158fab3ee336aafa884cfe90a30f56cba97f81ee9aed023a974f35571e47640c0bebc7bd2d116db2d0 SHA512 4700b45c9a56c21a09d61c464a4b2de899bb1cbdb1c5057e5c0f7c388adbda8feb260bdd56f073e53e256c39825cf7cd4b105bf9f57dd6d9d4916717941ff4bf
diff --git a/dev-python/bitstring/bitstring-4.2.2.ebuild b/dev-python/bitstring/bitstring-4.2.2.ebuild
new file mode 100644
index 000000000000..db86977653e9
--- /dev/null
+++ b/dev-python/bitstring/bitstring-4.2.2.ebuild
@@ -0,0 +1,32 @@
+# 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="A pure Python module for creation and analysis of binary data"
+HOMEPAGE="
+ https://github.com/scott-griffiths/bitstring/
+ https://pypi.org/project/bitstring/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ <dev-python/bitarray-3[${PYTHON_USEDEP}]
+ >=dev-python/bitarray-2.9.0[${PYTHON_USEDEP}]
+ >=dev-python/gfloat-0.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/black/black-24.4.2.ebuild b/dev-python/black/black-24.4.2.ebuild
index 2150f4c5d194..40cd6add0845 100644
--- a/dev-python/black/black-24.4.2.ebuild
+++ b/dev-python/black/black-24.4.2.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos"
RDEPEND="
>=dev-python/click-8.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/boltons/boltons-24.0.0.ebuild b/dev-python/boltons/boltons-24.0.0.ebuild
index 01a995431924..b4c1781b5c42 100644
--- a/dev-python/boltons/boltons-24.0.0.ebuild
+++ b/dev-python/boltons/boltons-24.0.0.ebuild
@@ -22,5 +22,13 @@ src_test() {
# tests break with pytest-qt, django, and likely more
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local EPYTEST_DESELECT=(
+ # fails with 3.13, but ignore for now given causes no
+ # issues for the only revdep (maturin's tests)
+ # https://github.com/mahmoud/boltons/issues/365
+ tests/test_funcutils_fb_py3.py::test_update_wrapper_partial\[boltons.funcutils\]
+ tests/test_tbutils.py::test_exception_info
+ )
+
distutils-r1_src_test
}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index 9b1b2eeff79d..55cad5ec0849 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -1,5 +1,3 @@
-DIST boto3-1.34.100.gh.tar.gz 806339 BLAKE2B 42c4e98711f0d17ed36bbd15ef00f5c5d8383fa18ad8ac8006644cab0f905dc3694718af7d570e255a1bfdca347c3e8de3375fc3d36d5b9ed7decd46632831fc SHA512 bfd43f323a81782cc7cd251b91786a773f5a3d890d154a9cf4353480e2e68ba64faebf3c83936d9c03b4301c9749076787ef0290b90f20381c4eefe51cae4c3d
-DIST boto3-1.34.88.gh.tar.gz 798806 BLAKE2B 2d3e02f0584e138a75acb68593bd88126641d4617c668062685406d3dc1913556bdf8b821ed3deb6cd9abae40e27a5e03fda35f5824c40a8028346868776de67 SHA512 9bbff2c0589cb2dbc5ca52f224f052c2a924117f16903c2ecad32d486a8b2d31fb9253c827c5819a5203c3ac349d1c990be24a413fab7e0b9c558e1b94ed8e9e
+DIST boto3-1.34.103.gh.tar.gz 807394 BLAKE2B da291c86a8b20bcaac5f93779899bfa5c6ce207499df393cd921f37021c1c38ed0587edd2261cee8de7ce17264670f9cda072d6748f274e6f3d9b40caa499803 SHA512 3b879f88a145ca7ea7533e4d8aa77cec351f272c59fa119622dab061fd6354f88d33709bd1621802f38f19e8378505caa94b8a6b561d16f4a2aa168828021206
DIST boto3-1.34.93.gh.tar.gz 802078 BLAKE2B 43f19efd6ae42bdb20e8dd79b1735df229ec2f231b5fe05006b26fcd5ddf4796a53fba6011c298fb919ee7b205b4ae3f4b563ad3b5325bdbbdebaeab7be59608 SHA512 4da1d9d7d8648e895f23763e5055a868d05bbfd8eb28d56e716975b3b8349bd1825d703f6fd11c316174004c39e1fca5ddcd8a4ad27a000e1a52f08a36eb4780
DIST boto3-1.34.98.gh.tar.gz 805719 BLAKE2B 5cf7f0cc415e25c8b41aa464b636b1683f4e71198569f5eac3e6e43cef7050e20e92c3fd988517fc1463601073b41b0b9c668a58bb866d03b83973c9b9cd976a SHA512 06cab81bbf73a9c37b68e0312a7c587bace700b8032e283b6782c1275804ea7c93065c4282837957b5cf3523d50fe57319a54af494262e2666f65440da9771fd
-DIST boto3-1.34.99.gh.tar.gz 805967 BLAKE2B ca7314cce15772320cdb9f6636b39b3b6483c90f6ac69d499484d307cceb2a5372b291beee13be0280d3ddf91e4e45cfb1b86677604057f1f4eb544a137248fa SHA512 d1769862b8b5e278ee511907cfa710796399ee144cbec6d92c0d8ec546e298d0b58dfacdfdf0388217388a80d7a5dc543b45a7c81a1919685d01eb00890034f7
diff --git a/dev-python/boto3/boto3-1.34.100.ebuild b/dev-python/boto3/boto3-1.34.103.ebuild
index 509842b2699d..509842b2699d 100644
--- a/dev-python/boto3/boto3-1.34.100.ebuild
+++ b/dev-python/boto3/boto3-1.34.103.ebuild
diff --git a/dev-python/boto3/boto3-1.34.88.ebuild b/dev-python/boto3/boto3-1.34.88.ebuild
deleted file mode 100644
index 1ad6d3c11774..000000000000
--- a/dev-python/boto3/boto3-1.34.88.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# 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
-
-DESCRIPTION="The AWS SDK for Python"
-HOMEPAGE="
- https://github.com/boto/boto3/
- https://pypi.org/project/boto3/
-"
-SRC_URI="
- https://github.com/boto/boto3/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
- >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
- >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}]
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # don't lock versions to narrow ranges
- sed -e '/botocore/ d' \
- -e '/jmespath/ d' \
- -e '/s3transfer/ d' \
- -i setup.py || die
-
- # do not rely on bundled deps in botocore (sic!)
- find -name '*.py' -exec sed -i \
- -e 's:from botocore[.]vendored import:import:' \
- -e 's:from botocore[.]vendored[.]:from :' \
- {} + || die
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest tests/{functional,unit}
-}
diff --git a/dev-python/boto3/boto3-1.34.93.ebuild b/dev-python/boto3/boto3-1.34.93.ebuild
index 509842b2699d..1ad6d3c11774 100644
--- a/dev-python/boto3/boto3-1.34.93.ebuild
+++ b/dev-python/boto3/boto3-1.34.93.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
RDEPEND="
>=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
diff --git a/dev-python/boto3/boto3-1.34.99.ebuild b/dev-python/boto3/boto3-1.34.99.ebuild
deleted file mode 100644
index 509842b2699d..000000000000
--- a/dev-python/boto3/boto3-1.34.99.ebuild
+++ /dev/null
@@ -1,53 +0,0 @@
-# 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
-
-DESCRIPTION="The AWS SDK for Python"
-HOMEPAGE="
- https://github.com/boto/boto3/
- https://pypi.org/project/boto3/
-"
-SRC_URI="
- https://github.com/boto/boto3/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- >=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
- >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
- >=dev-python/s3transfer-0.10.0[${PYTHON_USEDEP}]
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-python_prepare_all() {
- # don't lock versions to narrow ranges
- sed -e '/botocore/ d' \
- -e '/jmespath/ d' \
- -e '/s3transfer/ d' \
- -i setup.py || die
-
- # do not rely on bundled deps in botocore (sic!)
- find -name '*.py' -exec sed -i \
- -e 's:from botocore[.]vendored import:import:' \
- -e 's:from botocore[.]vendored[.]:from :' \
- {} + || die
-
- distutils-r1_python_prepare_all
-}
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest tests/{functional,unit}
-}
diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest
index af10cfee4e5d..202d9d642be9 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -1,5 +1,3 @@
-DIST botocore-1.34.100.gh.tar.gz 13011653 BLAKE2B a55c6de97f7223ef3bf425e9be5c8fb174bf6374b71009c05dca34c251ceeade0ff037980275f0a88f5dd853adbfa1a0e9ae3a7522d33386e4357470bf81883d SHA512 56704e4da97cd4d1f634c9b5a75e491999fda950fe79d3f27e8af1973dec50639f57d0d1251c037ef921930e3f81db5b7bbfd50bb54dbae32c7a1660d5f9fcde
-DIST botocore-1.34.88.gh.tar.gz 12931548 BLAKE2B b3cc4c44ec0fa93798e842226487f293f0206b27a1fad834ecd3d4b02319da7d6ee67fad3a3a168f6dcdf8a822cd778c742d9c975738ef3bf4d9661963a83624 SHA512 bba25daa8c93ad5454e25089c062363b97a80c1004d670be6694b898b6d7735cbb92ec816b138093c48a89fe2bf5972a6d2dcf3da2a617141a460e265e506806
+DIST botocore-1.34.103.gh.tar.gz 13018336 BLAKE2B 84cef06d1eff09fc9e7d4480bc11be16c775e6aa21c300be21735d4bbf891618861a94e7fb52735c34f4f831220411d2b307546e930e77822d8c876dd05f7780 SHA512 f66c3959c5f323117127789d0a3492d5ecfcdfa371f2fdd3339bf1feb7cf1ba67ce7015014e49530f24a440d08a9b634d2ada85c1953ed438f70e5a6cca040f0
DIST botocore-1.34.93.gh.tar.gz 12982900 BLAKE2B 3225279b85101e04da3be11f01ac3f4ca74cf77235fcb8878bc12d7aca61472155c8319329beb54ffe335f9da9023fb3ccce99256f3a31c6588389dfa1746de9 SHA512 505e8c9b3915b1c2da3863b62c85c392a58c12376c3e71493025445b7b672ba320474087b446fda876ffee5d6260909bc1d1442ff6dbfeb49fd6661d3d7840a1
DIST botocore-1.34.98.gh.tar.gz 13008491 BLAKE2B 0b5c368264cc43c162d158b383535183c0fd0065dc6c5edfd3eaaab842d0607b3cc3b99860fa8dc4ef207b5be1457fce9d143723da29e262f30ecc82c5f9ba66 SHA512 39ccb0082ecd6ed6cc7d3f7cea01d39e8d5e92224e3290a66f86ed00562a1d858f75d006af725d2b857ac891f1b366300b7e4c2d24277d942b5a9b9e2cdba431
-DIST botocore-1.34.99.gh.tar.gz 13009270 BLAKE2B e686ee31b3e35bfad2a599cd316d2a2976553472cd5d92ad2371d9d6fe370e24c0299a577572487bd5132a02d723eb22097103a15e521a7872cdb3a78fd4533c SHA512 838b60198066fa6e49204bf8d765168cdfaa39bfd32449f632e7c89a55f2e3739e4dbdc886cf03cf313d12b06d81944b5dc58aaabdf4f309c63514e2c401f116
diff --git a/dev-python/botocore/botocore-1.34.100.ebuild b/dev-python/botocore/botocore-1.34.103.ebuild
index 857224b496b7..857224b496b7 100644
--- a/dev-python/botocore/botocore-1.34.100.ebuild
+++ b/dev-python/botocore/botocore-1.34.103.ebuild
diff --git a/dev-python/botocore/botocore-1.34.88.ebuild b/dev-python/botocore/botocore-1.34.88.ebuild
deleted file mode 100644
index beb1bdc6a919..000000000000
--- a/dev-python/botocore/botocore-1.34.88.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# 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
-
-DESCRIPTION="Low-level, data-driven core of boto 3"
-HOMEPAGE="
- https://github.com/boto/botocore/
- https://pypi.org/project/botocore/
-"
-SRC_URI="
- https://github.com/boto/botocore/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- <dev-python/jmespath-2[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
-"
-# unbundled packages
-RDEPEND+="
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/jsonschema[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-src_prepare() {
- # unpin deps
- sed -i -e "s:>=.*':':" setup.py || die
-
- # unbundle deps
- rm -r botocore/vendored || die
- find -name '*.py' -exec sed -i \
- -e 's:from botocore[.]vendored import:import:' \
- -e 's:from botocore[.]vendored[.]:from :' \
- {} + || die
-
- distutils-r1_src_prepare
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # rely on bundled six
- tests/functional/test_six_imports.py::test_no_bare_six_imports
- tests/functional/test_six_threading.py::test_six_thread_safety
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest tests/{functional,unit}
-}
diff --git a/dev-python/botocore/botocore-1.34.93.ebuild b/dev-python/botocore/botocore-1.34.93.ebuild
index 857224b496b7..beb1bdc6a919 100644
--- a/dev-python/botocore/botocore-1.34.93.ebuild
+++ b/dev-python/botocore/botocore-1.34.93.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
+KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86 ~amd64-linux ~x86-linux"
RDEPEND="
<dev-python/jmespath-2[${PYTHON_USEDEP}]
diff --git a/dev-python/botocore/botocore-1.34.99.ebuild b/dev-python/botocore/botocore-1.34.99.ebuild
deleted file mode 100644
index 857224b496b7..000000000000
--- a/dev-python/botocore/botocore-1.34.99.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# 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
-
-DESCRIPTION="Low-level, data-driven core of boto 3"
-HOMEPAGE="
- https://github.com/boto/botocore/
- https://pypi.org/project/botocore/
-"
-SRC_URI="
- https://github.com/boto/botocore/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
-
-RDEPEND="
- <dev-python/jmespath-2[${PYTHON_USEDEP}]
- dev-python/python-dateutil[${PYTHON_USEDEP}]
- >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
-"
-# unbundled packages
-RDEPEND+="
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- dev-python/jsonschema[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_XDIST=1
-distutils_enable_tests pytest
-
-src_prepare() {
- # unpin deps
- sed -i -e "s:>=.*':':" setup.py || die
-
- # unbundle deps
- rm -r botocore/vendored || die
- find -name '*.py' -exec sed -i \
- -e 's:from botocore[.]vendored import:import:' \
- -e 's:from botocore[.]vendored[.]:from :' \
- {} + || die
-
- distutils-r1_src_prepare
-}
-
-python_test() {
- local EPYTEST_DESELECT=(
- # rely on bundled six
- tests/functional/test_six_imports.py::test_no_bare_six_imports
- tests/functional/test_six_threading.py::test_six_thread_safety
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest tests/{functional,unit}
-}
diff --git a/dev-python/brotlicffi/brotlicffi-1.1.0.0.ebuild b/dev-python/brotlicffi/brotlicffi-1.1.0.0.ebuild
index 280db858c28b..8d344d1f03ee 100644
--- a/dev-python/brotlicffi/brotlicffi-1.1.0.0.ebuild
+++ b/dev-python/brotlicffi/brotlicffi-1.1.0.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
# please keep this ebuild at EAPI 8 -- sys-apps/portage dep
diff --git a/dev-python/cffi/Manifest b/dev-python/cffi/Manifest
index de8f69ee1c67..1e242988b7d2 100644
--- a/dev-python/cffi/Manifest
+++ b/dev-python/cffi/Manifest
@@ -1 +1,2 @@
DIST cffi-1.16.0.tar.gz 512873 BLAKE2B 9e8d107b3124a072e559c4a536b54a172e90f9fe51d8184dacc2914a8ffa84f2682eee9c90401325dfb0f36f3f8ea0456afc93e2b85a4fef5f07ae4475e0a76b SHA512 fd2588115092202aa9289c9d4e0a0b3e264b5e9ec1dc192950f31aeb412fd9f9d4e5c96a3f9c6762987b58ccc1e229f2012ddda89211797104df672d8ed51152
+DIST cffi-d7f750b1b1c5ea4da5aa537b9baba0e01b0ce843.gh.tar.gz 523050 BLAKE2B 498085e9bc497eb1abf2d2e26e2cdb9d7544509b2c1686b306930c2da8a39a5ef133b77302761b44d5231c5255ef30cbd22579c79921dc2dc71e723ff5624939 SHA512 a0d1eb7bf8df12331d3493d86894ba062f7a15f4e7421863d44e264d4ca40ef864c7574d42cb7a4f2ea44ab80242942d6f4c8772c64b8dd0789aeb9f1908fc89
diff --git a/dev-python/cffi/cffi-1.17.0_pre20240424.ebuild b/dev-python/cffi/cffi-1.17.0_pre20240424.ebuild
new file mode 100644
index 000000000000..4db7eecae3d7
--- /dev/null
+++ b/dev-python/cffi/cffi-1.17.0_pre20240424.ebuild
@@ -0,0 +1,79 @@
+# Copyright 1999-2024 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_EXT=1
+DISTUTILS_USE_PEP517=setuptools
+# DO NOT ADD pypy to PYTHON_COMPAT
+# pypy bundles a modified version of cffi. Use python_gen_cond_dep instead.
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 toolchain-funcs
+
+EGIT_COMMIT=d7f750b1b1c5ea4da5aa537b9baba0e01b0ce843
+MY_P=${PN}-${EGIT_COMMIT}
+
+DESCRIPTION="Foreign Function Interface for Python calling C code"
+HOMEPAGE="
+ https://cffi.readthedocs.io/
+ https://pypi.org/project/cffi/
+"
+SRC_URI="
+ https://github.com/python-cffi/cffi/archive/${EGIT_COMMIT}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+
+# Needs recent libffi for HPPA fixes
+DEPEND="
+ >=dev-libs/libffi-3.4.4-r1:=
+"
+# setuptools as a modern distutils provider
+RDEPEND="
+ ${DEPEND}
+ dev-python/pycparser[${PYTHON_USEDEP}]
+ dev-python/setuptools[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+ test? (
+ dev-python/py[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx doc/source
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}"/cffi-1.14.0-darwin-no-brew.patch
+)
+
+src_prepare() {
+ if [[ ${CHOST} == *darwin* ]] ; then
+ # Don't obsessively try to find libffi
+ sed -i -e "s/.*\-iwithsysroot\/usr\/include\/ffi.*/\tpass/" setup.py || die
+ fi
+ distutils-r1_src_prepare
+}
+
+src_configure() {
+ tc-export PKG_CONFIG
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # these tests call pip
+ testing/cffi0/test_zintegration.py
+ )
+
+ "${EPYTHON}" -c "import _cffi_backend as backend" || die
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest src/c testing
+}
diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest
index fe642e92bffc..d5283f7f1774 100644
--- a/dev-python/cfn-lint/Manifest
+++ b/dev-python/cfn-lint/Manifest
@@ -1,2 +1,3 @@
DIST cfn_lint-0.86.4.tar.gz 3911739 BLAKE2B ea2d58abb78b466371b5a65cda2f5fd06f31eb16eece4d5bb3741f166e0bfb54d35c5d6605f5d9b333876fa1a85916f0aaecab5f0b0bd6b29841a2b5e813ed09 SHA512 71b50058ccdbcccedc92b70ca1af4c5163feb26415a97afad6e39761645423259b4dcdb6a24b517ba494e7474b31909d44399461c6d19834791d5057b14ef886
DIST cfn_lint-0.87.1.tar.gz 3997592 BLAKE2B 058de8badb0b37bda16e5239a2d9aa3727804bc9bd1b308cf9225c4b650eb6d0ad184025eee9e32ac9909db429641a8c928695be9c1a0cf587cffbf4f50dcba2 SHA512 3143d23738de9435c63b1f7f6f8abcea9fa235e45c885f15869a18a67089421094f77b5f4dd472f354f2901595bf1d0c2ef66f5605ff5ebc1ebbdbdca181d6bf
+DIST cfn_lint-0.87.2.tar.gz 3963369 BLAKE2B e1238db45fa2856ed1becdbaeccd2bd7aab3c0c3f54e3bd13cdad27d20c0c9e0c85a232121f63b152554f95066cf24119b9e2c02d0402d673ed5d7eefc8565ed SHA512 b0503138d7ca939003b472ce0e35ae0f0c3aa9550cc889e28a709856051d059c619c2ac5d47735ce0702cb975949d6ea64aff6c2b5168738ccf8afbcf950801d
diff --git a/dev-python/cfn-lint/cfn-lint-0.87.2.ebuild b/dev-python/cfn-lint/cfn-lint-0.87.2.ebuild
new file mode 100644
index 000000000000..f30308d1d800
--- /dev/null
+++ b/dev-python/cfn-lint/cfn-lint-0.87.2.ebuild
@@ -0,0 +1,64 @@
+# 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 ~arm ~arm64 ~riscv ~x86"
+
+RDEPEND="
+ >=dev-python/aws-sam-translator-1.87.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/requests-2.15.0[${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}]
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin the deps
+ sed -e 's:~=[0-9.]*::' -i setup.py || 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
+ )
+
+ # from tox.ini
+ local -x AWS_DEFAULT_REGION=us-east-1
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/chardet/chardet-5.2.0.ebuild b/dev-python/chardet/chardet-5.2.0.ebuild
index d15bb074f2f6..10f6dc04c9c1 100644
--- a/dev-python/chardet/chardet-5.2.0.ebuild
+++ b/dev-python/chardet/chardet-5.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/clang-python/Manifest b/dev-python/clang-python/Manifest
index 1eab4b42dc8e..84158a6c4973 100644
--- a/dev-python/clang-python/Manifest
+++ b/dev-python/clang-python/Manifest
@@ -10,3 +10,4 @@ DIST llvm-project-18.1.5.src.tar.xz 132061072 BLAKE2B bfdd987d5992a4d94ae8b14792
DIST llvm-project-18.1.5.src.tar.xz.sig 566 BLAKE2B ad935db71ec3b9fc885d696af440764a71fe7cafc5b3ca0b25a2963100d9cb3790392daebcac1341716c95a8da3c6243f5a8667fea1ed18b93fc8baa495414c9 SHA512 3cbca1059d940f3bd7bd72d68f2828039b66304980cc5f43769649e5494fc7d71117bf8aba5cc7f7a2ffca52f60ba30fadf3b28f984fd49ddb14300e30b45237
DIST llvm-project-338561657685c1831a53563b1bc36ffc7470239e.tar.gz 209715501 BLAKE2B 49152479d4f2cae430e783784d0cfcc129134f5cc0bf12c72701cd15e59cb3e1be2f61385ba9baa93d1d1193e89374ac8877b909650c163b681d1fcd26732cdc SHA512 d34bbe82e85c5b9d493029ad7b46e802f06f7e7a8a48515d0043c58c3251271f8f3e1e11c47eb91bd3db2477f819d33b43ddebb276eb9601c5ad141e463c9682
DIST llvm-project-76aa042dde6ba9ba57c680950f5818259ee02690.tar.gz 210235525 BLAKE2B fbbb8e70e0a08bde1fa2277746f692399fa15015b69693f5e8d3297abf02dfb7b36c535880f5c6924c870652dd3106936776d57c34b22234a5419f75b3561bb7 SHA512 9107551ceb2b28aa735006144b3344801ea861d7b49eae4881831af507314fb8da2bf5e8a3a407aeebd2eee01fbfad2ca90269d2331fe43cca5c2cc49dd257b7
+DIST llvm-project-a7ee81e8279e0bf6e05617a4a638e5f2f8e45022.tar.gz 210384692 BLAKE2B 28b85b08a42c173e1c3bf530483112b1629c7e6684a83a016fbe9f132774f7b864d793581873a6529defeabb4479ad9a3d7c025b781b2fa4952c239b6d567b11 SHA512 1d593818347452f96611a62fa3aa22ce4355a4ee5d5dcfcb54a286a1aa980e9531d5fb6cbee3b0ee5943c6d0f4e2ba2245e13262fe7859e5b114f9c5d5cf1417
diff --git a/dev-python/clang-python/clang-python-19.0.0_pre20240509.ebuild b/dev-python/clang-python/clang-python-19.0.0_pre20240509.ebuild
new file mode 100644
index 000000000000..82c18f7c0f95
--- /dev/null
+++ b/dev-python/clang-python/clang-python-19.0.0_pre20240509.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+inherit llvm.org python-r1
+
+DESCRIPTION="Python bindings for sys-devel/clang"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# The module is opening libclang.so directly, and doing some blasphemy
+# on top of it.
+DEPEND="
+ >=sys-devel/clang-${PV}:*
+ !sys-devel/llvm:0[clang(-),python(-)]
+ !sys-devel/clang:0[python(-)]
+"
+RDEPEND="
+ ${DEPEND}
+ ${PYTHON_DEPS}
+"
+BDEPEND="
+ ${PYTHON_DEPS}
+ test? (
+ sys-devel/clang:${LLVM_MAJOR}
+ )
+"
+
+LLVM_COMPONENTS=( clang/bindings/python )
+llvm.org_set_globals
+
+python_test() {
+ # tests rely on results from a specific clang version, so override
+ # the search path
+ local -x CLANG_LIBRARY_PATH=${BROOT}/usr/lib/llvm/${LLVM_MAJOR}/$(get_libdir)
+ local -x CLANG_NO_DEFAULT_CONFIG=1
+ "${EPYTHON}" -m unittest discover -v || die "Tests fail with ${EPYTHON}"
+}
+
+src_test() {
+ python_foreach_impl python_test
+}
+
+src_install() {
+ python_foreach_impl python_domodule clang
+}
diff --git a/dev-python/click/click-8.1.7.ebuild b/dev-python/click/click-8.1.7.ebuild
index 7ef783abf0a0..d2d08f1fad29 100644
--- a/dev-python/click/click-8.1.7.ebuild
+++ b/dev-python/click/click-8.1.7.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/colorama/colorama-0.4.6.ebuild b/dev-python/colorama/colorama-0.4.6.ebuild
index 903ca3ffe9f6..bb6616d8a904 100644
--- a/dev-python/colorama/colorama-0.4.6.ebuild
+++ b/dev-python/colorama/colorama-0.4.6.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/configupdater/configupdater-3.2.ebuild b/dev-python/configupdater/configupdater-3.2.ebuild
index cec4997896d3..a92429c93264 100644
--- a/dev-python/configupdater/configupdater-3.2.ebuild
+++ b/dev-python/configupdater/configupdater-3.2.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/cssselect/cssselect-1.2.0.ebuild b/dev-python/cssselect/cssselect-1.2.0.ebuild
index daab597190bf..ff283e4b0b11 100644
--- a/dev-python/cssselect/cssselect-1.2.0.ebuild
+++ b/dev-python/cssselect/cssselect-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/decorator/decorator-5.1.1-r1.ebuild b/dev-python/decorator/decorator-5.1.1-r1.ebuild
index a5c167922e48..02047c72841b 100644
--- a/dev-python/decorator/decorator-5.1.1-r1.ebuild
+++ b/dev-python/decorator/decorator-5.1.1-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/defusedxml/Manifest b/dev-python/defusedxml/Manifest
index 22b9f00fa8b8..5ad9bba1c92c 100644
--- a/dev-python/defusedxml/Manifest
+++ b/dev-python/defusedxml/Manifest
@@ -1 +1,2 @@
DIST defusedxml-0.7.1.gh.tar.gz 34709 BLAKE2B cfe69851e0ac6472cb9e66d1b577831eec37b0a01129dcb43cec151aa939029efc194220f3c7b481d306a77db710a639bdd56f3fd1f7ae46fa4ab8f308b8036f SHA512 4f536794b814291520c7db27765014c57f415554cff569cddab596b33e1aa03799aae9448fdaf07417d1a9f4d8782aa827d1b68aac6881ffe5c2ca9b8a40d864
+DIST defusedxml-0.8.0rc2.gh.tar.gz 37727 BLAKE2B 4a9313c4fe171998b84e22cf1cd2e5781cea6d37ea2436c5450fe4d003c915d3c945c8385b172fc102b601abb4612a217265bdd293f5d20ece2896194e37366a SHA512 d0cdaebf459a203c09c679169eeadc076a92b913558924cc6d3d693fe5732cefd5a6d15c4d2cbcdd7710936063a96e6dca467d0a82165194abeb7111d910daee
diff --git a/dev-python/defusedxml/defusedxml-0.8.0_rc2.ebuild b/dev-python/defusedxml/defusedxml-0.8.0_rc2.ebuild
new file mode 100644
index 000000000000..1e73e7471568
--- /dev/null
+++ b/dev-python/defusedxml/defusedxml-0.8.0_rc2.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="xml(+)"
+
+inherit distutils-r1
+
+MY_P=${P/_/}
+DESCRIPTION="XML bomb protection for Python stdlib modules, an xml serialiser"
+HOMEPAGE="
+ https://github.com/tiran/defusedxml/
+ https://pypi.org/project/defusedxml/
+"
+SRC_URI="
+ https://github.com/tiran/defusedxml/archive/v${PV/_/}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="PSF-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="examples"
+
+src_prepare() {
+ distutils-r1_src_prepare
+ sed -i -e 's:verbosity=1:verbosity=2:' tests.py || die
+ mv other examples || die
+}
+
+python_test() {
+ "${EPYTHON}" tests.py -v || die
+}
+
+python_install_all() {
+ use examples && dodoc -r examples/
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/distlib/distlib-0.3.8.ebuild b/dev-python/distlib/distlib-0.3.8.ebuild
index 561ebc1ef36e..0002488b1efa 100644
--- a/dev-python/distlib/distlib-0.3.8.ebuild
+++ b/dev-python/distlib/distlib-0.3.8.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2023 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -34,6 +34,8 @@ src_prepare() {
local PATCHES=(
# use system pypiserver instead of bundled one
"${FILESDIR}"/distlib-0.3.2-system-pypiserver.py
+ # https://github.com/pypa/distlib/commit/1c08845b05d022692252ed45cb07e9cb9647caac
+ "${FILESDIR}"/${P}-py313.patch
)
# make sure it's not used
diff --git a/dev-python/distlib/files/distlib-0.3.8-py313.patch b/dev-python/distlib/files/distlib-0.3.8-py313.patch
new file mode 100644
index 000000000000..d47be4f566bd
--- /dev/null
+++ b/dev-python/distlib/files/distlib-0.3.8-py313.patch
@@ -0,0 +1,22 @@
+From 1c08845b05d022692252ed45cb07e9cb9647caac Mon Sep 17 00:00:00 2001
+From: Vinay Sajip <vinay_sajip@yahoo.co.uk>
+Date: Wed, 14 Feb 2024 14:46:14 +0000
+Subject: [PATCH] Fix #214: Update representation of interpreter in test.
+
+---
+ tests/test_scripts.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/test_scripts.py b/tests/test_scripts.py
+index 5c38687..74ee647 100644
+--- a/tests/test_scripts.py
++++ b/tests/test_scripts.py
+@@ -340,7 +340,7 @@ def test_script_run(self):
+ self.assertIn(b'<H3>Current Working Directory:</H3>', stdout)
+ self.assertIn(os.getcwd().encode('utf-8'), stdout)
+ else:
+- self.assertIn(b'[Interpreter(id=0, isolated=None)]', stderr)
++ self.assertIn(b'[Interpreter(0)]', stderr)
+ self.assertEqual(p.returncode, 1)
+
+ @unittest.skipUnless(os.name == 'posix', 'Test only valid for POSIX')
diff --git a/dev-python/docutils/Manifest b/dev-python/docutils/Manifest
index 79539f23b096..c80b3785c864 100644
--- a/dev-python/docutils/Manifest
+++ b/dev-python/docutils/Manifest
@@ -1,4 +1,2 @@
-DIST docutils-0.19.tar.gz 2056383 BLAKE2B 9983a905642de4e81ca118578671b503ddfda4bef1afcc0524de40543e1f9617fd8d768ef467da49d2f01076683400bad6a0fe15f6b5a3a1e202c42b2e34ab1b SHA512 fb904a899f2b6f3c07c5079577bd7c52a3182cb85f6a4149391e523498df15bfa317f0c04095b890beeb3f89c2b444875a2a609d880ac4d7fbc3125e46b37ea5
DIST docutils-0.20.1.tar.gz 2058365 BLAKE2B 73fb8302599ffe57b0840c898b0b2e3ccd39ff9ea6eec2b5d345d02c950e1a8357bd821e62733b0484e82bc30e71d30fab381390b0edaef4375b02bcd9eeeb40 SHA512 a0ddca315d03677003036d6a8052ac96fbd3fcc4508564938ea684d79bedb4d322d83449c7b26e55b19b0aadd6e46ca9ac409bb16279a20f06c70e9c15ef5eb0
-DIST docutils-0.21.1.tar.gz 2201080 BLAKE2B a89792a69a7faa0eda7b2470e5e3a3d3cf8250a3577553a8f8f8d3d86d2693394e97dca6c75c1b4815748d2ce126ccd3f71dead5763ec8b70aee7be183165473 SHA512 2816fe074b12d7f15fb6730339f3af5f459f50af0cd2a4922194887f48bfd9931c2f2054a17a5418585b586502b96e05ed18600d31c523084537dc72707ab0ee
DIST docutils-0.21.2.tar.gz 2204444 BLAKE2B 727c2f97fc5835a0ffa62e38ea85af366cd89ad1eaec0b8af8b1f3b12e6cddfddb65161ba34f9109952d37ba2cf8985f3c3b6905ebb2ac1c9a984cce3fb4d170 SHA512 7fafa331f5687448e80d299c20cdccc4b49819fa471b5f586bf0ab18c694ba43a70f58e7c76b0a70a16267585548389214e11a4998ad7fdc19a27f0f7644539c
diff --git a/dev-python/docutils/docutils-0.19.ebuild b/dev-python/docutils/docutils-0.19.ebuild
deleted file mode 100644
index b66278acd85c..000000000000
--- a/dev-python/docutils/docutils-0.19.ebuild
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Python Documentation Utilities (reference reStructuredText impl.)"
-HOMEPAGE="
- https://docutils.sourceforge.io/
- https://pypi.org/project/docutils/
-"
-
-LICENSE="BSD-2 GPL-3 public-domain"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-
-RDEPEND="
- dev-python/pygments[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.19-pygments-2.14.patch
-)
-
-python_compile_all() {
- # Generate html docs from reStructured text sources.
-
- # Place html4css1.css in base directory to ensure that the generated reference to it is correct.
- cp docutils/writers/html4css1/html4css1.css . || die
-
- cd tools || die
- "${EPYTHON}" buildhtml.py --input-encoding=utf-8 \
- --stylesheet-path=../html4css1.css, --traceback ../docs || die
-}
-
-src_test() {
- cd test || die
- distutils-r1_src_test
-}
-
-python_test() {
- "${EPYTHON}" alltests.py -v || die "Testing failed with ${EPYTHON}"
-}
-
-python_install() {
- distutils-r1_python_install
-
- # Install tools.
- python_doscript tools/{buildhtml,quicktest}.py
-}
-
-install_txt_doc() {
- local doc="${1}"
- local dir="txt/$(dirname ${doc})"
- docinto "${dir}"
- dodoc "${doc}"
-}
-
-python_install_all() {
- local DOCS=( *.txt )
- local HTML_DOCS=( docs tools docutils/writers/html4css1/html4css1.css )
-
- distutils-r1_python_install_all
-
- local doc
- while IFS= read -r -d '' doc; do
- install_txt_doc "${doc}"
- done < <(find docs tools -name '*.txt' -print0)
-}
diff --git a/dev-python/docutils/docutils-0.21.1.ebuild b/dev-python/docutils/docutils-0.21.1.ebuild
deleted file mode 100644
index c2bb8e99c9c7..000000000000
--- a/dev-python/docutils/docutils-0.21.1.ebuild
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=flit
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1 optfeature pypi
-
-DESCRIPTION="Python Documentation Utilities (reference reStructuredText impl.)"
-HOMEPAGE="
- https://docutils.sourceforge.io/
- https://pypi.org/project/docutils/
-"
-
-# GPL-3+ only for emacs/rst.el
-LICENSE="BSD BSD-2 GPL-3+ PSF-2.4 public-domain"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-
-RDEPEND="
- dev-python/pillow[${PYTHON_USEDEP}]
- dev-python/pygments[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
-"
-
-PATCHES=(
- # minimal backport of upstream r9637, r9641
- "${FILESDIR}/${P}-test.patch"
-)
-
-python_compile_all() {
- # Generate html docs from reStructured text sources.
-
- # Place html4css1.css in base directory to ensure that the generated reference to it is correct.
- cp docutils/writers/html4css1/html4css1.css . || die
-
- cd tools || die
- "${EPYTHON}" buildhtml.py --input-encoding=utf-8 --no-datestamp \
- --stylesheet-path=../html4css1.css, --traceback ../docs || die
-}
-
-src_test() {
- cd test || die
- mkdir functional/output || die
- distutils-r1_src_test
-}
-
-python_test() {
- "${EPYTHON}" alltests.py -v || die "Testing failed with ${EPYTHON}"
-}
-
-python_install() {
- distutils-r1_python_install
-
- # Install tools.
- python_doscript tools/buildhtml.py
-}
-
-install_txt_doc() {
- local doc="${1}"
- local dir="txt/$(dirname ${doc})"
- docinto "${dir}"
- dodoc "${doc}"
-}
-
-python_install_all() {
- local DOCS=( *.txt )
- local HTML_DOCS=( docs tools docutils/writers/html4css1/html4css1.css )
-
- distutils-r1_python_install_all
-
- local doc
- while IFS= read -r -d '' doc; do
- install_txt_doc "${doc}"
- done < <(find docs tools -name '*.txt' -print0)
-}
-
-pkg_postinst() {
- optfeature \
- "auto-detecting the image dimensions when using the 'scale' option" \
- dev-python/pillow
-}
diff --git a/dev-python/docutils/docutils-0.21.2.ebuild b/dev-python/docutils/docutils-0.21.2.ebuild
index f0e241706534..9c377af8447d 100644
--- a/dev-python/docutils/docutils-0.21.2.ebuild
+++ b/dev-python/docutils/docutils-0.21.2.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
# GPL-3+ only for emacs/rst.el
LICENSE="BSD BSD-2 GPL-3+ PSF-2.4 public-domain"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
dev-python/pillow[${PYTHON_USEDEP}]
diff --git a/dev-python/docutils/files/docutils-0.19-pygments-2.14.patch b/dev-python/docutils/files/docutils-0.19-pygments-2.14.patch
deleted file mode 100644
index 42324aa49c4d..000000000000
--- a/dev-python/docutils/files/docutils-0.19-pygments-2.14.patch
+++ /dev/null
@@ -1,672 +0,0 @@
-https://bugs.gentoo.org/892213
-https://sourceforge.net/p/docutils/patches/201/
---- a/test/test_parsers/test_rst/test_directives/test_code.py
-+++ b/test/test_parsers/test_rst/test_directives/test_code.py
-@@ -10,14 +10,20 @@ Test the 'code' directive in parsers/rst
-
- if __name__ == '__main__':
- import __init__ # noqa: F401
-+from packaging.version import Version
- from test_parsers import DocutilsTestSupport
--from docutils.utils.code_analyzer import with_pygments
-+from docutils.utils.code_analyzer import with_pygments, pygments_version
-
-
- def suite():
- s = DocutilsTestSupport.ParserTestSuite()
- if not with_pygments:
- del(totest['code-parsing'])
-+ del(totest['code-parsing-2-14'])
-+ elif pygments_version >= Version('2.14.0'):
-+ del(totest['code-parsing'])
-+ else:
-+ del(totest['code-parsing-2-14'])
- s.generateTests(totest)
- return s
-
-@@ -170,6 +176,165 @@ totest['code-parsing'] = [
- \n\
- <inline classes="name builtin">
- print
-+ <inline classes="punctuation">
-+ (
-+ <inline classes="literal number integer">
-+ 8
-+ <inline classes="operator">
-+ /
-+ <inline classes="literal number integer">
-+ 2
-+ <inline classes="punctuation">
-+ )
-+"""],
-+["""\
-+.. code:: latex
-+ :class: testclass
-+
-+ hello \\emph{world} % emphasize
-+""",
-+"""\
-+<document source="test data">
-+ <literal_block classes="code latex testclass" xml:space="preserve">
-+ hello \n\
-+ <inline classes="keyword">
-+ \\emph
-+ <inline classes="name builtin">
-+ {
-+ world
-+ <inline classes="name builtin">
-+ }
-+ \n\
-+ <inline classes="comment">
-+ % emphasize"""],
-+["""\
-+.. code:: rst
-+ :number-lines:
-+
-+ This is a code block with text.
-+""",
-+"""\
-+<document source="test data">
-+ <literal_block classes="code rst" xml:space="preserve">
-+ <inline classes="ln">
-+ 1 \n\
-+ This is a code block with text.
-+"""],
-+["""\
-+Code not parsed but warning silenced in ParserTestCase.
-+
-+.. code:: s-lang
-+
-+ % abc.sl
-+ autoload("abc_mode", "abc");
-+""",
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Code not parsed but warning silenced in ParserTestCase.
-+ <literal_block classes="code s-lang" xml:space="preserve">
-+ % abc.sl
-+ autoload("abc_mode", "abc");
-+"""],
-+["""\
-+Place the language name in a class argument to avoid the no-lexer warning:
-+
-+.. code::
-+ :class: s-lang
-+
-+ % abc.sl
-+ autoload("abc_mode", "abc");
-+""",
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Place the language name in a class argument to avoid the no-lexer warning:
-+ <literal_block classes="code s-lang" xml:space="preserve">
-+ % abc.sl
-+ autoload("abc_mode", "abc");
-+"""],
-+]
-+
-+totest['code-parsing-2-14'] = [
-+["""\
-+.. code:: python3
-+ :class: testclass
-+
-+ print('hello world') # to stdout
-+""",
-+"""\
-+<document source="test data">
-+ <literal_block classes="code python3 testclass" xml:space="preserve">
-+ \n\
-+ <inline classes="name builtin">
-+ print
-+ <inline classes="punctuation">
-+ (
-+ <inline classes="literal string single">
-+ 'hello world'
-+ <inline classes="punctuation">
-+ )
-+ \n\
-+ <inline classes="comment single">
-+ # to stdout
-+"""],
-+["""\
-+.. code:: python3
-+ :class: testclass
-+ :name: my_function
-+ :number-lines: 7
-+
-+ def my_function():
-+ '''Test the lexer.
-+ '''
-+
-+ # and now for something completely different
-+ print(8/2)
-+""",
-+"""\
-+<document source="test data">
-+ <literal_block classes="code python3 testclass" ids="my-function" names="my_function" xml:space="preserve">
-+ <inline classes="ln">
-+ 7 \n\
-+ <inline classes="keyword">
-+ def
-+ \n\
-+ <inline classes="name function">
-+ my_function
-+ <inline classes="punctuation">
-+ ():
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 8 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="literal string doc">
-+ \'\'\'Test the lexer.
-+ <inline classes="ln">
-+ 9 \n\
-+ <inline classes="literal string doc">
-+ \'\'\'
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 10 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 11 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="comment single">
-+ # and now for something completely different
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 12 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="name builtin">
-+ print
- <inline classes="punctuation">
- (
- <inline classes="literal number integer">
---- a/test/test_parsers/test_rst/test_directives/test_code_long.py
-+++ b/test/test_parsers/test_rst/test_directives/test_code_long.py
-@@ -10,15 +10,22 @@ Test the 'code' directive in body.py wit
-
- if __name__ == '__main__':
- import __init__ # noqa: F401
-+from packaging.version import Version
- from test_parsers import DocutilsTestSupport
--from docutils.utils.code_analyzer import with_pygments
-+from docutils.utils.code_analyzer import with_pygments, pygments_version
-
-
- def suite():
- settings = {'syntax_highlight': 'long'}
- s = DocutilsTestSupport.ParserTestSuite(suite_settings=settings)
- if with_pygments:
-+ if pygments_version >= Version('2.14.0'):
-+ del(totest['code-parsing-long'])
-+ else:
-+ del(totest['code-parsing-long-2-14'])
-+
- s.generateTests(totest)
-+
- return s
-
-
-@@ -73,6 +80,94 @@ totest['code-parsing-long'] = [
- \n\
- <inline classes="name builtin">
- print
-+ <inline classes="punctuation">
-+ (
-+ <inline classes="literal number integer">
-+ 8
-+ <inline classes="operator">
-+ /
-+ <inline classes="literal number integer">
-+ 2
-+ <inline classes="punctuation">
-+ )
-+"""],
-+["""\
-+.. code:: latex
-+
-+ hello \\emph{world} % emphasize
-+""",
-+"""\
-+<document source="test data">
-+ <literal_block classes="code latex" xml:space="preserve">
-+ hello \n\
-+ <inline classes="keyword">
-+ \\emph
-+ <inline classes="name builtin">
-+ {
-+ world
-+ <inline classes="name builtin">
-+ }
-+ \n\
-+ <inline classes="comment">
-+ % emphasize"""],
-+]
-+
-+totest['code-parsing-long-2-14'] = [
-+["""\
-+.. code:: python3
-+ :number-lines: 7
-+
-+ def my_function():
-+ '''Test the lexer.
-+ '''
-+
-+ # and now for something completely different
-+ print(8/2)
-+""",
-+"""\
-+<document source="test data">
-+ <literal_block classes="code python3" xml:space="preserve">
-+ <inline classes="ln">
-+ 7 \n\
-+ <inline classes="keyword">
-+ def
-+ \n\
-+ <inline classes="name function">
-+ my_function
-+ <inline classes="punctuation">
-+ ():
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 8 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="literal string doc">
-+ \'\'\'Test the lexer.
-+ <inline classes="ln">
-+ 9 \n\
-+ <inline classes="literal string doc">
-+ \'\'\'
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 10 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 11 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="comment single">
-+ # and now for something completely different
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 12 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="name builtin">
-+ print
- <inline classes="punctuation">
- (
- <inline classes="literal number integer">
---- a/test/test_parsers/test_rst/test_directives/test_include.py
-+++ b/test/test_parsers/test_rst/test_directives/test_include.py
-@@ -10,9 +10,10 @@ Tests for misc.py "include" directive.
- import os.path
- if __name__ == '__main__':
- import __init__ # noqa: F401
-+from packaging.version import Version
- from test_parsers import DocutilsTestSupport
- from docutils import parsers
--from docutils.utils.code_analyzer import with_pygments
-+from docutils.utils.code_analyzer import with_pygments, pygments_version
-
- # optional 3rd-party markdown parser
- md_parser_name = 'recommonmark'
-@@ -27,6 +28,11 @@ def suite():
- # eventually skip optional parts:
- if not with_pygments:
- del(totest['include-code'])
-+ del(totest['include-code-2-14'])
-+ elif pygments_version >= Version('2.14.0'):
-+ del(totest['include-code'])
-+ else:
-+ del(totest['include-code-2-14'])
- if not md_parser_class:
- del(totest['include-markdown'])
- s.generateTests(totest)
-@@ -1191,6 +1197,313 @@ Including includes/include14.txt
- <inline classes="punctuation">
- ..
- \n\
-+ <inline classes="operator word">
-+ include
-+ <inline classes="punctuation">
-+ ::
-+ ../sibling/include7.txt
-+""" % reldir(include6)],
-+["""\
-+Circular inclusion
-+
-+.. include:: %s
-+""" % include15,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Circular inclusion
-+ <paragraph>
-+ File "include15.txt": example of rekursive inclusion.
-+ <paragraph>
-+ File "include16.txt": example of rekursive inclusion.
-+ <system_message level="2" line="3" source="%s" type="WARNING">
-+ <paragraph>
-+ circular inclusion in "include" directive:
-+ %s
-+ > %s
-+ > %s
-+ > test data
-+ <literal_block xml:space="preserve">
-+ .. include:: include15.txt
-+ <paragraph>
-+ No loop when clipping before the "include" directive:
-+ <paragraph>
-+ File "include15.txt": example of rekursive inclusion.
-+""" % (reldir(include16), reldir(include15),
-+ reldir(include16), reldir(include15))],
-+["""\
-+Circular inclusion with clipping.
-+
-+.. include:: %s
-+ :start-line: 2
-+""" % include16,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Circular inclusion with clipping.
-+ <paragraph>
-+ File "include15.txt": example of rekursive inclusion.
-+ <paragraph>
-+ File "include16.txt": example of rekursive inclusion.
-+ <system_message level="2" line="3" source="%s" type="WARNING">
-+ <paragraph>
-+ circular inclusion in "include" directive:
-+ %s
-+ > %s
-+ > %s
-+ > %s
-+ > test data
-+ <literal_block xml:space="preserve">
-+ .. include:: include15.txt
-+ <paragraph>
-+ No loop when clipping before the "include" directive:
-+ <paragraph>
-+ File "include15.txt": example of rekursive inclusion.
-+ <paragraph>
-+ No loop when clipping before the "include" directive:
-+ <paragraph>
-+ File "include15.txt": example of rekursive inclusion.
-+""" % (reldir(include16), reldir(include15), reldir(include16),
-+ reldir(include15), reldir(include16))],
-+["""\
-+Circular inclusion with specified parser.
-+
-+.. include:: %s
-+ :parser: rst
-+""" % include15,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Circular inclusion with specified parser.
-+ <paragraph>
-+ File "include15.txt": example of rekursive inclusion.
-+ <paragraph>
-+ File "include16.txt": example of rekursive inclusion.
-+ <system_message level="2" line="3" source="%s" type="WARNING">
-+ <paragraph>
-+ circular inclusion in "include" directive:
-+ %s
-+ > %s
-+ > %s
-+ > test data
-+ <literal_block xml:space="preserve">
-+ .. include:: include15.txt
-+ <paragraph>
-+ No loop when clipping before the "include" directive:
-+ <paragraph>
-+ File "include15.txt": example of rekursive inclusion.
-+""" % (reldir(include16), reldir(include15),
-+ reldir(include16), reldir(include15))],
-+["""\
-+No circular inclusion.
-+
-+============================= =============================
-+.. include:: data/include.txt .. include:: data/include.txt
-+============================= =============================
-+""",
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ No circular inclusion.
-+ <table>
-+ <tgroup cols="2">
-+ <colspec colwidth="29">
-+ <colspec colwidth="29">
-+ <tbody>
-+ <row>
-+ <entry>
-+ <paragraph>
-+ Some include text.
-+ <entry>
-+ <paragraph>
-+ Some include text."""],
-+]
-+
-+totest['include-code-2-14'] = [
-+["""\
-+Included code
-+
-+.. include:: %s
-+ :code: rst
-+""" % include1,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Included code
-+ <literal_block classes="code rst" source="%s" xml:space="preserve">
-+ <inline classes="generic heading">
-+ Inclusion 1
-+ \n\
-+ <inline classes="generic heading">
-+ -----------
-+ \n\
-+ <inline classes="whitespace">
-+ \n\
-+ This file is used by \n\
-+ <inline classes="literal string">
-+ ``test_include.py``
-+ .
-+""" % reldir(include1)],
-+["""\
-+Included code
-+
-+.. include:: %s
-+ :code: rst
-+ :number-lines:
-+""" % include1,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Included code
-+ <literal_block classes="code rst" source="%s" xml:space="preserve">
-+ <inline classes="ln">
-+ 1 \n\
-+ <inline classes="generic heading">
-+ Inclusion 1
-+ \n\
-+ <inline classes="ln">
-+ 2 \n\
-+ <inline classes="generic heading">
-+ -----------
-+ \n\
-+ <inline classes="ln">
-+ 3 \n\
-+ <inline classes="whitespace">
-+ \n\
-+ <inline classes="ln">
-+ 4 \n\
-+ <inline classes="whitespace">
-+ This file is used by \n\
-+ <inline classes="literal string">
-+ ``test_include.py``
-+ .
-+""" % reldir(include1)],
-+["""\
-+TAB expansion with included code:
-+
-+.. include:: %s
-+ :code: rst
-+""" % include_literal,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ TAB expansion with included code:
-+ <literal_block classes="code rst" source="%s" xml:space="preserve">
-+ Literal included this should \n\
-+ <inline classes="generic strong">
-+ **not**
-+ be \n\
-+ <inline classes="generic emph">
-+ *marked*
-+ \n\
-+ <inline classes="name variable">
-+ `up`
-+ .
-+ <inline classes="whitespace">
-+ \n\
-+ <- leading raw tab.
-+ <inline classes="whitespace">
-+ \n\
-+ \n\
-+ Newlines
-+ <inline classes="whitespace">
-+ \n\
-+ are
-+ <inline classes="whitespace">
-+ \n\
-+ normalized.
-+""" % include_literal],
-+["""\
-+Custom TAB expansion with included code:
-+
-+.. include:: %s
-+ :code: rst
-+ :tab-width: 2
-+""" % include_literal,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Custom TAB expansion with included code:
-+ <literal_block classes="code rst" source="%s" xml:space="preserve">
-+ Literal included this should \n\
-+ <inline classes="generic strong">
-+ **not**
-+ be \n\
-+ <inline classes="generic emph">
-+ *marked*
-+ \n\
-+ <inline classes="name variable">
-+ `up`
-+ .
-+ <inline classes="whitespace">
-+ \n\
-+ <- leading raw tab.
-+ <inline classes="whitespace">
-+ \n\
-+ \n\
-+ Newlines
-+ <inline classes="whitespace">
-+ \n\
-+ are
-+ <inline classes="whitespace">
-+ \n\
-+ normalized.
-+""" % include_literal],
-+["""\
-+Custom TAB expansion with included code:
-+
-+.. include:: %s
-+ :code: rst
-+ :tab-width: -1
-+""" % include_literal,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Custom TAB expansion with included code:
-+ <literal_block classes="code rst" source="%s" xml:space="preserve">
-+ Literal included this should \n\
-+ <inline classes="generic strong">
-+ **not**
-+ be \n\
-+ <inline classes="generic emph">
-+ *marked*
-+ \n\
-+ <inline classes="name variable">
-+ `up`
-+ .
-+ <inline classes="whitespace">
-+ \n\
-+ \t<- leading raw tab.
-+ <inline classes="whitespace">
-+ \n\
-+ \n\
-+ Newlines
-+ <inline classes="whitespace">
-+ \n\
-+ are
-+ <inline classes="whitespace">
-+ \n\
-+ normalized.
-+""" % include_literal],
-+["""\
-+Including includes/include14.txt
-+
-+.. include:: %s
-+""" % include14,
-+"""\
-+<document source="test data">
-+ <paragraph>
-+ Including includes/include14.txt
-+ <paragraph>
-+ Including more/include6.txt as rst-code from includes/include14.txt:
-+ <literal_block classes="code rst" source="%s" xml:space="preserve">
-+ In includes/more/include6.txt
-+ <inline classes="whitespace">
-+ \n\
-+ \n\
-+ <inline classes="punctuation">
-+ ..
-+ \n\
- <inline classes="operator word">
- include
- <inline classes="punctuation">
---- a/docutils/utils/code_analyzer.py
-+++ b/docutils/utils/code_analyzer.py
-@@ -9,11 +9,14 @@
- from docutils import ApplicationError
- try:
- import pygments
-+ from packaging.version import Version
- from pygments.lexers import get_lexer_by_name
- from pygments.formatters.html import _get_ttype_class
- with_pygments = True
-+ pygments_version = Version(pygments.__version__)
- except ImportError:
- with_pygments = False
-+ pygments_version = '0'
-
- # Filter the following token types from the list of class arguments:
- unstyled_tokens = ['token', # Token (base token type)
-
-
diff --git a/dev-python/docutils/files/docutils-0.21.1-test.patch b/dev-python/docutils/files/docutils-0.21.1-test.patch
deleted file mode 100644
index 507fd239c166..000000000000
--- a/dev-python/docutils/files/docutils-0.21.1-test.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-diff --git a/test/test_writers/test_html5_polyglot_parts.py b/test/test_writers/test_html5_polyglot_parts.py
-index fb2792ee7..cb03fea2f 100644
---- a/test/test_writers/test_html5_polyglot_parts.py
-+++ b/test/test_writers/test_html5_polyglot_parts.py
-@@ -24,11 +24,20 @@ if __name__ == '__main__':
-
- import docutils
- import docutils.core
-+from docutils.parsers.rst.directives.images import PIL
- from docutils.utils.code_analyzer import with_pygments
-
- ROOT_PREFIX = (Path(__file__).parent.parent/'functional'/'input').as_posix()
- DATA_ROOT = os.path.abspath(os.path.join(__file__, '..', '..', 'data'))
-
-+with_pygments = False
-+PIL_NOT_FOUND_PATH = 'dummy.png'
-+try:
-+ if PIL and (tuple(int(i) for i in PIL.__version__.split('.')) >= (10, 3)):
-+ PIL_NOT_FOUND_PATH = Path('dummy.png').resolve()
-+except:
-+ PIL = None
-+
-
- class Html5WriterPublishPartsTestCase(unittest.TestCase):
- """Test case for HTML writer via the publish_parts interface."""
-@@ -642,14 +651,14 @@ totest['system_messages'] = ({'stylesheet_path': '',
- .. image:: dummy.mp4
- :scale: 100%
- """,
--{'fragment': """\
-+{'fragment': f"""\
- <img alt="dummy.png" src="dummy.png" />
- <aside class="system-message">
- <p class="system-message-title">System Message: WARNING/2 \
- (<span class="docutils literal">&lt;string&gt;</span>, line 1)</p>
- <p>Cannot scale image!
- Could not get size from &quot;dummy.png&quot;:
-- [Errno 2] No such file or directory: 'dummy.png'</p>
-+ [Errno 2] No such file or directory: '{PIL_NOT_FOUND_PATH}'</p>
- </aside>
- <aside class="system-message">
- <p class="system-message-title">System Message: ERROR/3 \
diff --git a/dev-python/ephemeral-port-reserve/ephemeral-port-reserve-1.1.4.ebuild b/dev-python/ephemeral-port-reserve/ephemeral-port-reserve-1.1.4.ebuild
index d6d33cbf638d..ce77d9af2a4d 100644
--- a/dev-python/ephemeral-port-reserve/ephemeral-port-reserve-1.1.4.ebuild
+++ b/dev-python/ephemeral-port-reserve/ephemeral-port-reserve-1.1.4.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/flaky/flaky-3.8.1.ebuild b/dev-python/flaky/flaky-3.8.1.ebuild
index eab6aa524067..3e676e805a7a 100644
--- a/dev-python/flaky/flaky-3.8.1.ebuild
+++ b/dev-python/flaky/flaky-3.8.1.ebuild
@@ -26,7 +26,6 @@ RDEPEND="
BDEPEND="
test? (
dev-python/genty[${PYTHON_USEDEP}]
- dev-python/mock[${PYTHON_USEDEP}]
dev-python/pytest[${PYTHON_USEDEP}]
)
"
diff --git a/dev-python/flask-compress/Manifest b/dev-python/flask-compress/Manifest
index 0835d977d261..84ddfd07823c 100644
--- a/dev-python/flask-compress/Manifest
+++ b/dev-python/flask-compress/Manifest
@@ -1,2 +1 @@
-DIST Flask-Compress-1.14.tar.gz 13544 BLAKE2B 4a2ba809ef378aa8132a22c87acfb535946f347f41d05bf2d9d8de13d05cb0494000b8aa9ba40548236f0ec3e772159e091b41e0fe90f8d6f782a70aabd1e043 SHA512 7f30f64bddeaa06875725b6195348cdfb20d3fdd0d8a392f0fbeb209ad5a532bd222fc1c9ceadf7dcff614f2513a885724bfc165fccf162c889924e3b73bee3c
DIST flask_compress-1.15.tar.gz 13944 BLAKE2B cdad9f1590b47ce7443d14cba9143f795cf355c2c6991d62ea362744366595b85c5ec8680b448af78c293519b50985a805d275227bf68628039293f72c68c890 SHA512 746fd7fb5efa2098d1aae179823b333ca083e6bb6945400d6a5401df0799a76733a67f8b38f952c59002c07705d7a7b0c6b43fbd291a368f98a363f3121dcd1f
diff --git a/dev-python/flask-compress/flask-compress-1.14.ebuild b/dev-python/flask-compress/flask-compress-1.14.ebuild
deleted file mode 100644
index aaadb511717a..000000000000
--- a/dev-python/flask-compress/flask-compress-1.14.ebuild
+++ /dev/null
@@ -1,29 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYPI_PN="Flask-Compress"
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Compress responses in your Flask app with gzip"
-HOMEPAGE="
- https://github.com/colour-science/flask-compress/
- https://pypi.org/project/Flask-Compress/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86"
-
-# brotli on cpython, brotlicffi on pypy3
-RDEPEND="
- app-arch/brotli[python,${PYTHON_USEDEP}]
- dev-python/flask[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/flask-compress/flask-compress-1.15.ebuild b/dev-python/flask-compress/flask-compress-1.15.ebuild
index 78be129cc7fe..b371ca21e11f 100644
--- a/dev-python/flask-compress/flask-compress-1.15.ebuild
+++ b/dev-python/flask-compress/flask-compress-1.15.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 x86"
# brotli on cpython, brotlicffi on pypy3
RDEPEND="
diff --git a/dev-python/freezegun/Manifest b/dev-python/freezegun/Manifest
index 26de7f74da1e..c3803c16290a 100644
--- a/dev-python/freezegun/Manifest
+++ b/dev-python/freezegun/Manifest
@@ -1 +1,2 @@
DIST freezegun-1.5.0.tar.gz 33167 BLAKE2B 3cf05a41c4d66ded61a67385faa07ad80348ad7620db6076f1371d1707b9f6229d85bf2f87ff3533a9529f9d6c30e5f5bcdaf0a499b1e73760070ee5706936b9 SHA512 65d3c95e4992d80c104d52e1164662308aea0884e4a0bb1343f028e514519548dd295dca7dd97d06aaa57a61c0c71fae0bd040f944936858e0f72b2a08860694
+DIST freezegun-1.5.1.tar.gz 33697 BLAKE2B bb08703a7e6f6f4a2145c4dc7b10245af3ced5d1a0a9355df74acd03bfe1687ee22e54ffbbd791204a497b50d4a2c578eb531379dd9e55d274ede72785bb39fa SHA512 384122e31c1db90d4c30cc60ad6d693209c933538e4d507a45c6ff116dcfe2f5f2602116c31aae4576da876ea327d502b01f651414d41b6cb11cc6e98d2aacbc
diff --git a/dev-python/freezegun/freezegun-1.5.0.ebuild b/dev-python/freezegun/freezegun-1.5.0.ebuild
index ad2dc989c40a..1ae5999e5cb2 100644
--- a/dev-python/freezegun/freezegun-1.5.0.ebuild
+++ b/dev-python/freezegun/freezegun-1.5.0.ebuild
@@ -30,6 +30,18 @@ BDEPEND="
distutils_enable_tests pytest
python_test() {
+ local EPYTEST_DESELECT=()
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # https://github.com/spulec/freezegun/issues/547
+ tests/test_datetimes.py::TestUnitTestMethodDecorator::test_method_decorator_works_on_unittest_kwarg_frozen_time
+ tests/test_datetimes.py::TestUnitTestMethodDecorator::test_method_decorator_works_on_unittest_kwarg_frozen_time_with_func
+ tests/test_datetimes.py::TestUnitTestMethodDecorator::test_method_decorator_works_on_unittest_kwarg_hello
+ )
+ ;;
+ esac
+
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
epytest
}
diff --git a/dev-python/freezegun/freezegun-1.5.1.ebuild b/dev-python/freezegun/freezegun-1.5.1.ebuild
new file mode 100644
index 000000000000..e42b6b8d1566
--- /dev/null
+++ b/dev-python/freezegun/freezegun-1.5.1.ebuild
@@ -0,0 +1,47 @@
+# 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 pypi
+
+DESCRIPTION="Let your Python tests travel through time"
+HOMEPAGE="
+ https://github.com/spulec/freezegun/
+ https://pypi.org/project/freezegun/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+
+RDEPEND="
+ >dev-python/python-dateutil-2.7[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=()
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # https://github.com/spulec/freezegun/issues/547
+ tests/test_datetimes.py::TestUnitTestMethodDecorator::test_method_decorator_works_on_unittest_kwarg_frozen_time
+ tests/test_datetimes.py::TestUnitTestMethodDecorator::test_method_decorator_works_on_unittest_kwarg_frozen_time_with_func
+ tests/test_datetimes.py::TestUnitTestMethodDecorator::test_method_decorator_works_on_unittest_kwarg_hello
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/genty/genty-1.3.2-r3.ebuild b/dev-python/genty/genty-1.3.2-r3.ebuild
new file mode 100644
index 000000000000..2a06f2b7aba3
--- /dev/null
+++ b/dev-python/genty/genty-1.3.2-r3.ebuild
@@ -0,0 +1,30 @@
+# 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 pypi
+
+DESCRIPTION="Allows you to run a test with multiple data sets"
+HOMEPAGE="
+ https://pypi.org/project/genty/
+ https://github.com/box/genty/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+
+RDEPEND="
+ dev-python/six[${PYTHON_USEDEP}]
+"
+
+distutils_enable_tests unittest
+
+src_prepare() {
+ distutils-r1_src_prepare
+ sed -i -e 's:from mock:from unittest.mock:' test/test_genty.py || die
+}
diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest
index c4e70d73ee62..2e53e7de89e8 100644
--- a/dev-python/google-api-python-client/Manifest
+++ b/dev-python/google-api-python-client/Manifest
@@ -1,3 +1,3 @@
-DIST google-api-python-client-2.126.0.tar.gz 12163106 BLAKE2B b66240ea914b1f673bd96e161e2fdffa4567641471594b166258331c04d5f43cc1a0c6f888cafd904b0b84d3afe5befbf437c347409da6197b4f801c6a15b7a1 SHA512 e21d98106a97de4037d9eead2b2153010d75a07bc00585a8a4d0a584b3da1bd753421ef33fa635a62c850235eede880f34ed222c2b0ede13ba93e7e1558d7cf5
DIST google-api-python-client-2.127.0.tar.gz 12203690 BLAKE2B 9252bf772c1d52ffc7b658f5c53d6537073f30df4a201573db84e53ded1b4e9693fa293a28d4f00d0d345695ac90639109993afe70908bf22538a2fa5b4bb7f5 SHA512 06887845f769005a10339114bb9d274c685bfcbc37e99ba9ac055e34cf587a4d8c0a2723159b8b2f6f6a25612bc4cc8ec01b248db4fafe3f1e1e7056e4081bdc
DIST google-api-python-client-2.128.0.tar.gz 11193400 BLAKE2B c9762dc89a2dda1bdf96f6ae4b4f3540627510900cfccd6153e2399be7d835afdd1513854a9f25577e24e7555aa81b9bc0df06e8685c3f39871233655c9dc083 SHA512 9edd8c9c7b6736e98652e2abc4e482fae176e72cf5b04521b9ca2d0a86b885766a956b451d78dab038a5cfc7d7709eb2a505f03a07393decc3f3be8673400c88
+DIST google-api-python-client-2.129.0.tar.gz 11153292 BLAKE2B 0d2e909fb592d1b54721143b88f5a841bf53f9dde11fa555aa1384bc306f3648463578886069695568f4491b2d13cc4993adb7df47988fe3440f93c973764e68 SHA512 73b93847f3b2dc2ef722edc033fec6f292b16acbf81227276c34b651915854556ae58eb160baa462bf868aa988e194ed462ff235532f5ca1a35a234bb1eda8e5
diff --git a/dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild
index 63817fa5c051..e0c87f133185 100644
--- a/dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild
+++ b/dev-python/google-api-python-client/google-api-python-client-2.127.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+KEYWORDS="amd64 ~arm arm64 x86"
RDEPEND="
>=dev-python/httplib2-0.15[${PYTHON_USEDEP}]
diff --git a/dev-python/google-api-python-client/google-api-python-client-2.126.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.129.0.ebuild
index e0c87f133185..63817fa5c051 100644
--- a/dev-python/google-api-python-client/google-api-python-client-2.126.0.ebuild
+++ b/dev-python/google-api-python-client/google-api-python-client-2.129.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 ~arm arm64 x86"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
RDEPEND="
>=dev-python/httplib2-0.15[${PYTHON_USEDEP}]
diff --git a/dev-python/h11/h11-0.14.0.ebuild b/dev-python/h11/h11-0.14.0.ebuild
index 4b72d9293141..03968277c955 100644
--- a/dev-python/h11/h11-0.14.0.ebuild
+++ b/dev-python/h11/h11-0.14.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/h2/Manifest b/dev-python/h2/Manifest
index 59642403e537..0dec06e1374a 100644
--- a/dev-python/h2/Manifest
+++ b/dev-python/h2/Manifest
@@ -1 +1 @@
-DIST h2-4.1.0.tar.gz 2143812 BLAKE2B b9d9a771340b4bde1675b9fd65c242732a1a262456f84a409662cf2b57326e24e0583160ba0531c0b105b79342578714127dddb560d2a27de58af34d1052c698 SHA512 4e9cf88b3ae702a8a42bded775ad337809787fe8172d501c230d55abbf1edd764acf3b227f2e58756d882499661ffcf6bbdd4812a4d938c04fac3f1aa2390b28
+DIST h2-4.1.0.tar.gz 2145593 BLAKE2B d4494ee58b97c3fb28f3480df3ecee9d8a0b6eec7165c692a6d33664eaf4e7a78a3e97f6644ba75a6bc1b67dfc3b6d0e431b90c6fe70ce4d4f3e22259419ace7 SHA512 89553cf1343de14b681706ac254b7e714574c777c6c81c934a00edc4f8fdde26f78fb90b4aebd9feec7893f4d1b68cf30dc9a404dd048cedbbfab3145720edc5
diff --git a/dev-python/h2/h2-4.1.0-r1.ebuild b/dev-python/h2/h2-4.1.0-r1.ebuild
index fa9eae236e21..76bf8db7099e 100644
--- a/dev-python/h2/h2-4.1.0-r1.ebuild
+++ b/dev-python/h2/h2-4.1.0-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
@@ -6,7 +6,7 @@ EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-inherit distutils-r1
+inherit distutils-r1 pypi
DESCRIPTION="HTTP/2 State-Machine based protocol implementation"
HOMEPAGE="
@@ -14,7 +14,6 @@ HOMEPAGE="
https://github.com/python-hyper/h2/
https://pypi.org/project/h2/
"
-SRC_URI="https://github.com/python-hyper/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
@@ -37,17 +36,3 @@ PATCHES=(
)
distutils_enable_tests pytest
-
-python_test() {
- local EPYTEST_DESELECT=()
- if [[ ${EPYTHON} == python3.11 ]]; then
- EPYTEST_DESELECT+=(
- test/test_events.py::TestEventReprs::test_remotesettingschanged_repr
- test/test_events.py::TestEventReprs::test_streamreset_repr
- test/test_events.py::TestEventReprs::test_settingsacknowledged_repr
- test/test_events.py::TestEventReprs::test_connectionterminated_repr
- )
- fi
-
- epytest
-}
diff --git a/dev-python/hatchling/Manifest b/dev-python/hatchling/Manifest
index bf39c424d688..14b2a55a964a 100644
--- a/dev-python/hatchling/Manifest
+++ b/dev-python/hatchling/Manifest
@@ -1,3 +1 @@
-DIST hatch-hatchling-v1.22.5.gh.tar.gz 782757 BLAKE2B 3431ef7c4e5f0754e51507e29d88ed0277b530d220eb75bdeab459d88172ba51de3cf2456074fa88483cc89e72726f3e147b97e995f9ccaf699b6c2699776a8c SHA512 d4e77872e34e3aba3fce286f911861b795005c37550a2ca72a83216cea67d53be891afc8861b11582c66d38748f9c8d4980548d216c0fb21b2b4e1cadc314e58
-DIST hatch-hatchling-v1.23.0.gh.tar.gz 802345 BLAKE2B 571ae18bda737acf05bd830c4d835b2c785a595844cefbed030383e9ede166b0cd8bba2d7a6e0a4c7b504be825fbca4fa89861e9ae265e9a24bc756025da8d07 SHA512 ed504577d856e42b46ab861972cfb1c47589ae85887c2fc0aa78ded7a2f1cc8eaef796b9331d4ff853a86b6d808080b15d11943775c600c5d10b191ae65cb400
DIST hatch-hatchling-v1.24.2.gh.tar.gz 1054297 BLAKE2B b2da7dc3f3d58998b57d6ee625a2b7e890afc078c0d8f6cb9c332480df561090bb8bc255e3e60d5d25fa55001869429f822014891fe1cec0098b61fbe02efe52 SHA512 e83f57089707a267685c9cac7f29cd5862adec62f6346097aa62bd5b3b9f7222621b2ea71004dd52f62798dab71bcf05c33a2c43dbe39d1bbc5f4a4f99f28c40
diff --git a/dev-python/hatchling/hatchling-1.22.5-r1.ebuild b/dev-python/hatchling/hatchling-1.22.5-r1.ebuild
deleted file mode 100644
index 0d282d75b2af..000000000000
--- a/dev-python/hatchling/hatchling-1.22.5-r1.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=standalone
-PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
-
-inherit distutils-r1
-
-TAG=${P/-/-v}
-MY_P=hatch-${TAG}
-DESCRIPTION="Modern, extensible Python build backend"
-HOMEPAGE="
- https://pypi.org/project/hatchling/
- https://github.com/pypa/hatch/
-"
-SRC_URI="
- https://github.com/pypa/hatch/archive/${TAG}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}/backend
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-
-# deps are listed in backend/src/hatchling/ouroboros.py
-# editables are optional but required for editable installs
-RDEPEND="
- >=dev-python/editables-0.3[${PYTHON_USEDEP}]
- >=dev-python/packaging-21.3[${PYTHON_USEDEP}]
- >=dev-python/pathspec-0.10.1[${PYTHON_USEDEP}]
- >=dev-python/pluggy-1.0.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
- ' 3.10)
-"
-# always depend on the newest version available, at least until upstream
-# stops treating unknown classifiers as a fatal error
-# https://github.com/pypa/hatch/issues/1368
-RDEPEND+="
- >=dev-python/trove-classifiers-2024.3.25[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
- test? (
- $(python_gen_cond_dep '
- dev-python/atomicwrites[${PYTHON_USEDEP}]
- dev-python/click[${PYTHON_USEDEP}]
- dev-python/httpx[${PYTHON_USEDEP}]
- dev-python/platformdirs[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/rich[${PYTHON_USEDEP}]
- dev-python/tomli-w[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- ' "${PYTHON_TESTED[@]}")
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Skipping tests on ${EPYTHON}"
- return
- fi
-
- local -x EPYTEST_DESELECT=(
- # these run pip to install stuff
- tests/backend/dep/test_core.py::test_dependency_found
- tests/backend/dep/test_core.py::test_extra_met
- tests/backend/dep/test_core.py::test_extra_no_dependencies
- tests/backend/dep/test_core.py::test_extra_unmet
- tests/backend/dep/test_core.py::test_unknown_extra
- tests/backend/dep/test_core.py::test_version_unmet
- # broken if CARGO is set
- tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo
- )
-
- # top-level "tests" directory contains tests both for hatch
- # and hatchling
- cd "${WORKDIR}/${MY_P}" || die
- local -x PYTHONPATH="src:${PYTHONPATH}"
- # sigh; standalone test suites are overrated, right?
- echo "__version__ = '${PV}'" > src/hatch/_version.py || die
- # tests mock cargo subprocess call but the backend raises if CARGO
- # is not set and shutil.which() can't find it
- local -x CARGO=cargo
- epytest tests/backend
-}
diff --git a/dev-python/hatchling/hatchling-1.23.0.ebuild b/dev-python/hatchling/hatchling-1.23.0.ebuild
deleted file mode 100644
index bcffd69fd58f..000000000000
--- a/dev-python/hatchling/hatchling-1.23.0.ebuild
+++ /dev/null
@@ -1,92 +0,0 @@
-# Copyright 2022-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=standalone
-PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
-
-inherit distutils-r1
-
-TAG=${P/-/-v}
-MY_P=hatch-${TAG}
-DESCRIPTION="Modern, extensible Python build backend"
-HOMEPAGE="
- https://pypi.org/project/hatchling/
- https://github.com/pypa/hatch/
-"
-SRC_URI="
- https://github.com/pypa/hatch/archive/${TAG}.tar.gz
- -> ${MY_P}.gh.tar.gz
-"
-S=${WORKDIR}/${MY_P}/backend
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-
-# deps are listed in backend/src/hatchling/ouroboros.py
-# editables are optional but required for editable installs
-RDEPEND="
- >=dev-python/editables-0.3[${PYTHON_USEDEP}]
- >=dev-python/packaging-23.2[${PYTHON_USEDEP}]
- >=dev-python/pathspec-0.10.1[${PYTHON_USEDEP}]
- >=dev-python/pluggy-1.0.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
- ' 3.10)
-"
-# always depend on the newest version available, at least until upstream
-# stops treating unknown classifiers as a fatal error
-# https://github.com/pypa/hatch/issues/1368
-RDEPEND+="
- >=dev-python/trove-classifiers-2024.3.25[${PYTHON_USEDEP}]
-"
-BDEPEND="
- ${RDEPEND}
- test? (
- $(python_gen_cond_dep '
- dev-python/atomicwrites[${PYTHON_USEDEP}]
- dev-python/click[${PYTHON_USEDEP}]
- dev-python/httpx[${PYTHON_USEDEP}]
- dev-python/platformdirs[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/rich[${PYTHON_USEDEP}]
- dev-python/tomli-w[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- ' "${PYTHON_TESTED[@]}")
- )
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Skipping tests on ${EPYTHON}"
- return
- fi
-
- local -x EPYTEST_DESELECT=(
- # these run pip to install stuff
- tests/backend/dep/test_core.py::test_dependency_found
- tests/backend/dep/test_core.py::test_extra_met
- tests/backend/dep/test_core.py::test_extra_no_dependencies
- tests/backend/dep/test_core.py::test_extra_unmet
- tests/backend/dep/test_core.py::test_unknown_extra
- tests/backend/dep/test_core.py::test_version_unmet
- # broken if CARGO is set
- tests/backend/builders/test_binary.py::TestBuildBootstrap::test_no_cargo
- )
-
- # top-level "tests" directory contains tests both for hatch
- # and hatchling
- cd "${WORKDIR}/${MY_P}" || die
- local -x PYTHONPATH="src:${PYTHONPATH}"
- # sigh; standalone test suites are overrated, right?
- echo "__version__ = '${PV}'" > src/hatch/_version.py || die
- # tests mock cargo subprocess call but the backend raises if CARGO
- # is not set and shutil.which() can't find it
- local -x CARGO=cargo
- epytest tests/backend
-}
diff --git a/dev-python/hatchling/hatchling-1.24.2.ebuild b/dev-python/hatchling/hatchling-1.24.2.ebuild
index 20e357d01e84..557ec8cf2caf 100644
--- a/dev-python/hatchling/hatchling-1.24.2.ebuild
+++ b/dev-python/hatchling/hatchling-1.24.2.ebuild
@@ -24,7 +24,7 @@ S=${WORKDIR}/${MY_P}/backend
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
# deps are listed in backend/src/hatchling/ouroboros.py
# editables are optional but required for editable installs
diff --git a/dev-python/hpack/Manifest b/dev-python/hpack/Manifest
index 854dd72c0ae9..6b5558390e71 100644
--- a/dev-python/hpack/Manifest
+++ b/dev-python/hpack/Manifest
@@ -1 +1 @@
-DIST hpack-4.0.0.tar.gz 5301419 BLAKE2B 0164f6aafc0d1f17f6c397efe710503a22501faae3c7dbba4e57ca2dc76e4d373bc5e65bf55acda8bc61975d12f8a2084de0e0c4587539e5a3102e3cf66d562b SHA512 f482d086d7a82649393e3cfea55c98966ce57055cb1826bc4dec1ea334661c02708e7903f2e8e588ee1c30df41373e1de9fb960c2e7bbc18d0ace0b8f97b195b
+DIST hpack-4.0.0.gh.tar.gz 5301419 BLAKE2B 0164f6aafc0d1f17f6c397efe710503a22501faae3c7dbba4e57ca2dc76e4d373bc5e65bf55acda8bc61975d12f8a2084de0e0c4587539e5a3102e3cf66d562b SHA512 f482d086d7a82649393e3cfea55c98966ce57055cb1826bc4dec1ea334661c02708e7903f2e8e588ee1c30df41373e1de9fb960c2e7bbc18d0ace0b8f97b195b
diff --git a/dev-python/hpack/hpack-4.0.0-r1.ebuild b/dev-python/hpack/hpack-4.0.0-r1.ebuild
index 4bdb1750570f..c37a5e872fbe 100644
--- a/dev-python/hpack/hpack-4.0.0-r1.ebuild
+++ b/dev-python/hpack/hpack-4.0.0-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
@@ -14,7 +14,11 @@ HOMEPAGE="
https://github.com/python-hyper/hpack/
https://pypi.org/project/hpack/
"
-SRC_URI="https://github.com/python-hyper/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+# PyPI sdist is missing test fixtures, as of 4.0.0
+SRC_URI="
+ https://github.com/python-hyper/hpack/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
LICENSE="MIT"
SLOT="0"
diff --git a/dev-python/html5lib/html5lib-1.1-r2.ebuild b/dev-python/html5lib/html5lib-1.1-r2.ebuild
new file mode 100644
index 000000000000..b90964ee69fc
--- /dev/null
+++ b/dev-python/html5lib/html5lib-1.1-r2.ebuild
@@ -0,0 +1,49 @@
+# 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="xml(+)"
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="HTML parser based on the HTML5 specification"
+HOMEPAGE="
+ https://github.com/html5lib/html5lib-python/
+ https://html5lib.readthedocs.io/
+ https://pypi.org/project/html5lib/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-pytest6.patch
+)
+
+RDEPEND="
+ >=dev-python/six-1.9[${PYTHON_USEDEP}]
+ dev-python/webencodings[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-expect[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ sed -e 's:from mock:from unittest.mock:' \
+ -i html5lib/tests/test_meta.py || die
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p pytest_expect
+}
diff --git a/dev-python/hyperframe/hyperframe-6.0.1-r1.ebuild b/dev-python/hyperframe/hyperframe-6.0.1-r1.ebuild
index 7dc610f794a6..a27a87cfd385 100644
--- a/dev-python/hyperframe/hyperframe-6.0.1-r1.ebuild
+++ b/dev-python/hyperframe/hyperframe-6.0.1-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/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index e4b3b168e0d0..dbc0c2b18bd5 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -2,3 +2,4 @@ DIST hypothesis-6.100.1.gh.tar.gz 9450717 BLAKE2B b27e3be6b43ee7d140ee00064748cd
DIST hypothesis-6.100.2.gh.tar.gz 9452773 BLAKE2B 46519695d9fdefeeb3c24abacfb0dd495003c21e02b154a5873f1a0ec1f9ba04998398fd7a29c570b15f2fcce95e5ca9451687c37aae2e2b27190534480f8c4e SHA512 ba4cbc3ee7cb958e32c59cfba095eafe8108f5a614316bf490105939e7c487bd56890794aa5d9583feeb4a0b7852a966da16f7e4fac1721f55eb105d03637cbe
DIST hypothesis-6.100.4.gh.tar.gz 9453201 BLAKE2B 0df377ae666646748fd15f70e296edab92587e0aa2deeb026950dff5e440c1d52d89a48245ba43044061b85ec0a009a8b88500b5e39513a8d0bce9afcc16dafa SHA512 089d8975ccfc8c13d092ddc67003d20ffe181950343b7bddd80769c7a55211cd073c4a0b29f5b46d2be6dc849263d79114e141becf732cdc895addeb2e535c5a
DIST hypothesis-6.100.5.gh.tar.gz 9453477 BLAKE2B 8b0ea09b30002a07f91ad8ac59c71b3aece27739c1c3d7a1cf4806dbd7d0cb280277937e0c4f88f64dfc97991753e6c7185ffa5c414c4ba061b87d68a3ca5bd2 SHA512 183aa4ef3425b2bbc632ad77c2ce4b7b7137a81b8344607082e5993593fbc820c68944c1a30c826c655d55145251dc5d53193eb444ce28fce930404ce33621c6
+DIST hypothesis-6.100.6.gh.tar.gz 9456232 BLAKE2B 348f1ccbd4947ac6811eefd7ba997c25e19db79a19ab042ce913490f96a0edc063297ffcb91edffac7788cf5889a1b3360d59f31bf3bc8a8ef9f974a0cbb8793 SHA512 1f09f8ec1095b00317ec390c5755c2e0f469a5dc712d1f52053a384dc913172adda8fd1f424353aa9b0de5cec537f5822f2e29031db0bc83fd19ba74df44ec3c
diff --git a/dev-python/hypothesis/hypothesis-6.100.6.ebuild b/dev-python/hypothesis/hypothesis-6.100.6.ebuild
new file mode 100644
index 000000000000..29919aa8ec05
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.100.6.ebuild
@@ -0,0 +1,91 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+CLI_COMPAT=( python3_{10..12} )
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+PYTHON_REQ_USE="threads(+),sqlite"
+
+inherit distutils-r1 multiprocessing optfeature
+
+TAG=hypothesis-python-${PV}
+MY_P=hypothesis-${TAG}
+DESCRIPTION="A library for property based testing"
+HOMEPAGE="
+ https://github.com/HypothesisWorks/hypothesis/
+ https://pypi.org/project/hypothesis/
+"
+SRC_URI="
+ https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+S="${WORKDIR}/${MY_P}/hypothesis-python"
+
+LICENSE="MPL-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="cli"
+
+RDEPEND="
+ >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/exceptiongroup-1.0.0_rc8[${PYTHON_USEDEP}]
+ ' 3.9 3.10)
+ cli? (
+ $(python_gen_cond_dep '
+ dev-python/black[${PYTHON_USEDEP}]
+ dev-python/click[${PYTHON_USEDEP}]
+ ' "${CLI_COMPAT[@]}")
+ )
+"
+BDEPEND="
+ test? (
+ dev-python/pexpect[${PYTHON_USEDEP}]
+ >=dev-python/pytest-8[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ !!<dev-python/requests-toolbelt-0.10.1
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ # subtests are broken by warnings from random plugins
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=xdist.plugin,_hypothesis_pytestplugin
+ local -x HYPOTHESIS_NO_PLUGINS=1
+
+ # NB: paths need to be relative to pytest.ini,
+ # i.e. start with hypothesis-python/
+ local EPYTEST_DESELECT=()
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # failing due to warnings from numpy/cython
+ hypothesis-python/tests/pytest/test_fixtures.py::test_given_plus_overridden_fixture
+ )
+ ;;
+ esac
+
+ epytest -o filterwarnings= -n "$(makeopts_jobs)" --dist=worksteal \
+ tests/cover tests/pytest tests/quality
+}
+
+python_install() {
+ distutils-r1_python_install
+ if ! use cli || ! has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
+ rm -r "${ED}/usr/bin" "${D}$(python_get_scriptdir)" || die
+ fi
+}
+
+pkg_postinst() {
+ optfeature "datetime support" dev-python/pytz
+ optfeature "dateutil support" dev-python/python-dateutil
+ optfeature "numpy support" dev-python/numpy
+ optfeature "django support" dev-python/django dev-python/pytz
+ optfeature "pandas support" dev-python/pandas
+ optfeature "pytest support" dev-python/pytest
+}
diff --git a/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild b/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild
index a86e51446771..455a56be314d 100644
--- a/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild
+++ b/dev-python/importlib-resources/importlib-resources-6.4.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 arm arm64 ~riscv x86"
BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
diff --git a/dev-python/ini2toml/ini2toml-0.14.ebuild b/dev-python/ini2toml/ini2toml-0.14.ebuild
index 315c8aa9744e..1d11c0bd77be 100644
--- a/dev-python/ini2toml/ini2toml-0.14.ebuild
+++ b/dev-python/ini2toml/ini2toml-0.14.ebuild
@@ -17,6 +17,7 @@ HOMEPAGE="
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
+IUSE="test-rust"
RDEPEND="
>=dev-python/packaging-20.7[${PYTHON_USEDEP}]
@@ -27,20 +28,34 @@ BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
test? (
dev-python/configupdater[${PYTHON_USEDEP}]
- >=dev-python/pyproject-fmt-0.4.0[${PYTHON_USEDEP}]
dev-python/tomli[${PYTHON_USEDEP}]
dev-python/tomlkit[${PYTHON_USEDEP}]
+ test-rust? (
+ >=dev-python/pyproject-fmt-0.4.0[${PYTHON_USEDEP}]
+ )
)
"
distutils_enable_tests pytest
-EPYTEST_IGNORE=(
- # validate_pyproject is not packaged
- tests/test_examples.py
-)
-
src_prepare() {
sed -i -e 's:--cov ini2toml --cov-report term-missing::' setup.cfg || die
distutils-r1_src_prepare
}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # validate_pyproject is not packaged
+ tests/test_examples.py
+ )
+ local EPYTEST_DESELECT=()
+
+ if ! has_version ">=dev-python/pyproject-fmt-0.4.0[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ tests/test_cli.py::test_auto_formatting
+ )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/ipython/Manifest b/dev-python/ipython/Manifest
index 13f37c8aafc3..af1d4ba8a99a 100644
--- a/dev-python/ipython/Manifest
+++ b/dev-python/ipython/Manifest
@@ -1,2 +1 @@
-DIST ipython-8.23.0.tar.gz 5491405 BLAKE2B c4273d20bccdf07283abf9a69b8d64a27be3aa2e0672d14781cd9035ff39a5392518d7e22f45cdd20c8e110111a601d4bdbc36659efde153742de731d574e4be SHA512 4e6f061dba024f5e717f6497706a144c5568c9d650215d898fe8e5efc85b92445f64e2c8eb6ef3c9bfe1a305c9098cc49e79b6d1cc25c8be5add1497682fce28
DIST ipython-8.24.0.tar.gz 5491819 BLAKE2B 49ca26f4ab6ceb7c787038db5b1073790d7a32cb96951bcc2ffa4ac05b3a689507e654344fda196560e2dc4b9e2225335e27bc3fb7472ba487adebb1ebba44e1 SHA512 adf032a93e94e1e8008a1cc106fb348d0bccb914a335e0ad04490531e7a7d16e7a2dc4a345f7faf1b3151d60a649413fa78130688cb59de088e5eb4291689310
diff --git a/dev-python/ipython/ipython-8.23.0.ebuild b/dev-python/ipython/ipython-8.23.0.ebuild
deleted file mode 100644
index b46814a3d757..000000000000
--- a/dev-python/ipython/ipython-8.23.0.ebuild
+++ /dev/null
@@ -1,179 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=standalone
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-PYTHON_REQ_USE='readline(+),sqlite,threads(+)'
-
-inherit distutils-r1 optfeature pypi virtualx
-
-DESCRIPTION="Advanced interactive shell for Python"
-HOMEPAGE="
- https://ipython.org/
- https://github.com/ipython/ipython/
- https://pypi.org/project/ipython/
-"
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos"
-IUSE="doc examples notebook nbconvert qt5 +smp test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-python/decorator[${PYTHON_USEDEP}]
- >=dev-python/jedi-0.16[${PYTHON_USEDEP}]
- dev-python/matplotlib-inline[${PYTHON_USEDEP}]
- >=dev-python/pexpect-4.3[${PYTHON_USEDEP}]
- >=dev-python/prompt-toolkit-3.0.41[${PYTHON_USEDEP}]
- <dev-python/prompt-toolkit-3.1[${PYTHON_USEDEP}]
- >=dev-python/pygments-2.4.0[${PYTHON_USEDEP}]
- dev-python/stack-data[${PYTHON_USEDEP}]
- >=dev-python/traitlets-5.13.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/exceptiongroup[${PYTHON_USEDEP}]
- ' 3.10)
- $(python_gen_cond_dep '
- dev-python/typing-extensions[${PYTHON_USEDEP}]
- ' 3.10 3.11)
-"
-
-BDEPEND="
- dev-python/setuptools[${PYTHON_USEDEP}]
- test? (
- app-text/dvipng[truetype]
- >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- dev-python/nbformat[${PYTHON_USEDEP}]
- >=dev-python/numpy-1.23[${PYTHON_USEDEP}]
- dev-python/matplotlib-inline[${PYTHON_USEDEP}]
- dev-python/pickleshare[${PYTHON_USEDEP}]
- <dev-python/pytest-8[${PYTHON_USEDEP}]
- dev-python/pytest-asyncio[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/testpath[${PYTHON_USEDEP}]
- )
- doc? (
- >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
- dev-python/matplotlib[${PYTHON_USEDEP}]
- >=dev-python/sphinx-2[${PYTHON_USEDEP}]
- dev-python/sphinx-rtd-theme[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-RDEPEND+="
- nbconvert? (
- dev-python/nbconvert[${PYTHON_USEDEP}]
- )
-"
-PDEPEND="
- $(python_gen_cond_dep '
- notebook? (
- dev-python/notebook[${PYTHON_USEDEP}]
- dev-python/ipywidgets[${PYTHON_USEDEP}]
- dev-python/widgetsnbextension[${PYTHON_USEDEP}]
- )
- qt5? ( dev-python/qtconsole[${PYTHON_USEDEP}] )
- ' 'python*')
- smp? (
- >=dev-python/ipykernel-5.1.0[${PYTHON_USEDEP}]
- >=dev-python/ipyparallel-6.2.3[${PYTHON_USEDEP}]
- )
-"
-
-PATCHES=(
- "${FILESDIR}"/2.1.0-substitute-files.patch
-)
-
-python_prepare_all() {
- # Remove out of date insource files
- #rm IPython/extensions/cythonmagic.py || die
- #rm IPython/extensions/rmagic.py || die
-
- # Prevent un-needed download during build
- if use doc; then
- sed -e "/^ 'sphinx.ext.intersphinx',/d" -i docs/source/conf.py || die
- fi
-
- # Rename the test directory to reduce sys.path pollution
- # https://github.com/ipython/ipython/issues/12892
- mv IPython/extensions/{,ipython_}tests || die
-
- distutils-r1_python_prepare_all
-}
-
-python_compile_all() {
- if use doc; then
- emake -C docs html_noapi
- HTML_DOCS=( docs/build/html/. )
- fi
-}
-
-src_test() {
- virtx distutils-r1_src_test
-}
-
-python_test() {
- local -x IPYTHON_TESTING_TIMEOUT_SCALE=20
- local EPYTEST_DESELECT=(
- # TODO: looks to be a regression due to a newer dep
- IPython/core/tests/test_oinspect.py::test_class_signature
- IPython/core/tests/test_oinspect.py::test_render_signature_long
- IPython/terminal/tests/test_shortcuts.py::test_modify_shortcut_with_filters
- )
-
- case ${EPYTHON} in
- pypy3)
- EPYTEST_DESELECT+=(
- # https://github.com/numpy/numpy/issues/25164
- IPython/lib/tests/test_display.py::TestAudioDataWithoutNumpy
- )
- ;;
- esac
-
- # nonfatal implied by virtx
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- nonfatal epytest -p asyncio --asyncio-mode=auto ||
- die "Tests failed on ${EPYTHON}"
-}
-
-python_install() {
- distutils-r1_python_install
-
- # Create ipythonX.Y symlinks.
- # TODO:
- # 1. do we want them for pypy? No. pypy has no numpy
- # 2. handle it in the eclass instead (use _python_ln_rel).
- # With pypy not an option the dosym becomes unconditional
- dosym ../lib/python-exec/${EPYTHON}/ipython \
- /usr/bin/ipython${EPYTHON#python}
-}
-
-python_install_all() {
- distutils-r1_python_install_all
-
- if use examples; then
- dodoc -r examples
- docompress -x /usr/share/doc/${PF}/examples
- fi
-}
-
-pkg_postinst() {
- optfeature "code formatting" dev-python/black
- optfeature "sympyprinting" dev-python/sympy
- optfeature "cythonmagic" dev-python/cython
- optfeature "%lprun magic command" dev-python/line-profiler
- optfeature "%matplotlib magic command" dev-python/matplotlib-inline
-
- if use nbconvert; then
- if ! has_version virtual/pandoc ; then
- einfo "Node.js will be used to convert notebooks to other formats"
- einfo "like HTML. Support for that is still experimental. If you"
- einfo "encounter any problems, please use app-text/pandoc instead."
- fi
- fi
-}
diff --git a/dev-python/ipython/ipython-8.24.0.ebuild b/dev-python/ipython/ipython-8.24.0.ebuild
index 551d2ccbec84..b46814a3d757 100644
--- a/dev-python/ipython/ipython-8.24.0.ebuild
+++ b/dev-python/ipython/ipython-8.24.0.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="BSD"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~arm64-macos ~x64-macos"
IUSE="doc examples notebook nbconvert qt5 +smp test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/iso8601/iso8601-2.1.0.ebuild b/dev-python/iso8601/iso8601-2.1.0.ebuild
index 33404d8404f0..23f943389f7e 100644
--- a/dev-python/iso8601/iso8601-2.1.0.ebuild
+++ b/dev-python/iso8601/iso8601-2.1.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/jaraco-envs/jaraco-envs-2.6.0.ebuild b/dev-python/jaraco-envs/jaraco-envs-2.6.0.ebuild
index f08c2288c0fd..b018f6c56ace 100644
--- a/dev-python/jaraco-envs/jaraco-envs-2.6.0.ebuild
+++ b/dev-python/jaraco-envs/jaraco-envs-2.6.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/jaraco-path/jaraco-path-3.7.0.ebuild b/dev-python/jaraco-path/jaraco-path-3.7.0.ebuild
index 7b4a45c30370..3c22e413923d 100644
--- a/dev-python/jaraco-path/jaraco-path-3.7.0.ebuild
+++ b/dev-python/jaraco-path/jaraco-path-3.7.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/jaraco-vcs/jaraco-vcs-2.2.0.ebuild b/dev-python/jaraco-vcs/jaraco-vcs-2.2.0.ebuild
index c18d3f1b183f..b2a099ea318c 100644
--- a/dev-python/jaraco-vcs/jaraco-vcs-2.2.0.ebuild
+++ b/dev-python/jaraco-vcs/jaraco-vcs-2.2.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~riscv ~s390 ~x86"
+KEYWORDS="amd64 ~riscv ~s390 ~x86"
RDEPEND="
dev-python/jaraco-classes[${PYTHON_USEDEP}]
diff --git a/dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild b/dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild
index 5d8b425c7393..09c766292c17 100644
--- a/dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild
+++ b/dev-python/jaraco-versioning/jaraco-versioning-1.1.0.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
dev-python/packaging[${PYTHON_USEDEP}]
diff --git a/dev-python/jupyterlab/Manifest b/dev-python/jupyterlab/Manifest
index 526c4d6c4b02..ebe823d8356b 100644
--- a/dev-python/jupyterlab/Manifest
+++ b/dev-python/jupyterlab/Manifest
@@ -1,4 +1,2 @@
-DIST jupyterlab-4.1.6.tar.gz 21773628 BLAKE2B b2855ecc4fa0cc892fab9bb79c19a3cec0ea577c9c490571ad4028e9fe35bca87fc61d0035cc889bee14313475825344e1cea69f34af4a908c5d2a304250d983 SHA512 b895aac68c6df3affb47eaebc243ecf7d778228a5adec8b8a047783e341008ab4beb0fe50b92138f765e7a72acfbe906f63f41aebe1a72544fe3030105d52716
-DIST jupyterlab-4.1.7.tar.gz 21773423 BLAKE2B 6456011cd841b0c61b09ecd647443cd68abc4a48151ddeab6b5834f22fd99616470a70fc68897a8b46cb32873a49c3f950006eff80facd6e109d337be5d95569 SHA512 01c8b1a496c621d387a8b03c8705c1807f9f18d09be30aa3327a9beac1fa97b23df02f518490d984ac022f1265a55104d7db69ca69a79941c526b50946c8d20b
DIST jupyterlab-4.1.8.tar.gz 21774267 BLAKE2B d707257b2f7c53c023fa0e2741ff1ddbb83116c1b8cc8136b550c94120737161c519c4a2e67211fff275267ab31c58e58b17ea6041e9ba00d44baa1919876f1e SHA512 376b9a9b154b70716ca8450126b9623932b44c88b1a83e42fadc4b98f5a3dd3982d77ae9fc807f483fbd84615c184dd8c170297002c9f609b81755aec21e1ff4
DIST jupyterlab-4.2.0.tar.gz 21488098 BLAKE2B 7857d2ba970b095cf2bd47a7786e47e6aa687a189d165fb04f5685b7848cf9647011a7145cd1a2f351c8f2bc4f876217225583749158b803c4899098ec03be7d SHA512 ee3d99ecd27c44ea9f97b6fbef7e5e0571b0371e5e745d56978151332c840247e1e3464a1947d7df72274032d87c6182cd90f1952669693e3ff72e2c03776e04
diff --git a/dev-python/jupyterlab/jupyterlab-4.1.6.ebuild b/dev-python/jupyterlab/jupyterlab-4.1.6.ebuild
deleted file mode 100644
index 270a555e73d9..000000000000
--- a/dev-python/jupyterlab/jupyterlab-4.1.6.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1 pypi xdg
-
-DESCRIPTION="JupyterLab computational environment"
-HOMEPAGE="
- https://jupyter.org/
- https://github.com/jupyterlab/jupyterlab/
- https://pypi.org/project/jupyterlab/
-"
-
-LICENSE="BSD MIT GPL-3 Apache-2.0"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
-
-RDEPEND="
- dev-python/async-lru[${PYTHON_USEDEP}]
- >=dev-python/httpx-0.25.0[${PYTHON_USEDEP}]
- >=dev-python/ipykernel-6.5.0[${PYTHON_USEDEP}]
- >=dev-python/jinja-3.0.3[${PYTHON_USEDEP}]
- dev-python/jupyter-core[${PYTHON_USEDEP}]
- >=dev-python/jupyter-lsp-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/jupyter-server-2.4.0[${PYTHON_USEDEP}]
- <dev-python/jupyter-server-3[${PYTHON_USEDEP}]
- >=dev-python/jupyterlab-server-2.19[${PYTHON_USEDEP}]
- <dev-python/jupyterlab-server-3[${PYTHON_USEDEP}]
- >=dev-python/notebook-shim-0.2[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
- ' 3.10)
- >=dev-python/tornado-6.2.0[${PYTHON_USEDEP}]
- dev-python/traitlets[${PYTHON_USEDEP}]
- net-libs/nodejs
-"
-
-BDEPEND="
- dev-python/hatch-jupyter-builder[${PYTHON_USEDEP}]
- test? (
- dev-python/pytest-console-scripts[${PYTHON_USEDEP}]
- >=dev-python/pytest-jupyter-0.5.3[${PYTHON_USEDEP}]
- dev-python/pytest-tornasync[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/requests-cache[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_DESELECT=(
- # These tests call npm and want internet
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_uninstall_core_extension
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_install_and_uninstall_pinned_folder
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_install_and_uninstall_pinned
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_custom_minimal_core_config
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_custom
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_check
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build
- jupyterlab/tests/test_build_api.py::TestBuildAPI::test_clear
- jupyterlab/tests/test_build_api.py::TestBuildAPI::test_build
-)
-
-EPYTEST_IGNORE=(
- jupyterlab/tests/test_announcements.py
-)
-
-distutils_enable_tests pytest
-# TODO: package sphinx_copybutton
-#distutils_enable_sphinx docs/source dev-python/sphinx-rtd-theme dev-python/myst-parser
-
-python_install_all() {
- distutils-r1_python_install_all
- mv "${ED}/usr/etc" "${ED}/etc" || die
-}
diff --git a/dev-python/jupyterlab/jupyterlab-4.1.7.ebuild b/dev-python/jupyterlab/jupyterlab-4.1.7.ebuild
deleted file mode 100644
index 1a24abe1d86c..000000000000
--- a/dev-python/jupyterlab/jupyterlab-4.1.7.ebuild
+++ /dev/null
@@ -1,80 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1 pypi xdg
-
-DESCRIPTION="JupyterLab computational environment"
-HOMEPAGE="
- https://jupyter.org/
- https://github.com/jupyterlab/jupyterlab/
- https://pypi.org/project/jupyterlab/
-"
-
-LICENSE="BSD MIT GPL-3 Apache-2.0"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
-
-RDEPEND="
- dev-python/async-lru[${PYTHON_USEDEP}]
- >=dev-python/httpx-0.25.0[${PYTHON_USEDEP}]
- >=dev-python/ipykernel-6.5.0[${PYTHON_USEDEP}]
- >=dev-python/jinja-3.0.3[${PYTHON_USEDEP}]
- dev-python/jupyter-core[${PYTHON_USEDEP}]
- >=dev-python/jupyter-lsp-2.0.0[${PYTHON_USEDEP}]
- >=dev-python/jupyter-server-2.4.0[${PYTHON_USEDEP}]
- <dev-python/jupyter-server-3[${PYTHON_USEDEP}]
- >=dev-python/jupyterlab-server-2.27.1[${PYTHON_USEDEP}]
- <dev-python/jupyterlab-server-3[${PYTHON_USEDEP}]
- >=dev-python/notebook-shim-0.2[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/tomli-1.2.2[${PYTHON_USEDEP}]
- ' 3.10)
- >=dev-python/tornado-6.2.0[${PYTHON_USEDEP}]
- dev-python/traitlets[${PYTHON_USEDEP}]
- net-libs/nodejs
-"
-
-BDEPEND="
- dev-python/hatch-jupyter-builder[${PYTHON_USEDEP}]
- test? (
- dev-python/pytest-console-scripts[${PYTHON_USEDEP}]
- >=dev-python/pytest-jupyter-0.5.3[${PYTHON_USEDEP}]
- dev-python/pytest-tornasync[${PYTHON_USEDEP}]
- dev-python/pytest-timeout[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/requests-cache[${PYTHON_USEDEP}]
- dev-python/virtualenv[${PYTHON_USEDEP}]
- )
-"
-
-EPYTEST_DESELECT=(
- # These tests call npm and want internet
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_uninstall_core_extension
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_install_and_uninstall_pinned_folder
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_install_and_uninstall_pinned
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_custom_minimal_core_config
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_custom
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build_check
- jupyterlab/tests/test_jupyterlab.py::TestExtension::test_build
- jupyterlab/tests/test_build_api.py::TestBuildAPI::test_clear
- jupyterlab/tests/test_build_api.py::TestBuildAPI::test_build
-)
-
-EPYTEST_IGNORE=(
- jupyterlab/tests/test_announcements.py
-)
-
-distutils_enable_tests pytest
-# TODO: package sphinx_copybutton
-#distutils_enable_sphinx docs/source dev-python/sphinx-rtd-theme dev-python/myst-parser
-
-python_install_all() {
- distutils-r1_python_install_all
- mv "${ED}/usr/etc" "${ED}/etc" || die
-}
diff --git a/dev-python/jupyterlab/jupyterlab-4.1.8.ebuild b/dev-python/jupyterlab/jupyterlab-4.1.8.ebuild
index 1a24abe1d86c..d4a9a921d44c 100644
--- a/dev-python/jupyterlab/jupyterlab-4.1.8.ebuild
+++ b/dev-python/jupyterlab/jupyterlab-4.1.8.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="BSD MIT GPL-3 Apache-2.0"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86"
RDEPEND="
dev-python/async-lru[${PYTHON_USEDEP}]
diff --git a/dev-python/keyring/Manifest b/dev-python/keyring/Manifest
index e1bc555df8da..541c3ce98e84 100644
--- a/dev-python/keyring/Manifest
+++ b/dev-python/keyring/Manifest
@@ -1,3 +1,2 @@
DIST keyring-24.3.1.tar.gz 60454 BLAKE2B cb0a9b82163febbbd737f2f25353bf96cbb7b8a87c7db00523960b3fce5595c6af65bc02b7d070b0fa5a466fc53530975de8f7a44ab9a9f783d2db34b1a67901 SHA512 53f26763175c7f1de041d8805062696ef3ef6c79792cdc75ae72621da8e729ac4cbb6e76937db2a0a5ce4bc41ab92c164d62e4627f92edab8c0d0fc02ca4980e
-DIST keyring-25.1.0.tar.gz 60191 BLAKE2B 90cf0088f7740f6bc6562173b98630f885eca4c011be513532630ecaf4ca327053e37444b88ef5110a224567a68ad14228f59cf859090761be08a17d007b18ba SHA512 991023f96c9ffa98b65ee48cb07908bfa0c2a56af13aba60f476a5c99eea9c627112a8eb777c2a8be1ae87cfc8fc79ba68c9ca08ed53002e9e240e64f937cff4
DIST keyring-25.2.0.tar.gz 60808 BLAKE2B a9f97b80593cc1fc4716b0c97579408d4485dbd9dab415fa98e1827130cea425a03ff6188282ffb0125327feb6ed282260c15d21ce603f4d2561a94f83e6cbd0 SHA512 36ef4a78d5b9081f13ea7aabbfbe508e0ee275cbdf458fbcb36da5a360f91df79ce4c54bf0ce4000d91961d06f019d75a9ffc46328ef7d9e14e9a883508a1950
diff --git a/dev-python/keyring/keyring-25.1.0.ebuild b/dev-python/keyring/keyring-25.1.0.ebuild
deleted file mode 100644
index 2aa45ee32471..000000000000
--- a/dev-python/keyring/keyring-25.1.0.ebuild
+++ /dev/null
@@ -1,52 +0,0 @@
-# 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 pypi
-
-DESCRIPTION="Provides access to the system keyring service"
-HOMEPAGE="
- https://github.com/jaraco/keyring/
- https://pypi.org/project/keyring/
-"
-
-LICENSE="PSF-2"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
-
-RDEPEND="
- >=dev-python/secretstorage-3.2[${PYTHON_USEDEP}]
- dev-python/jaraco-classes[${PYTHON_USEDEP}]
- dev-python/jaraco-context[${PYTHON_USEDEP}]
- dev-python/jaraco-functools[${PYTHON_USEDEP}]
- >=dev-python/jeepney-0.4.2[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/importlib-metadata-4.11.4[${PYTHON_USEDEP}]
- ' 3.10 3.11)
-"
-BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]
-"
-
-distutils_enable_tests pytest
-
-python_test() {
- local EPYTEST_DESELECT=(
- # this test fails if importlib-metadata returns more than one
- # entry, i.e. when keyring is installed already
- tests/test_packaging.py::test_entry_point
- )
- local EPYTEST_IGNORE=(
- # apparently does not unlock the keyring properly
- tests/backends/test_libsecret.py
- # hangs
- tests/backends/test_kwallet.py
- )
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest -o addopts=
-}
diff --git a/dev-python/keyring/keyring-25.2.0.ebuild b/dev-python/keyring/keyring-25.2.0.ebuild
index 9198c50f5be3..2aa45ee32471 100644
--- a/dev-python/keyring/keyring-25.2.0.ebuild
+++ b/dev-python/keyring/keyring-25.2.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="PSF-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos"
+KEYWORDS="amd64 arm arm64 ~loong ppc ppc64 ~riscv ~s390 sparc x86 ~x64-macos"
RDEPEND="
>=dev-python/secretstorage-3.2[${PYTHON_USEDEP}]
diff --git a/dev-python/langdetect/Manifest b/dev-python/langdetect/Manifest
index a11d7c268c91..e9da2ac43cac 100644
--- a/dev-python/langdetect/Manifest
+++ b/dev-python/langdetect/Manifest
@@ -1 +1,3 @@
DIST langdetect-1.0.9.tar.gz 981474 BLAKE2B ea8a9c3f16a2987c080742473bff4f2c1503f53fb3c2b40b0b1d6212bb6133ea22dce7864ffcfb8968c3a46b157d45cb3e2cf6f84bdbed0266cc716a853b032c SHA512 7558d674c47b080c79e43a00a25d2c7f77188cf60bea2cecb3bebb803d75e1aa42b43c74bd26ea1b541f4cb927421908882cbec01a91f0913984217e71ccc8db
+EBUILD langdetect-1.0.9.ebuild 493 BLAKE2B 0df8bce19bc80f79f8e76bcef5a4c2caf333365fe0cb9a3c076b7858bceded5a3e58921474f866a2709dd657b7ed330c1ec4a7f9d7bab0fcf1bc92d77cabc32d SHA512 ea2a1adcb133ac5fc951ba1aa90ef1ce3dfcc424e59727591763d4875aa044a74188be2d15fd89c6b2e83ed6ea04ec3d9851ed584ae79d2c2c127bde7d994b48
+MISC metadata.xml 457 BLAKE2B 630128a3e982b6d60cc7b9f74c79fcb5ee47a71a02c73a50af9da8cedb6fad8e20a7f74b881e5b25c6483b92c9edbd56552cd38b2d9cbfa8b3eb4530facea969 SHA512 674f4f5cd809c6c77bc14e0f5687fa972bef14bdfa0b3343c5d66b7163eef1906eb87d060c8288732f825de71dce291ad0b841a5f2f0dd230f957b5687e45d45
diff --git a/dev-python/langdetect/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/lit/Manifest b/dev-python/lit/Manifest
index 1eab4b42dc8e..84158a6c4973 100644
--- a/dev-python/lit/Manifest
+++ b/dev-python/lit/Manifest
@@ -10,3 +10,4 @@ DIST llvm-project-18.1.5.src.tar.xz 132061072 BLAKE2B bfdd987d5992a4d94ae8b14792
DIST llvm-project-18.1.5.src.tar.xz.sig 566 BLAKE2B ad935db71ec3b9fc885d696af440764a71fe7cafc5b3ca0b25a2963100d9cb3790392daebcac1341716c95a8da3c6243f5a8667fea1ed18b93fc8baa495414c9 SHA512 3cbca1059d940f3bd7bd72d68f2828039b66304980cc5f43769649e5494fc7d71117bf8aba5cc7f7a2ffca52f60ba30fadf3b28f984fd49ddb14300e30b45237
DIST llvm-project-338561657685c1831a53563b1bc36ffc7470239e.tar.gz 209715501 BLAKE2B 49152479d4f2cae430e783784d0cfcc129134f5cc0bf12c72701cd15e59cb3e1be2f61385ba9baa93d1d1193e89374ac8877b909650c163b681d1fcd26732cdc SHA512 d34bbe82e85c5b9d493029ad7b46e802f06f7e7a8a48515d0043c58c3251271f8f3e1e11c47eb91bd3db2477f819d33b43ddebb276eb9601c5ad141e463c9682
DIST llvm-project-76aa042dde6ba9ba57c680950f5818259ee02690.tar.gz 210235525 BLAKE2B fbbb8e70e0a08bde1fa2277746f692399fa15015b69693f5e8d3297abf02dfb7b36c535880f5c6924c870652dd3106936776d57c34b22234a5419f75b3561bb7 SHA512 9107551ceb2b28aa735006144b3344801ea861d7b49eae4881831af507314fb8da2bf5e8a3a407aeebd2eee01fbfad2ca90269d2331fe43cca5c2cc49dd257b7
+DIST llvm-project-a7ee81e8279e0bf6e05617a4a638e5f2f8e45022.tar.gz 210384692 BLAKE2B 28b85b08a42c173e1c3bf530483112b1629c7e6684a83a016fbe9f132774f7b864d793581873a6529defeabb4479ad9a3d7c025b781b2fa4952c239b6d567b11 SHA512 1d593818347452f96611a62fa3aa22ce4355a4ee5d5dcfcb54a286a1aa980e9531d5fb6cbee3b0ee5943c6d0f4e2ba2245e13262fe7859e5b114f9c5d5cf1417
diff --git a/dev-python/lit/lit-19.0.0_pre20240509.ebuild b/dev-python/lit/lit-19.0.0_pre20240509.ebuild
new file mode 100644
index 000000000000..5ed5b5bd096e
--- /dev/null
+++ b/dev-python/lit/lit-19.0.0_pre20240509.ebuild
@@ -0,0 +1,45 @@
+# 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 llvm.org
+
+DESCRIPTION="A stand-alone install of the LLVM suite testing tool"
+HOMEPAGE="https://llvm.org/"
+
+LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+# Tests require 'FileCheck' and 'not' utilities (from llvm)
+BDEPEND="
+ test? (
+ dev-python/psutil[${PYTHON_USEDEP}]
+ sys-devel/llvm
+ )
+"
+
+LLVM_COMPONENTS=( llvm/utils/lit )
+llvm.org_set_globals
+
+# TODO: move the manpage generation here (from sys-devel/llvm)
+
+src_prepare() {
+ # flaky test
+ # https://github.com/llvm/llvm-project/issues/72022
+ rm tests/progress-bar.py || die
+
+ cd "${WORKDIR}" || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local -x LIT_PRESERVES_TMP=1
+ local litflags=$(get_lit_flags)
+ ./lit.py ${litflags//;/ } tests || die
+}
diff --git a/dev-python/mapbox_earcut/mapbox_earcut-1.0.1.ebuild b/dev-python/mapbox_earcut/mapbox_earcut-1.0.1-r1.ebuild
index cfdf3c260124..9fc282465da5 100644
--- a/dev-python/mapbox_earcut/mapbox_earcut-1.0.1.ebuild
+++ b/dev-python/mapbox_earcut/mapbox_earcut-1.0.1-r1.ebuild
@@ -22,8 +22,11 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm64 ~x86"
+DEPEND="
+ dev-python/numpy:=[${PYTHON_USEDEP}]
+"
RDEPEND="
- dev-python/numpy[${PYTHON_USEDEP}]
+ ${DEPEND}
"
BDEPEND="
dev-python/pybind11[${PYTHON_USEDEP}]
diff --git a/dev-python/markdown-it-py/markdown-it-py-3.0.0.ebuild b/dev-python/markdown-it-py/markdown-it-py-3.0.0.ebuild
index 503bf38ff671..9435bec04f4a 100644
--- a/dev-python/markdown-it-py/markdown-it-py-3.0.0.ebuild
+++ b/dev-python/markdown-it-py/markdown-it-py-3.0.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/markupsafe/markupsafe-2.1.5.ebuild b/dev-python/markupsafe/markupsafe-2.1.5.ebuild
index 614e709eeb8d..83f919ac2336 100644
--- a/dev-python/markupsafe/markupsafe-2.1.5.ebuild
+++ b/dev-python/markupsafe/markupsafe-2.1.5.ebuild
@@ -23,3 +23,19 @@ SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos ~x64-solaris"
distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=()
+
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # https://github.com/pallets/markupsafe/issues/445
+ tests/test_leak.py::test_markup_leaks
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/mcbootflash/Manifest b/dev-python/mcbootflash/Manifest
index 7bf319e6e80e..9a1eb412ceb0 100644
--- a/dev-python/mcbootflash/Manifest
+++ b/dev-python/mcbootflash/Manifest
@@ -1 +1,2 @@
DIST mcbootflash-8.0.1.tar.gz 24906 BLAKE2B 2af5c73de29aa089d33047179ce196507ab1ed1ae224b6f680341a818d8056915271b121cf1ac32f31dd5e33e095f2b82fcddf5907bdb5513a17e009ac242f7f SHA512 fc4093873bbfc0a29d2c09b2f62247dd659b4c9d531613a2a18d6b452f7a0e573b5fa087d82686045af1ba6f7811ca3ccba0f109ada71c42925e8c01faa0fe1d
+DIST mcbootflash-8.0.2.tar.gz 27121 BLAKE2B caded3a13266db46ac1b9f35c0a027e9dbfa2c430da96992bf689d4b32574406a7d0c736da82dbe7c473189a8941db8548f59828010e755f33c0342c8c593be2 SHA512 542dcf9af6c22f2deae786fa547e99e4df07b8e3eda7b007a9ead96386c2bf880d8485985b3de399ecd496bf982b6a0308c3f82b49c5914bca09c961822566c6
diff --git a/dev-python/mcbootflash/mcbootflash-8.0.2.ebuild b/dev-python/mcbootflash/mcbootflash-8.0.2.ebuild
new file mode 100644
index 000000000000..7653ff5ad9db
--- /dev/null
+++ b/dev-python/mcbootflash/mcbootflash-8.0.2.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Flash firmware to devices running Microchip's 16-bit bootloader"
+HOMEPAGE="
+ https://pypi.org/project/mcbootflash/
+ https://github.com/bessman/mcbootflash/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/bincopy-20.0.0[${PYTHON_USEDEP}]
+ dev-python/pyserial[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pytest-reserial[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest --replay
+}
diff --git a/dev-python/mdurl/mdurl-0.1.2.ebuild b/dev-python/mdurl/mdurl-0.1.2.ebuild
index 5655852d173e..5be9caf7d5f8 100644
--- a/dev-python/mdurl/mdurl-0.1.2.ebuild
+++ b/dev-python/mdurl/mdurl-0.1.2.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/mechanize/Manifest b/dev-python/mechanize/Manifest
index 9762e1d2e5e7..9d6be2a45653 100644
--- a/dev-python/mechanize/Manifest
+++ b/dev-python/mechanize/Manifest
@@ -1,2 +1 @@
DIST mechanize-0.4.10.tar.gz 218291 BLAKE2B 7a6f293ac5622b4ac01d1b84327e4dd41132eb2fdfaf9826e6c7a8b088890ae8b4b5f4e90aca930761d532702138f0be6f9394e48ee2defc48dcb5f19ee22a79 SHA512 76d13ac8ac06e8e3836ba814259e1ec8495ebbfc259d4f8652f3ed23863b6a5f6fc5983409083ad9f5d0312db6581b0e7b32bfe6d46ecd190006188ac4cf3fc8
-DIST mechanize-0.4.9.tar.gz 218286 BLAKE2B 42ea97f843ec61b5ae05913e564f0cdb473976ea4e08a886c3bed15b27cea64def7fe5c73c1b809e48688d5ae41c269e85b633a24731c83409bf9855fc72b85f SHA512 a0c5d6e01ddabd35dded9908e4f7e24cb0a8c20a674af603cd2f5f146c75d38dc96c36af0898646691206ce41745dff9a736ce53efd03ff48e55e763814b893c
diff --git a/dev-python/mechanize/files/mechanize-0.4.9-test.patch b/dev-python/mechanize/files/mechanize-0.4.9-test.patch
deleted file mode 100644
index 369cbe9495e1..000000000000
--- a/dev-python/mechanize/files/mechanize-0.4.9-test.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 1324b09b661aaac7d4cdc7e1e9d49e1c3851db2c Mon Sep 17 00:00:00 2001
-From: Martin Weinelt <hexa@darmstadt.ccc.de>
-Date: Sun, 21 Apr 2024 13:05:45 +0200
-Subject: [PATCH] Fix test_ftp mime type expectation on 3.11+
-
-Closes: #94
----
- test/test_urllib2.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/test/test_urllib2.py b/test/test_urllib2.py
-index e9b96fd..c46a2fc 100644
---- a/test/test_urllib2.py
-+++ b/test/test_urllib2.py
-@@ -864,7 +864,7 @@ def connect_ftp(self, user, passwd, host, port, dirs, timeout):
- ["foo", "bar"], _sockettimeout._GLOBAL_DEFAULT_TIMEOUT, "", None),
- ("ftp://localhost/baz.gif;type=a", "localhost", ftplib.FTP_PORT,
- "A", [], _sockettimeout._GLOBAL_DEFAULT_TIMEOUT, "baz.gif",
-- None), # TODO: really this should guess image/gif
-+ "image/gif" if sys.version_info >= (3, 11) else None),
- ]:
- req = Request(url, timeout=timeout)
- r = h.ftp_open(req)
diff --git a/dev-python/mechanize/mechanize-0.4.10.ebuild b/dev-python/mechanize/mechanize-0.4.10.ebuild
index e29691fc8e32..f6448e02ae1d 100644
--- a/dev-python/mechanize/mechanize-0.4.10.ebuild
+++ b/dev-python/mechanize/mechanize-0.4.10.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="|| ( BSD ZPL )"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/mechanize/mechanize-0.4.9.ebuild b/dev-python/mechanize/mechanize-0.4.9.ebuild
deleted file mode 100644
index 1453c1acef8b..000000000000
--- a/dev-python/mechanize/mechanize-0.4.9.ebuild
+++ /dev/null
@@ -1,39 +0,0 @@
-# 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="Stateful programmatic web browsing in Python"
-HOMEPAGE="
- https://github.com/python-mechanize/mechanize/
- https://pypi.org/project/mechanize/
-"
-
-LICENSE="|| ( BSD ZPL )"
-SLOT="0"
-KEYWORDS="~alpha amd64 ~arm arm64 ~ia64 ~ppc ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- >=dev-python/html5lib-0.999999999[${PYTHON_USEDEP}]
-"
-BDEPEND="
- test? (
- ${RDEPEND}
- )
-"
-
-PATCHES=(
- # https://github.com/python-mechanize/mechanize/pull/95
- "${FILESDIR}/${P}-test.patch"
-)
-
-python_test() {
- "${EPYTHON}" run_tests.py -v || die
-}
diff --git a/dev-python/minidb/Manifest b/dev-python/minidb/Manifest
index 8d3be5a4b696..0ec6101b0871 100644
--- a/dev-python/minidb/Manifest
+++ b/dev-python/minidb/Manifest
@@ -1,2 +1 @@
-DIST minidb-2.0.7.tar.gz 12282 BLAKE2B 349aff4ec7497fc74edd632f719a6f67a2e7c1dff38ea1ea579c820e00dbad4e7269355e4b19ccfe53cf637f0ebdd6cd512e1af84456ef70c05d8e19024ae94d SHA512 dc04d2d51fdc4ecf30e234cb25e17bf0cd5c320dfca6bdd306b61eced89fe8f1fb5df93111ec0c04f1b258ecde467203a968e61b913feee87301dec7e93d9412
DIST minidb-2.0.8.tar.gz 15404 BLAKE2B 5cf612036ed18ddd8f42da1ceab398cfe092acbdc11ac75693d1aa3c84960a375db6816dbe1a0ed244d83a4c6958661ba2db6e489ee4b5ab7df359332382f524 SHA512 04cdf6ae3a537aa421cd9ca9c283ac3c721ce35a6e23bf71f56ff70ee94dfad4672feb9cea7490e6747f9c2cfaabc7d163559cce3a40cf643df0287cbea6f994
diff --git a/dev-python/minidb/minidb-2.0.7.ebuild b/dev-python/minidb/minidb-2.0.7.ebuild
deleted file mode 100644
index 9589ef46fd96..000000000000
--- a/dev-python/minidb/minidb-2.0.7.ebuild
+++ /dev/null
@@ -1,22 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-PYTHON_REQ_USE="sqlite"
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Simple SQLite-based object store"
-HOMEPAGE="
- https://thp.io/2010/minidb/
- https://pypi.org/project/minidb/
-"
-
-LICENSE="ISC"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86"
-
-distutils_enable_tests pytest
diff --git a/dev-python/minidb/minidb-2.0.8.ebuild b/dev-python/minidb/minidb-2.0.8.ebuild
index 75db854594f8..90eea0691c51 100644
--- a/dev-python/minidb/minidb-2.0.8.ebuild
+++ b/dev-python/minidb/minidb-2.0.8.ebuild
@@ -17,6 +17,6 @@ HOMEPAGE="
LICENSE="ISC"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 x86"
distutils_enable_tests pytest
diff --git a/dev-python/mistune/mistune-3.0.2.ebuild b/dev-python/mistune/mistune-3.0.2.ebuild
index 167bf6238b98..69f0d54a41c7 100644
--- a/dev-python/mistune/mistune-3.0.2.ebuild
+++ b/dev-python/mistune/mistune-3.0.2.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
@@ -14,8 +14,8 @@ HOMEPAGE="
https://pypi.org/project/mistune/
"
-SLOT="0"
LICENSE="BSD"
+SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
distutils_enable_tests pytest
diff --git a/dev-python/mkdocs-ansible/Manifest b/dev-python/mkdocs-ansible/Manifest
index c504319ab66d..d031514580f8 100644
--- a/dev-python/mkdocs-ansible/Manifest
+++ b/dev-python/mkdocs-ansible/Manifest
@@ -1,3 +1 @@
-DIST mkdocs-ansible-0.2.0.tar.gz 29254 BLAKE2B 3d9582c50a3e6abad56bae2f78ff2970b96b768fd8dbc0aa60d15a0acfc23535acae42b7b7f585db3165bf658b3f18c483484b630b350aff97ebb97edb2abcae SHA512 8e0a3b447a4a31f3d48fef5e381d01e0f2ebee2dd317a699b30e83e483234ebac1ad265f66f15dfa92c52f6c1c4a0a77aacef2915b0a60b11ffe5960cd774820
-DIST mkdocs-ansible-24.2.1.tar.gz 44750 BLAKE2B 364ac6ee1b044309eaf3cd15c4944fd678680f17fdf35dc610522ff751ee8136c52fd7a1dfbe735c897f93ea9566e7bc986af3c6f18e90ad9945b3580bbb3eb2 SHA512 d01eec55638e34b83c06c7c4f3163d5c44fac373fb1ed099b9a63c59af27efebd85b655f1f9558add5ddc968abe1d1d28d326b0fe500e395035c62e006653b27
DIST mkdocs-ansible-24.3.0.tar.gz 45471 BLAKE2B 54b6320a7b1f03d4f05b5a7617100575178206742bebda007cd276e9c1a663e82f46149fc6ec3e7e3d22f01be63afb6a72febe72f3e3969ea3acb6a75b1c38ec SHA512 a391bb28b2870efebf621998f810521667beb8b3b9603f5b35e169a9ab23b2f640531a2441b11b8044b36c49eacccd3da72b0224a0ac664d59fd97de7eb0b094
diff --git a/dev-python/mkdocs-ansible/files/mkdocs-ansible-0.2.0-prune_deps.patch b/dev-python/mkdocs-ansible/files/mkdocs-ansible-0.2.0-prune_deps.patch
deleted file mode 100644
index 7c8c5cbfe590..000000000000
--- a/dev-python/mkdocs-ansible/files/mkdocs-ansible-0.2.0-prune_deps.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-As of 0.2.0, no mention of pipdeptree anywhere in the actual code.
-
---- a/.config/requirements.in
-+++ b/.config/requirements.in
-@@ -11,5 +11,4 @@
- mkdocstrings-python>=0.8.3
- mkdocstrings>=0.21.2
- pillow>=9.4.0
--pipdeptree>=2.4.0
- pymdown-extensions>=9.9.2
---- a/.config/requirements.txt
-+++ b/.config/requirements.txt
-@@ -42,7 +42,6 @@
- paginate==0.5.6
- pathspec==0.11.2
- pillow==10.0.1
--pipdeptree==2.13.0
- platformdirs==3.10.0
- pycparser==2.21
- pygments==2.16.1
diff --git a/dev-python/mkdocs-ansible/mkdocs-ansible-0.2.0.ebuild b/dev-python/mkdocs-ansible/mkdocs-ansible-0.2.0.ebuild
deleted file mode 100644
index d89814a9de4c..000000000000
--- a/dev-python/mkdocs-ansible/mkdocs-ansible-0.2.0.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYPI_NO_NORMALIZE=1
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Ansible theme for MkDocs"
-HOMEPAGE="
- https://github.com/ansible/mkdocs-ansible/
- https://pypi.org/project/mkdocs-ansible/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~riscv"
-
-RDEPEND="
- >=dev-python/markdown-exec-1.3.0[${PYTHON_USEDEP}]
- >=dev-python/markdown-include-0.8.1[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-gen-files-0.4.0[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-htmlproofer-plugin-0.10.2[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-material-extensions-1.1.1[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-material-9.0.13[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-minify-plugin-0.6.2[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-monorepo-plugin-1.0.4[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-1.4.2[${PYTHON_USEDEP}]
- >=dev-python/mkdocstrings-python-0.8.3[${PYTHON_USEDEP}]
- >=dev-python/mkdocstrings-0.21.2[${PYTHON_USEDEP}]
- >=dev-python/pillow-9.4.0[${PYTHON_USEDEP}]
- >=dev-python/pymdown-extensions-9.9.2[${PYTHON_USEDEP}]
- >=media-gfx/cairosvg-2.6.0[${PYTHON_USEDEP}]
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-0.2.0-prune_deps.patch
-)
diff --git a/dev-python/mkdocs-ansible/mkdocs-ansible-24.2.1.ebuild b/dev-python/mkdocs-ansible/mkdocs-ansible-24.2.1.ebuild
deleted file mode 100644
index 39d6501e5c61..000000000000
--- a/dev-python/mkdocs-ansible/mkdocs-ansible-24.2.1.ebuild
+++ /dev/null
@@ -1,41 +0,0 @@
-# Copyright 1999-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="Ansible theme for MkDocs"
-HOMEPAGE="
- https://github.com/ansible/mkdocs-ansible/
- https://pypi.org/project/mkdocs-ansible/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64 ~riscv"
-
-RDEPEND="
- >=dev-python/markdown-exec-1.3.0[${PYTHON_USEDEP}]
- >=dev-python/markdown-include-0.8.1[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-gen-files-0.4.0[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-htmlproofer-plugin-0.10.2[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-material-extensions-1.1.1[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-material-9.0.13[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-minify-plugin-0.6.2[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-monorepo-plugin-1.0.4[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-1.4.2[${PYTHON_USEDEP}]
- >=dev-python/mkdocstrings-python-0.8.3[${PYTHON_USEDEP}]
- >=dev-python/mkdocstrings-0.21.2[${PYTHON_USEDEP}]
- >=dev-python/pillow-9.4.0[${PYTHON_USEDEP}]
- >=dev-python/pymdown-extensions-9.9.2[${PYTHON_USEDEP}]
- >=media-gfx/cairosvg-2.6.0[${PYTHON_USEDEP}]
-"
-
-PATCHES=(
- "${FILESDIR}"/${PN}-24.2.1-prune_deps.patch
-)
diff --git a/dev-python/mkdocs-material/Manifest b/dev-python/mkdocs-material/Manifest
index d5c1761958de..1f48e8b84742 100644
--- a/dev-python/mkdocs-material/Manifest
+++ b/dev-python/mkdocs-material/Manifest
@@ -1,4 +1,3 @@
-DIST mkdocs-material-9.5.18.gh.tar.gz 14861438 BLAKE2B 758f28f266780a398325cae5395a15454c0c317b60c4a30006fef0002b9d8f4e350265e05cba160e2efbc6aa05aa83373df7b1086499bc3bcb3465a9f17e57f5 SHA512 6d18b3a672a750b3a43fe6ea8bf437b13d20c63871e762a2e805e30757315e4ff4037695319a42c186fc45459ba5ea11e6fa567b27fded2441d1ebce86d33fab
DIST mkdocs-material-9.5.19.gh.tar.gz 14862903 BLAKE2B 079a00b66a97e967101cde17a9dcb0187c2f9e30dcc1ecec37407df5adddd1f5d1845abb202273f3a3804edd05cd12639b4cde0e61eab0357a914cf24162928a SHA512 b97bf81f63b2868db051e0f31b003dc3e3c6d6a853575b959702c7feaa74cbd69f5961ff3de93ec2596d0f027aa98f5aa73df5166971dbd8a27ada4ee45f6a83
DIST mkdocs-material-9.5.20.gh.tar.gz 14862657 BLAKE2B cfcd1acb8f3d685e364d9a627cc87b9df86566bb250fc09262975d60f5b432c54c398674a8a9bf033fd1027c1ea762a95627fb55ec26fa1f630842e6c82d9fdb SHA512 163589085fd688610f64c7d264807c11bc7c1f19a7c007952f983c60466853a727204404a58d66bdc4c12179241e752eb38973904fa0ccbdc8de863c4f2ed732
DIST mkdocs-material-9.5.21.gh.tar.gz 14865463 BLAKE2B d83c518474697e65c614cebd1e74abd827163bc5df9a69bc84bcb9d252e1115def196bbaa5e5f0a7e0b247b7952d55f13d0d4288d37af41ad443bcb6d8a022c5 SHA512 b7d5f31bec769091ce42dbac15602194718bc0d66835d3fcfc8744dccd38ebc81e40437f698225c29d8d344d481ca6c20a964d5a9b469f0915c10410b63ab567
diff --git a/dev-python/mkdocs-material/mkdocs-material-9.5.18.ebuild b/dev-python/mkdocs-material/mkdocs-material-9.5.18.ebuild
deleted file mode 100644
index 5c080c205d27..000000000000
--- a/dev-python/mkdocs-material/mkdocs-material-9.5.18.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-DOCS_BUILDER="mkdocs"
-DOCS_DEPEND="
- dev-python/mkdocs-material-extensions
- dev-python/mkdocs-minify-plugin
- dev-python/mkdocs-redirects
-"
-
-inherit distutils-r1 docs
-
-DESCRIPTION="A Material Design theme for MkDocs"
-HOMEPAGE="
- https://github.com/squidfunk/mkdocs-material/
- https://pypi.org/project/mkdocs-material/
-"
-SRC_URI="
- https://github.com/squidfunk/${PN}/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 ~riscv x86"
-IUSE="social"
-
-RDEPEND="
- >=dev-python/Babel-2.10.3[${PYTHON_USEDEP}]
- >=dev-python/colorama-0.4[${PYTHON_USEDEP}]
- >=dev-python/jinja-3.0.2[${PYTHON_USEDEP}]
- >=dev-python/lxml-4.6[${PYTHON_USEDEP}]
- >=dev-python/markdown-3.2[${PYTHON_USEDEP}]
- >=dev-python/mkdocs-1.5.3[${PYTHON_USEDEP}]
- >=dev-python/paginate-0.5.6[${PYTHON_USEDEP}]
- >=dev-python/pygments-2.16[${PYTHON_USEDEP}]
- >=dev-python/pymdown-extensions-10.2[${PYTHON_USEDEP}]
- >=dev-python/readtime-2.0[${PYTHON_USEDEP}]
- >=dev-python/regex-2022.4.24[${PYTHON_USEDEP}]
- >=dev-python/requests-2.26[${PYTHON_USEDEP}]
- social? (
- >=dev-python/pillow-10.2[${PYTHON_USEDEP}]
- >=media-gfx/cairosvg-2.5[${PYTHON_USEDEP}]
- )
-"
-BDEPEND="
- >=dev-python/trove-classifiers-2023.10.18[${PYTHON_USEDEP}]
-"
-# mkdocs-material-extensions depends on mkdocs-material creating a circular dep
-PDEPEND="
- >=dev-python/mkdocs-material-extensions-1.2[${PYTHON_USEDEP}]
-"
-
-PATCHES=(
- # simplify pyproject to remove extra deps for metadata
- "${FILESDIR}/${PN}-8.5.7-simplify-build.patch"
-)
-
-src_prepare() {
- echo "__version__ = '${PV}'" > gentoo_version.py || die
- distutils-r1_src_prepare
-}
diff --git a/dev-python/mkdocs-material/mkdocs-material-9.5.19.ebuild b/dev-python/mkdocs-material/mkdocs-material-9.5.19.ebuild
index eec1908ef846..5c080c205d27 100644
--- a/dev-python/mkdocs-material/mkdocs-material-9.5.19.ebuild
+++ b/dev-python/mkdocs-material/mkdocs-material-9.5.19.ebuild
@@ -27,7 +27,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 ~riscv x86"
IUSE="social"
RDEPEND="
diff --git a/dev-python/mypy/mypy-1.10.0.ebuild b/dev-python/mypy/mypy-1.10.0.ebuild
index ec7c463de5e8..e1cfc2698f51 100644
--- a/dev-python/mypy/mypy-1.10.0.ebuild
+++ b/dev-python/mypy/mypy-1.10.0.ebuild
@@ -22,7 +22,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
IUSE="+native-extensions"
# stubgen collides with this package: https://bugs.gentoo.org/585594
diff --git a/dev-python/olefile/olefile-0.47.ebuild b/dev-python/olefile/olefile-0.47.ebuild
index 03957c296601..2903433d3ca2 100644
--- a/dev-python/olefile/olefile-0.47.ebuild
+++ b/dev-python/olefile/olefile-0.47.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/outcome/outcome-1.3.0_p0.ebuild b/dev-python/outcome/outcome-1.3.0_p0.ebuild
index a5d4cf52c749..d8061b952075 100644
--- a/dev-python/outcome/outcome-1.3.0_p0.ebuild
+++ b/dev-python/outcome/outcome-1.3.0_p0.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/owslib/Manifest b/dev-python/owslib/Manifest
index 0d51b16988ee..352a761189f4 100644
--- a/dev-python/owslib/Manifest
+++ b/dev-python/owslib/Manifest
@@ -1 +1,2 @@
DIST OWSLib-0.30.0.gh.tar.gz 995826 BLAKE2B 58066b461794d424e646cd148f1c0379c22c17bee144611e4bda71c8410f2d4dbd172e5cad14ff1e33fc3e2a7293985c943eace6284d1830a2533abbe95ecf27 SHA512 2fdad8ac282d78181e2b7953f22db063f760c2f61682967c7d99ac8e12d62345168db978d9599a4093005f520968d4e97fc588f9a9b7d81a87894b08028d42d8
+DIST OWSLib-0.31.0.gh.tar.gz 1041697 BLAKE2B 0fd7e0aa95a07229e171bbf3924a9a7036aa0e201a28c8198fcdd4a462d75b90b0979ffda7d9e20ec30abc284b97362fd195cda67c772f3f96642f1ae89ff753 SHA512 005e6f753472675aef0bd0ead138e9bafce2df4e3530003d4159a2ecf610164487ddeb63cf1dfeb6cb4847c878eb40056ccc77116aac8be658fb322ad650f41d
diff --git a/dev-python/owslib/owslib-0.31.0.ebuild b/dev-python/owslib/owslib-0.31.0.ebuild
new file mode 100644
index 000000000000..2dadaebaf19e
--- /dev/null
+++ b/dev-python/owslib/owslib-0.31.0.ebuild
@@ -0,0 +1,45 @@
+# 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=OWSLib-${PV}
+DESCRIPTION="Library for client programming with Open Geospatial Consortium web service"
+HOMEPAGE="
+ https://geopython.github.io/OWSLib/
+ https://github.com/geopython/owslib/
+ https://pypi.org/project/OWSLib/
+"
+SRC_URI="
+ https://github.com/geopython/${PN}/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/lxml[${PYTHON_USEDEP}]
+ dev-python/python-dateutil[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pillow[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ epytest -o addopts= -m "not online"
+}
diff --git a/dev-python/parse_type/parse_type-0.6.2.ebuild b/dev-python/parse_type/parse_type-0.6.2.ebuild
index f97325f9e254..62f3fb63e97f 100644
--- a/dev-python/parse_type/parse_type-0.6.2.ebuild
+++ b/dev-python/parse_type/parse_type-0.6.2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2023 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -16,7 +16,8 @@ KEYWORDS="amd64 arm64 ~x86"
RDEPEND="
dev-python/parse[${PYTHON_USEDEP}]
- dev-python/six[${PYTHON_USEDEP}]"
+ dev-python/six[${PYTHON_USEDEP}]
+"
distutils_enable_tests pytest
diff --git a/dev-python/pdm/Manifest b/dev-python/pdm/Manifest
index 0a07176819b2..aae197e3b7eb 100644
--- a/dev-python/pdm/Manifest
+++ b/dev-python/pdm/Manifest
@@ -1,2 +1,2 @@
-DIST pdm-2.15.0.tar.gz 2612107 BLAKE2B 51edda53cef30b84e29cc16eafed52e682e5ee50ba48a5e28821c40ababdc0dafe9b193a916c0451b1b463708da934f3f66ddf73f59f7d6f706f3c410fac0302 SHA512 0499ce2b7d48300a379ceaacd6ff5d107006929b8ab7bd017794d5802be8e807725b187a2aba4c11131c23db2acb626d1934d9f95621fde985a133391a6acf0d
DIST pdm-2.15.1.tar.gz 2612654 BLAKE2B 043f4d3ca54cd277f8c6fdd35fb423497eb7b172e085df5bffdd21d9ff5103b112a659fb61c342991211c9630333c713272ba43c65eff52c8dd6b88e4f81e563 SHA512 b6a1028767f154a5a594cd8523d31cec16df46e1c63bb73541a516877879480ffc6916316289f67cda0ae5e4740cab448b029a694743b9816604b2eb175a8722
+DIST pdm-2.15.2.tar.gz 2613423 BLAKE2B 91c2d7137223ef143a3a3cb51915ab3b02ef7a6f97798b5a75af05b90c909ade0e1d0b52e6e011956bfb925e76e569dc65bc3258c4397013254c6c5483f1e0ec SHA512 dc58b46fc6a3e8c2ee664b70d7c2112fad3fce5445c390393c4a44230a5e1793baad46baa5b0581fcea49d414a04b0c5dce361b489d82daa4f61f511704c8080
diff --git a/dev-python/pdm/pdm-2.15.0.ebuild b/dev-python/pdm/pdm-2.15.2.ebuild
index bca07476e981..bca07476e981 100644
--- a/dev-python/pdm/pdm-2.15.0.ebuild
+++ b/dev-python/pdm/pdm-2.15.2.ebuild
diff --git a/dev-python/peewee/Manifest b/dev-python/peewee/Manifest
index 55f7d59bd05a..d8b008aff269 100644
--- a/dev-python/peewee/Manifest
+++ b/dev-python/peewee/Manifest
@@ -1 +1,2 @@
DIST peewee-3.17.3.gh.tar.gz 926892 BLAKE2B e5d378da37f7fda74c75d3c3998e3fae79e9b8c7d66ca5a17e76a7b855c9d7ae159b4eedb97f68c9ec13cf00f2268f425b36273e7b09fbd001364e748d13bc95 SHA512 d7d0c716c1b6600275c151894ea8738c3393e554627ae4d8cf0d52548be99cfaf31e5553f51762cedc7f9e66a779ddef60d305a3797e3db71ac1a2178bb45468
+DIST peewee-3.17.5.gh.tar.gz 927674 BLAKE2B 45d23ebec38363a83441c916def460d76c7fe54175497df53de5a904d57b3d2cdbe077f757028b85f6a5eba0e65f1eab9ee99ceea11a00a9b111fce842ccd010 SHA512 b9878450a0759740f28cb6425ba0f14aa92e037bc4c888c13ae24bc38993787e64bff6342edcdf5364b5aac97c405e1c8e53e1140016e6bdbeba6d57d7f339ec
diff --git a/dev-python/peewee/peewee-3.17.5.ebuild b/dev-python/peewee/peewee-3.17.5.ebuild
new file mode 100644
index 000000000000..e1bea70555cd
--- /dev/null
+++ b/dev-python/peewee/peewee-3.17.5.ebuild
@@ -0,0 +1,72 @@
+# 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} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1
+
+DESCRIPTION="Small Python ORM"
+HOMEPAGE="
+ https://github.com/coleifer/peewee/
+ https://pypi.org/project/peewee/
+"
+SRC_URI="
+ https://github.com/coleifer/peewee/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~riscv ~x86"
+IUSE="examples +native-extensions test"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+ native-extensions? ( dev-db/sqlite:3= )
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-python/cython[${PYTHON_USEDEP}]
+ test? (
+ dev-db/postgresql
+ dev-python/psycopg:0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme
+
+src_compile() {
+ if ! use native-extensions; then
+ local -x NO_SQLITE=1
+ fi
+
+ distutils-r1_src_compile
+}
+
+src_test() {
+ initdb -D "${T}"/pgsql || die
+ pg_ctl -w -D "${T}"/pgsql start -o "-h '' -k '${T}'" || die
+ createdb -h "${T}" peewee_test || die
+
+ local -x PEEWEE_PSQL_HOST="${T}"
+ distutils-r1_src_test
+
+ pg_ctl -w -D "${T}"/pgsql stop || die
+}
+
+python_test() {
+ "${EPYTHON}" runtests.py -v 2 || die "tests failed under ${EPYTHON}"
+}
+
+python_install_all() {
+ use examples && DOCS=( examples/ )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pexpect/pexpect-4.9.0.ebuild b/dev-python/pexpect/pexpect-4.9.0.ebuild
index 91d01de90cbd..3dd24ea37b3c 100644
--- a/dev-python/pexpect/pexpect-4.9.0.ebuild
+++ b/dev-python/pexpect/pexpect-4.9.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
@@ -33,13 +33,32 @@ src_test() {
# workaround new readline defaults
echo "set enable-bracketed-paste off" > "${T}"/inputrc || die
local -x INPUTRC="${T}"/inputrc
+
+ distutils-r1_src_test
+}
+
+python_test() {
local EPYTEST_DESELECT=(
# flaky test on weaker arches
tests/test_performance.py
# requires zsh installed, not worth it
tests/test_replwrap.py::REPLWrapTestCase::test_zsh
+ # flaky
+ tests/test_env.py::TestCaseEnv::test_spawn_uses_env
)
- distutils-r1_src_test
+
+ case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # TODO: changes in python3.13's prompt?
+ tests/test_replwrap.py::REPLWrapTestCase::test_python
+ tests/test_replwrap.py::REPLWrapTestCase::test_no_change_prompt
+ )
+ ;;
+ esac
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
}
python_install_all() {
diff --git a/dev-python/pillow/files/pillow-10.3.0-py313.patch b/dev-python/pillow/files/pillow-10.3.0-py313.patch
new file mode 100644
index 000000000000..1574d6be3cef
--- /dev/null
+++ b/dev-python/pillow/files/pillow-10.3.0-py313.patch
@@ -0,0 +1,23 @@
+From 57399ce204d79c74c80612c622bb788e20d786e8 Mon Sep 17 00:00:00 2001
+From: Andrew Murray <radarhere@users.noreply.github.com>
+Date: Fri, 10 May 2024 22:43:56 +1000
+Subject: [PATCH] Parse _version contents instead of using exec()
+
+---
+ setup.py | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/setup.py b/setup.py
+index 7d8e1c1ee21..abdd87ea252 100644
+--- a/setup.py
++++ b/setup.py
+@@ -23,8 +23,7 @@
+ def get_version():
+ version_file = "src/PIL/_version.py"
+ with open(version_file, encoding="utf-8") as f:
+- exec(compile(f.read(), version_file, "exec"))
+- return locals()["__version__"]
++ return f.read().split('"')[1]
+
+
+ configuration = {}
diff --git a/dev-python/pillow/pillow-10.3.0.ebuild b/dev-python/pillow/pillow-10.3.0.ebuild
index 55744a71d89c..3cb829df1d1f 100644
--- a/dev-python/pillow/pillow-10.3.0.ebuild
+++ b/dev-python/pillow/pillow-10.3.0.ebuild
@@ -69,6 +69,8 @@ distutils_enable_tests pytest
PATCHES=(
# https://github.com/python-pillow/pillow/pull/7634
"${FILESDIR}/${PN}-10.2.0-cross.patch"
+ # https://github.com/python-pillow/Pillow/pull/8050
+ "${FILESDIR}/${P}-py313.patch"
)
usepil() {
diff --git a/dev-python/pip/pip-24.0.ebuild b/dev-python/pip/pip-24.0.ebuild
index 0ab16b791146..f6b669db1929 100644
--- a/dev-python/pip/pip-24.0.ebuild
+++ b/dev-python/pip/pip-24.0.ebuild
@@ -25,8 +25,8 @@ SRC_URI="
LICENSE="MIT"
# bundled deps
LICENSE+=" Apache-2.0 BSD BSD-2 ISC LGPL-2.1+ MPL-2.0 PSF-2"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
SLOT="0"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test-rust"
RDEPEND="
@@ -109,6 +109,15 @@ python_test() {
fi
case ${EPYTHON} in
+ python3.13)
+ EPYTEST_DESELECT+=(
+ # hacky upstream time mocking stopped working, they have it
+ # failing on CI already too
+ tests/unit/test_base_command.py::test_log_command_success
+ tests/unit/test_base_command.py::test_log_command_error
+ tests/unit/test_base_command.py::test_log_file_command_error
+ )
+ ;;
python3.10)
EPYTEST_DESELECT+=(
# no clue why they fail
@@ -122,7 +131,7 @@ python_test() {
local -x PIP_DISABLE_PIP_VERSION_CHECK=1
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
local EPYTEST_XDIST=1
- epytest -m "not network"
+ epytest -m "not network" -o tmp_path_retention_policy=all
}
python_install_all() {
diff --git a/dev-python/ply/ply-3.11-r2.ebuild b/dev-python/ply/ply-3.11-r2.ebuild
index cf7f1a17a889..807b605006c1 100644
--- a/dev-python/ply/ply-3.11-r2.ebuild
+++ b/dev-python/ply/ply-3.11-r2.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
# please keep this ebuild at EAPI 7 -- sys-apps/portage dep
diff --git a/dev-python/poetry-plugin-export/Manifest b/dev-python/poetry-plugin-export/Manifest
index 70b648701017..714b3ff1162b 100644
--- a/dev-python/poetry-plugin-export/Manifest
+++ b/dev-python/poetry-plugin-export/Manifest
@@ -1,3 +1,2 @@
-DIST poetry_plugin_export-1.6.0.tar.gz 29265 BLAKE2B 90690afe197fd109d5fc5ae4566675a6a1e5e4df50cd814370146501389ba3bb0e78c2be2878cac322548ea5be065ef68f5b28a6d79a003d0f7b31c149ad0214 SHA512 d071f69ace98dbc23a3b129ba7fb30c4e6eac07138f4ee5156c266150f8f025f8b69c61dfadd90d29e1895c70d448fc44a9b5cc502024f00e1657247ed3310bd
-DIST poetry_plugin_export-1.7.0.tar.gz 29196 BLAKE2B dc3db16ceee5cc727c865e141527ce4c854b2b68050ab8e4c7d03a2912f8fc7c3310653c098510198aea6254b35c875d9e837e129d327ecf0c2bec8f47c88c61 SHA512 9f458491d90b847c896416666cbd1517a1833d355ed0e59df6ae00603ef53383434f02eeb8a31069efeb9a99b1b93abd0a9b7647c9e2ff67976858be458ac95c
DIST poetry_plugin_export-1.7.1.tar.gz 29656 BLAKE2B 130eb35064104c3f22958816447ff674d1f5aed657ada2fe23a635de52338cb736f631b622b0641aae308d69494eb939a1ea659e33fc6227bb742ee01335ae15 SHA512 d472d8e4d6eb803587722854be912009a9bc0a8f86ee0e3ef0046f385ed59236af229109dae85198e3a205702cff86780576939e518fa797f3e5093537a0d2f1
+DIST poetry_plugin_export-1.8.0.tar.gz 29840 BLAKE2B 67748605964f90120be8a696b454497e53f9ff8c739a09930e31fef19623f05552b069a5c572a1a32a0ad68ee85e760901f61bfdf8ba35351b982863e250d4ed SHA512 90cbf0e79787611a4d78c6ce637d4087d375aa25e65489d770d13f2a769d9919d76512b3fad70073073a83fe41ec42a8925c8b27983d84458007356b3ec8409d
diff --git a/dev-python/poetry-plugin-export/poetry-plugin-export-1.7.0.ebuild b/dev-python/poetry-plugin-export/poetry-plugin-export-1.7.0.ebuild
deleted file mode 100644
index 2ab9e9d9f252..000000000000
--- a/dev-python/poetry-plugin-export/poetry-plugin-export-1.7.0.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=poetry
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A plugin that allows the export of locked packages to various formats"
-HOMEPAGE="
- https://python-poetry.org/
- https://github.com/python-poetry/poetry-plugin-export
- https://pypi.org/project/poetry-plugin-export/"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-RDEPEND="
- >=dev-python/poetry-core-1.8.0[${PYTHON_USEDEP}]
-"
-
-DEPEND="
- test? (
- dev-python/poetry[${PYTHON_USEDEP}]
- >=dev-python/pytest-mock-3.9[${PYTHON_USEDEP}]
- >=dev-python/pytest-xdist-3.1[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/poetry-plugin-export/poetry-plugin-export-1.6.0.ebuild b/dev-python/poetry-plugin-export/poetry-plugin-export-1.8.0.ebuild
index bb1c64954424..1a307bc0c73f 100644
--- a/dev-python/poetry-plugin-export/poetry-plugin-export-1.6.0.ebuild
+++ b/dev-python/poetry-plugin-export/poetry-plugin-export-1.8.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -24,7 +24,7 @@ RDEPEND="
DEPEND="
test? (
- dev-python/poetry[${PYTHON_USEDEP}]
+ >=dev-python/poetry-1.7.0[${PYTHON_USEDEP}]
>=dev-python/pytest-mock-3.9[${PYTHON_USEDEP}]
>=dev-python/pytest-xdist-3.1[${PYTHON_USEDEP}]
)
diff --git a/dev-python/poetry/Manifest b/dev-python/poetry/Manifest
index 6f518beb1cab..948b21bd7e21 100644
--- a/dev-python/poetry/Manifest
+++ b/dev-python/poetry/Manifest
@@ -1,4 +1,2 @@
-DIST poetry-1.7.1.tar.gz 1483927 BLAKE2B d32f84cbed6f895678fba723700504cafe2bb7b1de0be0f289c0606b3c775d02e4172d74aafe58f29f9e2b5b9cb0f614b902bb9efa55ab1077a6689a8b4d331f SHA512 bf3654e9de71da35d7adfc239797dbed9813a2a1bb585b0bd9ad398706ad1628430422d0ebe7d9c3dcc1f619ad1a1a2073e9d9d3296354bf2f14a1aed5a5444e
-DIST poetry-1.8.0.tar.gz 1514968 BLAKE2B 6ef6b8db6cd32c3c8d9a0759ebbfcfd4fafd79a4d236a5f48d7d1abc2d31bd93ee00686bf3623c5fbec212001dc1f2c4afce41f660b1404c39ad04815d364275 SHA512 ef2b3c6ea66d1d565ba8e17f0e4210e4406c08dd2d947deed85eb667ebfd618c3148ee0b67b5b2a020c7ddfb3fc692859de19e421c449954019d7a4b7942dd3d
-DIST poetry-1.8.1.tar.gz 1514978 BLAKE2B 663b4db56e3a78a156c6f90eb2c34160c3d9a4f37762ff9df8826aabb59ba2d297f60c19a260e91bf34b40717a577fbfbd3fe9f4dc1ad9ca635a3c552da633a5 SHA512 b0d1240bdf20e46cc152e128351a4ed1b2aea86bd34a0edba662c6be403535bcf7339fdb2670807e6294f3043d2dd6296d085c03abccfd1c2c89216ddefe093b
DIST poetry-1.8.2.tar.gz 1516966 BLAKE2B 6ca39b426a4117d0c2c3f12b9151d621d629f746e51ca77cda8d7f67ae2493ea9ecb7dd02f69cad3f346579fc3bb16b1117c0dad0a148763bb439c35eac673a5 SHA512 0151c264c2f353753ab7c5a248cdd30e60e33505fd915d841e789a37b18cc06f28b4f987144cd3dbf915e23f6947f6b17cb8fa316b34ce866b6b3559e73b8ddc
+DIST poetry-1.8.3.tar.gz 1518910 BLAKE2B 87c06f9d72c7fbe9f821d8a1de66028d64dfb06a274d67f14d49030c0d9a21f702fc9a5c35fa3a1e75d11c8db01516182f8523e9c466398b305d908e0e02d211 SHA512 72e604e246ec8426a29151caae81bf6b0495d17af519a41a7b934f8d50496dbf77605ea3f2e03bd41fb75a0c97d274987ac0359004544ea6ea19dcc118129e05
diff --git a/dev-python/poetry/poetry-1.7.1.ebuild b/dev-python/poetry/poetry-1.7.1.ebuild
deleted file mode 100644
index 694439305200..000000000000
--- a/dev-python/poetry/poetry-1.7.1.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=poetry
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A frontend for poetry - a python dependency management and packaging tool"
-HOMEPAGE="
- https://python-poetry.org/
- https://github.com/python-poetry/poetry
- https://pypi.org/project/poetry/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-# dev-python/build: 1.0 breaks backward compatibility
-# https://github.com/python-poetry/poetry/issues/8434
-RDEPEND="
- >=dev-python/poetry-core-1.8.1[${PYTHON_USEDEP}]
- >=dev-python/poetry-plugin-export-1.6.0[${PYTHON_USEDEP}]
- >=dev-python/build-1.0.3[${PYTHON_USEDEP}]
- >=dev-python/cachecontrol-0.13.0[${PYTHON_USEDEP}]
- >=dev-python/cleo-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/crashtest-0.4.1[${PYTHON_USEDEP}]
- >=dev-python/dulwich-0.21.2[${PYTHON_USEDEP}]
- >=dev-python/fastjsonschema-2.18.0[${PYTHON_USEDEP}]
- >=dev-python/installer-0.7.0[${PYTHON_USEDEP}]
- >=dev-python/keyring-24.0.0[${PYTHON_USEDEP}]
- >=dev-python/packaging-20.5[${PYTHON_USEDEP}]
- >=dev-python/pexpect-4.7.0[${PYTHON_USEDEP}]
- >=dev-python/pkginfo-1.9.4[${PYTHON_USEDEP}]
- >=dev-python/platformdirs-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.26[${PYTHON_USEDEP}]
- >=dev-python/requests-toolbelt-0.10.1[${PYTHON_USEDEP}]
- >=dev-python/shellingham-1.5.0[${PYTHON_USEDEP}]
- >=dev-python/tomlkit-0.11.6[${PYTHON_USEDEP}]
- >=dev-python/trove-classifiers-2022.5.19[${PYTHON_USEDEP}]
- >=dev-python/urllib3-1.26.0[${PYTHON_USEDEP}]
- >=dev-python/virtualenv-20.23.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
- ' 3.10)
-"
-
-BDEPEND="
- test? (
- >=dev-python/deepdiff-6.3.1[${PYTHON_USEDEP}]
- >=dev-python/httpretty-1.0[${PYTHON_USEDEP}]
- >=dev-python/pytest-mock-3.9[${PYTHON_USEDEP}]
- >=dev-python/pytest-xdist-3.1[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- # unpin
- sed -e 's:\^:>=:' \
- -e '/poetry-core/s:":">=:' \
- -e 's:,<[0-9.]*::' \
- -i pyproject.toml || die
-
- distutils-r1_src_prepare
-}
-
-EPYTEST_DESELECT=(
- # Tests require network (they run `pip install ...`)
- tests/installation/test_chef.py::test_isolated_env_install_success
- tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_directories
- tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_git
- tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_git_with_subdirectories
- tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_non_wheel_files
- tests/installation/test_installer.py::test_installer_with_pypi_repository
- tests/installation/test_pip_installer.py::test_uninstall_git_package_nspkg_pth_cleanup
- tests/masonry/builders/test_editable_builder.py::test_builder_setup_generation_runs_with_pip_editable
-
- # Works with network, but otherwise: Backend 'poetry.core.masonry.api' is not available.
- tests/installation/test_chef.py::test_prepare_sdist
- tests/installation/test_chef.py::test_prepare_directory
- tests/installation/test_chef.py::test_prepare_directory_with_extensions
- tests/installation/test_chef.py::test_prepare_directory_editable
-)
-
-distutils_enable_tests pytest
diff --git a/dev-python/poetry/poetry-1.8.0.ebuild b/dev-python/poetry/poetry-1.8.0.ebuild
deleted file mode 100644
index 42bd49fbb433..000000000000
--- a/dev-python/poetry/poetry-1.8.0.ebuild
+++ /dev/null
@@ -1,96 +0,0 @@
-# Copyright 2023-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=poetry
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="A frontend for poetry - a python dependency management and packaging tool"
-HOMEPAGE="
- https://python-poetry.org/
- https://github.com/python-poetry/poetry
- https://pypi.org/project/poetry/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-# dev-python/build: 1.0 breaks backward compatibility
-# https://github.com/python-poetry/poetry/issues/8434
-RDEPEND="
- >=dev-python/poetry-core-1.9.0[${PYTHON_USEDEP}]
- >=dev-python/poetry-plugin-export-1.6.0[${PYTHON_USEDEP}]
- >=dev-python/build-1.0.3[${PYTHON_USEDEP}]
- >=dev-python/cachecontrol-0.14.0[${PYTHON_USEDEP}]
- >=dev-python/cleo-2.1.0[${PYTHON_USEDEP}]
- >=dev-python/crashtest-0.4.1[${PYTHON_USEDEP}]
- >=dev-python/dulwich-0.21.2[${PYTHON_USEDEP}]
- >=dev-python/fastjsonschema-2.18.0[${PYTHON_USEDEP}]
- >=dev-python/installer-0.7.0[${PYTHON_USEDEP}]
- >=dev-python/keyring-24.0.0[${PYTHON_USEDEP}]
- >=dev-python/packaging-20.5[${PYTHON_USEDEP}]
- >=dev-python/pexpect-4.7.0[${PYTHON_USEDEP}]
- >=dev-python/pkginfo-1.9.4[${PYTHON_USEDEP}]
- >=dev-python/platformdirs-3.0.0[${PYTHON_USEDEP}]
- >=dev-python/requests-2.26[${PYTHON_USEDEP}]
- >=dev-python/requests-toolbelt-1.0.0[${PYTHON_USEDEP}]
- >=dev-python/shellingham-1.5.0[${PYTHON_USEDEP}]
- >=dev-python/tomlkit-0.11.6[${PYTHON_USEDEP}]
- >=dev-python/trove-classifiers-2022.5.19[${PYTHON_USEDEP}]
- >=dev-python/urllib3-1.26.0[${PYTHON_USEDEP}]
- >=dev-python/virtualenv-20.23.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}]
- ' 3.10)
-"
-
-BDEPEND="
- test? (
- >=dev-python/deepdiff-6.3.1[${PYTHON_USEDEP}]
- >=dev-python/httpretty-1.0[${PYTHON_USEDEP}]
- >=dev-python/pytest-mock-3.9[${PYTHON_USEDEP}]
- >=dev-python/pytest-xdist-3.1[${PYTHON_USEDEP}]
- )
-"
-
-src_prepare() {
- # unpin
- sed -e 's:\^:>=:' \
- -e '/poetry-core/s:":">=:' \
- -e 's:,<[0-9.]*::' \
- -i pyproject.toml || die
-
- distutils-r1_src_prepare
-}
-
-EPYTEST_DESELECT=(
- # Tests require network (they run `pip install ...`)
- tests/installation/test_chef.py::test_isolated_env_install_success
- tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_directories
- tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_git
- tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_git_with_subdirectories
- tests/installation/test_executor.py::test_executor_should_write_pep610_url_references_for_non_wheel_files
- tests/installation/test_installer.py::test_installer_with_pypi_repository
- tests/installation/test_pip_installer.py::test_uninstall_git_package_nspkg_pth_cleanup
- tests/masonry/builders/test_editable_builder.py::test_builder_setup_generation_runs_with_pip_editable
-
- # Works with network, but otherwise: Backend 'poetry.core.masonry.api' is not available.
- tests/installation/test_chef.py::test_prepare_sdist
- tests/installation/test_chef.py::test_prepare_directory
- tests/installation/test_chef.py::test_prepare_directory_with_extensions
- tests/installation/test_chef.py::test_prepare_directory_editable
-
- # Internal test for lockfile being up-to-date
- # Meaningless, also sdist does not include lockfile
- tests/installation/test_installer.py::test_not_fresh_lock
-
- # TODO
- tests/installation/test_executor.py::test_executor_known_hashes
- tests/utils/env/test_env_manager.py::test_create_venv_finds_no_python_executable
-)
-
-distutils_enable_tests pytest
diff --git a/dev-python/poetry/poetry-1.8.1.ebuild b/dev-python/poetry/poetry-1.8.3.ebuild
index 054775bec539..ea7a34a37578 100644
--- a/dev-python/poetry/poetry-1.8.1.ebuild
+++ b/dev-python/poetry/poetry-1.8.3.ebuild
@@ -19,8 +19,6 @@ LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
-# dev-python/build: 1.0 breaks backward compatibility
-# https://github.com/python-poetry/poetry/issues/8434
RDEPEND="
>=dev-python/poetry-core-1.9.0[${PYTHON_USEDEP}]
>=dev-python/poetry-plugin-export-1.6.0[${PYTHON_USEDEP}]
@@ -34,7 +32,7 @@ RDEPEND="
>=dev-python/keyring-24.0.0[${PYTHON_USEDEP}]
>=dev-python/packaging-23.1[${PYTHON_USEDEP}]
>=dev-python/pexpect-4.7.0[${PYTHON_USEDEP}]
- >=dev-python/pkginfo-1.9.4[${PYTHON_USEDEP}]
+ >=dev-python/pkginfo-1.10[${PYTHON_USEDEP}]
>=dev-python/platformdirs-3.0.0[${PYTHON_USEDEP}]
>=dev-python/requests-2.26[${PYTHON_USEDEP}]
>=dev-python/requests-toolbelt-1.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/priority/priority-2.0.0-r1.ebuild b/dev-python/priority/priority-2.0.0-r1.ebuild
index a472e63334c6..9a825f99c401 100644
--- a/dev-python/priority/priority-2.0.0-r1.ebuild
+++ b/dev-python/priority/priority-2.0.0-r1.ebuild
@@ -1,11 +1,10 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
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 pypi
@@ -22,19 +21,8 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv
BDEPEND="
test? (
- $(python_gen_cond_dep '
- >=dev-python/hypothesis-3.4.2[${PYTHON_USEDEP}]
- ' "${PYTHON_TESTED[@]}")
+ >=dev-python/hypothesis-3.4.2[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
-
-python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Skipping tests on ${EPYTHON} (xfail)"
- return
- fi
-
- epytest
-}
diff --git a/dev-python/psycopg/Manifest b/dev-python/psycopg/Manifest
index dc92e609ee66..0b2f95ea1ae5 100644
--- a/dev-python/psycopg/Manifest
+++ b/dev-python/psycopg/Manifest
@@ -1,3 +1,4 @@
DIST psycopg-3.1.18.gh.tar.gz 503513 BLAKE2B 35e5e4cb4e5355189b387fd17e1b51d4baf08f130cc5418f9f3cb58d6baf097953b4f6a7df31579a1d87e5269e110c4476d865fe12416e2fe62abbb52e0c141c SHA512 1e27eec49f3ae99f1fec68816dff3974aa9b1f526df45ccca295c7c6703cc309ca4f8f65d7e3450b628906a938c65f8cbd1a1f3cb6a41b6e51dc5e220985af39
+DIST psycopg-3.1.19.gh.tar.gz 507073 BLAKE2B c10e2ba83f4a3bb0646d86c0f1311ae43e3fafbf9eb8ae91f8a77941dd2ef21d22c5fdeca724399bbcf5f7f010f5a3b0f78979720efec8f25613abbe568dabc9 SHA512 a7d02570632a28080ffd99fa492c2f1af623e7ca55e57e8c5d4664aff4d033ae85fc21cfbb1f85a90c48e01944ed1be68e857b5cb34c0547b51ca465bac0a361
DIST psycopg2-2.9.4.tar.gz 384017 BLAKE2B 4bc0afcc890c8a257c1ccd5c6e4e5301857a80f8b1428aa46c1473c9e18f5d2914a2e592c13336b06106217bb334d9b0321835bdd123f1627cbeb29dedf97bf7 SHA512 259088e42e0ab0d8a1a0ccf04f5e560f32c6179b4a0a0059e91bcf269baa8f4b0f1f949c332c640a2438c927a29b2c144078a861f8e18ba9c764da7c93c73b8d
DIST psycopg2-2.9.9.tar.gz 384926 BLAKE2B 8418fca1329703cedfc86be74d85cae5133a0604bb8a21fa43e5359a46626d38ef227d0cd8fbbeb497e2db517a469d7f3e86b74ef9163617a547e999073a6b4c SHA512 a691fd09762221e854861dedce37b05e5354e0701feea470a6d5046960056ef02a8c9ecfa751adeba485271ea7d5834643b7d3a3c3f3270087f5ed9c68509f5f
diff --git a/dev-python/psycopg/psycopg-3.1.19.ebuild b/dev-python/psycopg/psycopg-3.1.19.ebuild
new file mode 100644
index 000000000000..4a1ad4e4210d
--- /dev/null
+++ b/dev-python/psycopg/psycopg-3.1.19.ebuild
@@ -0,0 +1,109 @@
+# 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} pypy3 )
+
+inherit distutils-r1
+
+DESCRIPTION="PostgreSQL database adapter for Python"
+HOMEPAGE="
+ https://www.psycopg.org/psycopg3/
+ https://github.com/psycopg/psycopg/
+ https://pypi.org/project/psycopg/
+"
+SRC_URI="
+ https://github.com/psycopg/psycopg/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
+IUSE="+native-extensions"
+
+DEPEND="
+ native-extensions? (
+ >=dev-db/postgresql-8.1:=
+ )
+ !native-extensions? (
+ >=dev-db/postgresql-8.1:*
+ )
+"
+RDEPEND="
+ ${DEPEND}
+ >=dev-python/typing-extensions-4.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ dev-python/tomli[${PYTHON_USEDEP}]
+ )
+ test? (
+ >=dev-db/postgresql-8.1[server]
+ dev-python/anyio[${PYTHON_USEDEP}]
+ dev-python/dnspython[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_compile() {
+ # Python code + ctypes backend
+ cd psycopg || die
+ distutils-r1_python_compile
+
+ # optional C backend
+ if use native-extensions && [[ ${EPYTHON} != pypy3 ]]; then
+ local DISTUTILS_USE_PEP517=standalone
+ cd ../psycopg_c || die
+ distutils-r1_python_compile
+ fi
+ cd .. || die
+}
+
+src_test() {
+ rm -r psycopg{,_c} || die
+
+ initdb -D "${T}"/pgsql || die
+ # TODO: random port
+ pg_ctl -w -D "${T}"/pgsql start \
+ -o "-h '' -k '${T}'" || die
+ createdb -h "${T}" test || die
+
+ local -x PSYCOPG_TEST_DSN="host=${T} dbname=test"
+ distutils-r1_src_test
+
+ pg_ctl -w -D "${T}"/pgsql stop || die
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # tests for the psycopg_pool package
+ tests/pool
+ # some broken mypy magic
+ tests/test_module.py::test_version
+ tests/test_module.py::test_version_c
+ tests/test_typing.py
+ tests/crdb/test_typing.py
+ # TODO, relying on undefined ordering in Python?
+ tests/test_dns_srv.py::test_srv
+ )
+
+ local impls=( python )
+ if use native-extensions && [[ ${EPYTHON} != pypy3 ]]; then
+ impls+=( c )
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PSYCOPG_IMPL
+ for PSYCOPG_IMPL in "${impls[@]}"; do
+ einfo "Testing with ${PSYCOPG_IMPL} implementation ..."
+ # leak and timing tests are fragile whereas slow tests are slow
+ epytest -p anyio -k "not leak" \
+ -m "not timing and not slow and not flakey"
+ done
+}
diff --git a/dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild b/dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild
index e556ec6fbaed..a2557c1672e5 100644
--- a/dev-python/ptyprocess/ptyprocess-0.7.0-r1.ebuild
+++ b/dev-python/ptyprocess/ptyprocess-0.7.0-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
@@ -18,4 +18,11 @@ LICENSE="ISC"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~x64-macos"
-distutils_enable_tests pytest
+distutils_enable_tests unittest
+
+src_prepare() {
+ distutils-r1_src_prepare
+
+ # https://github.com/pexpect/ptyprocess/pull/75
+ sed -i -e '/makeSuite/d' tests/test_invalid_binary.py || die
+}
diff --git a/dev-python/puremagic/Manifest b/dev-python/puremagic/Manifest
index 97fd98d9a880..e41c8c027c9e 100644
--- a/dev-python/puremagic/Manifest
+++ b/dev-python/puremagic/Manifest
@@ -1,3 +1,2 @@
-DIST puremagic-1.21.gh.tar.gz 296990 BLAKE2B 78709c296ee8599009f07f8fadfaa60957895d1a45d3fd5f12605a54901e2f0ab878abdb4dc121a77d2c4da922b2f5a173d13ef660a2265298716a26da28f293 SHA512 cc2c76a2ddcfacdfce778e565b07692dcd247723aa85c562ba4d8c70992f79a8f13a7bc33f1468ee37298c266d35d76febe2e6164fdc145077d68b05cfa2e1c4
DIST puremagic-1.22.gh.tar.gz 304145 BLAKE2B 8165ae8527462223255a04c84c3e9f15b76298a8e8ad1f38ae3f92c6e359d514efa543cb290d45d37c2d5aa44a6e082e626cf0ed570c40c905f570b8569f43bf SHA512 d447861e9f7a15f307fdf0ee1e34c5f03304dabb783ba4bfdbfa304fdfa0071b9f51ee9b0a3835417057b9fe4143cf5277a0be451024dc253a88bb94b05b9a99
DIST puremagic-1.23.gh.tar.gz 306804 BLAKE2B b9da78fc20ee77dac85065f85a8770273ece5f97c372c42e274d272c3c389cca2ed1433774f96d1b55dff01ff542c63ad5093befa5c3530b052de32ffa142a77 SHA512 9bdb6ae0158ecf5d87e82de112ce9d988ac2b4a29d06dd06cba9c4675fe11d270c7cab611f8cb8ffb5ccd622be66fe43b441f203d27e9c4c9feb55bb81036fce
diff --git a/dev-python/puremagic/puremagic-1.21.ebuild b/dev-python/puremagic/puremagic-1.21.ebuild
deleted file mode 100644
index 42b9f8f2bd7b..000000000000
--- a/dev-python/puremagic/puremagic-1.21.ebuild
+++ /dev/null
@@ -1,32 +0,0 @@
-# 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
-
-DESCRIPTION="Pure python implementation of magic file detection"
-HOMEPAGE="
- https://github.com/cdgriffith/puremagic/
- https://pypi.org/project/puremagic/
-"
-SRC_URI="
- https://github.com/cdgriffith/${PN}/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~x86"
-
-DOCS=( CHANGELOG.md README.rst )
-
-distutils_enable_tests pytest
-
-python_test() {
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest
-}
diff --git a/dev-python/puremagic/puremagic-1.22.ebuild b/dev-python/puremagic/puremagic-1.22.ebuild
index 51b9731459c1..42b9f8f2bd7b 100644
--- a/dev-python/puremagic/puremagic-1.22.ebuild
+++ b/dev-python/puremagic/puremagic-1.22.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="amd64 ~x86"
DOCS=( CHANGELOG.md README.rst )
diff --git a/dev-python/py/py-1.11.0-r1.ebuild b/dev-python/py/py-1.11.0-r1.ebuild
index 1995f64c84d4..c18d0693c000 100644
--- a/dev-python/py/py-1.11.0-r1.ebuild
+++ b/dev-python/py/py-1.11.0-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
@@ -22,6 +22,7 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv
RESTRICT=test
BDEPEND="
- dev-python/setuptools-scm[${PYTHON_USEDEP}]"
+ dev-python/setuptools-scm[${PYTHON_USEDEP}]
+"
distutils_enable_tests pytest
diff --git a/dev-python/pygraphviz/Manifest b/dev-python/pygraphviz/Manifest
index a20353c61720..ecd5fc873fc8 100644
--- a/dev-python/pygraphviz/Manifest
+++ b/dev-python/pygraphviz/Manifest
@@ -1 +1,2 @@
DIST pygraphviz-1.12.tar.gz 104941 BLAKE2B 5c2d119c66837d13511ef4756093b159f45ccb2888eb2b86c1d016837059ed34bdc5cb7e69eeff013642d92ec0c2b4a1149316b0baaa742c49a34945fd2563e0 SHA512 2407fdd7de3b2f7f1d9f9e3e3fe0f19c4faad4a72db33a0b4341a01f98eecd4d240079f2d0ea5cf68a5e10236f11fd84e55fd44518611efde2fab7590e3aae90
+DIST pygraphviz-1.13.tar.gz 104642 BLAKE2B 6111c1b811d5359da673f9c43719d21e86e93e7e82e5819872fed6f87ebb74efb87dba40b5dac737b93bffcd51683f143528a135a76e3d6f62615593fdc22b88 SHA512 3159fd9fb1226974c3a6289ebc437eed394021a7fc41669e29879fa6fd5e5cb809c808a4016cfb1afaf30dc10e467e8b0fe5c3b71fb9a1f889efcf5ae6ff3597
diff --git a/dev-python/pygraphviz/pygraphviz-1.13.ebuild b/dev-python/pygraphviz/pygraphviz-1.13.ebuild
new file mode 100644
index 000000000000..80df125208c8
--- /dev/null
+++ b/dev-python/pygraphviz/pygraphviz-1.13.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 pypi
+
+DESCRIPTION="Python wrapper for the Graphviz Agraph data structure"
+HOMEPAGE="
+ https://pygraphviz.github.io/
+ https://github.com/pygraphviz/pygraphviz/
+ https://pypi.org/project/pygraphviz/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~x86-linux ~ppc-macos ~x64-macos"
+
+# Note: only C API of graphviz is used, PYTHON_USEDEP unnecessary.
+DEPEND="
+ media-gfx/graphviz
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ dev-lang/swig:0
+"
+
+distutils_enable_tests pytest
+
+src_configure() {
+ swig -python pygraphviz/graphviz.i || die
+}
+
+python_test() {
+ cd "${BUILD_DIR}"/install || die
+ epytest
+}
+
+python_install_all() {
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/pyperscan/pyperscan-0.3.0.ebuild b/dev-python/pyperscan/pyperscan-0.3.0.ebuild
index e6bc675eb990..8e53b5086ccf 100644
--- a/dev-python/pyperscan/pyperscan-0.3.0.ebuild
+++ b/dev-python/pyperscan/pyperscan-0.3.0.ebuild
@@ -111,4 +111,8 @@ RDEPEND="
"
DEPEND="${RDEPEND}"
+QA_FLAGS_IGNORED="
+ usr/lib/python.*/site-packages/pyperscan/_pyperscan.abi3.so
+"
+
distutils_enable_tests pytest
diff --git a/dev-python/pyphen/Manifest b/dev-python/pyphen/Manifest
index 1315ec1ba861..b6f0d16bf5a7 100644
--- a/dev-python/pyphen/Manifest
+++ b/dev-python/pyphen/Manifest
@@ -1,2 +1 @@
-DIST pyphen-0.14.0.tar.gz 1986988 BLAKE2B 3513ad1c9fbcc05318764f862a01bc4bbd6ad6a86f120ad93f8ff1d2a979984c35554db85943b5b7423f97e44ea933c64a3bf9c90aeb18629d215292466581b6 SHA512 5e242de2ecd5e951b2e1925df724013c14cea14729e8e0c132ab233c82406b37cc8d1d21cbd1edd748811fa6826a79da7a5ff9dfa859315840560cacae523e13
DIST pyphen-0.15.0.tar.gz 2072615 BLAKE2B ce5a1d16ade5d1e894b941aa02749de5793d1b11554b232d0a475c687551843171da5c8fb31fa686af524c12693f87baf8e61a7c07e71935ca159fba42e4353f SHA512 c73ec781c92fbac1daadbf435b028a1eb6476df2bec40ceb039d394ae928ab3b3eff4f3ffaf23d847b89e766810a9dd153f6bbcb9678a9f61f65d84206042640
diff --git a/dev-python/pyphen/pyphen-0.14.0.ebuild b/dev-python/pyphen/pyphen-0.14.0.ebuild
deleted file mode 100644
index f859cc729f99..000000000000
--- a/dev-python/pyphen/pyphen-0.14.0.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=flit
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Python module for hyphenation using hunspell dictionaries"
-HOMEPAGE="
- https://github.com/Kozea/Pyphen/
- https://pypi.org/project/pyphen/
-"
-
-LICENSE="GPL-2+ LGPL-2+ MPL-1.1"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~riscv x86"
-
-distutils_enable_tests pytest
-
-python_test() {
- epytest -o addopts=
-}
diff --git a/dev-python/pyphen/pyphen-0.15.0.ebuild b/dev-python/pyphen/pyphen-0.15.0.ebuild
index 4d5c6fa19549..6b3fd4693f65 100644
--- a/dev-python/pyphen/pyphen-0.15.0.ebuild
+++ b/dev-python/pyphen/pyphen-0.15.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="GPL-2+ LGPL-2+ MPL-1.1"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~riscv x86"
distutils_enable_tests pytest
diff --git a/dev-python/pypiserver/pypiserver-2.1.1.ebuild b/dev-python/pypiserver/pypiserver-2.1.1.ebuild
index 3e6c84c46b98..b584e4c844c6 100644
--- a/dev-python/pypiserver/pypiserver-2.1.1.ebuild
+++ b/dev-python/pypiserver/pypiserver-2.1.1.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="ZLIB"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86"
+KEYWORDS="amd64 arm arm64 ~riscv x86"
RDEPEND="
dev-python/bottle[${PYTHON_USEDEP}]
diff --git a/dev-python/pyproject-fmt-rust/Manifest b/dev-python/pyproject-fmt-rust/Manifest
new file mode 100644
index 000000000000..3a2b115bcfd3
--- /dev/null
+++ b/dev-python/pyproject-fmt-rust/Manifest
@@ -0,0 +1,116 @@
+DIST ahash-0.8.11.crate 43607 BLAKE2B 7dff8e41798ba25df8c4827ff414a182bb25da4825f0119a74916fe775db5445b87be8fc87f7c7f98d3b5053e1d47546f98873de1a942d36e5f308a3fb7dd620 SHA512 47d211b2422de0b381dfe32229faa346406eb7a22dff867dc04c22389609a8671ce3218e662000c49891a06c259d82e0ff4413740f007729d80e097a6c3f0d9d
+DIST aho-corasick-1.1.3.crate 183311 BLAKE2B 8dfcbba0b9d94e55eae739b16f5c6474baa43ee7854c5ca792f426a9f46fb0eece79cd493b804e51449181bcad338b96819fe977c02c9907654d713e26b9f830 SHA512 ba422a54688c4678fcf16e34fdf3ed06c333e6e3fc8b75af9272a215add494d43ebaef319021134b61327fd5d3572aec0dc655b714ffb3bc71ba3c265c9ebb69
+DIST any_ascii-0.1.7.crate 220683 BLAKE2B 77342934676213b4898158ab03f1f73826d8aba212c47ded874d42c7ff8a0d95ccd88950381348fddf895bfc5570fa81ad3459fe10f52ba630c0e50c75dcacaf SHA512 3fe4e0c10c32983c3c725a5930f0bf7c752942c6dd0818b93bae9808e72d5a87725733a85b11cabb8fea630f524fd4b7a13160112f8bb7cc24515bcc384d6dbc
+DIST arc-swap-1.7.1.crate 68512 BLAKE2B 5ddeffd2ae8af4125a5b43d4a0a1afc7948533bf037d8cd3e47603c13b57b156618280d99b840bf318b25b6eb29400ad68499695e182acdc05bc5f621c42ee16 SHA512 070fa8dd17b380b6d7d72f6f45c84e591de9a9770b9662351e7a41af03798bf5e34d185a5fcb948f4d8ac5e210a33acd465c39eff6097662c2442b34ee3dbdff
+DIST autocfg-1.2.0.crate 14808 BLAKE2B 122327d6ffd32e08dc9fbdb4dcf69128b19d56280f9d934311b946741003b40571cdd1f3ef54b2be02c8dc505aea11c962b244d33a92206bf4ee8f6b2b9da432 SHA512 66cbfd13e33b36284cf4c74c8d654f93adcc45893d127d9aaa4c1d183e47336096e72d74e7c17dd481fb7a98931ab6cfec7e4d4165cfb491861d4e3ffe2416fc
+DIST beef-0.5.2.crate 15275 BLAKE2B 95d60fb1840ca26581841ad65a4e8f3f99d5f8d44c569219f4d06ce441bb3a4ba558e231e73a51cd1c6b4d9e4cc6a07942115c134289fb1982dace03049d3a1e SHA512 755fc588acbf730bc9c80dbfc20cd0ef81f792a94da0dd28379ad83a7359ddd4c7b136ba8048dd460bb8652475db3d12814fcbd04eff4ebe8ec8a1bcd024c2aa
+DIST bitflags-1.3.2.crate 23021 BLAKE2B eb990bb27b2bdeb66fd7212ce582cb36e1c616debbac85df642d0c82b25439e6bf9b1e811fac76b59e58ea3c1bbea6170d03a61e8f9a395e4334a0e2e2987eda SHA512 3c698f757b5cc62f815f9a1cce365c3d2dd88e4db71f331dff8bba86c2865f755b81cb4c9bfc59bd86b7643b0943f9e09a7c4f8ad75eb2ab0e714803d0129f62
+DIST bstr-1.9.1.crate 380305 BLAKE2B 52b45bd48874d052636c6b451cc36d8b012808ea5193e0188e5edd09f81d21b8306926cfebb405ad0650ec9aa710f609bacaa773bf854b21f4803dc38bb2eca7 SHA512 67e9f76719310de60f46adf3c39768b4dc078d4c32dc6bdcec1a94cd9f630c5238e427ed84cd6ec25a44f54e84adeb795a0e92060a5372d9fb9ad9f0914e3172
+DIST cfg-if-1.0.0.crate 7934 BLAKE2B e99a5589c11d79d77a4537b34ce0a45d37b981c123b79b807cea836c89fc3926d693458893baca2882448d3d44e3f64e06141f6d916b748daa10b8cc1ae16d1b SHA512 0fb16a8882fd30e86b62c5143b1cb18ab564e84e75bd1f28fd12f24ffdc4a42e0d2e012a99abb606c12efe3c11061ff5bf8e24ab053e550ae083f7d90f6576ff
+DIST countme-3.0.1.crate 10784 BLAKE2B de1803559fab0accab1edcf5db43279dfa3d7b2874f5c0ee300f46ccccc8ce4c5c3d92c5a3c211068430d903f2e9288ea07fff532d84e3c0f80edadb0752a803 SHA512 f4c8c0977c6871ac8b7eab15904789ca53cbb28385a6fc90d880f85afb44bf10602850198c624963c7db04dbee8c97e271865ae2eadfdf840c21792de4f2af47
+DIST deranged-0.3.11.crate 18043 BLAKE2B 738d5a88732e227bb0e0d33c04ab8248a699c7c499100666ffcd78673d1f38ad2d740222ab405e3eaa7a0a6f4596cfef90bd581a1baf77c954dca830c22e74f9 SHA512 48485666d3e50eb7976e91bed36bddbaea80fac4ac664723130069bd7d17893b6d1a2b82a4c3dd61677162e4305ba5ea8aec7bc2793d1b8b92dd1666c204fc43
+DIST derivative-2.2.0.crate 48076 BLAKE2B 56d27e27493c3b818ad45703efda607a0a0d9a48b0d43785b6a013443b8b964b67bb5b5284d242358415c5fb81b86b02079ee7c0595ec07bc658240eb114b887 SHA512 3c65ecdabd2dc202be3d83b06f96b6f68504fe542ede7e2285093c6d360a33ec76a3787c436c6e5ff8f59d430436a4b8ce2f908cf7b2b08cd8b0045de4e5d1da
+DIST either-1.11.0.crate 18973 BLAKE2B 31ece6eb44a367926b5f9ee817f6ac9d93746f5b95c95fab360361f6b3a02160c682d298d115f39615e5b4758953f3f29ece22a72fe4285875dce03483f87486 SHA512 f62a3859afdba762b004d4c766090a25d3bd81e4a14509c3bd0f39b0d433aeff997b39759f7dbc5a012bf3b680fc4510a4b2643d63dda8171bad7403554905ff
+DIST fnv-1.0.7.crate 11266 BLAKE2B 81da85889c91b6567e0f555e37dd915f1bd919719d1ca10c31a6861d7aec29a49ae9c1e8bc500791bf9d6b8dbb318c096d04872c5872a4b1f7d45fbd8e12842d SHA512 2195a4b34a78e2dd9838caf0ee556bf87cbb4a8ef5505aac663b614eb59dcfc0c40f432463ede41ecca57bfe7711f72673d39a85fe03d426f1324097d5628334
+DIST form_urlencoded-1.2.1.crate 8969 BLAKE2B 383d3a197b73fba199220b7708e16d770591ac16725faf4efc1a8c230c569c381870d4a11b8fba623e761e68f9d318630b22101d461e67dd26c67e13a73358a1 SHA512 c65104e2dc08fad572bb31f981700fd43dd29fcff42b01c7ccdbd3d4c23dec12360aed3f1b5fc4766fee386d418a65349b2941b8735f788cb0d35d631a6a8dd1
+DIST futures-0.3.30.crate 53828 BLAKE2B 4e595639500f7147ceb994359ef1656ed096ea679409a5721c05ff84ba439fe4e82563a7cf8dca9aed4cd16b03e89ba1385b0a34feed9d4923871225e131b91e SHA512 98fc67bf1047609c8bb0763c00ab9cb39b6a6d0cb7d993bce4966ddc2492a6578b789e98095981b207ddd73ac4b1dfcd5224b352a0e970eed347537c6fbea43e
+DIST futures-channel-0.3.30.crate 31736 BLAKE2B 57461dbb723fd53daa07b2fe6164125508cc3901e0138d2a60da5c814ade415a3611baa45c71487f1853812282ef358c132785ff40c630408e8544d57eee3483 SHA512 689531748821529c528772a6dd0f27362078ff5803d2e0b431ee5a0ecf8787b5a15262d65d52f48486ded46b88f7a9c477ad95cc2c5a3e8f5f9b9f53f367832c
+DIST futures-core-0.3.30.crate 14071 BLAKE2B 76a9fa5aedd0d4ae8dd9db9639839b6b342125759c1b9f9bbf58aacb4ecca316ff1f24ff8f3c15f559ffbf974e4c2cd02a5418cb4c4d7612dac8449c8234eeb8 SHA512 3c7259ddacbe02e47a84178b75e5f13523bd0c8f8bc0b2375f7ecca60b7075695ee0a5cc4e1c1de26665cf250271173be803661e2f2f53e2a3b96380a8efe7c4
+DIST futures-executor-0.3.30.crate 17744 BLAKE2B 927abec40eab31251409149179baa95a8d025f9cdb848afa83f95439c4768abbf6da8e2163291a086ea0b83b0b650d1e19cb8e15f70369b70efdc70eb3121f6b SHA512 fa65c038e5eeee695b2673cd65cf7529713bef47da373290595b554bc287267ee5cd015ddeda5a22169cc8828717987364584a91a69685cdbfc0fc779abd764f
+DIST futures-io-0.3.30.crate 8910 BLAKE2B c9af4290f45a9fd0839e107fbdfa4abff4f9077ff45b61054670419076f1c4508d7d560d4d86f8cd7ce146e436e531b9f5e0abfed2c4f2406c57be209cfdd498 SHA512 077acf5eab1101917b5b4b4b83347d30d533110d9a34c2de6db1411ffae0f0530f457033c5a5c14249119e89375c9f12127790b46e486dcd003a12a6fad48bc2
+DIST futures-macro-0.3.30.crate 11278 BLAKE2B 6311039db4bd31242e4f45bb7c581bec28eec9da850c47ffd9235c4baef5e5f1c72155f49573b2dc942a9cf246949b79c7d35200d04f91a13b0205cbd33d96c0 SHA512 220b5cc61c744617479d7e8ef9888785a17b9bc26c517c9c4445a39e8be21f111f77e53bfb3d143df18dfde23feccee17e349a84b897eb4d86f94d7ae4f714cc
+DIST futures-sink-0.3.30.crate 7852 BLAKE2B dc768e4ec4c9f9dfb22a20c1c977401d859072b9222e6f77978332f495cbd0f764b175a679c9d7c77028d7b56cda5e2d86188ee979c7f323187defa6a0485ce3 SHA512 1c198da8f4118d9a9ab2b597e3f7b4e1ac7094dfa547bb81f3c4148c45216ef55b309255849174a517ebddba6c874283425f1df6e56e2ba5150af091bacf46a3
+DIST futures-task-0.3.30.crate 11126 BLAKE2B c2ded9b9b709fc10c44cfeaa72d4e7477e43331b14f3e72433b25126fef93f2812a09b4fdc3c246b7379d41d3764ba17fa87c3e9c131095864cbb5f54771a204 SHA512 c190fa0acf7ff15fa67fe172911cfae803b2a8c08168570a5518a40767d08134f147259a413ab25c45cac5dbf2f601a9753c77ab0eb2c180cad2fe48cfe3867d
+DIST futures-timer-3.0.3.crate 19739 BLAKE2B b7af71c761197056a6a4db03caa30f31c104de0049c09f52b18b80718ad20c95e0e64bc7a3618c29d1c9a5ef0309379044fdd9c1fee8465930d28b2c58927733 SHA512 c50388e38b45dce2a65a8d7ce56bcd9c3544ae677158c4c10c532136e861c16f0f52df5222a14c0f40ad8e4faf93fde8223affa7fd84d24e95aa6994177e7e76
+DIST futures-util-0.3.30.crate 159977 BLAKE2B 9012edf76336952dab02cb61db48dfc74b6cfc17c137c36372709e8d575b306a4d7c4da89328067c9482a645aceb7b44ef57deb21a0c25964a5515e738a039d0 SHA512 7faae5aa35641d858d0f5430e4a69acd4ba9037852ad73c5a890bffeed411d28820883e18bad4ca8f7b0a765f9f4c5dbeaf5d0cfaaf90c2c69846434ae091951
+DIST getrandom-0.2.14.crate 37307 BLAKE2B 5904388869335ea904d950ee83ad1867a0d3f6831b7139102b53f4bb4a2c12371c9396f1f1cbcc44e3ce69a4ea316651b1674722071bfa7562385ad4b6a88c33 SHA512 6c334415e09f570e3123e3c6c6eed1727533ac6c9c4142e16ae995c237a16effe146832a891be9fdde4335bd02b454e0fdd9160f20dc02f107ad106756221658
+DIST glob-0.3.1.crate 18880 BLAKE2B dc89b3a664e810264dd7a01ad892e865ce35b504bfe5dba12d7ea8084da7de84feaa94c2208f1a1eefed90297e552636ad61ccebf6fc8cb4d01f27d605ad0a09 SHA512 29368160138bcb7ea5660f9f30c5711cfca8bc8ba836bbade3fbe8c424e7b4118daf27cffa677962e37e36f025fd2bb5a9c2aea865b0ff155cace455dfbb658b
+DIST globset-0.4.14.crate 25090 BLAKE2B 2c3e6f8384a066ebfa1f36bf03125b5eae79329255674e32c58963451d4b342ada10f17524232a953bee133b3c77b678a141543759ebc622b5fd659fe55622ae SHA512 e83e4f5e42a97609e2579b09f49c2cb0a76a94e7e2975c5871f2c5af5d3b809736e0a7b220404c582f4a0c7eebdbfad6cb432e89b26401b58f2b253f8c0151bc
+DIST hashbrown-0.14.3.crate 141425 BLAKE2B 23c63a99c6c6b7a6b9b9e8bbbc7f1e342e1eb9d7582fc9eb408d3eec50c99f34502d450170bcfef4da7f2b1e743e1d1619875ec879e4753dffcb84f3c10dc3b2 SHA512 4d344e5c89ce58e04668b80ef10e4e110a3a5daf4d610c52d980577795d0e2050c7d0b151d8ba97128117665e27b92ab0300f85b88bd6e1de943c62d49249356
+DIST heck-0.4.1.crate 11567 BLAKE2B 520aeea740cfa30b0cca12f73594ffa655f32959673b1c9caaca1ea0162e455546ae3033881394c0ba0516bcd5c9a997da02162e1585522d665813b9096eabd9 SHA512 8c80e959d2f10a2893f9a71994720f90747742bb5b61fc0a539eed3ea5679b140c48fd7f7690d7122cd6af5f7f20a19d412e3569fe741c6d31f6b2ce1e0b80e8
+DIST idna-0.5.0.crate 271940 BLAKE2B 0b781c2e9bf717af429efb53bdfd18244f2b8c58e5111c3bd3bee50c8a01cc747513fe20db75c38b6b771d5845647bf6c1849ae6667766c9623e018c1f399a9b SHA512 bee6cfbfc99859b113aa8c7b487429a836dabc4e317980f132d28ff8333336f33480bf9f8b186a07115eff33024cd855bc85d346fce85e17c4132e886769c54c
+DIST indoc-2.0.5.crate 14396 BLAKE2B fe838c6a855d6ff7396675a3fe9b2e0b06a93cfd4013b0b843d24d2fb81f6566528bfd1753c649646f06cb7e59262bd6ec3ed79d4e6f01d740cf0682355f2e5a SHA512 095fb56a3d87946c42a63065a8b276c2d4b9b835800014b400bb987593bf56701bad9f55d947f090740fdb7641a4f3c87fe8bfa5724709e95254d1e8e2e3616f
+DIST itertools-0.10.5.crate 115354 BLAKE2B f24734bdfedf1dba48554e39b43669efcd4a43656eeb2c511096060daeaf049e1ad3eab232e757057750ce94aabad9fc8a0cf29a997edc6c4b167301c3443391 SHA512 d03c3cfba9841776913bbb6daad0c8945830c155f32ae4b48872e0f937c75a443f0ac9a0355f43b359ff75232f38b15f4f6d446b4be30b00b4209cf66ef770c3
+DIST itoa-1.0.11.crate 10563 BLAKE2B 94da07e0f7f2535d0b1491b3a3c64905274b315ffd35ec8e9a3e36e26cd7211733b462eefb5208963e388345f65be9694804c344a6132b2b595b0bc716c0b328 SHA512 7e22dffac34c9c9f432daef395e0ec710ed658164bc9cd9fc6445c9f984c912a10bac556214a026bcddbe27a3197b35b0c87d6709fd605062637d086b2d20311
+DIST lexical-sort-0.3.1.crate 63689 BLAKE2B 801e69d0643785e82a86d25620a2e97330d0adf17e82aa1130aa30d1b885f58bebab3751ce7fb7e82986388464af9cd958ed9adfb422ae10840f256d7b4a1aac SHA512 ca7885bc22b4b67053aa7c83299459d5b1f5e627eddbde4827b6a5bf09827ef81d506a445a5a742bc6736cb9e02d7f9b458f16b87ad1af038ea4559ca0184c69
+DIST libc-0.2.153.crate 740614 BLAKE2B 523a41bc8cff4ebcba0edbbe9e6a2286ec7cb3ba5e90ca5926c972b68e4b34188bc077d20c22376238c3cd91b7455898a95c505ace4ededea88cc496edb4c5a7 SHA512 3f99e3a192974fffdc053ef21e9ad5fb54b7cdbd4755df176704a95dba38047138ccab76763e89c6b565f37f98fd549fe368749f84f6d1638b3209cb07eae9b4
+DIST lock_api-0.4.11.crate 27487 BLAKE2B 87116cf908f7f1f9c300cedded989df305f855883e3df5a482de2c76814c48739582d3079d76a2bdd14a6999204b7fd31dcd8fd06d1dc7f9418f0e2f70a1450e SHA512 9946adf313a5c67a0dd87a1b679b7d9d16a86149fb95974d3f28aa57a9a1a3932e4a5ee1d332097559329c5e3b2295be2e4b655b115d9f75269f33a758b17fb3
+DIST log-0.4.21.crate 43442 BLAKE2B 8429b3270794d3e2c7f7d5b58bd4fa1abb9d4807ab3a1ac980ac81c11d9544635003d8cf2e608c2c0094865459108a2879f280278e121df68d09bc1561d604ba SHA512 0becc1a06b6e7048cff6c0bb8df49a16ac4772133c00239e9e9459c0811e7715c500f440cf1a9aef8d7ad74f57434559ca9b55917f588b8e476cf36eb6d4e10b
+DIST logos-0.12.1.crate 8973 BLAKE2B 344780990917e2c15caeebab955e98ec155f240056b3239bdc9db723e44929c135d4e783a5d3a5af256d7bea2363bfb74a3002ace1865fdd4840bb03a4d79ece SHA512 011bcf2bed59e5c707adb8ce50b26bb845631595426429e741231613e215286c2c05f3ae9fc5b7336b7e7fd0690a9fae2579413b750f7694b6c475d0fca3278d
+DIST logos-derive-0.12.1.crate 32282 BLAKE2B e4f6a72c73abb8a02995214dc8f29e9296ee40e4a03f055091256beabce54cd8100b10e8e2459db1fa359dc85c9893e7662fe0eb9cd3af2e27062b34f8e5c602 SHA512 bf78b10d511adf523edcb7c9cc0401d49417f728e82dce5a3cf2679d897f5a089adc72616e77c9d51b1661ee39b925eea1365f3f924114aff091593a4960ce87
+DIST memchr-2.7.2.crate 96220 BLAKE2B 2399064b6db21838d4aa0b25ed0bf04940ee3820741658cc6bf62e5ade08f41320df743ff13f99b2781da7b844e18deb1cfe25fe570f0e93f98ff03ca5d442e3 SHA512 cadcb4239c7f3aaab042592c5186770a225621e32f8583052fd3dbebb4a6d9b99be28f589b39b5ca36cb2d56fb3709e7d4ba91838ebb882e28e51280c02bbc40
+DIST memoffset-0.9.1.crate 9032 BLAKE2B 0aab55fe084134bb599c52d77c96400db40949b1013e7037747ada4fcec8dc4a124b6f3755f04b36e057eb2fb4a6bd6f07d6eebcf166f8a71405ef434d802fbf SHA512 3a236c0f481e36973b9f805e454c2efe4dd375e6b4ee406b57145136c70d5fbf4e1183d563ebf3b5fbde7363bbf5f08f0d88e507aae5bda4cc75664ecd0e33aa
+DIST num-conv-0.1.0.crate 7444 BLAKE2B 4f5c4695006aa3ae77aaf5c55999a07d8ddfab294584fe10d73eb6abbb3f551846646156581599f966a28c74d80d3ac4373c49d2099991f7ed9edb56d36feec4 SHA512 7884c0c6599c66e40b9a79435e1bbcec60aa7e68b59686922dfab19ccbcac6a6e54f208cfb3d5a8a12e86e4dd67e09977d60b69ef6940e308a28256733f36100
+DIST once_cell-1.19.0.crate 33046 BLAKE2B c14b374eaf4ac0f60acc2e02f7bba270a0e8e0a6978d749cd3cb0ab3eb26907e4fbea70dd5132982f90290381ed18ff8a87fd530f1415fabffac864f157ea380 SHA512 4154876afd34a699ee650d1a8a1c5ee5a25f0ebd9388b8bef2564e33629fae68f113d7507488c68abbe7ea1acf9bbc41813cbbf3ef3e464e3f3b9cc7a51d870c
+DIST parking_lot-0.12.1.crate 40967 BLAKE2B 940a112a066e3cbd15e2f6df89bfff37e4ece2194118618a96fa14871813c91798f93181ab0f768d3e1f3d60805508f216724013afb7e3da95678d0d951a42d4 SHA512 07327d3b737a913508dffb66023766348ce7f9d555c224a099cabb05baefd16a28e15fec638e3a148a5169dbd980c4541b0f8820ae9d06dfe0704482838fbd5c
+DIST parking_lot_core-0.9.9.crate 32445 BLAKE2B 811d8de671bf6e0911cf0df7dcaee4fb03a3b223173a3bb8cee65a28724eeb7bac87f62aa7b1df5ea3fc93af3cee3ef30b83d06c6773d6b856a7e6fa5fa197ea SHA512 7f0df70f9f1ca8d3da0b9dcc96e49daf05d95c3a995289266b5333f68818d686d32b0c733dfe3a0f62da78fa45caa843a963923b2d0c80899c33413dc749c032
+DIST pep440_rs-0.6.0.crate 42496 BLAKE2B 46d1ce98ab48233799acca4e1aab1d4837ad0c4814cafe6d971a39c5d1fefe034896ce1d468ffe77b9a61f3c52fe7a1ee05e590eb4c67c718356e54da9349d50 SHA512 4c50012b5d04227d0dc8cd919b10b774d7c1abcc08bc5d0f9e7817c846ae906b9cb60cf2b0d65c9ca37d3b5b592e50d5847aebbf136366b4032105b287167b8a
+DIST pep508_rs-0.5.0.crate 33793 BLAKE2B 9f2b0b9897f96e006cae66c2e145ba5c8cabc6dc2edb0e203dd3ab2215e2227e4830209a92d0999d8d7024fc9dfaf858e94a52bc0efda989df2e19dcdc8375fe SHA512 6a9a04afb75fd3799b9bb59102d1be0e0bb506926c5733d724c99b882261bdb126e586157672cbd96be5daf827d50834516e25467f3632962a61f2e4322f714c
+DIST percent-encoding-2.3.1.crate 10235 BLAKE2B cf8e2fd7b359a05b7bdaf731f9ae84c7fe6f468a53482eb2db7f93dfdaab64ac812b3664899db260055a93449462e6d219c695942fc5b030517b197b4df9b95f SHA512 5951ea8315e52cf3acfbaa023cb9e13a136b114c54a7da0bd44619ae24cd2159d4a96469d7572a2fdabd94e19513a033387117d7ca81d0eb409fb383e4acda44
+DIST pin-project-lite-0.2.14.crate 28817 BLAKE2B 8e9875967059faff399fbffff82cf8835982c46ea8df942acf50b038e3f500e04d3d8cde39da5a71ebcc38b869553f8c49830e484d1109b353247a4cfdeda89e SHA512 f90a6b9f5ab8701718f72677a4f3597c1b9f32e5fa53198b47a94696227ea37815997599abaa6058b217c5b32a94602582c6b13fdb66e2d683bc98921de95293
+DIST pin-utils-0.1.0.crate 7580 BLAKE2B 457e1287202f16d1873b24bf4f1de1828300128c4ba3131758e64f9784d36d47365f22d85493c3a85d854f0d8dbb4c6cef3a0f5b064014dc03943e58b7ba9178 SHA512 828422b8440cc82ac6b0743e0112fa7540d437aed457564999092b1462cd7672cd6b1f0201b67075431aeedd3d9c5127468a3dd028744109944f7f023c82fd70
+DIST portable-atomic-1.6.0.crate 140689 BLAKE2B c91d06e04a87c9a207233d8a850859aa1f5cc43dda8aed34511c3fe9641c27412796539ed045a58e649d2a0c7d71100b6b2d78a0c662fc061fd961a652ae8722 SHA512 b27cf57655a2f1e2d6ea7b45d80b4f9920a836e462f132c50dc1e4d314e162444309de1baecf45dad2defc7a5b99759165e54da9fe759b24092f8cb8755c515c
+DIST powerfmt-0.2.0.crate 15165 BLAKE2B a3e1ce63f5866f75526eeb749bec6607e42cb495bbb953082cde7e98e6aa429ecaa41889d98ff7ed4cf5031258b4f7e0553ff8fc435b3b6f8b4ef2b6d53d9b61 SHA512 0623f92e4d6ab284b3f6dae58220d79d9185df4a738999d68040c50d72fe0380d70358cb622f079c629bab53bb03c6e085e165d5bddfbeea84245864fed90029
+DIST proc-macro2-1.0.81.crate 48233 BLAKE2B 94319064772c757b6bf57eb9e759e827454f719d82210271ebab9c6ee4ecfddc9099522cdc8595123efe2efb64fd50eadd7e31419c5842ff1cb8fdd32e8daa0c SHA512 7edec4b786d9fe076ced4fa5c0d369c163fd1c27c895431245a8268ab2e16665b7c0a585552d46ceee6b8103979a4201f92abb381f0e678128abed359f514de7
+DIST pyo3-0.21.2.crate 504574 BLAKE2B 1b8bf374d1b61e3e4bedce6344338126051a6d951ea87d258e5ed92d4c0e13b0202f2e7e56500277c54743dd16c9b4587f436cf2058567501c8a9ac7c6b6c17a SHA512 5f88cda423e82b62698a74ceaa31fc27e5c1f1d417928accddb2e00337d163fda622f774ae6e24c1cb73c467d6b01e9a2ba866e4454338b1fbfc892ae14ffc53
+DIST pyo3-build-config-0.21.2.crate 30581 BLAKE2B 993c1f7f15124336b70570ed3949cc0873c2b883e81dd3a350f347cf014fb9a82d487197fdaf475989b727b7ee8d9a5511a72422f76126b8788c4f40831baed8 SHA512 8b6bedb31235de3dd95bca6e19ea4eb7752227ceb9f1c928c4df2b277df5ee443e5c262e448012e4e54e3104213db4d745c9c42f79ab3029dee68f48ec3a2795
+DIST pyo3-ffi-0.21.2.crate 66160 BLAKE2B 759622fa3a41bcdb48170983c4e194898415f8db16a7c57ace89a7945bd47374d9a14e5ecf24e80a178bde597cfa30d41f9e6617b458d365640bdbda048e6f6e SHA512 5cbc9dfb14569210776fd66341e77e61642a9920354251a65b91aa13a0fb1c373258d1a6b4f8feacdc4266d472193d8f20a6dd2cc180ccc3d43fb66237ae6d0d
+DIST pyo3-macros-0.21.2.crate 7920 BLAKE2B 60ceb626fd1ffeca7e81ebc721bb4cfebd99bb708d48bbfdd296b250ed41471f82e8657715e1f58840423ac11d8c5a84a6107a7037affdea4e0c2cc561514ed7 SHA512 95335a55d57346107fdc7591d51e36aa0a985d6c44a875475a0ed52df25d33b21a7b922fdab0eed190da9708968e79f7cd50bc683b6d210eb068713a915ac7f4
+DIST pyo3-macros-backend-0.21.2.crate 58088 BLAKE2B 05dd49983c8aeddc47cd94f6cd58f10e41ad6f4ec57006908cde4fe3edbcf6814058d7843a88c9dbeb0824f840ad3509414c52e47fffe5ad4b730f791c9a3f19 SHA512 f8488ba0a68f1ae20d053e2323d065f03b40c24231a50b05205b100e973ae50bc7bb9c25e4d37df56f4cfa73d2001655ce9685078d1017a4a90bd7945c01b833
+DIST pyproject_fmt_rust-1.0.1.tar.gz 28922 BLAKE2B e2ba8580a4b64f6ae4e0608ebc9f7e7f5b7fa736b64fab199eaeed1c3e1453d4fb12c17d1e3a924191c023550b704dc6ea12fcf739c4c22f6987f952c0a3dd4d SHA512 f14629a95c22bc1469c198f90c7da80e88a82251b8a25c013748a2f0c32041cf9462ea728a5e5e440757b272d48b0396fc8fe67fe852effbfd769d50fe24f16d
+DIST pyproject_fmt_rust-1.0.4.tar.gz 28896 BLAKE2B d2a8520cda6f155dc0d8090f40466f2edb72f329f3c6c22bdd6a202b09297e3160b6aa54360cb77d68b797a767a2fda08a7cb296f25c4770959f3a114a22e323 SHA512 d41d3e3cba0ec83c23071291270376ed835f05dcb7759ac4e88208c5eebd3e040b0226aa833fdf3ca25e60ddb6c3a932196e30d51ddca05771b6e20440d1406c
+DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d643704b6e348fb9ada6e1d8401893c13348b9964f4b6b17ddb96cb5458eec540f0d761655fcb96a4cd9129 SHA512 f1f002a912692f7ffd4912ca980ec57ff4aca3a7d9e2e42e9e3409e2105c9f59d86c05719f6af309bccaef2f8843b0848a6e3afda3356e045d8e7cc5956ae685
+DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
+DIST regex-1.10.4.crate 253191 BLAKE2B 08bdb925efbea1ee9f885a89ec6b4692e39d7b17039f788e5b3c1dbfb7847d4f53b67f0c61e4085af7ef4901e67e33ea94948668bf706fef19b4102a06ef0447 SHA512 88ef121a51759f418d5dc01607a6e02651bd00343dae92962c02a80f30343d3f079a0375457780ce46bf205ca38f279b03989154638199fe2fcede10554bf21b
+DIST regex-automata-0.4.6.crate 617565 BLAKE2B 8f1e2a3cc1d2d50478776281d2bf10164ef441dcf7127994f4a0341ec40588ec8dc1c07fdf9f670da9e61a7753551500b80314df130370b61d2c03c2b2e3135a SHA512 b288e1facae2612f73d3de3fe9fd1af13d337107004f990263abe6277b31b948478ad9c2b807dcafa73fa565e48bdf2113139f5ca67eb73165b7d29e2ee5c9f1
+DIST regex-syntax-0.6.29.crate 299752 BLAKE2B 2408ebfe5f0dd6578c33f18e8ea9a0a7a84388420c5b67adcaedde477f3f67fb3e39ba9fab1f6892c7ae7fff754c4aca51314601529cabc6a8fc43af38a11f88 SHA512 28a58950d15df1f0ac4ff4185c05b535e8f5bf0b75f79fad24e40e17a02570d1c9bd9cfc919eed8756a1069bc489c5fdccfd04f6b8266c83e3412b7b4bdc262e
+DIST regex-syntax-0.8.3.crate 347497 BLAKE2B 9ac2f63098ffa3fff51fe2bc0bcf9ef164cf9389a909a3f0cb668d2598e7ca65d573e47d571ee2e6bba3a1a96ef7c298b8d681e1ef89c8c53b7d590e0e22839b SHA512 925f7bcc50d94c65d34fcc770c6e58dd5b8a045541c0109e77b8efe842eef4c110087ac9c0f86c7c3022ed013abbc5c0a187d796dce292ad5361a0cdf7153d76
+DIST relative-path-1.9.2.crate 22420 BLAKE2B e2fdcef72f1633b2c315e5d2d316d56defe758fa916e872d84a8450ca0223f54489541175940beb43347c3a1759e4ca4d4afbd49410859cfeb6bfc703bc7a8ae SHA512 fa12c9df710fa3b5f9df9ada9efb13cd52cc10b151cdba5ed094fe74c6102cc557a5f38d05c9c0fddf2510aa13604428aecb4ee9b84405d02a98e6ba3177b2be
+DIST rowan-0.15.15.crate 39971 BLAKE2B 26f2ac9d56998141d770bd2a4c9d19500591c814c497f9e2ebc45d89c440a623021469aa54e2775f5138aa0b87d7a1fd73b731e033822ee193122750e6cae29d SHA512 77caf068a088d2ae7fa333b744a30483b560c395fb7e6d3958858da871b495bbdcd8bd8472f44a247cbaa315fe4c7174c6d85b61cf30a0eeb7b0cbd3526ced2c
+DIST rstest-0.19.0.crate 32932 BLAKE2B d9a59bbb9fbb1f51fc55e843530d1cc7648d20d69a76a17d678f2f66bc7ec45a1ca3c77922c86d0d370c66fdf1f90e3070cf7bed6199bdbc06ef1a9faf13ad6d SHA512 d6f4288225a3cf0e8bf7429d915b6ce1ffeca0024666ecc272fb775f31cd800b2d22a1bb2b987723ed7dae00edc1ba13d50b1769d4977000e1a4c29ccd4d0ef7
+DIST rstest_macros-0.19.0.crate 61243 BLAKE2B d653e0c8d046690c47d80313db5092018cbc883dd86680dc2af041d1c9099a6245e63256758f17f57a20670efe1036de16f8c4aa3c70c74b55e82685ca21ebf6 SHA512 fed39ce5b14e1cfe6c4bb6983e62ad5b494715cc7240c147de90d1c62014c7f1329ddb101b03497a3b1388ef7e4ee0df9ceefe411e38853e08b2d0f3b7e4227b
+DIST rustc-hash-1.1.0.crate 9331 BLAKE2B 16ac56622897f47a06b661fb59a196b08d48e782ab87549c8bd5c6fe92f374c9bfd44dcb36588512bd9b6125c2fd79a12d648aaa308fd9694bcca3a7c1b49ac9 SHA512 84e673ea9b046f7b989d47f2c4505557fbd5de991e6fc9f56a03605d40e0b4ba5427cd566954890153cc033ccbec6c984306634571935bfe0d4cdfbe56f39544
+DIST rustc_version-0.4.0.crate 12175 BLAKE2B 6fda2ce03eab45d7193fa0d70175cc7ffb56b7be85fb1314092bdcfd3948ea145420569ace3a47218a4a2a6e44a818862cea6dd8cfb945475496f63b591c29da SHA512 f66da7c6efe431db06cd01180d84ba67fcd38f8cd6ef693762957c00ccc2211f23c08079d7f184776e08f28d2d6ca3bdb5f5016f7de245c6193d4722891ba1db
+DIST ryu-1.0.17.crate 47537 BLAKE2B 28408e17a4322f1afb6f21bc8d7328c39d07186de4d464f8e9bd63a69757cb4af61b46e558075e14836f310f020ac824d5ffa616fc0a5ffba59b9df0bb66ffc4 SHA512 6dad725c4fb2d3a33ea30107b63cb702eed56bd2f3c16a72265f648f5aaefcd3d5a7b919b1d037af926cc6311bc68ba58c4e0483da2b2e2135c6a7c2d6601af4
+DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
+DIST semver-1.0.22.crate 30446 BLAKE2B b77a951d959a3685b0373c80b9991a8567f8926d093b23b7b8fab48595b5d565acf7408fbfc8f4d58331f39e316a8068885d28bcd70c1476d1cda436a2dd88b2 SHA512 7dcf9b6a02650d71d6c9ab3c29e44fdef95af296208f26aa7be6fd6e16773e5e5e66418c303a0589d1165df6dbfd46ad6ebf9eb5b3adab25a51f340947b2d949
+DIST serde-1.0.198.crate 77577 BLAKE2B 10d18e00a17f38e6eca67f78a3df6bea777053b4c510be7fb89ecde7d0ac2ffe37399031ea0cdc6113a0b80f8f3f1095271bc6aa3f2147e2d675cb3f5df713d1 SHA512 561e4ec8858148e9cf59f1b824c489ab259b63819e6b031205db8d89b30a5b0c12c3828fc587cef67316d1b9752f3618d089fa21b3a27cb87a074d943f27c7ff
+DIST serde_derive-1.0.198.crate 55787 BLAKE2B 6fb5b68d3bd0010283a1f61d9af5471845d9f2f5a6b476245348c6bf3d3c5d3026325de87cc8ffab0300d31dfe03e093acc40e4a7f334d33b9d33cb8e03645c0 SHA512 f33fd1e1ced08a305a41114e354ec174e09c8918e28bd486549ffbb859a139e41b5de27932cb24767f4b3db4703c25e6987c55c9b3ea566d60b9f6cd893b38ef
+DIST serde_json-1.0.116.crate 146790 BLAKE2B 20492ac3c431fd3666599f079383a9d945549e02357127a58acaa7011684ef0caca221a253218402ceff6956ee8a20cc41ca3394b25bb69669be75ab22b66a1e SHA512 d383de754b0a50cc4ab3e6378b758ebd6178ad32ebed80cb4e32a9d8e81d0c689585ee5cd35f12b376e488d25ecfaca659be943c9bb4104b63a1c4f9ded2f337
+DIST slab-0.4.9.crate 17108 BLAKE2B 8e5288c4d00efa915e7be27b55f2204850968624f0d8101c091a357131106bceeea7a63c98007420c12f67893dd2228b15d3f23508108c3a0ceaa605474bc7a9 SHA512 b6b5423ae026472920f7c9a4abe0962314140a36dc562c0a9e3fa60725b2b8b7a8b343110d9d4c0e18fb318b0103e14c0ccbc9ae350d5563a5ac80c35f228c40
+DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679
+DIST syn-1.0.109.crate 237611 BLAKE2B e827445d00c79a8eeb91eacde472f1987addd6ce9e1df95d7abf6446a77ff4173a8006845f3ae71c1da47193cfb72e0ead9a6d6bad2573be12c17e90735d9ad9 SHA512 12816b9e8cf984024b2fbce9f0ae14cf94d4d2c06f08cc54fb793ce78770bb4cc1288eb7df0ba5e8e937756e1e8e295c53fe07a0c5dde1ea8ddba03b6203b37d
+DIST syn-2.0.60.crate 255808 BLAKE2B d7a8e415dd72267fd92da48ba8b3e6feb728f0639797db1aa74aeaa2a57935b7565eec37cbd32eec826154e2c54075b121737369eb15af36c322c34b3cfd7930 SHA512 20bfa02b03c193672a9922f9a5e196185341e082a262f7c00d7c2d467d9e2d77f4af3994634923cfaeee34aa9eab510415165f052ffd9b1ed0b1b581e272898d
+DIST taplo-0.13.0.crate 52618 BLAKE2B 556873e791193a006b906814b6146652c794f7688c0c7c17e8dbfd8b19a671fc1ec1aaf8360c3c9f53b014c12b83a27e6a38735329b72f2fa66124cedce6acf3 SHA512 b6a67bc1abf51a9184cf01091017d2525e79cb4018685468f6411e90017016828ba3214cec37646d68597892f2834f9df03b99fd2884e5aba7b5ac540a53e92b
+DIST target-lexicon-0.12.14.crate 25508 BLAKE2B 5ebb6b49e5c3b0057959557651287d4bf5ffe5b499340019ff64d5fc3b64e780e344982e358c94b1b25a20bf0f526a584aeecc704695b50a55cc268dd65edb97 SHA512 3410ecc0faf854f49c41c99f83972960e67065b1e0e78557a7c4996d996109bfd167d2121a019f5256f996c896cd45af032038ab7918fdcc6ee6311693ce951a
+DIST text-size-1.1.1.crate 12553 BLAKE2B 54c48d202650606d182b2d046d6a0a35b41d4e49adebb8f9f48a22329966891036af7dbc09a4522f0ca55533dfc8e87c276fa2bb4e7a24bed57a26794bfc3ee8 SHA512 e1b0323d2f83ad85ab8c5dcbe9b2084d09592979e9edbcd03d40576abc805b20ba3d6b59261465cae5e987542d4b665fbf797369ff1cd7cbbbfad271258b0ce8
+DIST thiserror-1.0.59.crate 21040 BLAKE2B d9ae0b1d810e7631edf072a41267a871c1cd88d71c882c8fb47d65b3dc563ca2addef0ebf9a9cb122fbfdccff5b92815b8f2e0f7c3382963828cb69d21ec8531 SHA512 254b0ad6c4b135234f89db8bd5674fb8c6b633495810140abf93cf06c58e911ad2ebcfdc002e7ce29739e95ea066eeed3fbd7c831e2858822dff620598dd147a
+DIST thiserror-impl-1.0.59.crate 15726 BLAKE2B 0e524c851f999f4592e5450d7d8ad45a922c9cc5d2229f4dd106144238c8a0ceaeff5a4d1c7e27cdc53a7eb44e60f890fabe1f43ba3d5b950da9c63e6ddcc9d1 SHA512 75543ad39d1243dab23a4b50075bec337c39045f0271337a1ccc144f25dc1e7fc23b0163f16958ded9a1f44ff359378bd22f4c0f5e095c1823e928fc929457e8
+DIST time-0.3.36.crate 119805 BLAKE2B d4da96368ab8565373d034edce261e0d8867036f2ba87e84b5e4a506a70ed3b62b93ba10734aecb39847e258cf7008b6ae57f92df8d0e5229cd3fec488d14caf SHA512 83da6e27691d1f0ef37ed276528e927686a06dab4811b6e29d625ef7a0f7c30fbb86896d74a2b087726e7a24a951b0a83aa1f5f22d711ead54f447d36ac47133
+DIST time-core-0.1.2.crate 7191 BLAKE2B c477ad3410ff29f3bf4a38fc6ac4a043d49b6d2bdf5cf309ffcd2eec3bb6e4c4b62156ee7f069f0b37ea31c163bc75ccbf35abc1db2833cdd4912135e60ddfc9 SHA512 3861724c23cb806829a01186deb5217ae8252c20af622975264e6670cff528f42155039e4937756a9eb312a5580ffab07949437d5504d684a0e70755046cac52
+DIST time-macros-0.2.18.crate 24361 BLAKE2B 09fa325be0b1a5b922285f035484b0de8e339306b49595c87f6374e46459d6777c6db4b12c1a0c6ea9795ae8c741188fbb81208d0499a651760b9f5089323fc7 SHA512 557786115add272290be8305ab79c44f5b4425b64eb698492fe300f15879d9e013c66933cae8aa8faad9c109e2917e7a0e43c8a5eed7f4b0f0fdad092089efe4
+DIST tinyvec-1.6.0.crate 45991 BLAKE2B e9699d4d80a78978f0ebfd049f5b33d7f23d401cf4f4439ccb168e8c0e322473ad0ea7e2ff0ff69e9aac3e5c4c9ae5a7102185533bfbf96dbe77b3526e700bc9 SHA512 e5acaf353c58c60ae5556130a934f1048abb79cf6668ae467d308bac44b689d8a9997227ea879f4b5fe50f29cde8761801b088d7149bcd063b973056c381921c
+DIST tinyvec_macros-0.1.1.crate 5865 BLAKE2B 2bf4f68ca11dc19c72232951605a4c809b34ff38ee365ee4f592a3c41360e23c9330cfba961e2692a0ad568fef4aaaac51c40808d491178cf7a0c4b5a1c5d484 SHA512 10008c7b3a3d50c94b9c370015b76ee082f5dfb6dcacf014dc2f2dbe92f903618d10d0202b21f48fcf98a94ae76fb712db55a5e8ad353645d378cf0e6ec74f7e
+DIST tracing-0.1.40.crate 79459 BLAKE2B 33693ee71564fe5925a63dca351e838dfd8612b4b1e49a33a70095e56ca63287c13c772661ace0e540d08c92942d7cbdc51ff2cce4f4b372164d9aa20ec05dee SHA512 5622188a45dddc0d6d3a8244a9b12db6221f4180944ce1019d18f4e613e4bd113dae5d45fb57dd0754f6e8e153b047cdf00c8f200782bb2b868bc2d423d99275
+DIST tracing-attributes-0.1.27.crate 32241 BLAKE2B a20af0f50a90dcd64e5318e55779142da294ba18d1cd40059a8aa964fd3c92834e03ee563e41caaeef71a30e3f027e5c8d167d90e2844da79e0774b267e179b4 SHA512 7dc59f4234c3bf3434fb352baed2b81db4e931eeb3ed207c4a204e480da734be40847b167b808058d2807b5583815625bcd5153e2bbe79804cfa6f069a74ffa0
+DIST tracing-core-0.1.32.crate 61221 BLAKE2B a7815c46af9852ce62498083103c6d359351f4d33609b4291330073b6abf4b63f5e1bb1a7dfed3bbf4d6913ad5217e96999416261af8a70609408a29109e4db6 SHA512 164f79cacfcca533a53b7dbbdc2015aaf851a16e00c72fbc4e5f515b6a6dedfa464e964810009b54f08cbcdc5a314e50245ac7b1b01a71fce4c63db135bf5521
+DIST unicode-bidi-0.3.15.crate 56811 BLAKE2B 1f1d372c86ec7444f13eb32baf13dfc8699b52156b265a2b53f40c0d771064876405451120fe54739a2679e6991caaf4f63e0644f03729cab814079fef4868c8 SHA512 7a21d5eb05ea8d691dfd54ce4cf7d3693d08067f7a88ef17b8c3044634f46411176b1bde1516c442577910b254007b247f5e40f9932eb601cd96cd574f9d9db8
+DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
+DIST unicode-normalization-0.1.23.crate 122649 BLAKE2B 22ea5ce3f5a2b371c3c8782321b1bbbee724db1e4d8c1d43af4e6bd8044b99307c227d93631d178d10fda445a941a485882ae0015a6e3d3c347e4bd465bbe1d9 SHA512 539f04010810d73fde7b0ab314faf813f3e7ecd2e51d7975281554b7cba4a8706e2b5523c4b7840568593652360ca59e9db0e1ce342e71c28db635ff55ffb0f5
+DIST unicode-width-0.1.12.crate 24062 BLAKE2B 61afd22353d46a8a77519af9b3580d75dafc7965967f7724cb740f1ee199c7742b3549ad6c67776b876dbda5b8f27c634431f68517e29a72ade1622da9fde446 SHA512 0bafd7a69bdf49c849e7c063ebf0487eca8a76244e3bc18c9a5f4609465dc0e5d482daceb6a9a6f4125b801bf7063cb8225fdb55173e5dc55e7bf278300df1b4
+DIST unindent-0.2.3.crate 7306 BLAKE2B a57407b117e99c230750c7d4a2a0899586c8271e4ba88ecb409c976905c014f42885372c234a75fbfbedf71dbed779f95f735975d150adacdcb61152a49db4c2 SHA512 2f1eb420ea3653b00d3e5fa0c2c105da8fd8a37cb3e699373c168604b799fccd5f0faf0cddce4212d119c2afb0c86b41efc3a50752b83ff7beda2bd84d360505
+DIST unscanny-0.1.0.crate 10338 BLAKE2B fd725928107d4d2ed2686709335ef01136bcd54d34180189906b7c2436e3f77496328484c623dec4920738f4a07e92be7e7581387c4f5b6996fa34c03efd7b0f SHA512 8267e327e4e852d627d416d58ebad5ba937ab6a2477b265fd5f79a98d43ade2d1780e67696b801cae8a4af10da8f7c0c257d2c878289eb6cf7e711dcf357d87c
+DIST url-2.5.0.crate 78605 BLAKE2B f3fec3477248cbbe67866577eebb03f517c284a5e5cb783132b11ef3ad156a03524f4730f188d822dec85169d7474e265099296d6bdd4adf5ffaa0a118821617 SHA512 4aedbc48b85bcc2853189f5fe8265a01c76516b5507f4e958d8d0b860fe2590c69c95f0f4b9fd6fac9b8d5911bcb0a5e9ab7f8e8b600f37a12db1438976ee5c3
+DIST urlencoding-2.1.3.crate 6538 BLAKE2B 65777b0990aa6b3d27a47f36114da8622026ac8946b5ffb6e04172b666ec7244a55c250a7fb626472bb2b636eb32ee945599cee5ce7351c3cef2322366db15ff SHA512 035848d9243ed6a4528377b56edd7f8bcb5f824381b420dc8f5c4bfc3f1246655c54eaa7de0e4aaa7138e0b08fd796b9ace140ab919aed2d94f6952b577386ac
+DIST version_check-0.9.4.crate 14895 BLAKE2B fa1fa4008af165bfc1fdbe560488afd9d232cfafee94104fbcc4cbc52f234849bff9ddfa88109a1ac682f6d9c1d86b0459893d223f64e65adc08966aaf93dc89 SHA512 b172dc9a3759a4a683ffc39b9a40b03b9974b626a088217de87090466cef695226557c226cf3e469b2b25ee7297b7eb0d7719878cab42457f80146a81943c0c8
+DIST wasi-0.11.0+wasi-snapshot-preview1.crate 28131 BLAKE2B fe501889f25d65e2d032f885cc50c4f8bf7dd70fd5cbc438de349838370d8699e9627b0a4fc76030ea9fe6d508f41d0c9928a875fdbc47e73bfb17241cf7b155 SHA512 043500ab28cd9cb779475255da5d109ebab7fccca72b64873dc28d77bc5a157ba8d96b9e8f05223b5b36c7089bb7b4ba87657fc69bac16b78972f897294a865f
+DIST windows-targets-0.48.5.crate 6904 BLAKE2B 7396bb210f37bd51da86f39fca3425c8f6610721d5c4e94f9fafa0a8a8046303b3fcc6979146bcfaa32f4406d242a0455f6cbb220f84c6ff84650e755acf5223 SHA512 e079eeef255a046be7f8e6a31c14f7b230254ebcf05eed2944827bb3d2a0dc30940d87593cf544d5e7ef35f6312b99430efcfb01421d91b02bb9c4bef7d98709
+DIST windows_aarch64_gnullvm-0.48.5.crate 418492 BLAKE2B 5c6f7d73ad05740f0bac304ed1ef9b2ea63b0d6ca8f875552ae299a0b73b1557e8fe996f1c2b69be9f2df350c9288690f49ee62239a2896991364331d6c55462 SHA512 20158d31454488f6053d3ad7b97d7fc6eae6cf37e4ba0e50c28bd29b368505eed64199ae31104d5f97b66846be54e5ed25c0ad31ea850819205c573a31ac0996
+DIST windows_aarch64_msvc-0.48.5.crate 798483 BLAKE2B 60c466d6536426425a34b5ca20da97c8127ebeb4fb9b1363911165bada484f8913fcd50e90410b5661e0c27dbfe8f4eeaa62fb17d1f3566bfc82b6255e11619b SHA512 223f016c6f1a44dbc5c8a8428b39438f75380ea06951b7c26ed0877b19d79410c6fde5e4c7f2c839b6e76159131f39a1230e0e3a208dfc425ba9117e3665c4ff
+DIST windows_i686_gnu-0.48.5.crate 844891 BLAKE2B fdc37cd74a4982056bf22fdb7b84e1c55dc838f3cb19ff3648730a77e673ef4ecc0380b3e4277bb8df2fcfa25f57b69014713d9e3ed27c28e19b25b3ea2ab774 SHA512 931ba5c1e4eb8ae73248e00d9611298d1c4b4b0dae719fdeb9243930cd420a103a7bc2738e0a4887c42c8f25728d6c5d64ad141dc092bc3f1d0f35dbe37d303a
+DIST windows_i686_msvc-0.48.5.crate 864300 BLAKE2B 3d3ea8be55e2d6ced0eeda18abe1dffb925a1a78f456d683e4450d9f2fd287ad2e8494d65b2b770c677a12b3a60d10f0435e16c61880e3867c3657fd44892442 SHA512 70e2fb4fdb006a4cbd43ab2c7e940b277a15fb1790dfa2d1fc1f1fd18bead4886f6dc046e44326603e4894d988578917b8932aba5d9a6a4cc8424911cad9dc7e
+DIST windows_x86_64_gnu-0.48.5.crate 801619 BLAKE2B aa7e7e6a6ff9f9553ada3a0a39a9aa798e9d995a8eef36e0b6fdb2a0db93ddecee5548970575271fe43aec74797a420d0ee231d503b5bad1bd999059261e0e33 SHA512 1d6056fae430b3d042bdff3c6217c76be4b8b9f5dada9bad06beaac2db7d7ab9b0a82e44f498ec88e61afa73e99f56d84d445dc3847732b9ce5d947e08485f74
+DIST windows_x86_64_gnullvm-0.48.5.crate 418486 BLAKE2B 12a2199d434617c1df1a839e9f435620ad64b40c579f6d0c3677553ad7a48e5765d12c266b04946402e15c92cff2e4ac4979ce2130750ef426e2672119680284 SHA512 c016d5b5e73832b61ff67929d92fa8c16e154656294357266ad29ce1f44db4ca2d2935dba31a6b571187dc838b1d22f1e3b41fefffd1d719a338439adf1646aa
+DIST windows_x86_64_msvc-0.48.5.crate 798412 BLAKE2B 8abc0721e2fb337fe17c91d278947d36122d9045b839ba0cf3e690202d242265b676f23cc301da5f9d98c56ca4ecb76f7d6f072ee71bf986a1deca87020b90e5 SHA512 fa1c5cd14ca2ff0082e2504cf59d317dc4dc6f7138d35c12f95d4476a9c13d8b7f5537d0ee251eee7c99411ad31b22263171b7fbd391daa5d3ea3488ceaa61a0
+DIST zerocopy-0.7.32.crate 151096 BLAKE2B 12c7c329ec0e0865467af08306ff4b55ce1e39fd77b094ee48ed9c6e266dfa807bda9ea72a3f7ea989916327f4d9e803d8868995728bfe2fb1c2dc1e5ecff78e SHA512 6729b05eb88029555b88c75feff4f8bc28ad9675edb02b07486381f775c8650c95e2e59612906bd9c34c5e390fd339857ca91573ee9f9ca7948572cff4171c82
+DIST zerocopy-derive-0.7.32.crate 37623 BLAKE2B 8b583d39d7bf9c3dbbba578120751c664f87363c5ba3fc45f6506a4059b9e599c43d9fc7bd498a257ff7c9d872af77d39bebdb0e65fb8009eaa2ae9903dece46 SHA512 3ce8528871fd18d6abe92b98503927451d25791c9c4af0ba39a3b6ba2006030bdc137084d080e9b1ac8b5ddf5f2121e0a3ef34bb2033a040f2c72c8149a9fc0d
diff --git a/dev-python/pyproject-fmt-rust/metadata.xml b/dev-python/pyproject-fmt-rust/metadata.xml
new file mode 100644
index 000000000000..7ad11570cc7d
--- /dev/null
+++ b/dev-python/pyproject-fmt-rust/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ </maintainer>
+
+ <origin>gentoo-staging</origin>
+</pkgmetadata> \ No newline at end of file
diff --git a/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.0.1.ebuild b/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.0.1.ebuild
new file mode 100644
index 000000000000..dfe2f1f7d30f
--- /dev/null
+++ b/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.0.1.ebuild
@@ -0,0 +1,160 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+CRATES="
+ ahash@0.8.11
+ aho-corasick@1.1.3
+ any_ascii@0.1.7
+ arc-swap@1.7.1
+ autocfg@1.2.0
+ beef@0.5.2
+ bitflags@1.3.2
+ bstr@1.9.1
+ cfg-if@1.0.0
+ countme@3.0.1
+ deranged@0.3.11
+ derivative@2.2.0
+ either@1.11.0
+ fnv@1.0.7
+ form_urlencoded@1.2.1
+ futures-channel@0.3.30
+ futures-core@0.3.30
+ futures-executor@0.3.30
+ futures-io@0.3.30
+ futures-macro@0.3.30
+ futures-sink@0.3.30
+ futures-task@0.3.30
+ futures-timer@3.0.3
+ futures-util@0.3.30
+ futures@0.3.30
+ getrandom@0.2.14
+ glob@0.3.1
+ globset@0.4.14
+ hashbrown@0.14.3
+ heck@0.4.1
+ idna@0.5.0
+ indoc@2.0.5
+ itertools@0.10.5
+ itoa@1.0.11
+ lexical-sort@0.3.1
+ libc@0.2.153
+ lock_api@0.4.11
+ log@0.4.21
+ logos-derive@0.12.1
+ logos@0.12.1
+ memchr@2.7.2
+ memoffset@0.9.1
+ num-conv@0.1.0
+ once_cell@1.19.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ pep440_rs@0.6.0
+ pep508_rs@0.5.0
+ percent-encoding@2.3.1
+ pin-project-lite@0.2.14
+ pin-utils@0.1.0
+ portable-atomic@1.6.0
+ powerfmt@0.2.0
+ proc-macro2@1.0.81
+ pyo3-build-config@0.21.2
+ pyo3-ffi@0.21.2
+ pyo3-macros-backend@0.21.2
+ pyo3-macros@0.21.2
+ pyo3@0.21.2
+ quote@1.0.36
+ redox_syscall@0.4.1
+ regex-automata@0.4.6
+ regex-syntax@0.6.29
+ regex-syntax@0.8.3
+ regex@1.10.4
+ relative-path@1.9.2
+ rowan@0.15.15
+ rstest@0.19.0
+ rstest_macros@0.19.0
+ rustc-hash@1.1.0
+ rustc_version@0.4.0
+ ryu@1.0.17
+ scopeguard@1.2.0
+ semver@1.0.22
+ serde@1.0.198
+ serde_derive@1.0.198
+ serde_json@1.0.116
+ slab@0.4.9
+ smallvec@1.13.2
+ syn@1.0.109
+ syn@2.0.60
+ taplo@0.13.0
+ target-lexicon@0.12.14
+ text-size@1.1.1
+ thiserror-impl@1.0.59
+ thiserror@1.0.59
+ time-core@0.1.2
+ time-macros@0.2.18
+ time@0.3.36
+ tinyvec@1.6.0
+ tinyvec_macros@0.1.1
+ tracing-attributes@0.1.27
+ tracing-core@0.1.32
+ tracing@0.1.40
+ unicode-bidi@0.3.15
+ unicode-ident@1.0.12
+ unicode-normalization@0.1.23
+ unicode-width@0.1.12
+ unindent@0.2.3
+ unscanny@0.1.0
+ url@2.5.0
+ urlencoding@2.1.3
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ windows-targets@0.48.5
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_msvc@0.48.5
+ windows_i686_gnu@0.48.5
+ windows_i686_msvc@0.48.5
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_msvc@0.48.5
+ zerocopy-derive@0.7.32
+ zerocopy@0.7.32
+"
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="Format your pyproject.toml file (Rust extension)"
+HOMEPAGE="
+ https://github.com/tox-dev/pyproject-fmt-rust/
+ https://pypi.org/project/pyproject-fmt-rust/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions ISC MIT Unicode-DFS-2016
+ || ( Apache-2.0 BSD-2 )
+ || ( Apache-2.0 Boost-1.0 )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/pyproject_fmt_rust/_lib.*.so"
+
+src_prepare() {
+ sed -i -e '/strip/d' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+src_test() {
+ cargo_src_test
+ distutils-r1_src_test
+}
diff --git a/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.0.4.ebuild b/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.0.4.ebuild
new file mode 100644
index 000000000000..ffaeac3d4735
--- /dev/null
+++ b/dev-python/pyproject-fmt-rust/pyproject-fmt-rust-1.0.4.ebuild
@@ -0,0 +1,160 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_EXT=1
+DISTUTILS_USE_PEP517=maturin
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+CRATES="
+ ahash@0.8.11
+ aho-corasick@1.1.3
+ any_ascii@0.1.7
+ arc-swap@1.7.1
+ autocfg@1.2.0
+ beef@0.5.2
+ bitflags@1.3.2
+ bstr@1.9.1
+ cfg-if@1.0.0
+ countme@3.0.1
+ deranged@0.3.11
+ derivative@2.2.0
+ either@1.11.0
+ fnv@1.0.7
+ form_urlencoded@1.2.1
+ futures-channel@0.3.30
+ futures-core@0.3.30
+ futures-executor@0.3.30
+ futures-io@0.3.30
+ futures-macro@0.3.30
+ futures-sink@0.3.30
+ futures-task@0.3.30
+ futures-timer@3.0.3
+ futures-util@0.3.30
+ futures@0.3.30
+ getrandom@0.2.14
+ glob@0.3.1
+ globset@0.4.14
+ hashbrown@0.14.3
+ heck@0.4.1
+ idna@0.5.0
+ indoc@2.0.5
+ itertools@0.10.5
+ itoa@1.0.11
+ lexical-sort@0.3.1
+ libc@0.2.153
+ lock_api@0.4.11
+ log@0.4.21
+ logos-derive@0.12.1
+ logos@0.12.1
+ memchr@2.7.2
+ memoffset@0.9.1
+ num-conv@0.1.0
+ once_cell@1.19.0
+ parking_lot@0.12.1
+ parking_lot_core@0.9.9
+ pep440_rs@0.6.0
+ pep508_rs@0.5.0
+ percent-encoding@2.3.1
+ pin-project-lite@0.2.14
+ pin-utils@0.1.0
+ portable-atomic@1.6.0
+ powerfmt@0.2.0
+ proc-macro2@1.0.81
+ pyo3-build-config@0.21.2
+ pyo3-ffi@0.21.2
+ pyo3-macros-backend@0.21.2
+ pyo3-macros@0.21.2
+ pyo3@0.21.2
+ quote@1.0.36
+ redox_syscall@0.4.1
+ regex-automata@0.4.6
+ regex-syntax@0.6.29
+ regex-syntax@0.8.3
+ regex@1.10.4
+ relative-path@1.9.2
+ rowan@0.15.15
+ rstest@0.19.0
+ rstest_macros@0.19.0
+ rustc-hash@1.1.0
+ rustc_version@0.4.0
+ ryu@1.0.17
+ scopeguard@1.2.0
+ semver@1.0.22
+ serde@1.0.198
+ serde_derive@1.0.198
+ serde_json@1.0.116
+ slab@0.4.9
+ smallvec@1.13.2
+ syn@1.0.109
+ syn@2.0.60
+ taplo@0.13.0
+ target-lexicon@0.12.14
+ text-size@1.1.1
+ thiserror-impl@1.0.59
+ thiserror@1.0.59
+ time-core@0.1.2
+ time-macros@0.2.18
+ time@0.3.36
+ tinyvec@1.6.0
+ tinyvec_macros@0.1.1
+ tracing-attributes@0.1.27
+ tracing-core@0.1.32
+ tracing@0.1.40
+ unicode-bidi@0.3.15
+ unicode-ident@1.0.12
+ unicode-normalization@0.1.23
+ unicode-width@0.1.12
+ unindent@0.2.3
+ unscanny@0.1.0
+ url@2.5.0
+ urlencoding@2.1.3
+ version_check@0.9.4
+ wasi@0.11.0+wasi-snapshot-preview1
+ windows-targets@0.48.5
+ windows_aarch64_gnullvm@0.48.5
+ windows_aarch64_msvc@0.48.5
+ windows_i686_gnu@0.48.5
+ windows_i686_msvc@0.48.5
+ windows_x86_64_gnu@0.48.5
+ windows_x86_64_gnullvm@0.48.5
+ windows_x86_64_msvc@0.48.5
+ zerocopy-derive@0.7.32
+ zerocopy@0.7.32
+"
+
+inherit cargo distutils-r1 pypi
+
+DESCRIPTION="Format your pyproject.toml file (Rust extension)"
+HOMEPAGE="
+ https://github.com/tox-dev/pyproject-fmt-rust/
+ https://pypi.org/project/pyproject-fmt-rust/
+"
+SRC_URI+="
+ ${CARGO_CRATE_URIS}
+"
+
+LICENSE="MIT"
+# Dependent crate licenses
+LICENSE+="
+ Apache-2.0-with-LLVM-exceptions ISC MIT Unicode-DFS-2016
+ || ( Apache-2.0 BSD-2 )
+ || ( Apache-2.0 Boost-1.0 )
+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~sparc ~x86"
+
+distutils_enable_tests pytest
+
+QA_FLAGS_IGNORED="usr/lib/py.*/site-packages/pyproject_fmt_rust/_lib.*.so"
+
+src_prepare() {
+ sed -i -e '/strip/d' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+src_test() {
+ cargo_src_test
+ distutils-r1_src_test
+}
diff --git a/dev-python/pyproject-fmt/Manifest b/dev-python/pyproject-fmt/Manifest
index b12953872ef5..93f6252aa9a9 100644
--- a/dev-python/pyproject-fmt/Manifest
+++ b/dev-python/pyproject-fmt/Manifest
@@ -1 +1,3 @@
DIST pyproject_fmt-1.8.0.tar.gz 16696 BLAKE2B 1614fd6da4bb7be818825138b69b826b7141ae0fcada4414daa54b1c883ec3bbdbe95377155869d0c393b1b9646b69ebb009fe47f1c530b1f1c9f02c8ba8f57d SHA512 0731ffbe514cf8788bf1cfcca506591fefce3b98b1c6d014a8e17825ab6c73edc4ad8e7214cd8f6fc9124ed2ff362d03b328d47e96a6246165b4dd9fdd68299f
+DIST pyproject_fmt-2.0.2.tar.gz 8647 BLAKE2B aae92d952883adce7ee6bd92a29517064dfd25ed6a90ca4543ec4093ce57bb17d2315134d5709d084e17098680a861014fc35d18feeac17ba9c9cca4d501959a SHA512 750f8006a30425ccfcd28909f06208344776a250698025f7f1c8a33d7316e4dfe9f06baea6050848691940846ea1ef3dfdd1a7878c72bb611f1a6b9b2bed3ff7
+DIST pyproject_fmt-2.0.3.tar.gz 8646 BLAKE2B 83b5984f513341e10fabf81eeb2466c54502da78e0d722795f814241dbee66f507a9167df7ef7b4654ab1178755eb6d976dab9954e8ae0924794841a39cc952a SHA512 e74c2d28cfafacbccc8b55600004353d2633c8946a6abc894e73e40f173794b2845eea50f44808009079161b3ab1067c95696080bdcfff9d387bfe04d9fd119d
diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.0.2.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.0.2.ebuild
new file mode 100644
index 000000000000..7356c8fddd47
--- /dev/null
+++ b/dev-python/pyproject-fmt/pyproject-fmt-2.0.2.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2022-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} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Format your pyproject.toml file"
+HOMEPAGE="
+ https://github.com/tox-dev/pyproject-fmt/
+ https://pypi.org/project/pyproject-fmt/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/pyproject-fmt-rust-1.0.1[${PYTHON_USEDEP}]
+"
+# tox is called as a subprocess, to get targets from tox.ini
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/pytest-mock-3.10[${PYTHON_USEDEP}]
+ dev-python/tox
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pyproject-fmt/pyproject-fmt-2.0.3.ebuild b/dev-python/pyproject-fmt/pyproject-fmt-2.0.3.ebuild
new file mode 100644
index 000000000000..da8e41837ce4
--- /dev/null
+++ b/dev-python/pyproject-fmt/pyproject-fmt-2.0.3.ebuild
@@ -0,0 +1,33 @@
+# Copyright 2022-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} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Format your pyproject.toml file"
+HOMEPAGE="
+ https://github.com/tox-dev/pyproject-fmt/
+ https://pypi.org/project/pyproject-fmt/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~sparc ~x86"
+
+RDEPEND="
+ ~dev-python/pyproject-fmt-rust-1.0.4[${PYTHON_USEDEP}]
+"
+# tox is called as a subprocess, to get targets from tox.ini
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ >=dev-python/pytest-mock-3.10[${PYTHON_USEDEP}]
+ dev-python/tox
+ )
+"
+
+distutils_enable_tests pytest
diff --git a/dev-python/pytest-datadir/pytest-datadir-1.5.0.ebuild b/dev-python/pytest-datadir/pytest-datadir-1.5.0.ebuild
index 626c5bd1f1d6..10a5a2d58b70 100644
--- a/dev-python/pytest-datadir/pytest-datadir-1.5.0.ebuild
+++ b/dev-python/pytest-datadir/pytest-datadir-1.5.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/pytest-expect/pytest-expect-1.1.0-r2.ebuild b/dev-python/pytest-expect/pytest-expect-1.1.0-r2.ebuild
index ce4cadb1b657..5158474481ff 100644
--- a/dev-python/pytest-expect/pytest-expect-1.1.0-r2.ebuild
+++ b/dev-python/pytest-expect/pytest-expect-1.1.0-r2.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/pytest-freezegun/pytest-freezegun-0.4.2-r1.ebuild b/dev-python/pytest-freezegun/pytest-freezegun-0.4.2-r1.ebuild
index 1b42f2e591e6..7f13d1cd265d 100644
--- a/dev-python/pytest-freezegun/pytest-freezegun-0.4.2-r1.ebuild
+++ b/dev-python/pytest-freezegun/pytest-freezegun-0.4.2-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2020-2023 Gentoo Authors
+# Copyright 2020-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild b/dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild
index b278cced546e..895746f6fd34 100644
--- a/dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild
+++ b/dev-python/pytest-freezer/pytest-freezer-0.4.8.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2023 Gentoo Authors
+# Copyright 2023-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pytest-home/pytest-home-0.5.1.ebuild b/dev-python/pytest-home/pytest-home-0.5.1.ebuild
index 5db25fbd22ad..ee4c2f12a989 100644
--- a/dev-python/pytest-home/pytest-home-0.5.1.ebuild
+++ b/dev-python/pytest-home/pytest-home-0.5.1.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
dev-python/pytest[${PYTHON_USEDEP}]
diff --git a/dev-python/pytest-regressions/pytest-regressions-2.5.0.ebuild b/dev-python/pytest-regressions/pytest-regressions-2.5.0.ebuild
index d0e493e51d32..40472fa03ce2 100644
--- a/dev-python/pytest-regressions/pytest-regressions-2.5.0.ebuild
+++ b/dev-python/pytest-regressions/pytest-regressions-2.5.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/pytest-rerunfailures/pytest-rerunfailures-14.0.ebuild b/dev-python/pytest-rerunfailures/pytest-rerunfailures-14.0.ebuild
index 5e892eb863ea..a7aa1cdb9db7 100644
--- a/dev-python/pytest-rerunfailures/pytest-rerunfailures-14.0.ebuild
+++ b/dev-python/pytest-rerunfailures/pytest-rerunfailures-14.0.ebuild
@@ -26,6 +26,18 @@ RDEPEND="
distutils_enable_tests pytest
python_test() {
+ local EPYTEST_DESELECT=()
+ if has_version ">=dev-python/pytest-8.2[${PYTHON_USEDEP}]"; then
+ EPYTEST_DESELECT+=(
+ # https://github.com/pytest-dev/pytest-rerunfailures/issues/267
+ tests/test_pytest_rerunfailures.py::test_exception_match_only_rerun_in_dual_query
+ tests/test_pytest_rerunfailures.py::test_exception_matches_only_rerun_query
+ tests/test_pytest_rerunfailures.py::test_exception_matches_rerun_except_query
+ tests/test_pytest_rerunfailures.py::test_exception_not_match_rerun_except_query
+ tests/test_pytest_rerunfailures.py::test_run_session_teardown_once_after_reruns
+ )
+ fi
+
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
local -x PYTEST_PLUGINS=pytest_rerunfailures
epytest
diff --git a/dev-python/pytest-subprocess/pytest-subprocess-1.5.0.ebuild b/dev-python/pytest-subprocess/pytest-subprocess-1.5.0.ebuild
index bdcea7708e8c..905946c3fee4 100644
--- a/dev-python/pytest-subprocess/pytest-subprocess-1.5.0.ebuild
+++ b/dev-python/pytest-subprocess/pytest-subprocess-1.5.0.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
>=dev-python/pytest-4.0.0[${PYTHON_USEDEP}]
diff --git a/dev-python/pytest-timeout/pytest-timeout-2.3.1.ebuild b/dev-python/pytest-timeout/pytest-timeout-2.3.1.ebuild
index a3c0cff26b0d..2127ea8cb31a 100644
--- a/dev-python/pytest-timeout/pytest-timeout-2.3.1.ebuild
+++ b/dev-python/pytest-timeout/pytest-timeout-2.3.1.ebuild
@@ -25,7 +25,9 @@ BDEPEND="
test? (
dev-python/pexpect[${PYTHON_USEDEP}]
!hppa? (
- dev-python/pytest-cov[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/pytest-cov[${PYTHON_USEDEP}]
+ ' python3_{10..11} pypy3)
)
)
"
@@ -37,7 +39,7 @@ python_test() {
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
local -x PYTEST_PLUGINS=pytest_timeout
- if has_version dev-python/pytest-cov; then
+ if has_version "dev-python/pytest-cov[${PYTHON_USEDEP}]"; then
PYTEST_PLUGINS+=,pytest_cov.plugin
else
EPYTEST_DESELECT+=(
diff --git a/dev-python/pytest/Manifest b/dev-python/pytest/Manifest
index 0da5b4c9a2cc..833d65d486e3 100644
--- a/dev-python/pytest/Manifest
+++ b/dev-python/pytest/Manifest
@@ -1,5 +1,4 @@
DIST pytest-7.4.4.tar.gz 1357116 BLAKE2B 0bf281b3d4b7b2eb7805423a75c8c2befa820cc230318511e5a2d5ea35321a78a2603d5dbc033414ed73171525371efa9d9f54083d5638fc752c1c218e6d53aa SHA512 28a259dac6739683c131993409d508e10fbfee461291b8fc7697dd83f30725a3c60e681ba00b5669a215af6a5e683f07a329485d780acc9ad0372a6552f783a1
DIST pytest-8.0.2.tar.gz 1396924 BLAKE2B ad95d246f5592cfe54faea6c96e38cb60d3e2713070d1ff7cab6c42aea312883c5d97c99a930dbcbd8493e966c4b8351320f6494b4ab904afbf21d7e1dd004a7 SHA512 c495943baad05e09b467d23c7afadb3edff7ae93ee96290d6db9e64739236888148b63dff7e8e25b331b11bd48c55fb0ca8901cf823d69b1a922e94915bab2f1
-DIST pytest-8.1.1.tar.gz 1409703 BLAKE2B 8e382c87af1bbbc235f9b27f8bb892d08393e0a9821f32373ee2546112c24dc6f90e1990f10ef799a94a1426a83a2bc3de0be9e7efde90cbf4eac5a0c9ee375c SHA512 f1a9f69cd4eca3ab36c36bc666bf70b099125ed6e17b89d13554c3f13b100d05abfd0b35516660d00ca4fb9eca81164ab02bc8f7a9a8d90fd4302bf399cd88c0
DIST pytest-8.1.2.tar.gz 1410060 BLAKE2B 1379047c5ba434e98a383756c53a9cf31dc3bd3abcc49820f872b9110ec70906ca14080ce17ed2770b71195fbd79627a0eb16ee00429e165368144b20153a02b SHA512 a6ffae29da98ee4c357ebb03f00c4bc1a33f093ef867ad118841695548468c7f229eaa2c029a2ce3b158bbb0a65be5014e91555a223d04c1c72e614cb1d00546
DIST pytest-8.2.0.tar.gz 1422883 BLAKE2B 91f39aa14bfc56f7f98789ef9eeed80d1aa81c864f56181bf1e819b73543043eda307fec53151bf5dbcf8e63abd8dd8ad1290dd245c387cb68583d2160981cf2 SHA512 1a74a2269010804101fc4b8efc370c5d8d484eb145eb4e181feeb1a17046457b97071d2de925c3e8bbd4c6090cd00ca532d69286cb9e10ea023e59a99cd51088
diff --git a/dev-python/pytest/pytest-8.1.1.ebuild b/dev-python/pytest/pytest-8.1.1.ebuild
deleted file mode 100644
index 421a579231c5..000000000000
--- a/dev-python/pytest/pytest-8.1.1.ebuild
+++ /dev/null
@@ -1,113 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_TESTED=( python3_{8,9,10,11,12} pypy3 )
-PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Simple powerful testing with Python"
-HOMEPAGE="
- https://pytest.org/
- https://github.com/pytest-dev/pytest/
- https://pypi.org/project/pytest/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
-IUSE="test"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- dev-python/iniconfig[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- <dev-python/pluggy-2[${PYTHON_USEDEP}]
- >=dev-python/pluggy-1.4[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/exceptiongroup-1.0.0_rc8[${PYTHON_USEDEP}]
- >=dev-python/tomli-1[${PYTHON_USEDEP}]
- ' 3.10)
- !!<=dev-python/flaky-3.7.0-r5
-"
-BDEPEND="
- >=dev-python/setuptools-scm-6.2.3[${PYTHON_USEDEP}]
- test? (
- ${RDEPEND}
- $(python_gen_cond_dep '
- dev-python/argcomplete[${PYTHON_USEDEP}]
- >=dev-python/attrs-19.2[${PYTHON_USEDEP}]
- >=dev-python/hypothesis-3.56[${PYTHON_USEDEP}]
- dev-python/mock[${PYTHON_USEDEP}]
- >=dev-python/pygments-2.7.2[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- dev-python/requests[${PYTHON_USEDEP}]
- dev-python/xmlschema[${PYTHON_USEDEP}]
- ' "${PYTHON_TESTED[@]}")
- )
-"
-
-src_test() {
- # workaround new readline defaults
- echo "set enable-bracketed-paste off" > "${T}"/inputrc || die
- local -x INPUTRC="${T}"/inputrc
- distutils-r1_src_test
-}
-
-python_test() {
- if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then
- einfo "Skipping tests on ${EPYTHON}"
- return
- fi
-
- local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- local -x COLUMNS=80
-
- local EPYTEST_DESELECT=(
- # broken by epytest args
- testing/test_warnings.py::test_works_with_filterwarnings
-
- # tend to be broken by random pytest plugins
- # (these tests patch PYTEST_DISABLE_PLUGIN_AUTOLOAD out)
- testing/test_helpconfig.py::test_version_less_verbose
- testing/test_helpconfig.py::test_version_verbose
- testing/test_junitxml.py::test_random_report_log_xdist
- testing/test_junitxml.py::test_runs_twice_xdist
- testing/test_terminal.py::TestProgressOutputStyle::test_xdist_normal
- testing/test_terminal.py::TestProgressOutputStyle::test_xdist_normal_count
- testing/test_terminal.py::TestProgressOutputStyle::test_xdist_verbose
- testing/test_terminal.py::TestProgressWithTeardown::test_xdist_normal
- testing/test_terminal.py::TestTerminalFunctional::test_header_trailer_info
- testing/test_terminal.py::TestTerminalFunctional::test_no_header_trailer_info
-
- # unstable with xdist
- testing/test_terminal.py::TestTerminalFunctional::test_verbose_reporting_xdist
-
- # TODO (XPASS)
- testing/test_debugging.py::TestDebuggingBreakpoints::test_pdb_not_altered
- testing/test_debugging.py::TestPDB::test_pdb_interaction_capturing_simple
- testing/test_debugging.py::TestPDB::test_pdb_interaction_capturing_twice
- testing/test_debugging.py::TestPDB::test_pdb_with_injected_do_debug
- testing/test_debugging.py::test_pdb_suspends_fixture_capturing
-
- # setuptools warnings
- testing/acceptance_test.py::TestInvocationVariants::test_cmdline_python_namespace_package
-
- # times out
- testing/test_debugging.py::TestPDB::test_pdb_interaction_exception
- testing/test_debugging.py::TestPDB::test_pdb_with_caplog_on_pdb_invocation
- )
-
- [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
- # regressions on pypy3.9
- # https://github.com/pytest-dev/pytest/issues/9787
- testing/test_skipping.py::test_errors_in_xfail_skip_expressions
- testing/test_unraisableexception.py
- )
-
- local EPYTEST_XDIST=1
- epytest
-}
diff --git a/dev-python/pytest/pytest-8.1.2.ebuild b/dev-python/pytest/pytest-8.1.2.ebuild
index 17405705eb0f..421a579231c5 100644
--- a/dev-python/pytest/pytest-8.1.2.ebuild
+++ b/dev-python/pytest/pytest-8.1.2.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/python-dotenv/python-dotenv-1.0.1.ebuild b/dev-python/python-dotenv/python-dotenv-1.0.1.ebuild
index 4ee548c832b4..cd9d751308ac 100644
--- a/dev-python/python-dotenv/python-dotenv-1.0.1.ebuild
+++ b/dev-python/python-dotenv/python-dotenv-1.0.1.ebuild
@@ -25,7 +25,7 @@ BDEPEND="
>=dev-python/sh-2[${PYTHON_USEDEP}]
$(python_gen_cond_dep '
dev-python/ipython[${PYTHON_USEDEP}]
- ' python3_{10,11})
+ ' python3_{10..12})
)
"
diff --git a/dev-python/python-ironicclient/Manifest b/dev-python/python-ironicclient/Manifest
index cf9db740f9f2..617546052b9d 100644
--- a/dev-python/python-ironicclient/Manifest
+++ b/dev-python/python-ironicclient/Manifest
@@ -1 +1,2 @@
DIST python-ironicclient-5.5.0.tar.gz 228869 BLAKE2B 0dbced62dee32bc2a25add2f81390fa7e581978deef1ae8fbb1cac7ec8b219d201d13d64f8621a34886b1af765335ffe4bf591867a2288499f37fe5b88cd4fa9 SHA512 bd6cbca3e5bd1675d130089298a043352bdb842f6f7b06f526b956c0fcb0eff4f9d6f58389c0bdce1de4496a6befa91891d1ff2bea48bec0512d8d28285f7323
+DIST python-ironicclient-5.6.0.tar.gz 229569 BLAKE2B 2db608463479fc5bb7061562d8617d96244e80276790ae2829373d9ba02412027658c33c5f22d6fd921bf84599584c588c462b4480d294e288dc063f7c73e274 SHA512 133de151e5a884c0c9840b72236f5d99e5e197889ed2e80545174d8754b09e65c370c6a97c367ed4c4ca76f593e665e6481cd45c266fdf3ba7fc348307539907
diff --git a/dev-python/python-ironicclient/python-ironicclient-5.6.0.ebuild b/dev-python/python-ironicclient/python-ironicclient-5.6.0.ebuild
new file mode 100644
index 000000000000..98c0629066b0
--- /dev/null
+++ b/dev-python/python-ironicclient/python-ironicclient-5.6.0.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pbr
+PYPI_NO_NORMALIZE=1
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python bindings for the Ironic API"
+HOMEPAGE="
+ https://opendev.org/openstack/python-ironicclient/
+ https://github.com/openstack/python-ironicclient/
+ https://pypi.org/project/python-ironicclient/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+
+RDEPEND="
+ >=dev-python/pbr-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/cliff-2.8.0[${PYTHON_USEDEP}]
+ >=dev-python/dogpile-cache-0.8.0[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/keystoneauth1-3.11.0[${PYTHON_USEDEP}]
+ >=dev-python/openstacksdk-0.18.0[${PYTHON_USEDEP}]
+ >=dev-python/osc-lib-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/oslo-utils-3.33.0[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-3[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-3.13.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.14.2[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-1.20.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-mock-1.2.0[${PYTHON_USEDEP}]
+ >=dev-python/oslotest-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
+ >=dev-python/tempest-17.1.0[${PYTHON_USEDEP}]
+ >=dev-python/ddt-1.0.1[${PYTHON_USEDEP}]
+ >=dev-python/python-openstackclient-3.12.0[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests unittest
diff --git a/dev-python/pytools/Manifest b/dev-python/pytools/Manifest
index 46bd36095122..71f4404e302c 100644
--- a/dev-python/pytools/Manifest
+++ b/dev-python/pytools/Manifest
@@ -1,2 +1 @@
-DIST pytools-2024.1.1.tar.gz 77122 BLAKE2B 38b46a6363c707da90670a28d63dbaf1b77f739a4f7473bda11fa671ad267ee33c48312e3813e05888d3cd48efc60ec3006d57a316053ff2d0160d0b284bca9d SHA512 3b47764ac6f1ea0938c32e42092c0acfe81b2f22eb15c3ded589c5022c8a07ff89420f30ec78779ccb9f07d8611fa9c447539859371d8aade603f302b747cf97
DIST pytools-2024.1.2.tar.gz 77642 BLAKE2B b393149a81a708f3681b34e88e22113223f53f23e83c8f1848d4fd6ec456af7145fba8a98efd716d8be5b6184fc9973c05aa9c0814d48ee4925255b57f6119a5 SHA512 3252b3930934c43f840a77f41e0958fef6121db1d64efc5498defadf8e48fdbda89d1539b87b6367c8acf4ad7eaf7fdf364263340ffebd834861f0f21f1af4c7
diff --git a/dev-python/pytools/pytools-2024.1.1.ebuild b/dev-python/pytools/pytools-2024.1.1.ebuild
deleted file mode 100644
index e4a80b579b6b..000000000000
--- a/dev-python/pytools/pytools-2024.1.1.ebuild
+++ /dev/null
@@ -1,33 +0,0 @@
-# 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} )
-PYTHON_REQ_USE='sqlite'
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="Collection of tools missing from the Python standard library"
-HOMEPAGE="
- https://mathema.tician.de/software/pytools/
- https://github.com/inducer/pytools/
- https://pypi.org/project/pytools/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~ppc64 ~riscv"
-
-# NB: numpy is now an "extra" (optional) dep -- we can remove it from
-# RDEPEND If revdeps don't need it
-RDEPEND="
- >=dev-python/numpy-1.6.0[${PYTHON_USEDEP}]
- >=dev-python/platformdirs-2.2.0[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- >=dev-python/typing-extensions-4.0[${PYTHON_USEDEP}]
- ' 3.10)
-"
-
-distutils_enable_tests pytest
diff --git a/dev-python/pytools/pytools-2024.1.2.ebuild b/dev-python/pytools/pytools-2024.1.2.ebuild
index a7eae61cafc1..e4a80b579b6b 100644
--- a/dev-python/pytools/pytools-2024.1.2.ebuild
+++ b/dev-python/pytools/pytools-2024.1.2.ebuild
@@ -18,7 +18,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv"
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv"
# NB: numpy is now an "extra" (optional) dep -- we can remove it from
# RDEPEND If revdeps don't need it
diff --git a/dev-python/pyyaml/pyyaml-6.0.1-r1.ebuild b/dev-python/pyyaml/pyyaml-6.0.1-r1.ebuild
index 6a33eaa03922..e4dc97606f81 100644
--- a/dev-python/pyyaml/pyyaml-6.0.1-r1.ebuild
+++ b/dev-python/pyyaml/pyyaml-6.0.1-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/regex/Manifest b/dev-python/regex/Manifest
index 8da55fb8fefa..836084a166a1 100644
--- a/dev-python/regex/Manifest
+++ b/dev-python/regex/Manifest
@@ -1,3 +1,4 @@
DIST regex-2023.12.25.tar.gz 394706 BLAKE2B 742abe3a3515b527465d81df8fd9404aaa6aa1545e3e6a8c4a87d72d41138caf7f63bceae8bf06b3576656a6b5577bfec51629a60fe837ad2f3a4cd60a08ac06 SHA512 ecc5916633e2acb8d8a0c5ccfdc1c612f673546c42271d5627aa92a163fa6c8fd5a30ed734a02c23fa64807aaf2f883fa51175b7f482888631f699e77d1c0e15
DIST regex-2024.4.16.tar.gz 394724 BLAKE2B 75df2f861116ebf37845abdb0883774ac53d7d61e4cdf18128c74b4c1d5a55b86bfd447616cdb8fc14239c0a5aeaa2c7e59cb0b2b365b57185d785a3728e6dce SHA512 15da80751f1a4b000e4ea59887963aec939fc6431a672391a7f882e05ff15934b89e191d19fd388b9dd6032d2ea44f8511c0ce238e5f1d8db102a89d1866f456
DIST regex-2024.4.28.tar.gz 394810 BLAKE2B 6fa882219feb783c7340015769655e05257ddd17a6e34f830a60f319afca5face64de72511b0bef0820ace4f379ff5ad557bbdfef414cc0371136a79949a7e13 SHA512 3a05ea8f197d6924f6fd3db2609c1ca13f452f1bc598f8d6ec2ee45a0e5966655e93f039cc76e1cdc714856fa5d21e64aae8d83063ebafdd85e44c82e65f8c50
+DIST regex-2024.5.10.tar.gz 394828 BLAKE2B a16a9b2bcfbec0df059342aee3faa6d71342f8cca78d8db2176be89ee9ababfa03875177f860791701eee2b1b6f3f00ad5e0a7ee74fc78d3c19279893098b69f SHA512 349c2961d96d39cdb76d2f05c7238f0d7e8726445b945001673ad989e2d72e045aeac0f4e661b510cf177bc3634e4573edef211b3b825840acb328be7cf0c9df
diff --git a/dev-python/regex/regex-2024.5.10.ebuild b/dev-python/regex/regex-2024.5.10.ebuild
new file mode 100644
index 000000000000..39e9de8e2592
--- /dev/null
+++ b/dev-python/regex/regex-2024.5.10.ebuild
@@ -0,0 +1,37 @@
+# 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
+# pypy isn't supported upstream because of its UTF8 representation for strings
+# See https://github.com/mrabarnett/mrab-regex/issues/521#issuecomment-1936260187.
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Alternative regular expression module to replace re"
+HOMEPAGE="
+ https://github.com/mrabarnett/mrab-regex/
+ https://pypi.org/project/regex/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos"
+IUSE="doc"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_empty_array.patch"
+ "${FILESDIR}/${PN}-2021.4.4-pypy3-fix-test_issue_18468.patch"
+)
+
+distutils_enable_tests unittest
+
+python_install_all() {
+ use doc && local HTML_DOCS=( docs/Features.html )
+ local DOCS=( README.rst docs/*.rst )
+
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/requests_download/Manifest b/dev-python/requests_download/Manifest
index 8951ccff9fd3..85b3c7a8855d 100644
--- a/dev-python/requests_download/Manifest
+++ b/dev-python/requests_download/Manifest
@@ -1 +1 @@
-DIST requests_download-0.1.2.tar.gz 2584 BLAKE2B c6f2eb7a182e0f42ccb7b603dec47a077b1b946bfa93968972dce5267c7c51fa8c4158e15cd35621cbe229e12f6644db9734e52439796d8d8411be16a38e1e9a SHA512 99d4b275200c88befd2730d17a3329c8cbb155fa5cf9600a7466e8ab109f999a9fc9b8c668aa3b389bc2a3deb33b8a3fd390270d71f04bb0a8f998da67cfde82
+DIST requests_download-0.1.2.gh.tar.gz 2584 BLAKE2B c6f2eb7a182e0f42ccb7b603dec47a077b1b946bfa93968972dce5267c7c51fa8c4158e15cd35621cbe229e12f6644db9734e52439796d8d8411be16a38e1e9a SHA512 99d4b275200c88befd2730d17a3329c8cbb155fa5cf9600a7466e8ab109f999a9fc9b8c668aa3b389bc2a3deb33b8a3fd390270d71f04bb0a8f998da67cfde82
diff --git a/dev-python/requests_download/requests_download-0.1.2-r1.ebuild b/dev-python/requests_download/requests_download-0.1.2-r1.ebuild
deleted file mode 100644
index 8ee155198551..000000000000
--- a/dev-python/requests_download/requests_download-0.1.2-r1.ebuild
+++ /dev/null
@@ -1,25 +0,0 @@
-# Copyright 2019-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=flit
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1
-
-DESCRIPTION="A convenient function to download to a file using requests"
-HOMEPAGE="https://github.com/takluyver/requests_download https://pypi.org/project/requests_download/"
-SRC_URI="https://github.com/takluyver/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 ~mips ~x86"
-
-RDEPEND="dev-python/requests[${PYTHON_USEDEP}]"
-BDEPEND="${RDEPEND}"
-
-# there are no tests upstream
-RESTRICT="test"
-
-DOCS=( README.rst )
diff --git a/dev-python/requests_download/requests_download-0.1.2-r2.ebuild b/dev-python/requests_download/requests_download-0.1.2-r2.ebuild
index b9b24833a414..9d555c9d7f5f 100644
--- a/dev-python/requests_download/requests_download-0.1.2-r2.ebuild
+++ b/dev-python/requests_download/requests_download-0.1.2-r2.ebuild
@@ -13,11 +13,14 @@ HOMEPAGE="
https://github.com/takluyver/requests_download
https://pypi.org/project/requests_download/
"
-SRC_URI="https://github.com/takluyver/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI="
+ https://github.com/takluyver/requests_download/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~mips ~x86"
+KEYWORDS="amd64 ~mips ~x86"
RDEPEND="
dev-python/requests[${PYTHON_USEDEP}]
diff --git a/dev-python/roman/Manifest b/dev-python/roman/Manifest
index e4db7d2df6c6..18dcda558ee7 100644
--- a/dev-python/roman/Manifest
+++ b/dev-python/roman/Manifest
@@ -1,2 +1 @@
-DIST roman-4.1.tar.gz 7005 BLAKE2B de3e7dc4e05994f906b357d8db2f1149f3bf9f420552220cf1cf9427a8ae63ed3ba873b28b75dcbc1f675a370354efa5cae3ac9fb070f9b02126a2867bcefb07 SHA512 69214f35098e17bd106411036feec8a4e5c8450e394c74d60a8e3cc17c6884556347a1d2852fa174db4f66d969e71b26c066439afd6d278786d1a47bf925f302
DIST roman-4.2.tar.gz 7339 BLAKE2B 1315925ffc4324e21582030fa6d963ed50f9fe917056fdf8dba62d90812874dd40d8899ae47274fc584bb56877c5517f507ff8741266e95a89912aead3a23a15 SHA512 4b1ddd54078e5ab38a11cad29fe4ea1f8e4740d7a9d1b093bec7d08ba37ca2bbbf89b2c420987b74270b01a8af5c03bfbfe8cfb5a4dfeb8923894cb52f083e82
diff --git a/dev-python/roman/roman-4.1.ebuild b/dev-python/roman/roman-4.1.ebuild
deleted file mode 100644
index 96a95385a3c0..000000000000
--- a/dev-python/roman/roman-4.1.ebuild
+++ /dev/null
@@ -1,26 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=setuptools
-PYTHON_COMPAT=( python3_{8,9,10,11,12} )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="An Integer to Roman numerals converter"
-HOMEPAGE="
- https://pypi.org/project/roman/
- https://github.com/zopefoundation/roman
-"
-
-LICENSE="ZPL"
-SLOT="0"
-KEYWORDS="amd64 arm64 x86"
-
-distutils_enable_tests unittest
-
-python_prepare_all() {
- mv "${S}/src/tests.py" . || die "moving test file failed"
- distutils-r1_python_prepare_all
-}
diff --git a/dev-python/roman/roman-4.2.ebuild b/dev-python/roman/roman-4.2.ebuild
index 36ab09863f9d..1c29a305cb7c 100644
--- a/dev-python/roman/roman-4.2.ebuild
+++ b/dev-python/roman/roman-4.2.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="ZPL"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 x86"
distutils_enable_tests unittest
diff --git a/dev-python/rst-linker/rst-linker-2.6.0.ebuild b/dev-python/rst-linker/rst-linker-2.6.0.ebuild
index fb028b72fb73..c4e854927389 100644
--- a/dev-python/rst-linker/rst-linker-2.6.0.ebuild
+++ b/dev-python/rst-linker/rst-linker-2.6.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
dev-python/jaraco-context[${PYTHON_USEDEP}]
diff --git a/dev-python/scripttest/scripttest-1.3.0-r2.ebuild b/dev-python/scripttest/scripttest-1.3.0-r2.ebuild
index e24cfa43e68a..cfc2e5f19e75 100644
--- a/dev-python/scripttest/scripttest-1.3.0-r2.ebuild
+++ b/dev-python/scripttest/scripttest-1.3.0-r2.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/selenium/selenium-4.20.0.ebuild b/dev-python/selenium/selenium-4.20.0.ebuild
index 88b00f397eca..ededc0b4137d 100644
--- a/dev-python/selenium/selenium-4.20.0.ebuild
+++ b/dev-python/selenium/selenium-4.20.0.ebuild
@@ -27,7 +27,7 @@ SRC_URI+="
LICENSE="Apache-2.0"
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/certifi-2021.10.8[${PYTHON_USEDEP}]
diff --git a/dev-python/semantic-version/semantic-version-2.10.0.ebuild b/dev-python/semantic-version/semantic-version-2.10.0.ebuild
index d73fe8dd1b60..a4b5765c0473 100644
--- a/dev-python/semantic-version/semantic-version-2.10.0.ebuild
+++ b/dev-python/semantic-version/semantic-version-2.10.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
@@ -23,5 +23,6 @@ distutils_enable_sphinx docs \
distutils_enable_tests pytest
python_test() {
- epytest -p no:django
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
}
diff --git a/dev-python/sentry-sdk/sentry-sdk-2.0.1.ebuild b/dev-python/sentry-sdk/sentry-sdk-2.0.1.ebuild
index 41ebb90af426..30ec23dd1374 100644
--- a/dev-python/sentry-sdk/sentry-sdk-2.0.1.ebuild
+++ b/dev-python/sentry-sdk/sentry-sdk-2.0.1.ebuild
@@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P}
LICENSE="PSF-2"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+KEYWORDS="amd64 arm arm64 ~ppc ~ppc64 ~riscv ~sparc x86"
RDEPEND="
dev-python/urllib3[${PYTHON_USEDEP}]
diff --git a/dev-python/setuptools-gettext/Manifest b/dev-python/setuptools-gettext/Manifest
index bf75bb7c26b2..8820b9b1c7b4 100644
--- a/dev-python/setuptools-gettext/Manifest
+++ b/dev-python/setuptools-gettext/Manifest
@@ -1 +1,2 @@
DIST setuptools-gettext-0.1.11.tar.gz 15582 BLAKE2B a47e8c05683dbf8ac2db9dcbf66f8d680a6d1788ee00f1affcc356fd12ee31d92f6698c9dd1f293000ffb129d6eda2a71b90d0bee1875308f155137c9d2f7cf2 SHA512 abcb0df4604a78959365d3447112d4f74944b26ccc1e0d43771e38ee071c5915a4deda8c852eebbc58c689bcae29cd13604f8b96cea4cc0d6eb6ca4e265e34f7
+DIST setuptools_gettext-0.1.14.tar.gz 16177 BLAKE2B ad34ca37db52bdb2d317592e76e765636402ea2e656af22e31e7e2dfd59edce88003b14d4180b9b77b402ae2b53dcb9cebb0e065753272387bdaeee3af6baefd SHA512 40a76eb94173f704158dc676d332c436b81d11f2045276622cee2ab08636b988f3e95fa60bc4fdeeb72334d2daa51e56cd394f441479221b266e187bda2b928c
diff --git a/dev-python/setuptools-gettext/setuptools-gettext-0.1.14.ebuild b/dev-python/setuptools-gettext/setuptools-gettext-0.1.14.ebuild
new file mode 100644
index 000000000000..f93174ecf316
--- /dev/null
+++ b/dev-python/setuptools-gettext/setuptools-gettext-0.1.14.ebuild
@@ -0,0 +1,36 @@
+# Copyright 2023-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="Setuptools plugin for building mo files"
+HOMEPAGE="
+ https://pypi.org/project/setuptools-gettext/
+ https://github.com/breezy-team/setuptools-gettext
+"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+
+RDEPEND="
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ $(python_gen_cond_dep '
+ >=dev-python/tomli-1.2.1[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+
+python_test() {
+ cd example || die
+ distutils_pep517_install "${T}/${EPYTHON}"
+ if [[ ! -f ${T}/${EPYTHON}/usr/share/locale/nl/LC_MESSAGES/hallowereld.mo ]]
+ then
+ die ".mo file not installed"
+ fi
+}
diff --git a/dev-python/setuptools-rust/setuptools-rust-1.9.0.ebuild b/dev-python/setuptools-rust/setuptools-rust-1.9.0.ebuild
index 544ec36c5dd5..b4edbee38d25 100644
--- a/dev-python/setuptools-rust/setuptools-rust-1.9.0.ebuild
+++ b/dev-python/setuptools-rust/setuptools-rust-1.9.0.ebuild
@@ -162,6 +162,8 @@ src_unpack() {
}
python_test() {
+ local -x UNSAFE_PYO3_SKIP_VERSION_CHECK=1
+
local examples=(
html-py-ever
namespace_package
diff --git a/dev-python/setuptools/setuptools-69.5.1-r1.ebuild b/dev-python/setuptools/setuptools-69.5.1-r1.ebuild
index 77eedf915005..06d08c14fb98 100644
--- a/dev-python/setuptools/setuptools-69.5.1-r1.ebuild
+++ b/dev-python/setuptools/setuptools-69.5.1-r1.ebuild
@@ -21,7 +21,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm arm64 hppa ~ia64 ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
+KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~m68k ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-python/sh/sh-2.0.6.ebuild b/dev-python/sh/sh-2.0.6.ebuild
index ddab06785e77..e7c99caa46f5 100644
--- a/dev-python/sh/sh-2.0.6.ebuild
+++ b/dev-python/sh/sh-2.0.6.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/shtab/shtab-1.7.1.ebuild b/dev-python/shtab/shtab-1.7.1.ebuild
index ed64a34a0d63..1c2fa61274b4 100644
--- a/dev-python/shtab/shtab-1.7.1.ebuild
+++ b/dev-python/shtab/shtab-1.7.1.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 x86"
+KEYWORDS="amd64 ~arm x86"
BDEPEND="dev-python/setuptools-scm[${PYTHON_USEDEP}]"
diff --git a/dev-python/socksio/socksio-1.0.0.ebuild b/dev-python/socksio/socksio-1.0.0.ebuild
index d11616ba68cd..61dfe8108200 100644
--- a/dev-python/socksio/socksio-1.0.0.ebuild
+++ b/dev-python/socksio/socksio-1.0.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/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild b/dev-python/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild
index 0bb1cc4a903f..cece14f8b760 100644
--- a/dev-python/sortedcontainers/sortedcontainers-2.4.0-r1.ebuild
+++ b/dev-python/sortedcontainers/sortedcontainers-2.4.0-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/soupsieve/soupsieve-2.5.ebuild b/dev-python/soupsieve/soupsieve-2.5.ebuild
index a1e99a261e00..b59662ec04f8 100644
--- a/dev-python/soupsieve/soupsieve-2.5.ebuild
+++ b/dev-python/soupsieve/soupsieve-2.5.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/sphinx/files/sphinx-7.3.7-opt-defusedxml.patch b/dev-python/sphinx/files/sphinx-7.3.7-opt-defusedxml.patch
new file mode 100644
index 000000000000..cb70e2cf89fc
--- /dev/null
+++ b/dev-python/sphinx/files/sphinx-7.3.7-opt-defusedxml.patch
@@ -0,0 +1,34 @@
+From ce86026f3b667949ef39f7fdab9a40941d99c5ca Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sat, 11 May 2024 18:31:02 +0200
+Subject: [PATCH] DEPS: Lazy import `defusedxml` only when necessary (#12362)
+
+The `defusedxml` dependency was added to `sphinx.testing` in sphinx 7.3,
+but it is not part of the core sphinx dependencies, and not strictly necessary for the running of the pytest plugin.
+This commit moves the import into the only function which uses it,
+so that the pytest plugins can be used again without this dependency.
+---
+ sphinx/testing/util.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/sphinx/testing/util.py b/sphinx/testing/util.py
+index d1de8ea2b7..b2df709eea 100644
+--- a/sphinx/testing/util.py
++++ b/sphinx/testing/util.py
+@@ -11,7 +11,6 @@
+ from types import MappingProxyType
+ from typing import TYPE_CHECKING
+
+-from defusedxml.ElementTree import parse as xml_parse
+ from docutils import nodes
+ from docutils.parsers.rst import directives, roles
+
+@@ -73,6 +72,8 @@ def assert_node(node: Node, cls: Any = None, xpath: str = "", **kwargs: Any) ->
+ # keep this to restrict the API usage and to have a correct return type
+ def etree_parse(path: str | os.PathLike[str]) -> ElementTree:
+ """Parse a file into a (safe) XML element tree."""
++ from defusedxml.ElementTree import parse as xml_parse
++
+ return xml_parse(path)
+
+
diff --git a/dev-python/sphinx/sphinx-7.3.7-r1.ebuild b/dev-python/sphinx/sphinx-7.3.7-r2.ebuild
index d5a438543731..cd4829e1be06 100644
--- a/dev-python/sphinx/sphinx-7.3.7-r1.ebuild
+++ b/dev-python/sphinx/sphinx-7.3.7-r2.ebuild
@@ -52,11 +52,6 @@ RDEPEND="
)
!dev-python/namespace-sphinxcontrib
"
-# added temporarily because of unconditional import in sphinx.testing.util
-# until we figure out how to deal with it better
-RDEPEND+="
- dev-python/defusedxml[${PYTHON_USEDEP}]
-"
BDEPEND="
doc? (
dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
@@ -77,6 +72,8 @@ BDEPEND="
PATCHES=(
"${FILESDIR}/sphinx-3.2.1-doc-link.patch"
"${FILESDIR}/sphinx-4.3.2-doc-link.patch"
+ # https://github.com/sphinx-doc/sphinx/pull/12362
+ "${FILESDIR}/${P}-opt-defusedxml.patch"
)
distutils_enable_tests pytest
diff --git a/dev-python/sphinxcontrib-qthelp/sphinxcontrib-qthelp-1.0.7.ebuild b/dev-python/sphinxcontrib-qthelp/sphinxcontrib-qthelp-1.0.7.ebuild
index 800bdd545c0f..7e8300ef229a 100644
--- a/dev-python/sphinxcontrib-qthelp/sphinxcontrib-qthelp-1.0.7.ebuild
+++ b/dev-python/sphinxcontrib-qthelp/sphinxcontrib-qthelp-1.0.7.ebuild
@@ -23,7 +23,10 @@ PDEPEND="
>=dev-python/sphinx-5[${PYTHON_USEDEP}]
"
BDEPEND="
- test? ( ${PDEPEND} )
+ test? (
+ dev-python/defusedxml[${PYTHON_USEDEP}]
+ ${PDEPEND}
+ )
"
distutils_enable_tests pytest
diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest
index 73565094f869..c63bd8c36cd8 100644
--- a/dev-python/sqlglot/Manifest
+++ b/dev-python/sqlglot/Manifest
@@ -19,8 +19,8 @@ DIST quote-1.0.33.crate 28090 BLAKE2B 77c4b166f1200e1ee2ab94a5014acd334c1fe4b7d7
DIST redox_syscall-0.4.1.crate 24858 BLAKE2B c3301137a0b84e03b09d28dfa377ab3bea74d574a08cee21d35713b278d8b5b30ca2a1d73a0981baeb4644cbb88c86c8eb15ab3bb2692e38b93e6b35fab4e0da SHA512 073ed9d96090cf46eab9877742277a013c62d8da86d9caf2310b4fa868af306511936553579e01309f27067d344226cc8dc5e3aef01d9b900da2febd33848f8d
DIST scopeguard-1.2.0.crate 11619 BLAKE2B 8b7e9ed6cefef9ee55407fb9690d57a2a98bb93e5105aeebdb475a52485e9e185255249e1dce8f83cd80534e7402d485aac3efa7e8493b13135de27550cd4bc4 SHA512 6247719a15fe1e4e2d179127b9a934bd2f99367724f41175ed9522f58824b6bc69b35002eae66b35880375ff61d77ac43ddaa78cbde7160a35183a1da32d3fbb
DIST smallvec-1.11.2.crate 34801 BLAKE2B 58645e99db8f02db64d02c75860c7ea41836c427c03ee3b0b23365e73a406e4fd6ac312bf13fc5faef8bb6111c10fcfd5f839d5b3686e9b34d1626f8469fc327 SHA512 5cfb427c3b99b0dbd71f6154ed899abcde9d7d2992977ac7b2ef3a4c3ff51e4efafd133071a69609b4ed6cb269bdc26b79eb72e1988f10dfcaef8185d950cd1d
-DIST sqlglot-23.13.7.tar.gz 13093895 BLAKE2B 3d6311e81030f01675251380c7883ef4d2151e00438b3767bf7da57bdfc5818054ed33ef4517836d178028d8984ff206256aa48138020c0acce1cb0c27709322 SHA512 dbf53572ce8fd5e1bc694e275356740997aa0a87885d8c5991bac45084a301e52474c9e6193f36346c4cf429ec953fcb276e66861ce7a1e0e7909600dee57528
-DIST sqlglot-23.14.0.tar.gz 13092216 BLAKE2B d0ea74b6c29162553e48d75c021951b377661ed0080954202967b88c8908068439982a7ac34974d96a3ba910ca3f604d0ba5aedd79fbb9ca9090be9db5e2acd4 SHA512 f5af3ec913197fbd5c2bc5cd3338b23eee526a51441fc9d5a608d8435ea717faa74cc0d60ca056f043858b38b1ba1859a49ed5909639ef61b088dd3b0b06bf60
+DIST sqlglot-23.15.0.tar.gz 13095809 BLAKE2B c8a7f63cfc1014f43a14ba655551948ab3e8c98b89a1458b3f44fd26a0b36c9219610d0f7078da4632c8e7a87111c13b05f52a4b368d900ae7a03af90c7eca40 SHA512 e04aea350d702c0def2b57024ec959fa4f5128cda71b610da1d919db5ac1f415e3e53e0aae5f2a9de37fca120f44a64c8d8d41f136ab446d4df80b6cf6fef6b0
+DIST sqlglot-23.15.8.tar.gz 13118607 BLAKE2B 967590ff24f6a25adc4c227510ab027f695cf12b90dbf3304a6327afcdbfbd7d96d7f77b25876f3e7dce471c78e38498f9c156671f84f25b7eeecd315678a958 SHA512 4d283b9cd09b7bee873c07b9618cd046d1d312bf8e3280a635ccb91c45532c590a152db97cc338be91eafc2e68dd587f48460ad8eea1ab0b4c5ec5f64c2be2d9
DIST syn-2.0.41.crate 246016 BLAKE2B 9d389f2e2a0acb4c84c309456e8ffcc88c5d4d541535ed136832d7a6054dde45a598bb68e8a6f3062ca2a96e1ceae947d54b3aec9bad65b0c51d6733aa6c80db SHA512 6bbaf69ca783025dfb81ac3612ac60bfbed31b2d87792909b35c12892dadebdaff2ddf9463105e536b671dce5870610ab90fe29471284bbd3014dca8d6993f1a
DIST target-lexicon-0.12.12.crate 25156 BLAKE2B f3803596c75f6c89438592a1176c3748fc2c0524d7d50a20056de1cd26d40c572b05bafcdf6dd702752864bea37c8b4f28f96dadc12a5b3bb1d279b25e489f85 SHA512 6147295c43ba1b7b087a3c5ab51534b2985e4e77e5e15687978cfb9d07e21c4fd9bc7191576d6cabd268d08a44dc733c4a957e59dba8b948c2055d8bb433aeca
DIST unicode-ident-1.0.12.crate 42168 BLAKE2B 4cede03c08758ccd6bf53a0d0057d7542dfdd0c93d342e89f3b90460be85518a9fd24958d8b1da2b5a09b5ddbee8a4263982194158e171c2bba3e394d88d6dac SHA512 bc1824e1e4452a40732fc69874d7e1a66f7803717a314790dcf48867eba34bc9441331ef031e386912e52c385645c25b6ed39d4f149973b5b97371b1b96b1920
diff --git a/dev-python/sqlglot/sqlglot-23.13.7.ebuild b/dev-python/sqlglot/sqlglot-23.15.0.ebuild
index c040bab3734b..c040bab3734b 100644
--- a/dev-python/sqlglot/sqlglot-23.13.7.ebuild
+++ b/dev-python/sqlglot/sqlglot-23.15.0.ebuild
diff --git a/dev-python/sqlglot/sqlglot-23.14.0.ebuild b/dev-python/sqlglot/sqlglot-23.15.8.ebuild
index c040bab3734b..c040bab3734b 100644
--- a/dev-python/sqlglot/sqlglot-23.14.0.ebuild
+++ b/dev-python/sqlglot/sqlglot-23.15.8.ebuild
diff --git a/dev-python/stone/Manifest b/dev-python/stone/Manifest
index 05948bb54de8..ca68420e4472 100644
--- a/dev-python/stone/Manifest
+++ b/dev-python/stone/Manifest
@@ -1 +1 @@
-DIST stone-3.3.3.gh.tar.gz 280799 BLAKE2B 5dd099c4f46c8ffe169932143d6bde7f5f23b8c7982a6e02b40b71a7f648cd739918425882eff2db04eca97d41447e34d5350ce2656163f5384601dd2dba5407 SHA512 6cd6a87f68cc827045aa92ec41dba1bffae2a956da792a45ad6a4ff526ab67970069e774641ef0d0cdd304ab06751cbefc2a2911f6bd9cd8d617417bd9e2e84c
+DIST stone-3.3.4.gh.tar.gz 280814 BLAKE2B 05b3e8b85c0075ae61a208f5f7dbc5e099f705b6bdc806b34b003b2decdf4dc89c43d9ec2e25cb7c1dccb0f2cc5c45501a4d390c3ebdb200e1df8ba5a14e187c SHA512 7dce3d4ca5a75463a6ca3d50d695dfda2c694f1b7440a24307c24aa0b0dd6888ca66a5c55f812518b1a001b32698ad58d4ac202c4f5f125502cd12414483e389
diff --git a/dev-python/stone/stone-3.3.3.ebuild b/dev-python/stone/stone-3.3.4.ebuild
index 95e2fda3beea..95e2fda3beea 100644
--- a/dev-python/stone/stone-3.3.3.ebuild
+++ b/dev-python/stone/stone-3.3.4.ebuild
diff --git a/dev-python/stripe/Manifest b/dev-python/stripe/Manifest
index 1daafb24bccb..5a54b0fb219c 100644
--- a/dev-python/stripe/Manifest
+++ b/dev-python/stripe/Manifest
@@ -1,3 +1,3 @@
-DIST stripe-9.3.0.tar.gz 1257309 BLAKE2B 819f2ece26282020383953b2f9436023796897b7928ac9f07c753a56a79aa8b80cadad9b1f8b1021224f6a4f704a3c2a92aa807d60a6bc769992d7fc6793aecb SHA512 708ffe2b36946de7e5780f582bc0db6a7b3dc82c163a0839491060944e882fa1f7679900d398b87fd2dc336d2e74eccc0f4f821095ce0465affd49b813d2b4fa
DIST stripe-9.4.0.tar.gz 1260466 BLAKE2B 77bcca5fa3e514733f3812b738ae1590da641b24e58de4d6e2eb49d45512e6eecc6025912d03e73344645bd86ea14db2673f9fe9c34519520284bdf965c98eae SHA512 6d290c0c0e86c9eac5862bea8918c7f4508049b0f87fca7e087d05678a35eec28acd1304a8a6f32265856baa8992f364c4cb98b85727862989990024a240ba49
DIST stripe-9.5.0.tar.gz 1262346 BLAKE2B 45ba78fac985352f1857b7f6e5e4907afc9ff45815419671b9ee6476f04a7bf216fa49eb0008b8804d0a9763885ee5a8d09431ba6c26cca5e2091787353ae688 SHA512 2a530fe88d56a4753a5f497547aaf51ae770c1c616677eaad65d820eef638f5dd35d78486a3105caf97b2986f3940019a7cc0e7f89fe1c4ae83195bccd1ce000
+DIST stripe-9.6.0.tar.gz 1265189 BLAKE2B d5b37cc8c7ee8597b80f9920e782e6eda5ff6905f8b303c4344b345c73c80a37eb1cd8dc9cc30d7321c58070cc5b0180144964d5f285edcff031cb0655b41409 SHA512 d93349c85791abec7d691c2aa726996e3110117dfda5608aa63e39463399200a4f8427dc609fc2a32c7eea005e4a79fd93cffa76762e0914efcd89b83baa58c2
diff --git a/dev-python/stripe/stripe-9.4.0.ebuild b/dev-python/stripe/stripe-9.4.0.ebuild
index 9eb8142014cd..7e27243e412c 100644
--- a/dev-python/stripe/stripe-9.4.0.ebuild
+++ b/dev-python/stripe/stripe-9.4.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~x86"
+KEYWORDS="amd64 arm64 x86"
IUSE="telemetry"
RDEPEND="
diff --git a/dev-python/stripe/stripe-9.3.0.ebuild b/dev-python/stripe/stripe-9.6.0.ebuild
index 3bbf09c71d8f..9eb8142014cd 100644
--- a/dev-python/stripe/stripe-9.3.0.ebuild
+++ b/dev-python/stripe/stripe-9.6.0.ebuild
@@ -16,7 +16,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="amd64 arm64 x86"
+KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="telemetry"
RDEPEND="
@@ -26,7 +26,7 @@ RDEPEND="
# please bump dev-util/stripe-mock dep to the latest version on every bump
BDEPEND="
test? (
- >=dev-util/stripe-mock-0.184.0
+ >=dev-util/stripe-mock-0.185.0
dev-python/aiohttp[${PYTHON_USEDEP}]
dev-python/anyio[${PYTHON_USEDEP}]
dev-python/httpx[${PYTHON_USEDEP}]
diff --git a/dev-python/sybil/Manifest b/dev-python/sybil/Manifest
index 64b0a17a44bc..9142a713ce46 100644
--- a/dev-python/sybil/Manifest
+++ b/dev-python/sybil/Manifest
@@ -1 +1,2 @@
DIST sybil-6.1.0.gh.tar.gz 70823 BLAKE2B dfdd931f1f2bb7944a97ceb92425e55accc8d7587c829b65be9b6b65007f8a32b076938e1114bbee76d0a9592ba29335cf88e982aa00d1a3ad17c8523f162548 SHA512 2048073c8ef8a9c0f71dabe39ada1404eef3d83509fe3f3e0a7e6b5d1f65a24242c8faf14aaac9ea12b21ab5908dee9bae9d03d9907f09a830d73a3b6e52f8d3
+DIST sybil-6.1.1.gh.tar.gz 71447 BLAKE2B 44ced68adfae094454c9dc4ae55b7327fc9d149728ec9f2faafc42057bc9e99572289100e310f16afdde7741841964a365c008fc9a16092d270ce88dfb0d89be SHA512 f14bb09b8886bd17ccd3a56d3dfc8e2ff510ad04f7b9c8deadff826571e36547934af6855e0a6cbed43e0c0767a0f0af8f80afcecf4a8db74b041fae9d84bd5a
diff --git a/dev-python/sybil/sybil-6.1.1.ebuild b/dev-python/sybil/sybil-6.1.1.ebuild
new file mode 100644
index 000000000000..a3c67ebe6688
--- /dev/null
+++ b/dev-python/sybil/sybil-6.1.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 2019-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="Automated testing for the examples in your documentation"
+HOMEPAGE="
+ https://github.com/simplistix/sybil/
+ https://pypi.org/project/sybil/
+"
+# tests are missing in sdist, as of 5.0.1
+SRC_URI="
+ https://github.com/simplistix/sybil/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/myst-parser[${PYTHON_USEDEP}]
+ dev-python/seedir[${PYTHON_USEDEP}]
+ dev-python/testfixtures[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/tavern/Manifest b/dev-python/tavern/Manifest
index 435e5d4429f1..ae307dbd49df 100644
--- a/dev-python/tavern/Manifest
+++ b/dev-python/tavern/Manifest
@@ -1 +1,2 @@
DIST tavern-2.10.3.gh.tar.gz 240386 BLAKE2B eb01cdabb171de101784c4fecf99c59fad892e9819e4b047e9d6f30a27b742ac49eb1840a66225466f2de09f8e0883941de92a4051898fe479e35ee06151a0d4 SHA512 e27da0da1d9eb8302ba34191bb9e157a28335c90012569218709f65b761c2f01d47c2e60a4a72df320cb7a2575ee3e890c3dc37027fb91fc90d97305d2afe277
+DIST tavern-2.11.0.gh.tar.gz 233387 BLAKE2B b1b26e7d9fc4069c7056072ab01c9937245304982f78df236e9bcaa795feec6a1db7192532dba6d17d362af874bffce601bb9652b5f1ecda99c59387f717bb15 SHA512 456fa6ebfc6f47ff9a473e3f416aff9f88b1f9b25c898786d15472072859e1659c089a9c668e6ddc4ecfc0cc8c233417d4768e0f7228800995509a5a34294faf
diff --git a/dev-python/tavern/tavern-2.11.0.ebuild b/dev-python/tavern/tavern-2.11.0.ebuild
new file mode 100644
index 000000000000..4df00c249e6b
--- /dev/null
+++ b/dev-python/tavern/tavern-2.11.0.ebuild
@@ -0,0 +1,66 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{8,9,10,11,12} )
+
+inherit distutils-r1
+
+DESCRIPTION="A tool, library, and Pytest plugin for testing RESTful APIs"
+HOMEPAGE="
+ https://github.com/taverntesting/tavern/
+ https://pypi.org/project/tavern/
+"
+SRC_URI="
+ https://github.com/taverntesting/tavern/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+RDEPEND="
+ >=dev-python/jmespath-1[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-4[${PYTHON_USEDEP}]
+ <dev-python/paho-mqtt-2[${PYTHON_USEDEP}]
+ >=dev-python/paho-mqtt-1.3.1[${PYTHON_USEDEP}]
+ >=dev-python/pyjwt-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/pykwalify-1.8.0[${PYTHON_USEDEP}]
+ >=dev-python/pytest-7[${PYTHON_USEDEP}]
+ >=dev-python/python-box-6[${PYTHON_USEDEP}]
+ >=dev-python/pyyaml-6.0.1[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.22.0[${PYTHON_USEDEP}]
+ >=dev-python/stevedore-4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/colorlog[${PYTHON_USEDEP}]
+ dev-python/Faker[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # strip unnecessary pins, upstream doesn't update them a lot
+ sed -i -E -e 's:,?<=?[0-9.]+::' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # requires grpc
+ tests/unit/test_extensions.py::TestGrpcCodes
+ )
+ local EPYTEST_IGNORE=(
+ # require grpc*
+ tavern/_plugins/grpc
+ tests/unit/tavern_grpc
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p tavern
+}
diff --git a/dev-python/tempora/tempora-5.5.1.ebuild b/dev-python/tempora/tempora-5.5.1.ebuild
index e44dc3c36d4e..c36e47d7068d 100644
--- a/dev-python/tempora/tempora-5.5.1.ebuild
+++ b/dev-python/tempora/tempora-5.5.1.ebuild
@@ -42,5 +42,5 @@ python_test() {
fi
local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
- epytest -p freezer
+ epytest -p freezegun
}
diff --git a/dev-python/textdistance/Manifest b/dev-python/textdistance/Manifest
index 51e618e7230f..49bb4897b572 100644
--- a/dev-python/textdistance/Manifest
+++ b/dev-python/textdistance/Manifest
@@ -1,2 +1 @@
-DIST textdistance-4.6.1.gh.tar.gz 46618 BLAKE2B 168737e2380380570e67e873913823851e6e50a52f5180d4c5519a71f7899074aff2514f0df1a5d920c1c6a8313522fda6eb987862008eda9221ea8cc5be2902 SHA512 a27256c8ad9a228711acb6d54c5ea05634c89537686751c50623411238ee0b519cf0415e345c83b5cd347bda855751562c37ad88f06c1eacfea959cf2798b97c
DIST textdistance-4.6.2.gh.tar.gz 46619 BLAKE2B 0a205bd5615f252f4ab832597b26cd81f3a817fa9544675b947b2ba8a9d8c128ad261a09fb1ee118e0ca807ff7721f3594de5da11f5df59c90c2d9b7110b84ff SHA512 4e5ec7ef76cfd45b05f5813d624d934a6aa90c326b8bc1af50fdde51c4fda141d5aa826e7a145f4cf59f7d7cbcdcf775746eeb197a2adef3c62ad8570d699890
diff --git a/dev-python/textdistance/textdistance-4.6.1.ebuild b/dev-python/textdistance/textdistance-4.6.1.ebuild
deleted file mode 100644
index f6a41b639ca6..000000000000
--- a/dev-python/textdistance/textdistance-4.6.1.ebuild
+++ /dev/null
@@ -1,36 +0,0 @@
-# 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="Compute distance between the two texts"
-HOMEPAGE="
- https://github.com/life4/textdistance/
- https://pypi.org/project/textdistance/
-"
-SRC_URI="
- https://github.com/life4/textdistance/archive/${PV}.tar.gz
- -> ${P}.gh.tar.gz
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86"
-
-BDEPEND="
- test? (
- dev-python/hypothesis[${PYTHON_USEDEP}]
- dev-python/numpy[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-EPYTEST_IGNORE=(
- tests/test_external.py
-)
diff --git a/dev-python/textdistance/textdistance-4.6.2.ebuild b/dev-python/textdistance/textdistance-4.6.2.ebuild
index a6a7e1731eb5..f6a41b639ca6 100644
--- a/dev-python/textdistance/textdistance-4.6.2.ebuild
+++ b/dev-python/textdistance/textdistance-4.6.2.ebuild
@@ -20,7 +20,7 @@ SRC_URI="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+KEYWORDS="amd64 arm64 ~ppc64 ~riscv x86"
BDEPEND="
test? (
diff --git a/dev-python/textual/Manifest b/dev-python/textual/Manifest
index d0e1368f11d9..998d32c86a68 100644
--- a/dev-python/textual/Manifest
+++ b/dev-python/textual/Manifest
@@ -1 +1 @@
-DIST textual-0.56.4.gh.tar.gz 28108154 BLAKE2B e27b62a3c00516a494f06e7817405aeacd0bbe2ee6e9b235921a8458679047420cac198f1bbe352d66583a432a3f10088059df22c078d52ddb8aafeeeee83477 SHA512 230ff995ab26feaf347f9fb630fead751573eefcca291219eabae61380fa49f99c51715616619b65504071cfa1424bdb3720293f7909ea7958f53ff47db472be
+DIST textual-0.58.1.gh.tar.gz 28246721 BLAKE2B 3ab2d8610677cc45d8cc8fdb07882e1ccc4f5a01555939cd9a39141de08e5ad774aad889d3716a033f7ab30ac9f1637d3ed8605e23f87d055726ab6aa1e2b75b SHA512 3cb8410a352a75555bb6d36e29e2ae6900e80cb18cf1f0f5c779f0858bb727a3b27a0e4342b692dbba096698a73564ede0ca9fb27f8a46e87eda4209034e8de3
diff --git a/dev-python/textual/textual-0.56.4.ebuild b/dev-python/textual/textual-0.58.1.ebuild
index 73e2a55464fc..73e2a55464fc 100644
--- a/dev-python/textual/textual-0.56.4.ebuild
+++ b/dev-python/textual/textual-0.58.1.ebuild
diff --git a/dev-python/tifffile/Manifest b/dev-python/tifffile/Manifest
index 6a3c8de8c372..0ce3456a2995 100644
--- a/dev-python/tifffile/Manifest
+++ b/dev-python/tifffile/Manifest
@@ -1,2 +1,3 @@
DIST tifffile-2024.4.24.gh.tar.gz 346320 BLAKE2B 55f755044a6ee3826beaa8c9d39e5351474d73a64bd2af7d7e31dc20ac156c762b93a5d4986cd3dab8a70ed3b1674fe47e7ed07834a8833dcfa15fe6f179ccb5 SHA512 7ca3b32596210878e24c48475df8b95b193906669f0c561ba0567b6159fe951dd0d89ab83b094ba859da526e6c456d21e4b53bcc6038824556a0391d48a601f5
+DIST tifffile-2024.5.10.gh.tar.gz 347939 BLAKE2B d2295e04ba9dd90ae9b61e8d62263faf8d14293d4f29c3324b0f5e0078cd8e710a2193c0f0f000c7b4c14d54b76dc2e838b188620537e82e77e8b7b63a5cb575 SHA512 e460caf9c3424923f50babc7c8b8030cc7cc7ff9b1d915568cfdecd753e006659dda860948c9568eafc67aac621948675f7ab7e5468c7c0e72ba626fbde039e4
DIST tifffile-2024.5.3.gh.tar.gz 347188 BLAKE2B 965b216c69f3257870298303ed165e6c5a9a581c079ec349156e40e8d812dd21cf2b8f7b2d3036ae4f2357296e6c6035ac52d8b7e799dd57b0c63287415c1a70 SHA512 46d90a78c0cf8111fd7c9a22ead8f4b8e1715a57cb0e7be0112027e44495d8d239ebe87433e94865b0925e47eb43af13b720318e906c63c0848c52e4f17f22d7
diff --git a/dev-python/tifffile/tifffile-2024.5.10.ebuild b/dev-python/tifffile/tifffile-2024.5.10.ebuild
new file mode 100644
index 000000000000..1f53f5beadd7
--- /dev/null
+++ b/dev-python/tifffile/tifffile-2024.5.10.ebuild
@@ -0,0 +1,47 @@
+# 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/tomli-w/tomli-w-1.0.0-r1.ebuild b/dev-python/tomli-w/tomli-w-1.0.0-r1.ebuild
index ba217eacbf57..49ca3863997f 100644
--- a/dev-python/tomli-w/tomli-w-1.0.0-r1.ebuild
+++ b/dev-python/tomli-w/tomli-w-1.0.0-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2023 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/tomli/tomli-2.0.1-r1.ebuild b/dev-python/tomli/tomli-2.0.1-r1.ebuild
index e75c064063bd..ded9e827e359 100644
--- a/dev-python/tomli/tomli-2.0.1-r1.ebuild
+++ b/dev-python/tomli/tomli-2.0.1-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 2021-2023 Gentoo Authors
+# Copyright 2021-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 7 -- sys-apps/portage dep
diff --git a/dev-python/tomlkit/Manifest b/dev-python/tomlkit/Manifest
index 0613bf1a0ac4..05a5ba64102e 100644
--- a/dev-python/tomlkit/Manifest
+++ b/dev-python/tomlkit/Manifest
@@ -1 +1,2 @@
DIST tomlkit-0.12.4.tar.gz 191162 BLAKE2B 3a5f8f01c7965a6d445fa96d0253d0dad55414bf9cae875fe9d9bc670d5b0a20a76fbf655695396ea188cddcea7ad034a38eed05d85f48c47301a3f23a9c7ded SHA512 b6b1cbb954202a256411388eea46852964bbdd02026086a42eab9107c55b961718398ec504f0289560894e9b46cf1c2f4b7e943267454509f6212e899e161d05
+DIST tomlkit-0.12.5.tar.gz 191420 BLAKE2B 3175f2932db1da3aca439581c7a11fd2dce01dff3c9d21b07577bdf38138515105939bc864510dce1f98e28caa222b6ba94a0d0906b515e7b677c405b90bf77c SHA512 85fba0018059c72f483251e53c039ede4ed630dd31afc58a1555705281a42c090aee2d8c25234b8700ff5f3a766313d7c9c716d7224f608f22f836c9e701c251
diff --git a/dev-python/tomlkit/tomlkit-0.12.5.ebuild b/dev-python/tomlkit/tomlkit-0.12.5.ebuild
new file mode 100644
index 000000000000..8765f6d057c1
--- /dev/null
+++ b/dev-python/tomlkit/tomlkit-0.12.5.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=flit
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Style preserving TOML library"
+HOMEPAGE="
+ https://github.com/sdispater/tomlkit/
+ https://pypi.org/project/tomlkit/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="
+ test? (
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_configure() {
+ grep -q 'build-backend = "poetry' pyproject.toml ||
+ die "Upstream changed build-backend, recheck"
+ # write a custom pyproject.toml to ease setuptools bootstrap
+ cat > pyproject.toml <<-EOF || die
+ [build-system]
+ requires = ["flit_core >=3.2,<4"]
+ build-backend = "flit_core.buildapi"
+
+ [project]
+ name = "tomlkit"
+ version = "${PV}"
+ description = "Style preserving TOML library"
+ EOF
+}
diff --git a/dev-python/tox/Manifest b/dev-python/tox/Manifest
index 0bddde40eb69..d4e6554b8b7c 100644
--- a/dev-python/tox/Manifest
+++ b/dev-python/tox/Manifest
@@ -1,2 +1 @@
-DIST tox-4.14.2.tar.gz 178515 BLAKE2B 812a4e0ffe218c5799a5bdf76cc5f1f99f60c7de464953349283e3951c91aded247941cb173bfdff670c9c079b9efb3645220ff7126b7e0cf341071d561a375b SHA512 45bbd3f8d00eee05158452295230321947ec16a8bfff43e84ea9825d514976526f3889709255ed042cfb7a7ebfed020707cfc2d25b69ce90c148f4472092350d
DIST tox-4.15.0.tar.gz 179243 BLAKE2B ba126d2dbe9598667570e1798567cf2301a60ca4859947b0b5cd15603b6f1b9c1b557bc090973a3c99960c29242edbb684d9ab81b90ecca3ac020b129a033850 SHA512 a113d8e921301dc4bc39e03103f8857604b28beedc49c764315cf99694e8a351b965e0e1b7d91555ce437a1cbb2bce0e1dd645b7c92c36e8e0e1dedcf610d1af
diff --git a/dev-python/tox/tox-4.14.2.ebuild b/dev-python/tox/tox-4.14.2.ebuild
deleted file mode 100644
index 8af62dc4823b..000000000000
--- a/dev-python/tox/tox-4.14.2.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=hatchling
-PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
-
-inherit distutils-r1 pypi
-
-DESCRIPTION="virtualenv-based automation of test activities"
-HOMEPAGE="
- https://tox.readthedocs.io/
- https://github.com/tox-dev/tox/
- https://pypi.org/project/tox/
-"
-
-LICENSE="MIT"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-
-RDEPEND="
- dev-python/cachetools[${PYTHON_USEDEP}]
- dev-python/chardet[${PYTHON_USEDEP}]
- dev-python/colorama[${PYTHON_USEDEP}]
- dev-python/filelock[${PYTHON_USEDEP}]
- dev-python/packaging[${PYTHON_USEDEP}]
- dev-python/platformdirs[${PYTHON_USEDEP}]
- dev-python/pluggy[${PYTHON_USEDEP}]
- dev-python/pyproject-api[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/tomli[${PYTHON_USEDEP}]
- ' 3.{9..10})
- dev-python/virtualenv[${PYTHON_USEDEP}]
-"
-BDEPEND="
- dev-python/hatch-vcs[${PYTHON_USEDEP}]
- test? (
- dev-python/build[${PYTHON_USEDEP}]
- dev-python/distlib[${PYTHON_USEDEP}]
- dev-python/flaky[${PYTHON_USEDEP}]
- dev-python/psutil[${PYTHON_USEDEP}]
- dev-python/pytest-mock[${PYTHON_USEDEP}]
- dev-python/pytest-xdist[${PYTHON_USEDEP}]
- dev-python/re-assert[${PYTHON_USEDEP}]
- $(python_gen_cond_dep '
- dev-python/time-machine[${PYTHON_USEDEP}]
- ' 'python*')
- )
-"
-
-distutils_enable_tests pytest
-
-src_prepare() {
- # upstream lower bounds are meaningless
- sed -i -e 's:>=[0-9.]*::' pyproject.toml || die
- distutils-r1_src_prepare
-}
-
-python_test() {
- # devpi_process is not packaged, and has lots of dependencies
- cat > "${T}"/devpi_process.py <<-EOF || die
- def IndexServer(*args, **kwargs): raise NotImplementedError()
- EOF
-
- local -x PYTHONPATH=${T}:${PYTHONPATH}
- local EPYTEST_DESELECT=(
- # Internet
- tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_build_wheel_external
- tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_run_installpkg_targz
- )
- local EPYTEST_IGNORE=(
- # requires devpi*
- tests/test_provision.py
- )
-
- [[ ${EPYTHON} == pypy3 ]] && EPYTEST_DESELECT+=(
- 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit-True-True]'
- 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements-True-True]'
- 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[constraints-True-True]'
- 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit+requirements-True-True]'
- 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_indirect-True-True]'
- 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_constraints_indirect-True-True]'
- )
-
- epytest
-}
diff --git a/dev-python/tox/tox-4.15.0.ebuild b/dev-python/tox/tox-4.15.0.ebuild
index 60ee4e5af69b..8af62dc4823b 100644
--- a/dev-python/tox/tox-4.15.0.ebuild
+++ b/dev-python/tox/tox-4.15.0.ebuild
@@ -17,7 +17,7 @@ HOMEPAGE="
LICENSE="MIT"
SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
RDEPEND="
dev-python/cachetools[${PYTHON_USEDEP}]
diff --git a/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-Revert-test-skip-some-FAPI-tests-if-testing-agains-t.patch b/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-Revert-test-skip-some-FAPI-tests-if-testing-agains-t.patch
new file mode 100644
index 000000000000..ff18af2015c6
--- /dev/null
+++ b/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-Revert-test-skip-some-FAPI-tests-if-testing-agains-t.patch
@@ -0,0 +1,83 @@
+From a04715c5ef5bc3d6b30b1354d64db1762bc42b9c Mon Sep 17 00:00:00 2001
+From: Erik Larsson <who+github@cnackers.org>
+Date: Fri, 12 Apr 2024 19:49:52 +0200
+Subject: [PATCH 1/2] Revert "test: skip some FAPI tests if testing agains
+ tpm2-tss master branch."
+
+This reverts commit 9e948984676b38f71e923a6e167340dc99554ac0.
+
+Fixed in tpm2-tss master branch, so remove the temporary fixes.
+
+Signed-off-by: Erik Larsson <who+github@cnackers.org>
+---
+ test/test_fapi.py | 19 +++++--------------
+ 1 file changed, 5 insertions(+), 14 deletions(-)
+
+diff --git a/test/test_fapi.py b/test/test_fapi.py
+index f702fc9..6b77c66 100644
+--- a/test/test_fapi.py
++++ b/test/test_fapi.py
+@@ -13,7 +13,7 @@ from cryptography.hazmat.primitives.asymmetric.padding import PSS
+
+ from tpm2_pytss import *
+
+-from tpm2_pytss.internal.utils import is_bug_fixed, _lib_version_atleast
++from tpm2_pytss.internal.utils import is_bug_fixed
+
+ from .TSS2_BaseTest import TpmSimulator
+ from tpm2_pytss.TSS2_Exception import TSS2_Exception
+@@ -614,8 +614,7 @@ class Common:
+ self.fapi.sign(key_path, b"\x22" * 32)
+
+ @pytest.mark.skipif(
+- _lib_version_atleast("tss2-fapi", "4.0.1-170")
+- or not is_bug_fixed(fixed_in="3.2", backports=["2.4.7", "3.0.5", "3.1.1"]),
++ not is_bug_fixed(fixed_in="3.2", backports=["2.4.7", "3.0.5", "3.1.1"]),
+ reason="tpm2-tss bug, see #2084",
+ )
+ def test_write_authorize_nv(self, esys):
+@@ -662,8 +661,7 @@ class Common:
+ self.fapi.quote(path=key_path, pcrs=[7, 9])
+
+ @pytest.mark.skipif(
+- _lib_version_atleast("tss2-fapi", "4.0.1-170")
+- or not is_bug_fixed(fixed_in="3.2", backports=["2.4.7", "3.0.5", "3.1.1"]),
++ not is_bug_fixed(fixed_in="3.2", backports=["2.4.7", "3.0.5", "3.1.1"]),
+ reason="tpm2-tss bug, see #2084",
+ )
+ def test_authorize_policy(self, sign_key):
+@@ -728,9 +726,7 @@ class Common:
+ self.fapi.quote(path=key_path, pcrs=[7, 9])
+
+ @pytest.mark.skipif(
+- _lib_version_atleast("tss2-fapi", "4.0.1-170")
+- or not is_bug_fixed(fixed_in="3.2"),
+- reason="tpm2-tss bug, see #2080",
++ not is_bug_fixed(fixed_in="3.2"), reason="tpm2-tss bug, see #2080"
+ )
+ def test_policy_signed(self, cryptography_key):
+ # create external signing key used by the signing authority external to the TPM
+@@ -792,10 +788,6 @@ class Common:
+ with pytest.raises(TSS2_Exception):
+ self.fapi.sign(path=key_path, digest=b"\x11" * 32)
+
+- @pytest.mark.skipif(
+- _lib_version_atleast("tss2-fapi", "4.0.1-170"),
+- reason="issue on master branch.",
+- )
+ def test_policy_branched(self):
+ pcr_index = 15
+ pcr_data = b"ABCDEF"
+@@ -913,8 +905,7 @@ class Common:
+ self.fapi.delete(path=nv_path)
+
+ @pytest.mark.skipif(
+- _lib_version_atleast("tss2-fapi", "4.0.1-170")
+- or not is_bug_fixed(fixed_in="3.2", backports=["2.4.7", "3.0.5", "3.1.1"]),
++ not is_bug_fixed(fixed_in="3.2", backports=["2.4.7", "3.0.5", "3.1.1"]),
+ reason="tpm2-tss bug, see #2089",
+ )
+ def test_policy_action(self):
+--
+2.43.2
+
diff --git a/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-cryptography-fixes-for-newer-version-of-cryptography.patch b/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-cryptography-fixes-for-newer-version-of-cryptography.patch
new file mode 100644
index 000000000000..2938e1938940
--- /dev/null
+++ b/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-cryptography-fixes-for-newer-version-of-cryptography.patch
@@ -0,0 +1,53 @@
+From 5a33c767be196328948baef569de084d97d62384 Mon Sep 17 00:00:00 2001
+From: Erik Larsson <who+github@cnackers.org>
+Date: Tue, 26 Mar 2024 13:25:10 +0100
+Subject: [PATCH] cryptography: fixes for newer version of cryptography
+
+Signed-off-by: Erik Larsson <who+github@cnackers.org>
+---
+ src/tpm2_pytss/internal/crypto.py | 1 +
+ test/test_encoding.py | 2 +-
+ test/test_policy.py | 2 +-
+ 3 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/tpm2_pytss/internal/crypto.py b/src/tpm2_pytss/internal/crypto.py
+index 42030c5..f9d8c34 100644
+--- a/src/tpm2_pytss/internal/crypto.py
++++ b/src/tpm2_pytss/internal/crypto.py
+@@ -25,6 +25,7 @@ from cryptography.hazmat.backends import default_backend
+ from cryptography.exceptions import UnsupportedAlgorithm, InvalidSignature
+ from typing import Tuple, Type, Any
+ import secrets
++import inspect
+ import sys
+
+ _curvetable = (
+diff --git a/test/test_encoding.py b/test/test_encoding.py
+index 1f58562..8cf4b51 100644
+--- a/test/test_encoding.py
++++ b/test/test_encoding.py
+@@ -1406,7 +1406,7 @@ class ToolsTest(TSS2_BaseTest):
+ def test_tools_decode_tpm2b_name(self):
+ if not self.has_tools:
+ self.skipTest("tools not in path")
+- key = ec.generate_private_key(ec.SECP256R1).public_key()
++ key = ec.generate_private_key(ec.SECP256R1()).public_key()
+ kb = key.public_bytes(
+ serialization.Encoding.PEM, serialization.PublicFormat.SubjectPublicKeyInfo
+ )
+diff --git a/test/test_policy.py b/test/test_policy.py
+index f18aa8a..5f56e21 100644
+--- a/test/test_policy.py
++++ b/test/test_policy.py
+@@ -47,7 +47,7 @@ class TestPolicy(TSS2_EsapiTest):
+ super().setUp()
+ self._has_secp192r1 = True
+ try:
+- ec.generate_private_key(ec.SECP192R1)
++ ec.generate_private_key(ec.SECP192R1())
+ except Exception:
+ self._has_secp192r1 = False
+
+--
+2.43.2
+
diff --git a/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-scripts-update-regex-for-defines.patch b/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-scripts-update-regex-for-defines.patch
new file mode 100644
index 000000000000..99f65025434f
--- /dev/null
+++ b/dev-python/tpm2-pytss/files/tpm2-pytss-2.2.1-scripts-update-regex-for-defines.patch
@@ -0,0 +1,28 @@
+From b02fdc8e259fe977c1065389c042be69e2985bdf Mon Sep 17 00:00:00 2001
+From: Erik Larsson <who+github@cnackers.org>
+Date: Sat, 20 Apr 2024 10:32:55 +0200
+Subject: [PATCH 2/2] scripts: update regex for #defines
+
+Commit fdb3594b27aee315ad56af361512800266672582 in tpm2-tss changed
+the structure of some defines, so fix the regex.
+
+Signed-off-by: Erik Larsson <who+github@cnackers.org>
+---
+ scripts/prepare_headers.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/scripts/prepare_headers.py b/scripts/prepare_headers.py
+index 6ca9b64..a7529b3 100644
+--- a/scripts/prepare_headers.py
++++ b/scripts/prepare_headers.py
+@@ -32,6 +32,7 @@ def remove_common_guards(s):
+
+ # Restructure #defines with ...
+ s = re.sub("(#define [A-Za-z0-9_]+) +\(\(.*?\) \(.*?\)\)", "\g<1>...", s)
++ s = re.sub("(#define [A-Za-z0-9_]+) +\(\(\(.*?\) .*\)", "\g<1>...", s)
+ s = re.sub("(#define [A-Za-z0-9_]+) +\(\(.*?\).*?\) ", "\g<1>...", s)
+ s = re.sub(
+ "(#define [A-Za-z0-9_]+) .*\n.*?.*\)\)", "\g<1>...", s, flags=re.MULTILINE
+--
+2.43.2
+
diff --git a/dev-python/tpm2-pytss/tpm2-pytss-2.2.1.ebuild b/dev-python/tpm2-pytss/tpm2-pytss-2.2.1.ebuild
index dccd177f41d7..926b6e34f394 100644
--- a/dev-python/tpm2-pytss/tpm2-pytss-2.2.1.ebuild
+++ b/dev-python/tpm2-pytss/tpm2-pytss-2.2.1.ebuild
@@ -39,6 +39,12 @@ BDEPEND="
dev-python/setuptools-scm[${PYTHON_USEDEP}]
"
+PATCHES=(
+ "${FILESDIR}/${PN}-2.2.1-cryptography-fixes-for-newer-version-of-cryptography.patch"
+ "${FILESDIR}/${PN}-2.2.1-Revert-test-skip-some-FAPI-tests-if-testing-agains-t.patch"
+ "${FILESDIR}/${PN}-2.2.1-scripts-update-regex-for-defines.patch"
+ )
+
export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
distutils_enable_tests pytest
diff --git a/dev-python/trustme/files/trustme-1.1.0-aki.patch b/dev-python/trustme/files/trustme-1.1.0-aki.patch
new file mode 100644
index 000000000000..a00fc85229a9
--- /dev/null
+++ b/dev-python/trustme/files/trustme-1.1.0-aki.patch
@@ -0,0 +1,96 @@
+From 84e347d9221e304f0158330e5101d23969d424d0 Mon Sep 17 00:00:00 2001
+From: Illia Volochii <illia.volochii@gmail.com>
+Date: Wed, 27 Mar 2024 11:45:41 +0000
+Subject: [PATCH 1/3] Add AKI to child CA certificates
+
+---
+ src/trustme/__init__.py | 14 +++++++++++---
+ tests/test_trustme.py | 5 +++++
+ 2 files changed, 16 insertions(+), 3 deletions(-)
+
+diff --git a/src/trustme/__init__.py b/src/trustme/__init__.py
+index 5fb24fb..0db1bb0 100644
+--- a/src/trustme/__init__.py
++++ b/src/trustme/__init__.py
+@@ -250,14 +250,22 @@ def __init__(
+ sign_key = parent_cert._private_key
+ parent_certificate = parent_cert._certificate
+ issuer = parent_certificate.subject
+-
+- self._certificate = (
++ ski_ext = parent_certificate.extensions.get_extension_for_class(
++ x509.SubjectKeyIdentifier)
++ aki = x509.AuthorityKeyIdentifier.from_issuer_subject_key_identifier(ski_ext.value)
++ else:
++ aki = None
++ cert_builder = (
+ _cert_builder_common(name, issuer, self._private_key.public_key())
+ .add_extension(
+ x509.BasicConstraints(ca=True, path_length=path_length),
+ critical=True,
+ )
+- .add_extension(
++ )
++ if aki:
++ cert_builder = cert_builder.add_extension(aki, critical=False)
++ self._certificate = (
++ cert_builder.add_extension(
+ x509.KeyUsage(
+ digital_signature=True, # OCSP
+ content_commitment=False,
+diff --git a/tests/test_trustme.py b/tests/test_trustme.py
+index 1d901ad..581716e 100644
+--- a/tests/test_trustme.py
++++ b/tests/test_trustme.py
+@@ -200,6 +200,11 @@ def test_intermediate() -> None:
+ assert_is_ca(child_ca_cert)
+ assert child_ca_cert.issuer == ca_cert.subject
+ assert _path_length(child_ca_cert) == 8
++ aki = child_ca_cert.extensions.get_extension_for_class(x509.AuthorityKeyIdentifier)
++ assert aki.critical is False
++ expected_aki_key_id = ca_cert.extensions.get_extension_for_class(
++ x509.SubjectKeyIdentifier).value.digest
++ assert aki.value.key_identifier == expected_aki_key_id
+
+ child_server = child_ca.issue_cert("test-host.example.org")
+ assert len(child_server.cert_chain_pems) == 2
+
+From f507a28e0f4d97d63716aa5a81669bb747235f07 Mon Sep 17 00:00:00 2001
+From: Illia Volochii <illia.volochii@gmail.com>
+Date: Wed, 27 Mar 2024 12:02:59 +0000
+Subject: [PATCH 2/3] Fix a typing issue
+
+---
+ src/trustme/__init__.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/trustme/__init__.py b/src/trustme/__init__.py
+index 0db1bb0..d126180 100644
+--- a/src/trustme/__init__.py
++++ b/src/trustme/__init__.py
+@@ -246,6 +246,7 @@ def __init__(
+ )
+ issuer = name
+ sign_key = self._private_key
++ aki: Optional[x509.AuthorityKeyIdentifier]
+ if parent_cert is not None:
+ sign_key = parent_cert._private_key
+ parent_certificate = parent_cert._certificate
+
+From cdd2fd61aae9c92f902932bacd6b39189ecde4b1 Mon Sep 17 00:00:00 2001
+From: Illia Volochii <illia.volochii@gmail.com>
+Date: Wed, 27 Mar 2024 12:09:38 +0000
+Subject: [PATCH 3/3] Add a news entry
+
+---
+ newsfragments/642.bugfix.rst | 1 +
+ 1 file changed, 1 insertion(+)
+ create mode 100644 newsfragments/642.bugfix.rst
+
+diff --git a/newsfragments/642.bugfix.rst b/newsfragments/642.bugfix.rst
+new file mode 100644
+index 0000000..9d75e7a
+--- /dev/null
++++ b/newsfragments/642.bugfix.rst
+@@ -0,0 +1 @@
++Add the Authority Key Identifier extension to child CA certificates.
diff --git a/dev-python/trustme/trustme-1.1.0-r1.ebuild b/dev-python/trustme/trustme-1.1.0-r1.ebuild
new file mode 100644
index 000000000000..37410f97c140
--- /dev/null
+++ b/dev-python/trustme/trustme-1.1.0-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8,9,10,11,12} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="#1 quality TLS certs while you wait, for the discerning tester"
+HOMEPAGE="
+ https://github.com/python-trio/trustme/
+ https://pypi.org/project/trustme/
+"
+
+LICENSE="|| ( Apache-2.0 MIT )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos ~x64-solaris"
+
+RDEPEND="
+ >=dev-python/cryptography-3.1[${PYTHON_USEDEP}]
+ >=dev-python/idna-2.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/pyopenssl[${PYTHON_USEDEP}]
+ dev-python/service-identity[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+PATCHES=(
+ # https://github.com/python-trio/trustme/pull/642
+ # (also fixes py3.13)
+ "${FILESDIR}/${P}-aki.patch"
+)
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/trustme/trustme-1.1.0.ebuild b/dev-python/trustme/trustme-1.1.0.ebuild
index 50114a38a55d..86858b3f6344 100644
--- a/dev-python/trustme/trustme-1.1.0.ebuild
+++ b/dev-python/trustme/trustme-1.1.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
@@ -30,3 +30,8 @@ BDEPEND="
"
distutils_enable_tests pytest
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest
+}
diff --git a/dev-python/types-psutil/Manifest b/dev-python/types-psutil/Manifest
index a05a6a48771a..7013ebb0dac5 100644
--- a/dev-python/types-psutil/Manifest
+++ b/dev-python/types-psutil/Manifest
@@ -1 +1,2 @@
DIST types-psutil-5.9.5.20240423.tar.gz 14582 BLAKE2B 64922d5e12a0f2e9fb5de8dc519c234c4b60372f618393ffe8da21215cf9ce41d0dcd233a44d77c4b3ad852eb7dfb996e58784908a7e44e169bac5541413d038 SHA512 52e895fb82e3221d0dae945afed0091421df65131ed7d9705a58ed90246ed2c884737d2cfda17a70e2fc7bfab3f6d37bd1f0015c6b04218b41bf2a621585c144
+DIST types-psutil-5.9.5.20240511.tar.gz 14625 BLAKE2B bf790a7cb7c32221c5e4ac2efde92b24a32a5bedd5f913a725aeabae0d7feedc0e9a9a0e509e9e4b06d8833a6b397f4695d53f60e67d263e4522db695400a6a2 SHA512 05ff43d1c6b96dafa59cd5eab53f0386739c798d57321febf5253ab5e2a51d79dad41681b683a76ea0def4007f5cdaece8a67928c82fed8fbfbf764d334eb215
diff --git a/dev-python/types-psutil/types-psutil-5.9.5.20240511.ebuild b/dev-python/types-psutil/types-psutil-5.9.5.20240511.ebuild
new file mode 100644
index 000000000000..13f69b1b406d
--- /dev/null
+++ b/dev-python/types-psutil/types-psutil-5.9.5.20240511.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 psutil"
+HOMEPAGE="https://pypi.org/project/types-psutil/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
diff --git a/dev-python/u-msgpack-python/u-msgpack-python-2.8.0.ebuild b/dev-python/u-msgpack-python/u-msgpack-python-2.8.0.ebuild
index 89ec621426ad..755c30246b5b 100644
--- a/dev-python/u-msgpack-python/u-msgpack-python-2.8.0.ebuild
+++ b/dev-python/u-msgpack-python/u-msgpack-python-2.8.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/unittest-mixins/unittest-mixins-1.6-r2.ebuild b/dev-python/unittest-mixins/unittest-mixins-1.6-r2.ebuild
index fae9c1504503..0a94a176c764 100644
--- a/dev-python/unittest-mixins/unittest-mixins-1.6-r2.ebuild
+++ b/dev-python/unittest-mixins/unittest-mixins-1.6-r2.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/uv/Manifest b/dev-python/uv/Manifest
index c0ce2af5ae5d..85cc09a055e4 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -1,3 +1,4 @@
+DIST pubgrub-0e684a874c9fb8f74738cd8875524c80e3d4820b.gh.tar.gz 86899 BLAKE2B 51b8753a092deda12a35b501f34c16e800f2ed2c4c47b64622c752bcf8a52dd1fb9dc1ee69cd107b5b6ee48003c8ef804e20f7eed975a6e63615b94648e37890 SHA512 15e404590fb3b21b01fac318df9cbf81f598dc0506d6d5738ff566a5eb1075e6d7a096a8ad1567e27982662aac0ce2a889a0039ce5736ff140fa617ae8b3cb08
DIST pubgrub-c26e485213e39582c6f2e4d45c0328422670e7a7.gh.tar.gz 86123 BLAKE2B 743bb61460903d276f467b23bb001313598b50cb54fd1a56bcadbc732dd606bafd48a2d9960add3424bd03222450b455f9f1bc8716a80933e5ed0cfb76dcc50a SHA512 9f9c8b58dd2ddeb3ed89abcd790641bd9b7b2cf4fc66dcc4d964a1b69d879adcdaf2775545631ca20f06a8ab5d6bc1df6b2eb272207d2642584c269b358f4d76
DIST pubgrub-e981e4dfe315582e84e2fd724832fb0e0c50b7aa.gh.tar.gz 76914 BLAKE2B e7039f3b2fdc2a702f4824ff99acba9549e916c211290b79ec710060369b2c76e518c210c109103bf5ba50cbb373d0a4e3185df09935d7e47241ec25da259776 SHA512 94cfc88b6736ffd78bcbcc3f4cd9940d27c902bf2dfca38dddb470b8a6a0bb3a8e4a61dd1b2654e49327c9386c3ac2a7f090f9a6c2426b19ecf00d9f9716d400
DIST rs-async-zip-1dcb40cfe1bf5325a6fd4bfcf9894db40241f585.gh.tar.gz 96766 BLAKE2B f9efab73c65394e33e090a6292875ebf35e6669b15c356f102eb109784a4503606ae39106cd0ebe3d7d479cb0b30806d7baaaebf22d826836a24f7ed49100934 SHA512 3b845b05d97c5ab5cea286a7c11846838b40bb1fac98a51782600849a53231be8fa205094c6bdd00f6e193c807b10b28f947698696382be99cae0a8d681dabdc
@@ -9,3 +10,5 @@ DIST uv-0.1.38.gh.tar.gz 1023332 BLAKE2B e62259084fc9122d311bbcac754796b9e0ac28f
DIST uv-0.1.39.gh.tar.gz 1026174 BLAKE2B 857e3f3dd81fae33244bbae5b7e124886ee8c57576f57e5264fb11b89fcb842e18ec07756e70204dc28be0e02ac0368c238d69ae5b1c0a95ab07416a6cf1ccff SHA512 6454fde2eb5166c2097fb44c4b8f505d27344a4a63589589de402887a57c8e1aeed5d52c7e892530d16de9d4a187b6b423f70550016d3c233cec8300b81a8b34
DIST uv-0.1.41-crates.tar.xz 65965588 BLAKE2B 350a4e9e5d3a41682844d7f5e2824f262ef78dab7329723b65c1605c064601d0680c89d194e0228597043d66ae4fd70eb3b20433a42c29668af284c75044d281 SHA512 60f99aee7ee8660565bb3d44694e7eb897599a5b6f11fc6af771b00ee66911a8f0d9117ad61c152e56fc40137edd9f5cc0d1726c9158544adbc8c9b52dbe4384
DIST uv-0.1.41.gh.tar.gz 1069659 BLAKE2B 9caa7c282fa9626510c9f736dfd1796d2e33238378dad1de2c468f745e914b75d7346ecf8ee6d4a87de82b86b3fee5260d95bf0c526c14b96bce44bc983e5758 SHA512 ea8a2b0cd15f3276404c2b8e00ec700346bc2839e3dc7806e537f94bd600818e479fbe3928e1047436382a7caa3d0792fef5f83cfc243ed42018e58a1bee1e6f
+DIST uv-0.1.42-crates.tar.xz 65954692 BLAKE2B ae5b41ebee15530577623f7592ddc1c08c74c47f145ed5521ecea154558d3b5eff4c8f8af1d2d058719c59d87d00ae86d1bda8e3146349bc7a8f5344dfd40a01 SHA512 a5fd91054debc1d08b5270f3a39ae8fe5ca15bcc62e1c3412fb9566c40c3d8387ecbfd24d8b4f3db12199dfec7ddc175a638e7854efbb8c44cb1dbbe97d2b57c
+DIST uv-0.1.42.gh.tar.gz 1077448 BLAKE2B 84c4e5f6e35ac9a50ff3b1ba7b9cdd415a8e4dc2c153aec4a116892b2c567f91ddb67cd32937c2ed867bbfef26c13b3b75c17bc7728334c8db1c58f550d4e735 SHA512 e0451614d8a7f016f382a2c9eaee03cb015fa8c552258bbaa7329e7802b1013878bc16134e0232262fa588bbc724857fb1818e61cb2b948c333aba295ee6c4b8
diff --git a/dev-python/uv/uv-0.1.42.ebuild b/dev-python/uv/uv-0.1.42.ebuild
new file mode 100644
index 000000000000..9f1c8df44f4a
--- /dev/null
+++ b/dev-python/uv/uv-0.1.42.ebuild
@@ -0,0 +1,121 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+CRATES="
+"
+
+declare -A GIT_CRATES=(
+ [async_zip]='https://github.com/charliermarsh/rs-async-zip;1dcb40cfe1bf5325a6fd4bfcf9894db40241f585;rs-async-zip-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;0e684a874c9fb8f74738cd8875524c80e3d4820b;pubgrub-%commit%'
+)
+
+inherit cargo check-reqs
+
+CRATE_P=${P}
+DESCRIPTION="A Python package installer and resolver, written in Rust"
+HOMEPAGE="
+ https://github.com/astral-sh/uv/
+ https://pypi.org/project/uv/
+"
+# pypi sdist misses scripts/, needed for tests
+SRC_URI="
+ https://github.com/astral-sh/uv/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+ ${CARGO_CRATE_URIS}
+"
+if [[ ${PKGBUMPING} != ${PVR} ]]; then
+ SRC_URI+="
+ https://dev.gentoo.org/~mgorny/dist/${CRATE_P}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT
+ MPL-2.0 Unicode-DFS-2016
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ dev-libs/libgit2:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ >=virtual/rust-1.77
+ test? (
+ dev-lang/python:3.8
+ dev-lang/python:3.9
+ dev-lang/python:3.10
+ dev-lang/python:3.11
+ dev-lang/python:3.12
+ )
+"
+
+QA_FLAGS_IGNORED="usr/bin/.*"
+
+check_space() {
+ local CHECKREQS_DISK_BUILD=3G
+ use debug && CHECKREQS_DISK_BUILD=9G
+ check-reqs_pkg_setup
+}
+
+pkg_pretend() {
+ check_space
+}
+
+pkg_setup() {
+ check_space
+}
+
+src_prepare() {
+ default
+
+ # https://github.com/vorot93/tokio-tar/pull/23
+ # (fortunately uv already depends on portable-atomic, so we don't
+ # have to fight Cargo.lock)
+ cd "${WORKDIR}/cargo_home/gentoo/tokio-tar-0.3.1" || die
+ eapply "${FILESDIR}/tokio-tar-0.3.1-ppc.patch"
+}
+
+src_configure() {
+ local myfeatures=(
+ # from upstream defaults
+ flate2/zlib-ng
+ python
+ pypi
+ git
+ maturin
+ # skip tests that require specific patch version of the interpreter:
+ # python-patch
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+}
diff --git a/dev-python/virtualenv/virtualenv-20.26.1.ebuild b/dev-python/virtualenv/virtualenv-20.26.1.ebuild
index e08eca12f45f..823ffe8caf17 100644
--- a/dev-python/virtualenv/virtualenv-20.26.1.ebuild
+++ b/dev-python/virtualenv/virtualenv-20.26.1.ebuild
@@ -98,7 +98,7 @@ python_test() {
'tests/unit/discovery/py_info/test_py_info_exe_based_of.py::test_discover_ok[python-3--bin-]'
)
;;
- python3.12)
+ python3.1[23])
EPYTEST_DESELECT+=(
tests/unit/create/via_global_ref/test_build_c_ext.py
)
diff --git a/dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild b/dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild
index fff244946737..e643eaf1b7a7 100644
--- a/dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.ebuild
+++ b/dev-python/wcag-contrast-ratio/wcag-contrast-ratio-0.9-r1.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/webencodings/webencodings-0.5.1-r2.ebuild b/dev-python/webencodings/webencodings-0.5.1-r2.ebuild
index 2d72c6602b40..33d2b76ecdd3 100644
--- a/dev-python/webencodings/webencodings-0.5.1-r2.ebuild
+++ b/dev-python/webencodings/webencodings-0.5.1-r2.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
@@ -20,10 +20,7 @@ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv
distutils_enable_tests pytest
-python_prepare_all() {
- cat >> setup.cfg <<- EOF || die
- [tool:pytest]
- python_files=test*.py
- EOF
- distutils-r1_python_prepare_all
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -o 'python_files=test*.py'
}
diff --git a/dev-python/websockets/websockets-12.0.ebuild b/dev-python/websockets/websockets-12.0.ebuild
index 79b8d85cd873..49767d0439e1 100644
--- a/dev-python/websockets/websockets-12.0.ebuild
+++ b/dev-python/websockets/websockets-12.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/wsproto/wsproto-1.2.0.ebuild b/dev-python/wsproto/wsproto-1.2.0.ebuild
index 849a62331f9d..380c37657c4d 100644
--- a/dev-python/wsproto/wsproto-1.2.0.ebuild
+++ b/dev-python/wsproto/wsproto-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/ytmusicapi/Manifest b/dev-python/ytmusicapi/Manifest
index f64852413cbc..e1e371068795 100644
--- a/dev-python/ytmusicapi/Manifest
+++ b/dev-python/ytmusicapi/Manifest
@@ -1,2 +1,3 @@
DIST ytmusicapi-1.6.0.tar.gz 106624 BLAKE2B b7900f4fb9e863f694a06a9d85d479e13514d6f4a0ad86e923ccceb497ad9294e34d9b3914005063b272ef8582514a5ea7c173864d38a2b6ec166bcf1199560e SHA512 9886c0b4ec29bf9b676b4c77f9e84ca6c7a0f1b4da264d589aed19d50c8be6ef3718185af755d8a9f652d425ae98603fff09ea8d84ec839756dab43181eb9f4c
DIST ytmusicapi-1.7.0.tar.gz 276068 BLAKE2B 39b33782fde91ada32269e6ec8630164796caff2e17743a852f1eca72debaf23b01fd9e8f4d486e1a67bf790221a233339b0074034d993053388cf31cadb32a0 SHA512 4e5f021e7dc9879e6cf881595afc8c17637e0d722a019b855563358f38bb74fe5ff154ea639c6d56836967c520bfece504733bf960b77cfe79b0586390339551
+DIST ytmusicapi-1.7.1.tar.gz 276874 BLAKE2B 0fee5ad7219b675cbd1cf91e7722dc0addfc7f91be7ad8d74e0df99cc770726df68a1e37d47531161323a42115283b8072f87df2e0261c3b14176a005dd4e52b SHA512 1285ca07cfe18e3965cb769c34a507266188e4d5fa3e34f8e29bb69e0a31aab605f25dbdf24c790621cbcbd7552c0b44a0ae8a0be0237971a02f19d58a05b79f
diff --git a/dev-python/ytmusicapi/ytmusicapi-1.7.1.ebuild b/dev-python/ytmusicapi/ytmusicapi-1.7.1.ebuild
new file mode 100644
index 000000000000..006c7e44cb09
--- /dev/null
+++ b/dev-python/ytmusicapi/ytmusicapi-1.7.1.ebuild
@@ -0,0 +1,23 @@
+# 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="Unofficial API for YouTube Music"
+HOMEPAGE="https://ytmusicapi.readthedocs.io/
+ https://github.com/sigma67/ytmusicapi/"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+RESTRICT="test"
+
+RDEPEND="dev-python/requests[${PYTHON_USEDEP}]"
+
+distutils_enable_sphinx docs/source \
+ dev-python/sphinx-rtd-theme