summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-02-07 00:11:16 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-02-07 00:11:16 +0000
commit1b2360e7bab42e4045232887cb4f6c4a24ca3975 (patch)
tree6a5a60c4c59058ef39895ea69fb8e98eaa49aed8 /dev-python
parent22eaa60297c2dbc92dd1658fb7d8e46878552755 (diff)
gentoo auto-resync : 07:02:2025 - 00:11:15
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/Manifest.gzbin274411 -> 274408 bytes
-rw-r--r--dev-python/aiohttp/Manifest2
-rw-r--r--dev-python/aiohttp/aiohttp-3.11.12.ebuild135
-rw-r--r--dev-python/ansible-compat/Manifest2
-rw-r--r--dev-python/ansible-compat/ansible-compat-25.1.2.ebuild61
-rw-r--r--dev-python/boto3/Manifest2
-rw-r--r--dev-python/boto3/boto3-1.36.14.ebuild53
-rw-r--r--dev-python/botocore/Manifest2
-rw-r--r--dev-python/botocore/botocore-1.36.14.ebuild67
-rw-r--r--dev-python/django/Manifest9
-rw-r--r--dev-python/django/django-4.2.19.ebuild103
-rw-r--r--dev-python/django/django-5.0.12.ebuild105
-rw-r--r--dev-python/django/django-5.1.6.ebuild99
-rw-r--r--dev-python/mkdocstrings-python/Manifest2
-rw-r--r--dev-python/mkdocstrings-python/mkdocstrings-python-1.14.5.ebuild51
-rw-r--r--dev-python/peewee/Manifest2
-rw-r--r--dev-python/peewee/peewee-3.17.9.ebuild81
-rw-r--r--dev-python/pyghmi/Manifest4
-rw-r--r--dev-python/pyghmi/pyghmi-1.5.75.ebuild (renamed from dev-python/pyghmi/pyghmi-1.5.71.ebuild)2
-rw-r--r--dev-python/pypy-exe-bin/Manifest9
-rw-r--r--dev-python/pypy-exe-bin/pypy-exe-bin-7.3.18.ebuild82
-rw-r--r--dev-python/pypy-exe/Manifest3
-rw-r--r--dev-python/pypy-exe/pypy-exe-7.3.18.ebuild187
-rw-r--r--dev-python/pypy3_10-exe-bin/Manifest9
-rw-r--r--dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.18.ebuild85
-rw-r--r--dev-python/pypy3_10-exe/Manifest3
-rw-r--r--dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild139
-rw-r--r--dev-python/uv/Manifest3
-rw-r--r--dev-python/uv/uv-0.5.29.ebuild170
29 files changed, 1469 insertions, 3 deletions
diff --git a/dev-python/Manifest.gz b/dev-python/Manifest.gz
index 8dbcee14be7c..b5e31fa9b484 100644
--- a/dev-python/Manifest.gz
+++ b/dev-python/Manifest.gz
Binary files differ
diff --git a/dev-python/aiohttp/Manifest b/dev-python/aiohttp/Manifest
index 2fc382f578cf..0e5a211b5e77 100644
--- a/dev-python/aiohttp/Manifest
+++ b/dev-python/aiohttp/Manifest
@@ -1,3 +1,5 @@
DIST aiohttp-3.11.11.tar.gz 7669618 BLAKE2B 148c15503ca2b5449b8afe4d0cadb054625cd12c7e3d958547c7ba6b46ca4d4da1b4091db0f97e2003c8bc7a582c36f4c6aba062a8fe0b0894740042853b68e9 SHA512 7b5c6fdf15a3bdae49b28f6955f31f528aff29f635b8bbbe60f0677dea8fbbe5de8e09b3cbb85f8a846942470b9e44c9d287aaf9eb08f8e8d9fab3bd64079edf
+DIST aiohttp-3.11.12.tar.gz 7673175 BLAKE2B 56f511d5bf10c60823bf3fef9552add3c8cac4e68dc6848931bc875417067bf61a0437adce0ffa13a47c595546f31b497f9044b0b3f2c6d48b31bff7a7b75905 SHA512 9f770f5182394acace994d40ca3b7028698242ce5e0caecd16b2e511c9463ae43e3fac9aabfc21afcbb7e17a44e324d19d88f7e1c81d0b4646f81923f9b4f160
EBUILD aiohttp-3.11.11.ebuild 3712 BLAKE2B 5fe6de0d80ecd3748a134fc3e3dd15f0530130763013d23701d263826602d43f3c816fd16bdc89705992a51727ffecdf44a084143e2ebc836a51be5b3fa6245f SHA512 1a7009057873b662edfb21efa5d6aa417341065ef382a53ef9d22b35bc8ed5e365e097854f6fe0ed56d66841a1f94c2e20c40516e2da38667ad05797cf1b4923
+EBUILD aiohttp-3.11.12.ebuild 3720 BLAKE2B f7e009e415378ebdb71fece62564196e4736ade9ff535b5d21c3365b6815ddc7c63540d6310cdf879fd27e3674df476a4cf63f4f78dfd0e5d3e02f67cc97c361 SHA512 c40bad120da78099007d93f40d92c7ff9087987e3b2a8b7cbbb01ae38cf4a4bd5e7eab7b347992f4de15ac9c0968ba1125a014b618db9b2f83103b7a33b255f7
MISC metadata.xml 379 BLAKE2B dd6b8001c95e4f845c0519d9674158355566938e9e4aaad3234d3ee2a252ebbb4b6ffe3e8272145a39b2b9e59f6b9d19413547789a5873726581040e413f6b8c SHA512 5ea85743abacb6c4ace3ff45d4949ed787055c738afac892f24bf3770c3bba8fe8e5db4267719300d89e610daf334838a1964beab649730427a12007ddcf5e9e
diff --git a/dev-python/aiohttp/aiohttp-3.11.12.ebuild b/dev-python/aiohttp/aiohttp-3.11.12.ebuild
new file mode 100644
index 000000000000..19febab42630
--- /dev/null
+++ b/dev-python/aiohttp/aiohttp-3.11.12.ebuild
@@ -0,0 +1,135 @@
+# Copyright 1999-2025 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_{10..13} pypy3 )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="HTTP client/server for asyncio"
+HOMEPAGE="
+ https://github.com/aio-libs/aiohttp/
+ https://pypi.org/project/aiohttp/
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+IUSE="+native-extensions test-rust"
+
+RDEPEND="
+ >=dev-python/aiodns-3.2.0[${PYTHON_USEDEP}]
+ >=dev-python/aiohappyeyeballs-2.3.0[${PYTHON_USEDEP}]
+ >=dev-python/aiosignal-1.1.2[${PYTHON_USEDEP}]
+ >=dev-python/attrs-17.3.0[${PYTHON_USEDEP}]
+ dev-python/brotlicffi[${PYTHON_USEDEP}]
+ >=dev-python/frozenlist-1.1.1[${PYTHON_USEDEP}]
+ >=dev-python/multidict-4.5.0[${PYTHON_USEDEP}]
+ >=dev-python/propcache-0.2.0[${PYTHON_USEDEP}]
+ >=dev-python/yarl-1.17.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ <dev-python/async-timeout-6[${PYTHON_USEDEP}]
+ >=dev-python/async-timeout-4.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ native-extensions? (
+ dev-python/cython[${PYTHON_USEDEP}]
+ )
+ test? (
+ dev-python/freezegun[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/pytest-xdist[${PYTHON_USEDEP}]
+ dev-python/re-assert[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' 'python3*')
+ test-rust? (
+ dev-python/trustme[${PYTHON_USEDEP}]
+ )
+ )
+"
+
+DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst )
+
+EPYTEST_XDIST=1
+distutils_enable_tests pytest
+
+src_prepare() {
+ # increase the timeout a little
+ sed -e '/abs=/s/0.001/0.01/' -i tests/test_helpers.py || die
+ # xfail_strict fails on py3.10
+ sed -i -e '/--cov/d' -e '/pytest_cov/d' -e '/xfail_strict/d' setup.cfg || die
+ sed -i -e 's:-Werror::' Makefile || die
+
+ distutils-r1_src_prepare
+}
+
+python_configure() {
+ if [[ ! -d tools && ${EPYTHON} != pypy3 ]] && use native-extensions
+ then
+ # workaround missing files
+ mkdir tools || die
+ > requirements/cython.txt || die
+ > tools/gen.py || die
+ chmod +x tools/gen.py || die
+ # force rehashing first
+ emake requirements/.hash/cython.txt.hash
+ > .update-pip || die
+ > .install-cython || die
+ emake cythonize
+ fi
+}
+
+python_compile() {
+ # implicitly disabled for pypy3
+ if ! use native-extensions; then
+ local -x AIOHTTP_NO_EXTENSIONS=1
+ fi
+
+ distutils-r1_python_compile
+}
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # proxy is not packaged
+ tests/test_proxy_functional.py
+ # python_on_whales is not packaged
+ tests/autobahn/test_autobahn.py
+ # benchmarks
+ tests/test_benchmarks_client.py
+ tests/test_benchmarks_client_request.py
+ tests/test_benchmarks_client_ws.py
+ tests/test_benchmarks_cookiejar.py
+ tests/test_benchmarks_http_websocket.py
+ tests/test_benchmarks_http_writer.py
+ tests/test_benchmarks_web_fileresponse.py
+ tests/test_benchmarks_web_middleware.py
+ tests/test_benchmarks_web_response.py
+ tests/test_benchmarks_web_urldispatcher.py
+ )
+
+ local EPYTEST_DESELECT=(
+ # Internet
+ tests/test_client_session.py::test_client_session_timeout_zero
+ # broken by irrelevant deprecation warnings
+ tests/test_circular_imports.py::test_no_warnings
+ )
+
+ # upstream unconditionally blocks building C extensions
+ # on PyPy3 but the test suite needs an explicit switch
+ if [[ ${EPYTHON} == pypy3 ]] || ! use native-extensions; then
+ local -x AIOHTTP_NO_EXTENSIONS=1
+ fi
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ local -x PYTEST_PLUGINS=pytest_mock,xdist.plugin
+ rm -rf aiohttp || die
+ epytest -m "not internal and not dev_mode" \
+ -p rerunfailures --reruns=5
+}
diff --git a/dev-python/ansible-compat/Manifest b/dev-python/ansible-compat/Manifest
index a6916eaf6c1f..8dcb9f14626c 100644
--- a/dev-python/ansible-compat/Manifest
+++ b/dev-python/ansible-compat/Manifest
@@ -2,8 +2,10 @@ DIST ansible-compat-24.9.1.gh.tar.gz 76018 BLAKE2B 581199ab65ccc884a3eeef246a8db
DIST ansible_compat-24.10.0.tar.gz 81818 BLAKE2B 78afad41dbe2172cb485186d78a488343391b5feb39f233f8584dc65ece8f290b43c8a6b0112db4606329bc5f38a9e44c6e39fd48efcb5562292152d44276539 SHA512 636ccb66be3570bf7ab0a51f991fefe3b4754db3fddb4d45ebd116de2721082e8ad4049e0cdd975431f01daaa4cb9d24ca57a97913fa66ce1f1f47780734ab14
DIST ansible_compat-25.1.0.tar.gz 87512 BLAKE2B 3547a26cd24656e6b7efc1d5250c3b224d539f08bd4fe1569aa3b2a84123baa0969cf1631d004eaab853b19ecf75a525a2baa6fd179a3737c503734459e78b2d SHA512 81b610f997b5d0fcd348a701e94bf7300175851f8c020af4129d3a95996ae61614004c8286af35f0d64887cdd6ae29ecad4aa22ddca4a9802f85178ebc21830b
DIST ansible_compat-25.1.1.tar.gz 87846 BLAKE2B b38b5dc14a085470f0fccb4c6514fdeff70229606bceec6cf334947c9e4238c42de5afeb357c386df8aab6d671e14d164c38b2d1dfda5a669cb10780c5154cdf SHA512 0132d21993dac321d73148e732e3313fe1f27b30f65a011068956d788cce862344d86094ad55a79e9be10fd8127a8b729bed8a4cc67afde7f9b73dc9306161b9
+DIST ansible_compat-25.1.2.tar.gz 87902 BLAKE2B c2a96fb67c32e8a02d2e1f6c6ddbcbd966fac1e9485f00ba8293ced2fc2de986616a9987772a54d6f5ee1c88cbf9a09fb3b36eed44949b241f50b761ff52d06b SHA512 b07ae461241c3c2ab7b52b519ab773ecb878b6cd24353a81187c5aeb14c332af5f666d5034b8972e6bbedc9a0cd761c887492064a122593cc8746702ffc83adc
EBUILD ansible-compat-24.10.0.ebuild 1631 BLAKE2B e7ee209a3becafe42cbab5f9a44791f761e76110704476fda8e9a7fddb8f05884dfa1b2ccfe65990dbdf409a3e1808a9149a91a8cdd937dcabe82ace54d248e6 SHA512 4be39bded03f45f041f682cb1b7a585a8e471e23315df489e7be19790e2c1dadb4727ee68129a5d46cd530a4c937d02b858af040a1eefbbbcb6e4a20e46043b1
EBUILD ansible-compat-24.9.1.ebuild 1818 BLAKE2B ace93c01b61d04a32c33ccc7450cb9ceb2be8009cc5e7baa4117af835bd4bcc1aed460bd25b8e077a65ecc6a90214f00fc97aa2aaed5b8a218f273454bcb7fad SHA512 84d1934eb613ead748591fe870356122258fc328e1b5fabda2472697e3ca72655e07f31738c8e7ade5d0738ae6b8ad6c8e65d00b9822f6740bcbc188481d72e2
EBUILD ansible-compat-25.1.0.ebuild 1808 BLAKE2B 5e7b5a21edb6e5d8985dd81e6447607ff36985b2fe1805f7dd9612d9834d8e4a3eaf421576f8cada5ff99ab314f53673e046db93fbe12fad968e068430d3c5b9 SHA512 bd8989c155f750056a97666e3ad8ecb8c3e8ae444a7fe462bf4d6abc4d00e95f2d2ae3664601c115a4330d0d618322ee6f86fc4d1ce5fe16b4378291cbf8360f
EBUILD ansible-compat-25.1.1.ebuild 1808 BLAKE2B 5e7b5a21edb6e5d8985dd81e6447607ff36985b2fe1805f7dd9612d9834d8e4a3eaf421576f8cada5ff99ab314f53673e046db93fbe12fad968e068430d3c5b9 SHA512 bd8989c155f750056a97666e3ad8ecb8c3e8ae444a7fe462bf4d6abc4d00e95f2d2ae3664601c115a4330d0d618322ee6f86fc4d1ce5fe16b4378291cbf8360f
+EBUILD ansible-compat-25.1.2.ebuild 1808 BLAKE2B 5e7b5a21edb6e5d8985dd81e6447607ff36985b2fe1805f7dd9612d9834d8e4a3eaf421576f8cada5ff99ab314f53673e046db93fbe12fad968e068430d3c5b9 SHA512 bd8989c155f750056a97666e3ad8ecb8c3e8ae444a7fe462bf4d6abc4d00e95f2d2ae3664601c115a4330d0d618322ee6f86fc4d1ce5fe16b4378291cbf8360f
MISC metadata.xml 404 BLAKE2B cd6a8ae349cbfd750d8e439a93902221cce72c0c03280ef1e99514981f6a1079bf9e16a9eaf58ad1758e83a82625b508ccf461ff487ddf8c378cdf7fd46260f8 SHA512 15330e4ae03c21f1db7a42cd9efca50a2fe60b828caef1dbb29901f39f4089d6b3a3c593ca2bd01c7873c8ff12b15227d0c8ae09450271d733cc36ff979b3365
diff --git a/dev-python/ansible-compat/ansible-compat-25.1.2.ebuild b/dev-python/ansible-compat/ansible-compat-25.1.2.ebuild
new file mode 100644
index 000000000000..5d0bd8248da6
--- /dev/null
+++ b/dev-python/ansible-compat/ansible-compat-25.1.2.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517="setuptools"
+PYTHON_COMPAT=( python3_{11..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Contains functions that facilitate working with various versions of Ansible"
+HOMEPAGE="
+ https://pypi.org/project/ansible-compat/
+ https://github.com/ansible/ansible-compat/
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+RDEPEND="
+ >=app-admin/ansible-core-2.18.1[${PYTHON_USEDEP}]
+ >=dev-python/jsonschema-4.23.0[${PYTHON_USEDEP}]
+ dev-python/packaging[${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/subprocess-tee-0.4.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ >=dev-python/setuptools-scm-7.0.5[${PYTHON_USEDEP}]
+ test? (
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-plus[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # All these tests attempt to connect to galaxy.ansible.com
+ test/test_runtime.py::test_install_collection
+ test/test_runtime.py::test_install_collection_dest
+ test/test_runtime.py::test_prepare_environment_with_collections
+ test/test_runtime.py::test_prerun_reqs_v1
+ test/test_runtime.py::test_prerun_reqs_v2
+ test/test_runtime.py::test_require_collection_no_cache_dir
+ test/test_runtime.py::test_require_collection_wrong_version
+ test/test_runtime.py::test_require_collection
+ test/test_runtime.py::test_upgrade_collection
+ test/test_runtime_example.py::test_runtime
+ 'test/test_runtime.py::test_load_plugins[modules]'
+ # pip, failing due to internets
+ test/test_runtime_scan_path.py::test_scan_sys_path
+ # internets?
+ test/test_runtime.py::test_runtime_has_playbook
+ # TODO
+ test/test_prerun.py::test_get_cache_dir_relative
+ )
+
+ epytest -o addopts=
+}
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest
index f070978ae2d0..563ddc13da4e 100644
--- a/dev-python/boto3/Manifest
+++ b/dev-python/boto3/Manifest
@@ -1,11 +1,13 @@
DIST boto3-1.36.11.gh.tar.gz 896841 BLAKE2B 092cfaeb6dc6f6d3f523fe4e0b600817e6145a224c2b43b6dd47376d6aa1a586bf3784b2960f4179b271128d20c3edd5b435cabd6e3ddc2330f0b0ad5ce306d9 SHA512 6f17d0b6f67ace0485fbc2d809f013fddd4cf1211eb6c9a1fe0ed7c0bc117aedc9e4b7db4d4570818907db6344b19331d8a7b6246928ed5c5e294b9b5a9504dc
DIST boto3-1.36.12.gh.tar.gz 896941 BLAKE2B 1b28a8f5326898b5459e4ad7e09a159e8d59979ffa3c06182549508b2b409497dced1c0817608d7294e98c3a1e994ae62f3bb8f2883ee20be5681e4e44578ca3 SHA512 32dcd697bd6f997899f78314eb7de020f165e2ca7897c62fb12e51a9b295b6da5273f88006730a9c50ed5a3afd92975cbca102e50bd16a0d30db5fe5b270bd8d
DIST boto3-1.36.13.gh.tar.gz 897578 BLAKE2B d00e3c880d9e5c6d9f88d07f8e3155fc117b205c004f0018aa401141ed7bc0654b84419dd27fc2e823a5ebc82d1dea28213ecf06c6f73a9aa32f7a8af3908cb8 SHA512 5c2435b252e15166e4209e2b5479fe2e080da660737ae3d45c0ebf524349a547b7a1d20ea7a60bc9685e12364d34ac4b88179cb732bfa4524a053bfa868d4cac
+DIST boto3-1.36.14.gh.tar.gz 897795 BLAKE2B f8824fff9390cee43142c259c467c76c845bc7c26494fd1c97be96f1161f4b3f536af356dae725a865091b3ce60a3bfd56df70a10ff5cdd8c66653636cc82cc6 SHA512 41c7bd4206fab7b3b7bbb36f78f48cc9765be448790caad35d31cbea487fedeb94a85ec418e784b89917866bf2b8fa0ddc3157fde7fc119cf3dfdce7eac66773
DIST boto3-1.36.2.gh.tar.gz 923432 BLAKE2B 91f19eb6e1451923adbf323688d89cfadd384009fbc3fdcae688b48dee54d9a3f14956cedaed07b15f2cdc3badaf0533a6ec1e1baf5cedc88e91580104834eb2 SHA512 e9e14f4aacd0814952198d5446050f0cf822baac0b3ce3604c40dbb6b122c431624b46b144ea4699be7328f6236e099981905a4be6a9de3400750800d8d40e60
DIST boto3-1.36.6.gh.tar.gz 925646 BLAKE2B 71db3ff552033c187e19b699d193e4834649b80d2c0dd2ed35496bfef798371f7794e58d445aeeafcc3e4aef50d4dc6e17347b04ae82b4f3b7778a1a5e419daf SHA512 c638903cb3afff4867dbee7295e387f5ce91d9d3d9f37b28c103ead87883377a69fbccfce34850da5c77186ced0bb56f5dc5f4549e84871d10a9134c731d4c36
EBUILD boto3-1.36.11.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
EBUILD boto3-1.36.12.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
EBUILD boto3-1.36.13.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
+EBUILD boto3-1.36.14.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
EBUILD boto3-1.36.2.ebuild 1205 BLAKE2B ba88d00e8ea05d27260511e6110158d1f305ce8bde0aaf3385814b38f6b977bd8fae2b092659d5765d6c3bcf80cd75fe5f2bea95374a3105c23cdfbf04bd8ec8 SHA512 6cf3155f855f19611a770cf2db452b139af4869a39f2e07d1040a9c45a3cfd13341f3a7eadb2e13da7c38d29492d68307a9e88b62c22704ef15a5c082da651fd
EBUILD boto3-1.36.6.ebuild 1212 BLAKE2B fecfa738c561d1cc8851eef482992a276efc114e47fad372693f9e6896da4b9636b04990a1be9de221d95361e34e35026ec52d234093788354b9c2a1a10e1be1 SHA512 27684bfc9dd8f7d85b5b0dbd879fbe742454c3cd6ebe86666e3214822f42aa4f7cb4e00752aa6baacadfa2b2cb9a1d358e158ea136a6ef62acf36c9fe178ae12
MISC metadata.xml 493 BLAKE2B 7d6324fc877ffe1d20c5369c2af0b09a7028f94d28f1841188913d0d8be7ea699c9d3f92c624992c4c96bd69615d3a1211a2483c76c56b7d3082492e43512523 SHA512 44420d8c03d5986f990b76369edfa8dfd7659b4952db3ad946fd05392ec594628a28745ad888d055d4f074d5214f61fcffafe6c04c4ab54109d45ac0371582bd
diff --git a/dev-python/boto3/boto3-1.36.14.ebuild b/dev-python/boto3/boto3-1.36.14.ebuild
new file mode 100644
index 000000000000..b087a88814e8
--- /dev/null
+++ b/dev-python/boto3/boto3-1.36.14.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="The AWS SDK for Python"
+HOMEPAGE="
+ https://github.com/boto/boto3/
+ https://pypi.org/project/boto3/
+"
+SRC_URI="
+ https://github.com/boto/boto3/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~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.11.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 e49816931d4d..cd2c68507f38 100644
--- a/dev-python/botocore/Manifest
+++ b/dev-python/botocore/Manifest
@@ -1,11 +1,13 @@
DIST botocore-1.36.11.gh.tar.gz 14197086 BLAKE2B 471c4d4d8433c5ce577b76e3dc70e9cbc0aee52f8c06765c1d965b437e75b44b4d62ea472abf612266ebf718300aca11f39fce90abe5d5811a37bcbe686d09de SHA512 0cf405e0fd7466a631bfbf3c4d0ad46b7c6da787715d9d70362cd5ed869ecfcf26ce7465daec220c9ffb858a1171439088e42a72665726ba5b511ef551cdcf3a
DIST botocore-1.36.12.gh.tar.gz 14196487 BLAKE2B da045773e32f6a7b76f23cb68a8492fd61410e6c374968662612ead08f970624c685cdc14e6eebf01c77b4c0cac6b859313fd7d59c98b34786c863baa4a397cc SHA512 8909e431349634326ed2a88defade4c1c55969fffebcad8fc7acac0425cb7d6ae072b864d6102c8cdc898192af6e1f8fa990c877056bcba4fcc0b3fade7cb752
DIST botocore-1.36.13.gh.tar.gz 14200421 BLAKE2B 1caf60ecac0723f337bc2d742b4b6d01170c00baec704fcf4d5225103efff000a63d2cd7e066887e896217f966d4f47ddbff41c601e549e192ceb6ae8735fb27 SHA512 e79574640d5d35861017a6c26d96778299a64369219df467e409b45e9d632a5a11d92dee113c668747cac40e9efb70925f2e61fa99802408dcd8d13378b55f3c
+DIST botocore-1.36.14.gh.tar.gz 14200318 BLAKE2B d2711287a16723db9ab4220e405fda2a71d382a779f3d53873b79a25357d7930c1593ca9edbd49a678c12b537bd2d4768d6ff7adb66dcf53bfe7f8ae608ffa2a SHA512 91878033f7f267a449433da90017379892046898e62941c3d835d90ef94f0c70efe9a325e36ff1133bf8e78875cc6b80eeea7a31b7e40901fbaaa40c189c5c9b
DIST botocore-1.36.2.gh.tar.gz 14197789 BLAKE2B 21441cd52052d117ce05e425c13f34941dcc1ca26a03e2e7eefb6c82584d7faffb548435ebb6b716b72db8149cfe6a3378b79f9174c676fd193c194501b0c844 SHA512 45d9515c493b238a003e5ad264b152b68a62e7ca140ea13111865a4b7c674a7b309a0f550f9782c37966b95c114136b8788f00ba0c83ed4bc61521b593376594
DIST botocore-1.36.6.gh.tar.gz 14173329 BLAKE2B 1eea293adad312439f2c60e0f73f721fa207439af2918fb5db98304a565e44d33f953f517e5526e865cbf58751892be4a6cc275545f295638109ee4051d2a276 SHA512 bcd1077bfeb5709e8c6224560f7974d70a884310539b531f520b20446aeaf3aa5d9aba6cbd19d75526d34dd7ab68be578f5ece7bddf7986997f9f5bbd5cee905
EBUILD botocore-1.36.11.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
EBUILD botocore-1.36.12.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
EBUILD botocore-1.36.13.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
+EBUILD botocore-1.36.14.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
EBUILD botocore-1.36.2.ebuild 1484 BLAKE2B e69b432b70d99a29bce6a148a732df49694427d669ea669c64482ec58959f640650b02635f34a613c6a87fed9e4c199cc971b4c811e1ced6db9db1c3e4fc384b SHA512 81c31e65ddea2c9d721e540e6b63c0d76bd7f3f847d06d2cb021bc02449373268cfe08b262db804d1cf65f77bd5bef6fb25cf4a070ee106cd7a231531d6d1130
EBUILD botocore-1.36.6.ebuild 1491 BLAKE2B fcbd1d768fa7cef66b459149005cdc3c61b9f4890401b522514ad892b3d580e6a81ebd848f4a03e56986500b4e609fd79e1d72a5b5fda534945535f86bed8b6d SHA512 66e5ab74feb520f3e55cd3b5285b2ed204299aa5c5ebe9d33c0cd2a4054aa61be0a140004e613d2612d60c2f33ef82d37d778bb43a5850d63da39d664dc819ae
MISC metadata.xml 499 BLAKE2B e5aaa7da26f200c09adfdf38b68f656bbccbec627cb5d966b280ac2165334e7eec659c89075bcace748f58e2ec3e7d2998e54a688d56ecea2d30653c67dfd35a SHA512 103c554d5dbd967bf9b6e418b3913d9235e7e910d012160909ce0715134ed2e37b06e6a345395f9d16ce08d1cf51f3ce458bce93c6a978fd3dca6610f2acdbd0
diff --git a/dev-python/botocore/botocore-1.36.14.ebuild b/dev-python/botocore/botocore-1.36.14.ebuild
new file mode 100644
index 000000000000..9e1580d45581
--- /dev/null
+++ b/dev-python/botocore/botocore-1.36.14.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1
+
+DESCRIPTION="Low-level, data-driven core of boto 3"
+HOMEPAGE="
+ https://github.com/boto/botocore/
+ https://pypi.org/project/botocore/
+"
+SRC_URI="
+ https://github.com/boto/botocore/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~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/django/Manifest b/dev-python/django/Manifest
index c63b0e34f40e..0c4018c2c6c9 100644
--- a/dev-python/django/Manifest
+++ b/dev-python/django/Manifest
@@ -3,16 +3,25 @@ AUX django-5.0.6-py313.patch 2474 BLAKE2B cf47f32ec1989b50a3e2a3cdce950f33c9f1ca
AUX django-5.1-more-pypy3.patch 1975 BLAKE2B 7b3c0820ec6b27c7ddc8c95db3eaf444831bae4ec546c5600a9f79475cbdd5671b7ad119482f9d4959088f5f923d810ff79e87149af8ca5d22d0260c84088d3e SHA512 02e945420bf1a911f930099aa00816191e5cece9520eb3373f83187b5dae70986db766d806f7c2e9fe92bc65a2e24cea6a52c22ecc7eb9ff883e813ac4d17258
DIST Django-4.2.18.checksum.txt 2583 BLAKE2B 93f616de52243945fd8498c91dd27c92d10bab4d1782e2fe23f44f86fa9bfd72bc0fa088713948c9efad82bbfc84ee6bf2a981a4c8e8c3dfc7c9e59b9529e6a4 SHA512 a90bbf3e86c072d022cf462b15b69e60dbe2077982131451a105e4e1cac3222bbfba31c06839fdf5880698eef2a8d3a742def2a786a771f06c3a665d8631b2ad
DIST Django-4.2.18.tar.gz 10428204 BLAKE2B 45c2059e89ce988596120894e62c76ceb5054d2b7bbdc18befe7a0a54b4d19c3b5850b3d4dfed14950f2fb323a5b0196bee3a4d1520fcbfe9e734da6b9cdc2c4 SHA512 74469711d0238583c46cadd42737b9002417010796b713a0750c1f28ea17c9c6b2d33e0136fcc5556029a78e0c24b617ae366cb667051c09552298faee791609
+DIST Django-4.2.19.checksum.txt 2583 BLAKE2B 11d61858872f6dda4c15c3dacf9550703c7110e144f7d65e97d80e2fc98a8e0b6b607386ed46330cf302a69d96c629f887fea18a2a8cda0e5d2f492c6becbdfe SHA512 10ce3dde081db5e56b8570a1030553eaf6da7f3eeb54897713d11aebdad5e802ae40175222b5c8e322ced3bfb27cb7e0abf17d6f8363b4e62f273d6c4c962a63
+DIST Django-4.2.19.tar.gz 10426865 BLAKE2B 3bfe496d3b446f51eb99dfc62845785ff51e94c5b8b064e8a126e106fdc7589c5532b16b526bceb2377955cbcfb5b67233c76263588220d171797a9762f86333 SHA512 4bc7a12d502809f9b65f26d2b0f7f5fab76f37bf5d15f6887ee160e0cf8bb29089f478d280f31bf889e4204f103602069103ab74f058e8721bffb121a7fa27ad
DIST Django-5.0.11.checksum.txt 2583 BLAKE2B e7cc6ed8c4f3d9398eb892cfb6e4d6b983485128180099ad069e0594f8a398ce8127cf934bd738df826d61ffd66d2c0cb27f4ac27630a3f3d2f20edf30e44f00 SHA512 16bdb35fa566db8995233841e53cc793a4656604f351913ad97b470b4044d9476a9bda094493d170d63d637d4f2cc1a22b3b372005f05ed043b1d1b56c6137f2
DIST Django-5.0.11.tar.gz 10635979 BLAKE2B b55d539d541c661ebe0e4e3db21b89de3fb4a32dc1d07d6bae1be6cd22b82bf4c5692eb23ddb2d4425140ecdcab272d6fb5629c1b525b7fdad1469eb40376a8e SHA512 a43b3245a8e4f1b315ac75128f0d24cf4202471a9dce6791e1fffc88580427c7823c4abfeab6bfee821ff44407728089f563180525eb6bc172bf52858dce867e
+DIST Django-5.0.12.checksum.txt 2583 BLAKE2B ac931c1dd0c6be628a8dabb591708e48f3746016e2a77f86e069920445c2ae385c3cdd3fe143773c3d4767f857d24e8526eb29c4da0f2fcf39370067673273e0 SHA512 3faff6cf0ed08ecfe022ebc2de7ffef1dbf7bc73d97410ebba209e620cf0ecb715b1940907dd12179c048f1fee070ededc2584e6b958878bd570961277b8d582
+DIST Django-5.0.12.tar.gz 10636389 BLAKE2B d314e2f990023edc9de9f66ec970f16c0749c3a9f16450a7c4f3cf4cdea6a8e978ff62b9214c8876193a44f213d0e8084095c7218650724d9091cce91e0b5f02 SHA512 f7772660d609b8b44244719e7a4e678698d0153a65193ccfee49b323eb428c69c0f77d193b560be0df42025aa770987986a82b0f5ed9659c90e07617271c49d5
DIST Django-5.1.5.checksum.txt 2573 BLAKE2B af41ffe32d60f10c99b558d32dbcf8658fe6ccadf21168afa6812ec9f40d6a0d2024cde733a26d515d90a025e8814c10ab745679133ed1f13a0ffbed8ce59319 SHA512 70c4af1a339a0b195b3788c10425ef83480274ba3efe5344bfa43d8245d681ed2622f48d62c284ad4bbeb77fb5132308197dfe1d308d027ea650c452e6454d90
DIST Django-5.1.5.tar.gz 10700031 BLAKE2B 8de45f7574e2f74a06916018a12cf6df9c263cf754ff575d12735fb6921729c7d2937235fee57abb95e9f20e6de0282ec3e737a0a2ee9d9e38e70a1ee90fa6e9 SHA512 cc28eb7166d9babdb3f3d61cc87eb9ed038d7115bd7de7da5b9cff33da114c334fd51140d32c597229cd07e400520bc92ebf69611c6a455ac926f3e9eaa5ee88
+DIST Django-5.1.6.checksum.txt 2573 BLAKE2B b35b22fee8d313510463e77c4b3a6d9154847554f5a33c48e656f7d88e1c71067b8493817e43cc168e9df2fdcab42ce4c35a5c61ff2c45d141025e79c807ce93 SHA512 e1df89d9dc9ad131d8caf12cb84065e55e78249e292aace955e1c6195f46b4ab94ac80d0a3ec23e9f62c7568439ba062f75fb1bbdb7b3fc555238ae512de991d
+DIST Django-5.1.6.tar.gz 10700620 BLAKE2B 8d362c686c68cb34eb356b237205b8b18e5bb75ebe7080a4be2f665dcff9fcd8f25775ba16ef70cd755a5a100c16751f35374eb76c39562ea098f5424223188f SHA512 a76a8e523aa90d62ed0fa003bc9117900644d93c62e78bd879b709c107bb18d3e9a5b4fbd475a213398d99f9b9052a31a54cef9c5861a923b66d639c037cc177
DIST Django-5.2a1.checksum.txt 2410 BLAKE2B 34659b6ff74e39fd13e8b1392dcb0411ae88cb88dc0271f3e7f84ad829e2525f1db11c3951b1b1def4ea95a432135996656fd2e894f3afc3c1913913d1033cb6 SHA512 b1e70a6978707b1d90d8810dc349796e969d63299ec8496b5ec1d45d0881ddfa524e2b78fdd07d1e212d74497de011b7d5377dc31e19e74fb532f2cc26f94212
DIST Django-5.2a1.tar.gz 10814424 BLAKE2B fffa0f9f31fdd03b1dbf826ec1484d22fbfdeb13724254034726699d303a66d397e847954d15ab2b2975600bcbe4113051a6d9b7c14f2aeeca862ffd06c21d13 SHA512 5513cf718a30bd1bca5973c4fa679ec9af7b7a69cdfd554a5d5ab6706fdab18d5d9de8e1162968fc0d6c3254823577e43d1704482321178edbce434a8b4b8dd9
DIST django-4.2.17-pypy3.patch.xz 5900 BLAKE2B 2a564fc31d8e2f3def5a532d3bca1a4426a496c659192f602d659e0c1a5f5882978baedb384cc3b67fda8c836513ce43aece80db1528c8e8b6e9ca420f7572ce SHA512 9c9d935aff6db7230a26931b5e7f5f94f3b5ff4fc8f7d4201178571de9d9c7929a0e1e558cc2d9b54b8ee91f85819a5680d24fad6251620515a4a020e3b2d66d
DIST django-5.0-pypy3.patch.xz 6124 BLAKE2B 7eba7cc70b30743cf4e186a2c5b0f27c13f49114a7a80bcaa2b25fdd7a959583c115a302c9bc6da97c32f6401cf8f3616818ba759190d317c5b033a0f0088766 SHA512 c550e2b2c1243d13cd1f4908f4b6df606355d1491e3bf72042e4b4777a4474306ff0f67b1c2eb4ab4d137cc85bde52dcdbd54bec245d2ba2e092545be8a2993b
EBUILD django-4.2.18.ebuild 2939 BLAKE2B 7b91da0096c435ff9ba001dd9f8944c1f41bd3bb64e9680ff04c9bebdaf856ea11bd1c1de7af2228b45cc62225cdca034194485093adf1e6d7479f5a4de7ca90 SHA512 afb2cc88d0f5185db77fff211e74fab805918f6c468eb33f19944c1f6df769258b82d253893551707d2ee0cea9f8e49825b47e1468de10fe52f239a874eb4345
+EBUILD django-4.2.19.ebuild 2946 BLAKE2B 2e57fd5848b7b258e59b72ac7717cda100a09be4d96f15e6b179c368cb0e443cc7ab4c19aad42a7f0d1149002ef2be049169bdada5a4325054daa8b3d57f43c3 SHA512 ac112c8067a6b0f1d6b349a43f091b668a73d7e84fa989c0d4ee3c4fd1e4bd3be69b89b7fba972ae6eb63ad557c0708729755cfdae81fb750b7fbba4908d254c
EBUILD django-5.0.11.ebuild 3096 BLAKE2B 828b8cd9aac52a6819271b85b42bd26754495f34ec107b29f292f795808de3984c4aac239f1ea1befe836d7aea6770b4252513e1bc503d21a0c8b7efda43fcba SHA512 e7b7e2fe7883f38ed6a9b80839b9bcf11409836044af14eba15ec2fb76e65a853bc27cdbe90fcc2ce2e53a0d5d70fcbf8ed20dd61c81c7cfa04640e635ba002d
+EBUILD django-5.0.12.ebuild 3103 BLAKE2B 8a8247240e64e5cad1a60cff105a0a49a55eb9e8664fd60f564bb55936011390052a32c1079c0da640c075331b69d985fd73ae3bfd1f9287712ae475b0044a2c SHA512 313b7962583b8fa0ef8c1e3dd496933afadbd6fddba05786e7575a0ad5875b872c47b9721f19ec62a5f3db3580fb6e2716872d49b89f26174cb7a981e4b871cf
EBUILD django-5.1.5.ebuild 2775 BLAKE2B aa70afdaa6c727a82d74bec1579a06dafe2c3703b7ca0b27df408ee998c95d6a4b145bb409f6b37316a73381666c95399da6104b87829c77d109c3c56e945a02 SHA512 2639f663d9e295eccc0c46e907e455c478e05f423196e2cb64881edefe36c5fe5e8f6eef6bc5d285fd8c629940fb32babfd1a268458688ea90ede3a7056361b2
+EBUILD django-5.1.6.ebuild 2782 BLAKE2B baee148db4a50bd3a37f6068c509a90dc41a5a8fad41873d9eb20507da93f867b4e065a61514d987e3c885c2ce5c40f10fbb6cbaf7238e54563747750acdee38 SHA512 78f7ff9c86e392496ea8190b86211139eb895364fd56cee312ec05e9c3af88edcd3c03fa566b6aa1c153e0b30547888f1180c88b4f0c8743a9e671e97a0df6de
EBUILD django-5.2_alpha1.ebuild 2731 BLAKE2B 0e8038045ea2b9d4aaae97e53d06da124350bcca495d589e419de2bb2afd24df5676fd1f15eff3a8d6bed2017385dacda71626c9540f17de604a074bfdec857d SHA512 a00e3a879545e8f10df4b6c3f17f63568b791873e0e2ba19e868b3091c103deff4220d0bc19dc29d05b3f6cce7ab08d5bd10744547b5bfa60b700434ae5657e1
MISC metadata.xml 400 BLAKE2B 6b3414ac734f078d90c82b44edd2f9f70e494e98da8a3d874d18006ae5e0eb5f7060b98b402094d6045e800bf525586f2566e6f554a8b2999cce37bdcc5472a0 SHA512 1cf0bb6ef93da3abbd1a66878462b1b8672a9b8fccd7f968b427e429caa6ecf30cb703a6060d621ccad1ba77b927d2b0e632b04b0a47975918ccbfcc5f2b85f7
diff --git a/dev-python/django/django-4.2.19.ebuild b/dev-python/django/django-4.2.19.ebuild
new file mode 100644
index 000000000000..132ee16f15d3
--- /dev/null
+++ b/dev-python/django/django-4.2.19.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+PYTHON_REQ_USE='sqlite?,threads(+)'
+
+inherit bash-completion-r1 distutils-r1 multiprocessing optfeature verify-sig
+
+DESCRIPTION="High-level Python web framework"
+HOMEPAGE="
+ https://www.djangoproject.com/
+ https://github.com/django/django/
+ https://pypi.org/project/Django/
+"
+SRC_URI="
+ https://media.djangoproject.com/releases/$(ver_cut 1-2)/${P^}.tar.gz
+ https://dev.gentoo.org/~mgorny/dist/python/django-4.2.17-pypy3.patch.xz
+ verify-sig? ( https://media.djangoproject.com/pgp/${P^}.checksum.txt )
+"
+S="${WORKDIR}/${P^}"
+
+LICENSE="BSD"
+# admin fonts: Roboto (media-fonts/roboto)
+LICENSE+=" Apache-2.0"
+# admin icons, jquery, xregexp.js
+LICENSE+=" MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="doc sqlite test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/asgiref-4[${PYTHON_USEDEP}]
+ >=dev-python/asgiref-3.6.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlparse-0.3.1[${PYTHON_USEDEP}]
+ sys-libs/timezone-data
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ ${RDEPEND}
+ dev-python/docutils[${PYTHON_USEDEP}]
+ dev-python/jinja2[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[webp,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ dev-python/selenium[${PYTHON_USEDEP}]
+ dev-python/tblib[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ )
+ verify-sig? ( >=sec-keys/openpgp-keys-django-20240807 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/django-4.0-bashcomp.patch
+ "${WORKDIR}"/django-4.2.17-pypy3.patch
+ # https://code.djangoproject.com/ticket/35661
+ "${FILESDIR}"/django-5.1-more-pypy3.patch
+)
+
+distutils_enable_sphinx docs --no-autodoc
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/django.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "${P^}.checksum.txt" sha256 "${P^}.tar.gz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+python_test() {
+ # Tests have non-standard assumptions about PYTHONPATH,
+ # and don't work with ${BUILD_DIR}/lib.
+ PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite \
+ -v2 --parallel="${EPYTEST_JOBS:-$(makeopts_jobs)}" ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ newbashcomp extras/django_bash_completion ${PN}-admin
+ bashcomp_alias ${PN}-admin django-admin.py
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature_header "Additional Backend support can be enabled via:"
+ optfeature "MySQL backend support" dev-python/mysqlclient
+ optfeature "PostgreSQL backend support" dev-python/psycopg:0
+ optfeature_header
+ optfeature "GEO Django" "sci-libs/gdal[geos]"
+ optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
+ optfeature "ImageField Support" dev-python/pillow
+ optfeature "Password encryption" dev-python/bcrypt
+}
diff --git a/dev-python/django/django-5.0.12.ebuild b/dev-python/django/django-5.0.12.ebuild
new file mode 100644
index 000000000000..2a1838f4d431
--- /dev/null
+++ b/dev-python/django/django-5.0.12.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_REQ_USE='sqlite?,threads(+)'
+
+inherit bash-completion-r1 distutils-r1 multiprocessing optfeature verify-sig
+
+DESCRIPTION="High-level Python web framework"
+HOMEPAGE="
+ https://www.djangoproject.com/
+ https://github.com/django/django/
+ https://pypi.org/project/Django/
+"
+SRC_URI="
+ https://media.djangoproject.com/releases/$(ver_cut 1-2)/${P^}.tar.gz
+ https://dev.gentoo.org/~mgorny/dist/python/django-5.0-pypy3.patch.xz
+ verify-sig? ( https://media.djangoproject.com/pgp/${P^}.checksum.txt )
+"
+S="${WORKDIR}/${P^}"
+
+LICENSE="BSD"
+# admin fonts: Roboto (media-fonts/roboto)
+LICENSE+=" Apache-2.0"
+# admin icons, jquery, xregexp.js
+LICENSE+=" MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="doc sqlite test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/asgiref-4[${PYTHON_USEDEP}]
+ >=dev-python/asgiref-3.7.0[${PYTHON_USEDEP}]
+ >=dev-python/sqlparse-0.3.1[${PYTHON_USEDEP}]
+ sys-libs/timezone-data
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ ${RDEPEND}
+ >=dev-python/docutils-0.19[${PYTHON_USEDEP}]
+ >=dev-python/jinja2-2.11.0[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[webp,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/selenium-4.8.0[${PYTHON_USEDEP}]
+ >=dev-python/tblib-1.5.0[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ )
+ verify-sig? ( >=sec-keys/openpgp-keys-django-20240807 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/django-4.0-bashcomp.patch
+ "${WORKDIR}"/django-5.0-pypy3.patch
+ # https://github.com/django/django/commit/3426a5c33c36266af42128ee9eca4921e68ea876
+ "${FILESDIR}"/django-5.0.6-py313.patch
+ # https://code.djangoproject.com/ticket/35661
+ "${FILESDIR}"/django-5.1-more-pypy3.patch
+)
+
+distutils_enable_sphinx docs --no-autodoc
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/django.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "${P^}.checksum.txt" sha256 "${P^}.tar.gz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+python_test() {
+ # Tests have non-standard assumptions about PYTHONPATH,
+ # and don't work with ${BUILD_DIR}/lib.
+ PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite \
+ -v2 --parallel="${EPYTEST_JOBS:-$(makeopts_jobs)}" ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ newbashcomp extras/django_bash_completion ${PN}-admin
+ bashcomp_alias ${PN}-admin django-admin.py
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature_header "Additional Backend support can be enabled via:"
+ optfeature "MySQL backend support" dev-python/mysqlclient
+ optfeature "PostgreSQL backend support" dev-python/psycopg:0
+ optfeature_header
+ optfeature "GEO Django" "sci-libs/gdal[geos]"
+ optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
+ optfeature "ImageField Support" dev-python/pillow
+ optfeature "Password encryption" dev-python/bcrypt
+}
diff --git a/dev-python/django/django-5.1.6.ebuild b/dev-python/django/django-5.1.6.ebuild
new file mode 100644
index 000000000000..9ac09beed28d
--- /dev/null
+++ b/dev-python/django/django-5.1.6.ebuild
@@ -0,0 +1,99 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( pypy3 python3_{10..13} )
+PYTHON_REQ_USE='sqlite?,threads(+)'
+
+inherit bash-completion-r1 distutils-r1 multiprocessing optfeature verify-sig
+
+DESCRIPTION="High-level Python web framework"
+HOMEPAGE="
+ https://www.djangoproject.com/
+ https://github.com/django/django/
+ https://pypi.org/project/Django/
+"
+SRC_URI="
+ https://media.djangoproject.com/releases/$(ver_cut 1-2)/${P^}.tar.gz
+ verify-sig? ( https://media.djangoproject.com/pgp/${P^}.checksum.txt )
+"
+S="${WORKDIR}/${P^}"
+
+LICENSE="BSD"
+# admin fonts: Roboto (media-fonts/roboto)
+LICENSE+=" Apache-2.0"
+# admin icons, jquery, xregexp.js
+LICENSE+=" MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~x64-macos"
+IUSE="doc sqlite test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ <dev-python/asgiref-4[${PYTHON_USEDEP}]
+ >=dev-python/asgiref-3.8.1[${PYTHON_USEDEP}]
+ >=dev-python/sqlparse-0.3.1[${PYTHON_USEDEP}]
+ sys-libs/timezone-data
+"
+BDEPEND="
+ test? (
+ $(python_gen_impl_dep sqlite)
+ ${RDEPEND}
+ >=dev-python/docutils-0.19[${PYTHON_USEDEP}]
+ >=dev-python/jinja2-2.11.0[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pillow[webp,${PYTHON_USEDEP}]
+ dev-python/pyyaml[${PYTHON_USEDEP}]
+ >=dev-python/selenium-4.8.0[${PYTHON_USEDEP}]
+ >=dev-python/tblib-1.5.0[${PYTHON_USEDEP}]
+ sys-devel/gettext
+ )
+ verify-sig? ( >=sec-keys/openpgp-keys-django-20240807 )
+"
+
+PATCHES=(
+ "${FILESDIR}"/django-4.0-bashcomp.patch
+)
+
+distutils_enable_sphinx docs --no-autodoc
+
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/django.asc
+
+src_unpack() {
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_signed_checksums \
+ "${P^}.checksum.txt" sha256 "${P^}.tar.gz"
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+}
+
+python_test() {
+ # Tests have non-standard assumptions about PYTHONPATH,
+ # and don't work with ${BUILD_DIR}/lib.
+ PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite \
+ -v2 --parallel="${EPYTEST_JOBS:-$(makeopts_jobs)}" ||
+ die "Tests fail with ${EPYTHON}"
+}
+
+python_install_all() {
+ newbashcomp extras/django_bash_completion ${PN}-admin
+ bashcomp_alias ${PN}-admin django-admin.py
+
+ distutils-r1_python_install_all
+}
+
+pkg_postinst() {
+ optfeature_header "Additional Backend support can be enabled via:"
+ optfeature "MySQL backend support" dev-python/mysqlclient
+ optfeature "PostgreSQL backend support" dev-python/psycopg:0
+ optfeature_header
+ optfeature "GEO Django" "sci-libs/gdal[geos]"
+ optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached
+ optfeature "ImageField Support" dev-python/pillow
+ optfeature "Password encryption" dev-python/bcrypt
+}
diff --git a/dev-python/mkdocstrings-python/Manifest b/dev-python/mkdocstrings-python/Manifest
index 81b8f7aa6d68..a0524ff2e511 100644
--- a/dev-python/mkdocstrings-python/Manifest
+++ b/dev-python/mkdocstrings-python/Manifest
@@ -1,7 +1,9 @@
DIST mkdocstrings_python-1.13.0.tar.gz 185697 BLAKE2B e3ab2da319147a9c28bb8df7074ab6fa61616fd950bc522b9711e23ab3f0d5f6c50ee82ce193e8b4051fdfe7ce1ae110617acc89a045acf73b49c4afe0fd05a3 SHA512 0414a09000a09515e5da1d8ea5a9cd59fa405de0de15a5c225ab57cc2280f47e7bf11196d6f41bb9626c5dd632cf37000f59cc4e156c7c061c8b46fca1563d05
DIST mkdocstrings_python-1.14.3.tar.gz 421258 BLAKE2B 2b4ae390fcc50f3fbc1ad14686af5b19b800387b6f7668a362b09bb53e43af59d1bfd44d4dd9fef93899ce6313abeec30d775104fdbbad4da018592bbe30d20b SHA512 69444e7a69f604e78a8df264ac2205ac29285871a342c2ff620f6e411112267fcd226c445acd2787d516febac442aa64349742652363651fa82430ec279fa129
DIST mkdocstrings_python-1.14.4.tar.gz 421537 BLAKE2B d3bdbb5505e68e8fc5a4e1392022dc14ad13340388b1c21b6f5eb33009184e9cf654b0d0a499b74f615d2c39c91fa7671ae8a47babe88116eb37b81ac37c1252 SHA512 04511be1ae24275742ff9c906fc9c9ff91b504c516b9dedac29455646b7565d07c57f49e881554b548010302121848a2e06e1e0c078f1b35dc4e7ef8c3a9eca4
+DIST mkdocstrings_python-1.14.5.tar.gz 421738 BLAKE2B db34876db6c15438141ad845eef72ff0dd4c352bb177342c5a49cf9bb77ab8e61189ca7f3bf85f0ad3756857ca7e446474b95b099d2172cf8f010451ce6f0ebf SHA512 a33e6a3e0fb7b3564d5bcb48575f58d956a570dac4e3f6b34f7b1c85c724573efd6034da1425403a1aed62257a278a11b5bc214fa18c8642ebf42d9614e9e70d
EBUILD mkdocstrings-python-1.13.0.ebuild 1238 BLAKE2B 4a3acaf1ad2dd4eafbf669512439a0acb6f736c5490451808a942492868f8646b9f1200237aba93c0024b7f2b9fb5909cc8e6619d808170d0a4def37b868abe5 SHA512 32a22b384b8c3ae22a38f39871a1d093a4c6b0bb8664d8f75a65d3e32592041fae3215779ec95b988f0257fdad7c6297d34dd028d6d7580a3f248b27af03f1f9
EBUILD mkdocstrings-python-1.14.3.ebuild 1325 BLAKE2B 3a545e51b464e92b115c3ae1118a02c7721fae0131a5e02b82ddb837c74208632d95b2a15ca2c064a630e69e7f2f2a965eb16d940b1af19919770389275341a2 SHA512 81e65d21f60456a1cc4a522ecf7e94d4099a0f6458f81b445f8e51b4777a443cf8a1133274a058613a3208fddc2dc3e92dc716d40e0730aec8e9409353a84b87
EBUILD mkdocstrings-python-1.14.4.ebuild 1325 BLAKE2B 3a545e51b464e92b115c3ae1118a02c7721fae0131a5e02b82ddb837c74208632d95b2a15ca2c064a630e69e7f2f2a965eb16d940b1af19919770389275341a2 SHA512 81e65d21f60456a1cc4a522ecf7e94d4099a0f6458f81b445f8e51b4777a443cf8a1133274a058613a3208fddc2dc3e92dc716d40e0730aec8e9409353a84b87
+EBUILD mkdocstrings-python-1.14.5.ebuild 1325 BLAKE2B 3a545e51b464e92b115c3ae1118a02c7721fae0131a5e02b82ddb837c74208632d95b2a15ca2c064a630e69e7f2f2a965eb16d940b1af19919770389275341a2 SHA512 81e65d21f60456a1cc4a522ecf7e94d4099a0f6458f81b445f8e51b4777a443cf8a1133274a058613a3208fddc2dc3e92dc716d40e0730aec8e9409353a84b87
MISC metadata.xml 406 BLAKE2B c453b318ec32906f8b4917e9fcf9e82e632b780435d6617195590757dc8e08505dd29a05e8009808a040460ae322048801077aca8b41c8e07d093c4177befd39 SHA512 c56a8b222d22b5e4e8f396a96abddba840c4288b01958e261e3eb554830e88f424d840b839b7f6180f2f64c74cde9e2e3e8c70cdbbb8d4cc84ac161007064059
diff --git a/dev-python/mkdocstrings-python/mkdocstrings-python-1.14.5.ebuild b/dev-python/mkdocstrings-python/mkdocstrings-python-1.14.5.ebuild
new file mode 100644
index 000000000000..ac1edc64eb1e
--- /dev/null
+++ b/dev-python/mkdocstrings-python/mkdocstrings-python-1.14.5.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=pdm-backend
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Python handler for dev-python/mkdocstrings"
+HOMEPAGE="
+ https://mkdocstrings.github.io/python/
+ https://github.com/mkdocstrings/python/
+ https://pypi.org/project/mkdocstrings-python/
+"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~riscv"
+
+RDEPEND="
+ >=dev-python/griffe-0.49[${PYTHON_USEDEP}]
+ >=dev-python/mkdocstrings-0.28[${PYTHON_USEDEP}]
+ >=dev-python/mkdocs-autorefs-1.2[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ >=dev-python/typing-extensions-4.0[${PYTHON_USEDEP}]
+ ' 3.10)
+"
+BDEPEND="
+ test? (
+ >=dev-python/beautifulsoup4-4.12.3[${PYTHON_USEDEP}]
+ >=dev-python/inline-snapshot-0.18[${PYTHON_USEDEP}]
+ dev-python/mkdocs-material[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+export PDM_BUILD_SCM_VERSION=${PV}
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # "None" meaning particular formatter not installed
+ "tests/test_rendering.py::test_format_code[None-print('Hello')]"
+ "tests/test_rendering.py::test_format_code[None-aaaaa(bbbbb, ccccc=1) + ddddd.eeeee[ffff] or {ggggg: hhhhh, iiiii: jjjjj}]"
+ )
+
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p inline_snapshot
+}
diff --git a/dev-python/peewee/Manifest b/dev-python/peewee/Manifest
index 7808c2b8c22f..49f4e3881a80 100644
--- a/dev-python/peewee/Manifest
+++ b/dev-python/peewee/Manifest
@@ -1,3 +1,5 @@
DIST peewee-3.17.8.gh.tar.gz 930646 BLAKE2B d0822ad93dbee6c2566d0d4a9bad7c39ba30e1205192449f0483725277325c295c869edca70301dd8a15115a1153ccef08360c6600ec064caf0b386aaf05c8e6 SHA512 47101679b3624c167c82240b2d9fcd60db362e6960cc1852bc5042022fb1250cf4e58050b39ca309cd0a66019cbcf1c8a8e8b8619e0958f8ec37d7222bfe243f
+DIST peewee-3.17.9.gh.tar.gz 930724 BLAKE2B 6ce8156b48876db93344b7eaac14122d9d11812cdacb80dc4f3db0e7aa05a97b279f27e5b8d17016cb43d68f5e9ecd4e591cd58e2520677dfba7544395447911 SHA512 7082b0abcdaf47ee7b50066773c8491bebc94502b875a0f2a01f6d8d251fd147c738362021ab1d45dbc8ddc73fd7a37c0bc2732623d0f4b3e5d314caea7da510
EBUILD peewee-3.17.8.ebuild 1575 BLAKE2B 3aaef80541b702e5dbb3841acdb0933221f4b5a3e064378384906a69caaafa937ab84355c6e35154ae083cf315515458786a6821993c4e9aef27ac4be2b5bd3e SHA512 a506604f3916499bf4e9dd9eade9e0ee697caec75a408f8d06a4de87c616c570a92865492a8ecfb57613831885f4b4da1dc6f438f1bb995ccda820f3edad1a9e
+EBUILD peewee-3.17.9.ebuild 1577 BLAKE2B 33264f647f3b791786e3472419edf85baa63da12c4c537d58577c2ccb1b50bc1b029f49d5cb826a508c630c9392f275e8bacc6a28a08a5e5f6ece99be706842a SHA512 0e8479dddf0c803462fbd8eb7f1fa74edb271fa5e9ec954685c8abc3475a323c0b55f7e1044929d2c0e0d80a6e40e8eacfe8a2be0021382abcf55a33473f0901
MISC metadata.xml 493 BLAKE2B 60dbc97d8a2acf239b6ae84ae48153ec7985399ef588de5fd3d5e06db137353ba8440eeb811fe90edb66aef70550c514c23f53cf8ee2c5e8146504dae71cef19 SHA512 28227e81ad41534f8dc80dc478cb72e116aa3d5259bb91dd20121fcadd803a04715a986e21d4302a0c8129a4fcafbd71645636b0e5b3384a661f3ee93d41fde2
diff --git a/dev-python/peewee/peewee-3.17.9.ebuild b/dev-python/peewee/peewee-3.17.9.ebuild
new file mode 100644
index 000000000000..e1296aa9a27d
--- /dev/null
+++ b/dev-python/peewee/peewee-3.17.9.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2025 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_{10..13} )
+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}]
+ sys-libs/timezone-data
+ )
+"
+
+distutils_enable_sphinx docs \
+ dev-python/sphinx-rtd-theme
+
+src_prepare() {
+ # disable test failing on postgres 16
+ sed -e 's/test_timeout/_&/' -i tests/sqliteq.py || die
+
+ default
+}
+
+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
+ psql -h "${T}" peewee_test -c 'create extension hstore;' || 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/pyghmi/Manifest b/dev-python/pyghmi/Manifest
index 8ca60d0444ba..0c429055b685 100644
--- a/dev-python/pyghmi/Manifest
+++ b/dev-python/pyghmi/Manifest
@@ -1,5 +1,5 @@
-DIST pyghmi-1.5.71.tar.gz 258623 BLAKE2B 1032101d1c8b145896a6ccb99a66830c5327fa71c991be95fc6af0fca87f2a3491ae04195d10e2696f67285f79c96750413cfd1050297c1e1340a49f67694ba2 SHA512 77aa8f05bf003b4be803a6c74e1c0040a23a0270094c72ba58aaab0b56e7fdd68691c0c642d7116a62a3a66fafb0bf67d718373b7e67c7b6c6165dec78884d4d
DIST pyghmi-1.5.72.tar.gz 260374 BLAKE2B e68420c86e98de450ddc873bd29bfb64b9651b5b4dc14990b7147ab7973d1b9ee1d4fc6ce4ebdcf460b0ff8d8575ac8f7db77caabff40fe984d7ca5eb03dccf4 SHA512 c9cc5486d6bea6e9ef60f4b98328f42690350432c5b742adb8f69e136a1f001bd47c078ac52a4d147d636e694e4a1efb9a9fe1b704559afe9303020bb0c86d73
-EBUILD pyghmi-1.5.71.ebuild 705 BLAKE2B 795ff842356f736e0b7d9bbae14f931024a5529e5df6ad6bd0f883849aa9fdf33f6306fdc4dadf35286bc2642924871dd75616940ee2f7a92a08bd783d52a096 SHA512 d00ca3a414871146bee1205e231ee0dc0837e1920d34c22d778c60944e8589e87500b15987e7dcad1ac0d7f283f804700d5b0f1911f7d0cc7ade7218b4c21398
+DIST pyghmi-1.5.75.tar.gz 266358 BLAKE2B 59ed934322b9f7acd842e2c625007ef9ec23b86088a183359fafbcafa9ce11ecf38c7aeb0fa8d8d9b9de2fffa8ff54a9e7180e1b2423bd64de6d947d92104643 SHA512 73bcb9a37016af6a173c853cef0089fa5d060e9c58e92d0ea1a90594ca8dff60dcb0c69e4640cd1c59b0b451abc1662ac9e0f8b3df9274aaa948474bb33cdf1b
EBUILD pyghmi-1.5.72.ebuild 705 BLAKE2B 795ff842356f736e0b7d9bbae14f931024a5529e5df6ad6bd0f883849aa9fdf33f6306fdc4dadf35286bc2642924871dd75616940ee2f7a92a08bd783d52a096 SHA512 d00ca3a414871146bee1205e231ee0dc0837e1920d34c22d778c60944e8589e87500b15987e7dcad1ac0d7f283f804700d5b0f1911f7d0cc7ade7218b4c21398
+EBUILD pyghmi-1.5.75.ebuild 705 BLAKE2B 54aad4392f47a0d96b200a6c52356120b3bdc34169cb51aa28c9f1a8a96254b57c0af4f6b0c6c9d066a710ee42418a4ad6f2133e111f35785c829db667bacc88 SHA512 4f1bb92679149dc49cc305cb504418d4e2b50dbf1f0f3a998a0f70d9e991be647d49bfdc0bf48d3024bbbb92d4c66f4f81c60fd01aae62c4216afa9599adbd26
MISC metadata.xml 439 BLAKE2B 0c7ccbc424041a506c60bb0934e40465b64a9779d4d2b6992ba5d4c8563b114da1470a1b221798773824b92fc7b5d6e7b2f0b0afff7f266ea1fbf450f336c497 SHA512 0c919c41bbef88b080cd5941d767cb3f79e935dfedb6da16353b80da2966d488936768b8ad04c7fc695b3c6376143430115f5533b3492816bf293ab2ccf37fb8
diff --git a/dev-python/pyghmi/pyghmi-1.5.71.ebuild b/dev-python/pyghmi/pyghmi-1.5.75.ebuild
index 60628881477b..c41c53393a4e 100644
--- a/dev-python/pyghmi/pyghmi-1.5.71.ebuild
+++ b/dev-python/pyghmi/pyghmi-1.5.75.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2024 Gentoo Authors
+# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
diff --git a/dev-python/pypy-exe-bin/Manifest b/dev-python/pypy-exe-bin/Manifest
index 0b051df75e9a..808f0f281438 100644
--- a/dev-python/pypy-exe-bin/Manifest
+++ b/dev-python/pypy-exe-bin/Manifest
@@ -6,5 +6,14 @@ DIST pypy-exe-7.3.17-1.ppc64le-musl.gpkg.tar 6696960 BLAKE2B 805d8fb087b8123437f
DIST pypy-exe-7.3.17-1.ppc64le.gpkg.tar 11110400 BLAKE2B b8e3f503f448226c7d59942281cb64fe4bd648a5777ec483de0f549221ddcf71f347f88b9c11070f8875657851e07cfdf4e9ef634e811c0a3dda664cd04543ca SHA512 e4e2f16e2eed8946a1ad07ba3d4ba8677beeda3731b46838a5284e6309b3966ddf8fa9992c4519b19797f633d2288d4f231fc41e992e83683de0ad7b239c5d22
DIST pypy-exe-7.3.17-1.x86-musl.gpkg.tar 9891840 BLAKE2B 3391ad3558baa88741a38549e12666ee669d5949f234e104e5687001928aaf7836573192ded6342fd690337589da10d4f45389c02d15cf3bc10ebc4a7de2d12c SHA512 cf30b7c8f779317126ced75d84b383644a4d90cc65a9d2e75019dd68bb29079fdb0e96312c26ee3f7185f6c64e3a7a0c21d66fdcf18a5c68ce87936dd49d6043
DIST pypy-exe-7.3.17-1.x86.gpkg.tar 9850880 BLAKE2B 08487e276cf616c5c9191a0a29cc6a297f9eab5ce8382d591b01e7da3239b4bef482bba1566b17ca85f3729b4d5ae6bef6d13940b5e7b1dcd9a7b03d7eaec2ac SHA512 70f6660321483361a1de6e5ccf2854daf892282858d2a0a00ce3055103d7f90f1788cea4b5b18913f11c17ce0f6c999551ee5374f897717d33eb06e913310960
+DIST pypy-exe-7.3.18-1.amd64-musl.gpkg.tar 13004800 BLAKE2B 9898cee07c5934485b8686971ce13828465b5d416b7c930a99e21ea5b12a02801827a2ec21015a1ec5a6445fd3dcbe3e69b626e8dd71026978a7b1353fc0e328 SHA512 a9d6ed5a72ee98c4bd11875824c7bfdd91c7ba5b490938af250b3220a8164546909ecf871db4fce03729e5fbef76df70d20444d6f688bce4abd72a2bad16d049
+DIST pypy-exe-7.3.18-1.amd64.gpkg.tar 12984320 BLAKE2B 91462c319c0ae51301166f6a83c97ec81b4c2fed65cf5059ba0279e3d842cb0aa341ae3f0003bc430f69ba9e6e4bbecaea3b29facec9aa2a536c70089c830d29 SHA512 c1abfd2ef44802707e0b402f554d7f12ef88ed8d9002904b932ae476c820323ce2a2bf6c4e2ac40d8c7cc703941be6555e1b8b9775f7e3eb412988e0264c7df1
+DIST pypy-exe-7.3.18-1.arm64-musl.gpkg.tar 11048960 BLAKE2B 7609f00e9f46c7a24917797e1cabf09a8759cbcbe92b8db1449e4237eaa6ad13e39109db4ac14dd140411938d1c959174d0999914164016333cbfe3d62cca787 SHA512 55cf193988c1736cdc1eb0800d3070294df0fdacf8e4ee9f1e15539929c55a98fec474347824cf9895c8a294d24aeb4c973a56a727840f0cc8469b9a049facc5
+DIST pypy-exe-7.3.18-1.arm64.gpkg.tar 10967040 BLAKE2B 09f84c8a584045c24cc888dc2afedd8981da50e568f394e5a5e780e8ead0314811bc382fc85a0d5198ced86e0885f827d74da54ba619b1db65d1d54f0c44a553 SHA512 1ad7e009db436f82d80a82b2db04106b8d5bd286760095779fc9a73f8cdf2a7064a0e96cef60f369ab463112eebd45816059e692a5e8d59821ad8cde949752bb
+DIST pypy-exe-7.3.18-1.ppc64le-musl.gpkg.tar 6686720 BLAKE2B 1481fa7684a011a65c4a19306559b70ffad2d528c60437e36665f7869b4dd1f4d39309c131d3713cd49005c6737dd135ba05e225a210b49ad0bddd49fce3b6bd SHA512 b1c15eebc79af3bd913ba584318a7ec1976fded8b76231e4ba41edad3689723c5c5d457000a6d6efa2ecf991c9ecb4098ff2b2bad79bf48f19f00a00c0000ca2
+DIST pypy-exe-7.3.18-1.ppc64le.gpkg.tar 11069440 BLAKE2B eab43ad91872d43229ddfbee634755e7f5d8083d01e7fbeece0dffb1598403cb8b858de4aeefbdebe17f3b31976e6b7b20da7e57c1599f2dde989194dedaeff4 SHA512 7d0fa89fc3bac50b435f1a2d7cfbdbb7dda014a530b2bfa1229c96a60758fbfe93dc2c0f15b04ae54a0e18e8c7b7cc030081ceb02bf8e79185baf96a96b1c175
+DIST pypy-exe-7.3.18-1.x86-musl.gpkg.tar 9984000 BLAKE2B 8c979113c30e9b57d082fbbc7d7004e06a13f85aa85b77342763a877afdb2f3ba853a6e4a3be7ec956192ba6f4f8eaf42babf0419d367cffede794b7f5dd1514 SHA512 aba37bb2488b81afc5d4b390bf24c9b0a44162dd353e0d053ebbb0e52da86f0414167149e08a3e44ff4d139d410ac9e7a34fe97c67ef1696bd3f4db5049bed89
+DIST pypy-exe-7.3.18-1.x86.gpkg.tar 9902080 BLAKE2B 4d16db3c364d8609c1cdfa52b1383c91e98ae33358ee125e283e8f99dad21ef59472af7341fc8a598cb38c8610a55c4b9fb38d8a059f0120351d5971dcedf1ee SHA512 f1b076cf2be22e1adf48f106744c4ca8e4466f6daa6e4009e36df8af029913085afa0b1f91dd1644e61507e00cf7d16143ceb8405712272b18de9574ad2a9c31
EBUILD pypy-exe-bin-7.3.17.ebuild 1977 BLAKE2B 89689dca15e803f96e85554c8a07fd4fc135419000ec528e29f1996a08feb953aa4a4db0229e288bc984d1319b8c9f0676be3725f0b69dcb179ebd59a70898b6 SHA512 8a1449cb2983b12904abaf238c665ba3bd4180d9ec6e03ead0b2e0b1030a2ec34cc7d828dd58391f1e030ef65b348a06cb6cb88e6af6881a99be7ce429eae545
+EBUILD pypy-exe-bin-7.3.18.ebuild 1979 BLAKE2B caba6a4fd6237796d995d5f5a5da354807bbbd0a2d8cc980c940e3e9840a446108fdacd9713c80f443c77dc111d9032b1e272949f4356b4d6498c910f2f58966 SHA512 df5b518168b55f35e567e35959c4b9dbcd3c96f83ab2504dde361cbe31d4e1d2533a88e71f61ad113496ced58dfe43da9a0a66fbb41b905fc28ce9ddae97d2ab
MISC metadata.xml 315 BLAKE2B da5ed341c55250028587ffb479a27b7ec31eb0f8bd0e11b8a98a374e23d989f7d5bcce647ca9c78cd12f64b6b83dd0568c4f3a992a6c8c5089c52cef9de87441 SHA512 ebe1c4d655c49fd20127dd240b603f1b99d67c0a6d21c7eb37bee48f4ec6bba50648816ea2b1b746af58fcf8de576d24fe355ecfa2de07ebaa0265ade2ea38ba
diff --git a/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.18.ebuild b/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.18.ebuild
new file mode 100644
index 000000000000..c68b78a12bd4
--- /dev/null
+++ b/dev-python/pypy-exe-bin/pypy-exe-bin-7.3.18.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pax-utils unpacker
+
+MY_P=pypy-exe-${PV}-1
+DESCRIPTION="PyPy executable (pre-built version)"
+HOMEPAGE="
+ https://pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ elibc_glibc? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86.gpkg.tar
+ )
+ )
+ elibc_musl? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64-musl.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64-musl.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le-musl.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86-musl/pypy/dev-python/pypy-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86-musl.gpkg.tar
+ )
+ )
+"
+S="${WORKDIR}"
+
+LICENSE="MIT"
+SLOT="${PV%_p*}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+# sys-devel/gcc for libgcc_s.so
+RDEPEND="
+ app-arch/bzip2:0/1
+ dev-libs/expat:0/0
+ dev-libs/libffi:0/8
+ sys-libs/ncurses:0/6
+ >=sys-libs/zlib-1.1.3:0/1
+ virtual/libintl:0/0
+ elibc_glibc? (
+ sys-devel/gcc
+ >=sys-libs/glibc-2.35
+ )
+ !dev-python/pypy-exe:${SLOT}
+"
+
+QA_PREBUILT="
+ usr/lib/pypy2.7/pypy-c-${SLOT}
+"
+
+src_install() {
+ insinto /
+ doins -r */image/usr
+ fperms +x "/usr/lib/pypy2.7/pypy-c-${SLOT}"
+ pax-mark m "${ED}/usr/lib/pypy2.7/pypy-c-${SLOT}"
+}
diff --git a/dev-python/pypy-exe/Manifest b/dev-python/pypy-exe/Manifest
index 235a8c61816a..58e83b4b0d47 100644
--- a/dev-python/pypy-exe/Manifest
+++ b/dev-python/pypy-exe/Manifest
@@ -1,4 +1,7 @@
DIST pypy2.7-gentoo-patches-7.3.17.tar.xz 5324 BLAKE2B 866f172a6df6f0e94a98c611b37ae58635623e33a47619a5e44658d3908337a3f9029ff7de6997f760c3f1679fc83bfc6ddfb66852c492a581b3336b5eec3ed2 SHA512 6ce5266d0748f3c18a5546aa2bd8479ecb45923eb7df8a140a195e7f7b44999b9167ffdd44f7fd789ddd3a62cd77cb917863b0144180a1127befce1f290e650a
+DIST pypy2.7-gentoo-patches-7.3.18.tar.xz 6220 BLAKE2B 1df2c5bab94c4b12c2ecd82d01c94bb6a7f9b04d7f495e5e7f0152dcf01abcef062b751a4b1f44ab5acfb2a6cb919e610609ecacd3d4745d62ab5feaf03f7ed1 SHA512 d40ba911c963d377b96458639cb731ea47051c44915473f3763a2d52343a11e17f4513d368e4104f024239d31c93457b5e4aa8a9392175eb323afcc3ce9efe2a
DIST pypy2.7-v7.3.17-src.tar.bz2 19907140 BLAKE2B de62ebc4e8102867effdecddca64c19c40458b112a6a56ac0c95247047b9f5437a5da68dffb51c14c21bce463c2ca489c6e6a4f86e8cc597b57df2eca707081e SHA512 82b2b9dbf0ea32c405ddc53d98a3a7a153f494d286e8719a0c40960168aadc0f49c3b313416488338f7f51c8fdb58120de41b1d47a8c8eda7db6d4ec4273b4eb
+DIST pypy2.7-v7.3.18-src.tar.bz2 21007839 BLAKE2B 51a9b85ab644ffd142f2570e96f6376c8e75f5bd4882382f11f65f5b816e27305aadac8f9ee1634903845263376e8c718da3bf9c018e213163cdeadbe70bfa35 SHA512 f49763073a67292a780c7f078d90210e08cd1e68168fb4997ee1dccb2a84395dbe650dcfb4af5d1cb07249c5d4abc2c63ffe7c078be9fabcce92bcb4626254ac
EBUILD pypy-exe-7.3.17.ebuild 4246 BLAKE2B 9fc8fd37f445265302992af62acd47045c25fd8b8c42f13bb0eb62db8316140fe703f00a48b35bde393ffc9864d4010b15feea4b930a389c859583870eea95d4 SHA512 4061dd868cc6507966c615140cccf6ec98284c52b1daa26a22ba98101374d7215be0da0de88ba492a28f0002e2dff1a038dbd6e42a80476ecc144dbcc5678e2f
+EBUILD pypy-exe-7.3.18.ebuild 4248 BLAKE2B f6411461dc66c2247e463822c773534504c282a1f12830b7c58330c3143579db47487da6c55f7022a901abbe5a0e97c138634accb46ba91a088a6c0e7e1d8c6b SHA512 df1275109aaadeb8ccf1c8186197860ea5e05e9deb6a6b14f7f3102254cec0531757237dbdbfce8008600f6b82ebf7a4f8235324dcd76af78a36e95790437280
MISC metadata.xml 572 BLAKE2B cfcd1422ec312338fd876bc4747a962ac3c4bd06e28a3891489b065fba4c7be2daa6955f51e8136d9b8cf7b68bb7eb887b6f419ee9fd626ebd6db204acb7995d SHA512 c79250d47e3d5c99c2c903bfc185449cc41f88e2b923b8eae1401e83c0f23fa1a12ad85f50b6e25844e805e543ae897ccf43185a1bdf9f992dff765249e55bc1
diff --git a/dev-python/pypy-exe/pypy-exe-7.3.18.ebuild b/dev-python/pypy-exe/pypy-exe-7.3.18.ebuild
new file mode 100644
index 000000000000..09f9c50bd2e6
--- /dev/null
+++ b/dev-python/pypy-exe/pypy-exe-7.3.18.ebuild
@@ -0,0 +1,187 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs pax-utils toolchain-funcs
+
+PYPY_PV=${PV%_p*}
+MY_P=pypy2.7-v${PYPY_PV/_}
+PATCHSET="pypy2.7-gentoo-patches-${PV/_}"
+
+DESCRIPTION="PyPy executable (build from source)"
+HOMEPAGE="
+ https://pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ https://downloads.python.org/pypy/${MY_P}-src.tar.bz2
+ https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+"
+S="${WORKDIR}/${MY_P}-src"
+
+LICENSE="MIT"
+SLOT="${PYPY_PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="bzip2 +jit low-memory ncurses cpu_flags_x86_sse2"
+
+DEPEND="
+ >=sys-libs/zlib-1.1.3:0=
+ dev-libs/libffi:0=
+ virtual/libintl:0=
+ dev-libs/expat:0=
+ bzip2? ( app-arch/bzip2:0= )
+ ncurses? ( sys-libs/ncurses:0= )
+"
+RDEPEND="
+ ${DEPEND}
+ !dev-python/pypy-exe-bin:${PYPY_PV}
+"
+# don't enforce the dep on dev-python/pypy with USE=low-memory
+# since it's going to cause circular dep with unhelpful error message
+BDEPEND="
+ !low-memory? (
+ || (
+ dev-lang/pypy:2.7
+ dev-python/pypy
+ dev-lang/python:2.7
+ )
+ )
+"
+
+check_env() {
+ if ! has_version -b dev-lang/pypy:2.7 &&
+ ! has_version -b dev-python/pypy
+ then
+ if use low-memory; then
+ eerror "USE=low-memory requires (a prior version of) dev-python/pypy"
+ eerror "installed."
+ else
+ ewarn "CPython 2.7 will be used to perform the translation. Upstream"
+ ewarn "recommends using (a prior version of) dev-python/pypy instead."
+ fi
+ elog "You can install a prebuilt version of PyPy first using e.g.:"
+ elog " $ emerge -1v dev-python/pypy dev-python/pypy-exe-bin"
+
+ if use low-memory; then
+ die "dev-python/pypy needs to be installed for USE=low-memory"
+ fi
+ fi
+
+ if use low-memory; then
+ CHECKREQS_MEMORY="1750M"
+ use amd64 && CHECKREQS_MEMORY="3500M"
+ else
+ CHECKREQS_MEMORY="3G"
+ use amd64 && CHECKREQS_MEMORY="6G"
+ fi
+
+ check-reqs_pkg_pretend
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+ default
+}
+
+src_configure() {
+ tc-export CC
+
+ local jit_backend
+ if use jit; then
+ jit_backend='--jit-backend='
+
+ # We only need the explicit sse2 switch for x86.
+ # On other arches we can rely on autodetection which uses
+ # compiler macros. Plus, --jit-backend= doesn't accept all
+ # the modern values...
+
+ if use x86; then
+ if use cpu_flags_x86_sse2; then
+ jit_backend+=x86
+ else
+ jit_backend+=x86-without-sse2
+ fi
+ else
+ jit_backend+=auto
+ fi
+ fi
+
+ local args=(
+ --no-shared
+ $(usex jit -Ojit -O2)
+
+ ${jit_backend}
+
+ pypy/goal/targetpypystandalone
+ )
+
+ # Avoid linking against libraries disabled by use flags
+ local opts=(
+ bzip2:bz2
+ ncurses:_minimal_curses
+ )
+
+ local opt
+ for opt in "${opts[@]}"; do
+ local flag=${opt%:*}
+ local mod=${opt#*:}
+
+ args+=(
+ $(usex ${flag} --withmod --withoutmod)-${mod}
+ )
+ done
+
+ local interp
+ if use low-memory ||
+ has_version -b dev-lang/pypy:2.7 ||
+ has_version -b dev-python/pypy
+ then
+ einfo "Using already-installed PyPy to perform the translation."
+ interp=( pypy )
+ if use low-memory; then
+ local -x PYPY_GC_MAX_DELTA=200MB
+ interp+=( --jit loop_longevity=300 )
+ fi
+ else
+ einfo "Using CPython 2.7 to perform the translation."
+ interp=( python2.7 )
+
+ # reuse bundled pycparser to avoid external dep
+ mkdir -p "${T}"/pymod/cffi || die
+ : > "${T}"/pymod/cffi/__init__.py || die
+ cp -r lib_pypy/cffi/_pycparser "${T}"/pymod/cffi/ || die
+ local -x PYTHONPATH=${T}/pymod:${PYTHONPATH}
+ fi
+
+ # translate into the C sources
+ # we're going to build them ourselves since otherwise pypy does not
+ # free up the unneeded memory before spawning the compiler
+ set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}"
+ echo -e "\033[1m${@}\033[0m"
+ "${@}" || die "translation failed"
+}
+
+src_compile() {
+ emake -C "${T}"/usession*-0/testing_1
+}
+
+src_install() {
+ local dest=/usr/lib/pypy2.7
+ exeinto "${dest}"
+ newexe "${T}"/usession*-0/testing_1/pypy-c pypy-c-${PYPY_PV}
+ insinto "${dest}"/include/${PYPY_PV}
+ doins include/pypy_*
+ pax-mark m "${ED}${dest}/pypy-c-${PYPY_PV}"
+}
diff --git a/dev-python/pypy3_10-exe-bin/Manifest b/dev-python/pypy3_10-exe-bin/Manifest
index ddbcd1e9bf61..0cd969d7fcfd 100644
--- a/dev-python/pypy3_10-exe-bin/Manifest
+++ b/dev-python/pypy3_10-exe-bin/Manifest
@@ -6,5 +6,14 @@ DIST pypy3_10-exe-7.3.17-1.ppc64le-musl.gpkg.tar 6819840 BLAKE2B 1cc0c5c2c82f831
DIST pypy3_10-exe-7.3.17-1.ppc64le.gpkg.tar 10393600 BLAKE2B da4c97f4d5ee546d776ba937d3736033ded7f5cc0a17e39fd657952b834fe6c002d3c33cfc7b16572f07dd0421040d4bb82e897a101ac129a6082961d0d02c7d SHA512 c49c67eee76f604146aadfcc600312e028bb9f6a24560eefd1dec7e9e0c7304e0a1ce89fdf6229b50b51cd17fb50b89815d937ccac3ef5fcc1ef8ff99af5f237
DIST pypy3_10-exe-7.3.17-1.x86-musl.gpkg.tar 9103360 BLAKE2B 80202a4f66bec51176c29f2506a28ac296e63dd89102c68f62cfb868f455ac51a1e49557962c271e2a99b41001ad21b56790bb05aead361d59b7bea2c526721f SHA512 d7345e886c0ab4c8de987f5daaaddaa9983864e6343f3f64e85607ed897530f19fae653d412eb076b232ff6e7d52fdda4da0b05b4b4767ac1ac669a512e6fe6c
DIST pypy3_10-exe-7.3.17-1.x86.gpkg.tar 9154560 BLAKE2B c388c0bed60fafddf5edc2f0bae19e04e643cc1ca44bd99f2b7b84c8b71d1a685faa48886aab3b5b2137b90ae3ebfa7b41fc6f98bcd99203f7997299ec52f274 SHA512 5c2ab169b5ece9c7c8fb9972ac74cf2aa8c5f385fd805800183ed8c0845540185065aff388b2d0ad56d901365454979c9051e70ec5ff2a9f7059b2812555f8ff
+DIST pypy3_10-exe-7.3.18-1.amd64-musl.gpkg.tar 12226560 BLAKE2B b8a4c3536ac0766d273f39329c9166b37a1685bdec54da6bfe1216e9f8a7aea553b2419b834dc19de1a561dec210be216efd078b56a37bca51cb47373012b52c SHA512 b3ebb3e280000108e1b35694a48c8e6a8c9564d1b17d04861f5a06df9a857046645a090ba32384845cf9c440df4bdd37d392d8d308e65241e0b269cf3f93fe23
+DIST pypy3_10-exe-7.3.18-1.amd64.gpkg.tar 12206080 BLAKE2B 657aff6618c542a7b8c1758e75b6c789ffddbf93b1f012e1ae89a05c6806c1674589159f4d4d667d42a6d9b3533183ac9d9b539e5bb67acb32d1a3f9d1c16fe2 SHA512 fc977d05a36e2b898fa3ec0c2cac7f7366873fbe60bf43f76074203c2d789d263230760740ac677c7c9b420d25e5a63d1d59056ecb16b98b5bd8726797d6a517
+DIST pypy3_10-exe-7.3.18-1.arm64-musl.gpkg.tar 10342400 BLAKE2B 4a7a2843cc02b8f1f54122eddc9645127080b97f82cb61d02c569a804fbac280a75748b6e870e2bf9a1d22bec55a3e1f723d9a11b50a110021378c70a8b63fa0 SHA512 48a280c50d16385ab1cb698060b1fec4a6a45b613949563efc8626a10ebc9da2c9880b6fb2261bde08d255d61e686b32505b3dfe338a2f9b841908ba4139321a
+DIST pypy3_10-exe-7.3.18-1.arm64.gpkg.tar 10332160 BLAKE2B e07d739fc90abf8876aee0bec6cee38465639b64ad64493b9f9c50e83f04e0778b7881c5efeabd42365b57fd5c1cfb84098381c3f0be922502505edd592b1b65 SHA512 575cc369b40884da033723621f7fb7896e36d1be0b923b6d70a598e89def22163ec316d0687d8f4ae4f6336a937c0b938c6daf607413d2834fd693c8b77e59fc
+DIST pypy3_10-exe-7.3.18-1.ppc64le-musl.gpkg.tar 6830080 BLAKE2B bd43beaf69cbf50dcc752bfe6f11510baaf511aef372d73712885294d0fc22e940b79635729af406283ec9ef9cb5f4cefdfaba00ccb0a2542f6f476c27130b87 SHA512 cc0ef81c22db18f44eb400b710a9ef18cb9582b1838e0aafad30ee62fdca3ef071fe941a464cc86f939dc6733ad65a22a3918269a32bc15f2bc537bd88b8a95c
+DIST pypy3_10-exe-7.3.18-1.ppc64le.gpkg.tar 10506240 BLAKE2B ae1946a52d3862be091537e0fc752ac75df3844224dacaa7844ed74d9f28cb8fb6558c1b1de6d205117bef90f4f6286912bf27d831c9680cfdff3c9e500bd19d SHA512 95bfd88df1517527ac5239c4871847373043a6d821cfab27486f953536c6a62e4c651efed5ec932f291f7e39ed3f93ced74843c035c9e80b2723cf30822becd5
+DIST pypy3_10-exe-7.3.18-1.x86-musl.gpkg.tar 9195520 BLAKE2B 1fbc8ccbfe979e364e06dbcdd91ee588bdddf3a537748f18897fb1c805b07c569d81432c9511b0ea04b9bda9ea9ccadb13e180189d003ee4c61e3f124ef11a72 SHA512 5dfb05c3d82f41f992df37f43d4a8ea1063bae82778db024c8705cb2208c71a9440ad1c3a2cc44f538f7960d8895a75c51ad8fc8bfc4d3c149c239f9818280d4
+DIST pypy3_10-exe-7.3.18-1.x86.gpkg.tar 9164800 BLAKE2B 8fa61124e6d18b91966d0368fba02c85ac9a2a356456914d941139c861e4976dbc75b02b3eada45db03b4f5cc7a2534f4c405f6c5e387bfa4ce6bf622e13de5b SHA512 bd7594744bb23e4c93c9f94fdd29c7a46ae9188c1e8c0d42de3e179d273c210f14084ca137fa7a6f8857e64f88d78ace2751550bca452ddf528bfae90c355dab
EBUILD pypy3_10-exe-bin-7.3.17.ebuild 2064 BLAKE2B 8ee1cd2ea2d85a631483a82d522e13afa160fad05bd8e25bb8db6f59dc24eac88905c35bcad7c69b1e919431c279abb1d176c422d320af4f16e4d926235fe55a SHA512 34e36a2496fbe959b845b56c7dadba81d53381727f05a76e442d2ec726505305cdc6a33502786cee87c0a9982418e7a0dd930dc83a4c9a5c357af173c32216b0
+EBUILD pypy3_10-exe-bin-7.3.18.ebuild 2066 BLAKE2B e52d9cf8aeb36d1b59d723a5dd0282d87ce12134c289591640142e244d14ef98babdf3b2fd0108d4611711f6656c621e0f97b486629aa56c6628d619078b4263 SHA512 746d7f22453cb1b76b99269392d4a9bc3ade1823acf8aab5b3bee26cef4d20f340d6df6a09e40e0b7d307e719618535a5c673b041b68986f2bf334b63dd2ff46
MISC metadata.xml 315 BLAKE2B da5ed341c55250028587ffb479a27b7ec31eb0f8bd0e11b8a98a374e23d989f7d5bcce647ca9c78cd12f64b6b83dd0568c4f3a992a6c8c5089c52cef9de87441 SHA512 ebe1c4d655c49fd20127dd240b603f1b99d67c0a6d21c7eb37bee48f4ec6bba50648816ea2b1b746af58fcf8de576d24fe355ecfa2de07ebaa0265ade2ea38ba
diff --git a/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.18.ebuild b/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.18.ebuild
new file mode 100644
index 000000000000..ea32cf360252
--- /dev/null
+++ b/dev-python/pypy3_10-exe-bin/pypy3_10-exe-bin-7.3.18.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit pax-utils unpacker
+
+PYVER=3.10
+MY_P=pypy3_10-exe-${PV}-1
+
+DESCRIPTION="PyPy3.10 executable (pre-built version)"
+HOMEPAGE="
+ https://pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ elibc_glibc? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86.gpkg.tar
+ )
+ )
+ elibc_musl? (
+ amd64? (
+ https://dev.gentoo.org/~mgorny/binpkg/amd64-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.amd64-musl.gpkg.tar
+ )
+ arm64? (
+ https://dev.gentoo.org/~mgorny/binpkg/arm64-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.arm64-musl.gpkg.tar
+ )
+ ppc64? (
+ https://dev.gentoo.org/~mgorny/binpkg/ppc64le-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.ppc64le-musl.gpkg.tar
+ )
+ x86? (
+ https://dev.gentoo.org/~mgorny/binpkg/x86-musl/pypy/dev-python/pypy3_10-exe/${MY_P}.gpkg.tar
+ -> ${MY_P}.x86-musl.gpkg.tar
+ )
+ )
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="MIT"
+SLOT="${PV%_p*}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+
+# sys-devel/gcc for libgcc_s.so
+RDEPEND="
+ app-arch/bzip2:0/1
+ dev-libs/expat:0/0
+ dev-libs/libffi:0/8
+ sys-libs/ncurses:0/6
+ >=sys-libs/zlib-1.1.3:0/1
+ virtual/libintl:0/0
+ elibc_glibc? (
+ sys-devel/gcc
+ >=sys-libs/glibc-2.35
+ )
+ !dev-python/pypy3_10-exe:${SLOT}
+"
+
+PYPY_PV=${PV%_p*}
+QA_PREBUILT="
+ usr/bin/pypy${PYVER}-c-${PYPY_PV}
+"
+
+src_install() {
+ insinto /
+ doins -r image/usr
+ fperms +x "/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+ pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+}
diff --git a/dev-python/pypy3_10-exe/Manifest b/dev-python/pypy3_10-exe/Manifest
index d5e1ca73198a..b0abde20fb53 100644
--- a/dev-python/pypy3_10-exe/Manifest
+++ b/dev-python/pypy3_10-exe/Manifest
@@ -1,4 +1,7 @@
DIST pypy3.10-gentoo-patches-7.3.17.tar.xz 10340 BLAKE2B a9d7dc6a578dc50339574b2fcfff19e390293adfc8412592e4683fdd3ff415ed8da3ff809b00037659a6e218dc0b26efead7a2ae3c54b2c3487222144d5d9633 SHA512 b192685cc100cfb723492d29e89a522bb4ff041c78cbdfd170414e19713cf2a21c39ab8d4e1e9ca47da2559b2fed6df14f1122f96bc50dd117550c357046889a
+DIST pypy3.10-gentoo-patches-7.3.18.tar.xz 5640 BLAKE2B 938dc950286ee4e1862daa3631ed13cb974be6c83cc928db7ee45b2951097f9640d75a5f6b0926ece7837bbef75ee9f350884902d2a489f68e6940f8500169c8 SHA512 9267aae94b73576c4e962be95d284d8bb03c55da82367bdcd41a46bfc418956d54939af1809404b37ea8ea69e3724aeed22bf536ebbed3f3a0a3d86abf6b61e2
DIST pypy3.10-v7.3.17-src.tar.bz2 23350562 BLAKE2B 0a7a091976b352de61057f238fa386f767dd4d2fbcdcc0b4376066c20c2ad35d3818fa6e9e163ab5fd341856802e8ad1e2891decf5948c13cdb26726cd42019e SHA512 46e30845bbc73cf56f5033a24d3583253ce198522f3a28ae4e789884063ba167d401fc08ae7fc8c7769feed9cd942a8ab38961c8b8794d7fae8f9955479faa96
+DIST pypy3.10-v7.3.18-src.tar.bz2 24535433 BLAKE2B 2e5ab213db5cd118076fa3b0bd601818a2a4973134b78ce28056182d635b91719159e6be47cd596407b7cc545b0be957db21322dde0fbba1b1d167e5c6cd80c4 SHA512 8eb3bd618d04f4529b5869549c9208bfe465b5aae6240abe8b252681c16b44ba3d1b2c77ea4dc607a8738479c47e4a1c92f3ead7705b476167790b33c85a3b0f
EBUILD pypy3_10-exe-7.3.17.ebuild 2977 BLAKE2B fca7077d416fc007a84066aaa40ad9a4b66fc9bd91c362b86b7407cc302b01d90b3a6254ccf0d4503d153343c559cbf590c6c1dae60486abf64956339e87017f SHA512 da33e0ebe8d67e5c9063182b55217e05e05563f12a7eac1efd9e55302559e8c5d6ac66ee19bdcbcf7acab6c446af6df2adbac82bc34624360cf27ad2fcd542b9
+EBUILD pypy3_10-exe-7.3.18.ebuild 2979 BLAKE2B 889cb5f9ab95bfbecf7f13310576595b74c26638a4fd1e912c01f989d55992f5dc294c3d5acae43c3ffea0cee9b6a0fe7ba23b8f0e872c4aacc25abd7c618023 SHA512 49b2117a25d02bf4f8911ccccad8e9676e666399b20889479966e8542543aa7face264b996237d2c86ee8a814d749f68282bec19fe18cb7b32422857a9e2fff8
MISC metadata.xml 572 BLAKE2B cfcd1422ec312338fd876bc4747a962ac3c4bd06e28a3891489b065fba4c7be2daa6955f51e8136d9b8cf7b68bb7eb887b6f419ee9fd626ebd6db204acb7995d SHA512 c79250d47e3d5c99c2c903bfc185449cc41f88e2b923b8eae1401e83c0f23fa1a12ad85f50b6e25844e805e543ae897ccf43185a1bdf9f992dff765249e55bc1
diff --git a/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild b/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild
new file mode 100644
index 000000000000..7cb87b34931f
--- /dev/null
+++ b/dev-python/pypy3_10-exe/pypy3_10-exe-7.3.18.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit check-reqs flag-o-matic pax-utils toolchain-funcs
+
+PYPY_PV=${PV%_p*}
+PYVER=3.10
+MY_P="pypy${PYVER}-v${PYPY_PV/_}"
+PATCHSET="pypy${PYVER}-gentoo-patches-${PV}"
+
+DESCRIPTION="PyPy3.10 executable (build from source)"
+HOMEPAGE="
+ https://pypy.org/
+ https://github.com/pypy/pypy/
+"
+SRC_URI="
+ https://downloads.python.org/pypy/${MY_P}-src.tar.bz2
+ https://buildbot.pypy.org/pypy/${MY_P}-src.tar.bz2
+ https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz
+"
+S="${WORKDIR}/${MY_P}-src"
+
+LICENSE="MIT"
+SLOT="${PYPY_PV}"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="+jit low-memory ncurses cpu_flags_x86_sse2"
+
+RDEPEND="
+ app-arch/bzip2:0=
+ dev-libs/expat:0=
+ dev-libs/libffi:0=
+ >=sys-libs/zlib-1.1.3:0=
+ virtual/libintl:0=
+ ncurses? ( sys-libs/ncurses:0= )
+ !dev-python/pypy3_10-exe-bin:${SLOT}
+"
+DEPEND="
+ ${RDEPEND}
+"
+BDEPEND="
+ || (
+ dev-lang/pypy:2.7
+ dev-python/pypy
+ )
+ virtual/pkgconfig
+"
+
+check_env() {
+ if use low-memory; then
+ CHECKREQS_MEMORY="1750M"
+ use amd64 && CHECKREQS_MEMORY="3500M"
+ else
+ CHECKREQS_MEMORY="3G"
+ use amd64 && CHECKREQS_MEMORY="6G"
+ fi
+
+ check-reqs_pkg_pretend
+}
+
+pkg_pretend() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+pkg_setup() {
+ [[ ${MERGE_TYPE} != binary ]] && check_env
+}
+
+src_prepare() {
+ local PATCHES=(
+ "${WORKDIR}/${PATCHSET}"
+ )
+ default
+}
+
+src_configure() {
+ tc-export CC
+
+ # Yes, yuck, but it's being worked on upstream (bug #918971).
+ # https://foss.heptapod.net/pypy/pypy/-/issues/4042
+ append-flags $(test-flags-CC -Wno-error=incompatible-pointer-types)
+
+ local jit_backend
+ if use jit; then
+ jit_backend='--jit-backend='
+
+ # We only need the explicit sse2 switch for x86.
+ # On other arches we can rely on autodetection which uses
+ # compiler macros. Plus, --jit-backend= doesn't accept all
+ # the modern values...
+
+ if use x86; then
+ if use cpu_flags_x86_sse2; then
+ jit_backend+=x86
+ else
+ jit_backend+=x86-without-sse2
+ fi
+ else
+ jit_backend+=auto
+ fi
+ fi
+
+ local args=(
+ --no-shared
+ $(usex jit -Ojit -O2)
+
+ ${jit_backend}
+
+ pypy/goal/targetpypystandalone
+ --withmod-bz2
+ $(usex ncurses --with{,out}mod-_minimal_curses)
+ )
+
+ local interp=( pypy )
+ if use low-memory; then
+ local -x PYPY_GC_MAX_DELTA=200MB
+ interp+=( --jit loop_longevity=300 )
+ fi
+
+ # translate into the C sources
+ # we're going to build them ourselves since otherwise pypy does not
+ # free up the unneeded memory before spawning the compiler
+ set -- "${interp[@]}" rpython/bin/rpython --batch --source "${args[@]}"
+ echo -e "\033[1m${@}\033[0m"
+ "${@}" || die "translation failed"
+}
+
+src_compile() {
+ emake -C "${T}"/usession*-0/testing_1
+}
+
+src_install() {
+ cd "${T}"/usession*-0 || die
+ newbin "testing_1/pypy${PYVER}-c" "pypy${PYVER}-c-${PYPY_PV}"
+ insinto "/usr/include/pypy${PYVER}/${PYPY_PV}"
+ doins *.h
+ pax-mark m "${ED}/usr/bin/pypy${PYVER}-c-${PYPY_PV}"
+}
diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest
index dcb43d50986c..84b4f02817cb 100644
--- a/dev-python/uv/Manifest
+++ b/dev-python/uv/Manifest
@@ -9,7 +9,10 @@ DIST uv-0.5.25-crates.tar.xz 53882356 BLAKE2B b0762449534ccf0be33d2c4d50fd9bc018
DIST uv-0.5.26.gh.tar.gz 3353978 BLAKE2B 1920825eaf2d2eca3d5e5fdaba9677e08f6bbb6d1b078a3ffe706f1344ccd9de19237c0470cc902a06f5fbfa9bad0af51c67a10141e76c9f9f182217c461c094 SHA512 e723775465594959b8e70c1bd43f0ddce0b8d64d7ddb157f28385593aa6c40153b1152b2c22534862da0605e2a0ccb7dffd1f95e07d8003eb37433bb3b887b73
DIST uv-0.5.27-crates.tar.xz 47539520 BLAKE2B 701e7bf284a3506555a6da6ccc0f3aba5161305b4acc065f68c14ebf25f79a8bce3739589e5d3461aa8d058860d387790e6f007ce74309c03c1623574ef15c85 SHA512 fe276c9cfb0d07d4ba56427fde7067480f32cb21341b3967bfa65217e94d78992692808981dcd321731339c81ee7a44cfcd103557d63ebd727c04cbc403217fe
DIST uv-0.5.27.gh.tar.gz 3356614 BLAKE2B 143d1ee171a46a4bdedec79767f04973233ba389ed053358383834f9b6fdbd2334ce695adc63a76f3ffcc92427739bfc4adbf57b19280f98c1904b607f2ecbc2 SHA512 ce597666983b24e85992cf7aa313506255d58b97ac0e98300c5f01f8418a71e2c7357b9fdbd2cd1b56b3a8cfff13d3014f18f740e11561cd4eea03438efec990
+DIST uv-0.5.29-crates.tar.xz 47545324 BLAKE2B 880a4c51619031cabd6e375373e5a1a99f0ad344d08fd0bca4bfdb3b7c72fe4a23e34cad93167c23c7b2e7b09e350ae4e0b832786e09246f297aea146f9cc3fc SHA512 fa6489400af45462dc59ccd35a8c942dc635bad4ebf7481cc2eda585147a6016b17eca42ef6d0fa233d714def6d56fef205abe4782aba4610c324fd2825eef62
+DIST uv-0.5.29.gh.tar.gz 3375616 BLAKE2B bce1af0353271f8c0ecf073286ed26303953920f68fdb3e24aa7f03926dbc0a9165e93ee2b92bc554ce5eeca3c2d40413e3eee5c83c85dc85da7f737a9af5cb3 SHA512 ebcc2f4d25e800fdd864b1aa64ed0c2f7e5ab2f9e4a80e43f7ecc27d4a0fedac1062644bd954e15b39055d562ec2366c089a934fd65bb103cb50e2b5414a6d97
EBUILD uv-0.5.21.ebuild 4335 BLAKE2B 40b0e66263df162330f16c62e589f9aa3112956672378daca8ec7deab186e3ae37762abf7a19833abeb8cd33aed4b831b8279fdd4a7d70c48b7d5f3e637fccfa SHA512 796394628dd1126364e8aedb392b6fb5c6aed92b420673ceea400bb832469f2774ac4432b5608a450d45e35dda8dac24e4d2d710e00b77bccfa1514cd162f784
EBUILD uv-0.5.26.ebuild 4374 BLAKE2B 2fbd5f7eb017b5f676405740a46f1e507555304e86d676b07ee74d616ad3a8b8eb0954d147745715208c34b4c476fd9abdada27a04de06c474b0ddd774a54861 SHA512 cc2cb523daa7bd7f030567a2c5070d6b30e8e45129f90d5e904c71e22ce65874fc61ed10342c4e315a480b96b4a8a8dac82dde199a02964aba2c9ee07a81ef14
EBUILD uv-0.5.27.ebuild 4495 BLAKE2B 58b6adf43b9a7647d35bb39ef0ec443a5cb38a59fe4dc47a11030e3d8c146c5ef2ac69e13f4d055968ecb6f750c80a73c2988760a799bf60b0da8701e177f4d9 SHA512 d2c8d7fff3f3f0d77130cad2d82f8c8e0b023f4b4ff5322946ae1a556672ca5575e5127d4f80e6a8ad36555c9182eee49a460c6173cc7bd584deda8c02945ead
+EBUILD uv-0.5.29.ebuild 4374 BLAKE2B 5cf42a19e0fd4c2304147c3bef0a5ab4b0f4c3987675abe1300730bfbdc1e0a10278c87b615e13205d38f05b6ebc25c7ba972881adec1cd10bdc8b59f76680c1 SHA512 371967687c06f0b7f85892047f294da442447c91523cb22887301bf860e7f5151d7d102311982fef5bf798e4c00779764fa748b4277621f837f016fe6e603f4b
MISC metadata.xml 336 BLAKE2B 4b5933e24e3e9450dde5da099185dcdf3afb5916b55cffa7c2f3f6fac77e439197cbe4ba529a87f83442d8f87d238e8abef06dc052ce9a62659060ffea9fdb47 SHA512 9910fd10ebbc395b9c330774b74798c9ffdba3bb368347658380a22e01d6dc9d1961ea50fbfb4a904c9db84b94c713c054e418a7294425b86ff41a607fd3e310
diff --git a/dev-python/uv/uv-0.5.29.ebuild b/dev-python/uv/uv-0.5.29.ebuild
new file mode 100644
index 000000000000..d917efbee3a8
--- /dev/null
+++ b/dev-python/uv/uv-0.5.29.ebuild
@@ -0,0 +1,170 @@
+# Copyright 2024-2025 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;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%'
+ [pubgrub]='https://github.com/astral-sh/pubgrub;b70cf707aa43f21b32f3a61b8a0889b15032d5c4;pubgrub-%commit%'
+ [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%'
+ [version-ranges]='https://github.com/astral-sh/pubgrub;b70cf707aa43f21b32f3a61b8a0889b15032d5c4;pubgrub-%commit%/version-ranges'
+)
+
+RUST_MIN_VER="1.83.0"
+
+inherit cargo check-reqs
+
+CRATE_PV=0.5.29
+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://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz
+ "
+fi
+
+# most of the code
+LICENSE="|| ( Apache-2.0 MIT )"
+# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below
+# Dependent crate licenses
+LICENSE+="
+ 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD ISC MIT
+ MPL-2.0 Unicode-3.0 Unicode-DFS-2016 ZLIB
+"
+# ring crate
+LICENSE+=" openssl"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
+IUSE="test"
+RESTRICT="test"
+PROPERTIES="test_network"
+
+DEPEND="
+ app-arch/bzip2:=
+ app-arch/xz-utils:=
+ app-arch/zstd:=
+"
+RDEPEND="
+ ${DEPEND}
+"
+BDEPEND="
+ 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
+ !!~dev-python/uv-0.5.0
+ )
+"
+
+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
+ rust_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # enable system libraries where supported
+ export ZSTD_SYS_USE_PKG_CONFIG=1
+ # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys?
+
+ # remove unbundled sources, just in case
+ find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die
+
+ # bzip2-sys requires a pkg-config file
+ # https://github.com/alexcrichton/bzip2-rs/issues/104
+ mkdir "${T}/pkg-config" || die
+ export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}}
+ cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die
+ Name: bzip2
+ Version: 9999
+ Description:
+ Libs: -lbz2
+ EOF
+}
+
+src_configure() {
+ local myfeatures=(
+ git
+ pypi
+ python
+ )
+
+ cargo_src_configure --no-default-features
+}
+
+src_compile() {
+ cd crates/uv || die
+ cargo_src_compile
+}
+
+src_test() {
+ # work around https://github.com/astral-sh/uv/issues/4376
+ local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH}
+ local -x COLUMNS=100
+ local -x PYTHONDONTWRITEBYTECODE=
+ # fix tests failing because of our config
+ local -x XDG_CONFIG_DIRS=${T}
+
+ cd crates/uv || die
+ cargo_src_test --no-fail-fast
+}
+
+src_install() {
+ cd crates/uv || die
+ cargo_src_install
+
+ insinto /etc/xdg/uv
+ newins - uv.toml <<-EOF || die
+ # These defaults match Fedora, see:
+ # https://src.fedoraproject.org/rpms/uv/pull-request/18
+
+ # By default ("automatic"), uv downloads missing Python versions
+ # automatically and keeps them in the user's home directory.
+ # Disable that to make downloading opt-in, and especially
+ # to avoid unnecessarily fetching custom Python when the distro
+ # package would be preferable. Python builds can still be
+ # downloaded manually via "uv python install".
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-downloads
+ python-downloads = "manual"
+
+ # By default ("managed"), uv always prefers self-installed
+ # Python versions over the system Python, independently
+ # of versions. Since we generally expect users to use that
+ # to install old Python versions not in ::gentoo anymore,
+ # this effectively means that uv would end up preferring very
+ # old Python versions over the newer ones that are provided
+ # by the system. Default to using the system versions to avoid
+ # this counter-intuitive behavior.
+ #
+ # https://docs.astral.sh/uv/reference/settings/#python-preference
+ python-preference = "system"
+ EOF
+}