diff options
| author | root <root@alpha.trunkmasters.com> | 2026-06-17 03:01:54 -0500 |
|---|---|---|
| committer | root <root@alpha.trunkmasters.com> | 2026-06-17 03:01:54 -0500 |
| commit | 704b2332929c5ee3a704315e1b371a864f9f463e (patch) | |
| tree | 5112e7a1a49250008a19bd1c18e2142a8a5ed3f3 /dev-python | |
| parent | 7c679258085e25fd48f6bc6a44d6554b82d83c09 (diff) | |
| download | baldeagleos-repo-704b2332929c5ee3a704315e1b371a864f9f463e.tar.gz baldeagleos-repo-704b2332929c5ee3a704315e1b371a864f9f463e.tar.xz baldeagleos-repo-704b2332929c5ee3a704315e1b371a864f9f463e.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
36 files changed, 1050 insertions, 32 deletions
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest index ec79501dffa6..8c5e6a9d6e6a 100644 --- a/dev-python/boto3/Manifest +++ b/dev-python/boto3/Manifest @@ -3,4 +3,5 @@ DIST boto3-1.43.18.gh.tar.gz 1151413 BLAKE2B 81013f13acbc4e1c154b62b63163b8034cc DIST boto3-1.43.24.gh.tar.gz 1156465 BLAKE2B 52937853e047217550a0cad9ee09e61f8d5210bb6c943be85f55ae0bbf9a427f2662153df6be4c95dca419208171b427c40b7c254ee6873fbb342cb93e5c599f SHA512 7db83d4c793acab0cb049b4c84e153d958c23c945893a17eb7f84e1e854adfdc18cb94e9c5f9ef5fb9fa4e2cac99b764de87c5a9fbdc93e65283d9528712360c DIST boto3-1.43.29.gh.tar.gz 1161648 BLAKE2B 3f0a040019fd8ea2a42a82c75bf31e563ef1e74745e3848f59fd8e1eb9946c5470cce0ece81d602cdd104e1d1a0cce68460a0ad993b47cb9d25b40fa3963b9e0 SHA512 c52a78f22daf6b79d772f5661cb56a4c1c35a7ad0001742d84d1c3f308c10534377ade5618bb5a3f95d0c7b4aacc82f42c10a30e521b31d41b9a403adbee1560 DIST boto3-1.43.30.gh.tar.gz 1162726 BLAKE2B fe0050e7ef6187bc9bd96f90e05a216cfc80ddba18c7913548d9371530b8c900d32babd42c20e584f49b36996d13a25a6dbff44ffdb5e6691fbd3884815d2653 SHA512 7ba475dfff395d1d6ba3113a967f090650d75a6e4cfb01f0e2abc157b64b90ba00600501b76a9910fc4586f4480301dca07b304a5c98d6d6ecb555435e0929ba +DIST boto3-1.43.31.gh.tar.gz 1163677 BLAKE2B 708e4f4b96f9bca483fdb2febda4d482c6ccd26afdd818cb57e8c8915c8cc75ea3ea05d03e488e3c076bff1021bb381e824de02b8ceacac5beab155047a6cf07 SHA512 c8dad5e0a76143225f2069c999e3b1679a71f255277fa2d019c4d4d7b7df5e9d39c0997de8544bdeb40c4c0a78981643050edfbe47cba9a133fa743596a96e11 DIST boto3-1.43.9.gh.tar.gz 1141698 BLAKE2B 37721c03d15d8cc7d290dcf9e56c5a83d480379514b0504a5164ab0dcec1211f3df001a966562f5f69e94325ccd42bc0da787121c68b75419fa45913feb5a4e6 SHA512 a130960634934428ab43845f69a2997638077c3bf856e12b00637dcd995dd835ad0a01eedd0a25d003d7c3e4515077c5ff19f90d289f5fe3c8bf5d837a629d09 diff --git a/dev-python/boto3/boto3-1.43.31.ebuild b/dev-python/boto3/boto3-1.43.31.ebuild new file mode 100644 index 000000000000..93fbbe6dd59b --- /dev/null +++ b/dev-python/boto3/boto3-1.43.31.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE=" + https://github.com/boto/boto3/ + https://pypi.org/project/boto3/ +" +SRC_URI=" + https://github.com/boto/boto3/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + >=dev-python/botocore-${PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.19.0[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # do not rely on bundled deps in botocore (sic!) + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_python_prepare_all +} + +python_test() { + epytest tests/{functional,unit} +} diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest index 33ce7024f302..e37c3c965a26 100644 --- a/dev-python/botocore/Manifest +++ b/dev-python/botocore/Manifest @@ -3,4 +3,5 @@ DIST botocore-1.43.18.gh.tar.gz 16377376 BLAKE2B 4eb2808f4aa3b2b64f9d4b5d2df19c0 DIST botocore-1.43.24.gh.tar.gz 16430918 BLAKE2B 526fc9ab71c37cbae5a6b23a0c0bb7e324d6f85bc00cb7c084ad1ed8b1a02c7ed128a006b2f108813bc39ef35cc19279c93a1003e65000e5778c17d8719451b8 SHA512 9086d2dc96221f9886468bbba082711d3fecb2355968db5ed5c1eb69fe0ffaa5a0ce038c62c44bfbc93dcc946780fef264edcefa46d21f4b978ce46a0025ba12 DIST botocore-1.43.29.gh.tar.gz 16476072 BLAKE2B 2525545c2425568e8765100bad446e2ddb7c4ea80f78d52827456a368a4da68ad5e86c60ef6af5611a342e2c8b44c8a057d341941db31d6b1c6cd01506b912b3 SHA512 6d37f50ec4ace4252e7d303e9ddaac8571e28695beadf3d7c23f3d1f413bcc06734e88be6f834d8ef82b3583954b8acc7da325630ae4cce7371684957f3547ae DIST botocore-1.43.30.gh.tar.gz 16486799 BLAKE2B 222aa0d179e48243317f78f828e1d897b4fd1e8cf5848963d47c2dabfb05890d79a10cd1d3b448661e36c116e94d9c28f6cad48a7e8c4053b1bb655082e6ca13 SHA512 a9e9ba3e57f0c71a654c226633afe4fa699c798c4ddcedd3c0c66238bc2c9d1a27e404e27d691865d558b17b6ea63b483ea326369b5c94a4673a9a3f32d89bcd +DIST botocore-1.43.31.gh.tar.gz 16506820 BLAKE2B 6b28f96c1fc09f9789bfaa3facdc1afc8e4e1bae7750a91b20d6e4e243cb2a3dfbb9a43371de3313bbdb7c7a53e5d6603d56084d6dd204ce48f8c4f7ebdcc2da SHA512 eac8482458d6bfab2e25ce181880068809942b967d275133961d433eb9247c85d51060a2c7b56002d1fe13f4a572387b6b5cbac173b65322675a9b15b0251651 DIST botocore-1.43.9.gh.tar.gz 16299354 BLAKE2B fcb35ec47d892c36c319a14e62ffedec51fe48ad68beeb2e527c3f282647a5f980a182c8d66ff12a69a45e4c137f1f486b0056345cfeb2c1e52b03b76df5015c SHA512 20033802430564aa77607a0c042511c7831c75f92240da388aaf036d90969f5560b9cb5dbb01f590b95cc9a2039557fd3f540fd6c4170104d732d033e142c08a diff --git a/dev-python/botocore/botocore-1.43.31.ebuild b/dev-python/botocore/botocore-1.43.31.ebuild new file mode 100644 index 000000000000..a3a161f78545 --- /dev/null +++ b/dev-python/botocore/botocore-1.43.31.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE=" + https://github.com/boto/botocore/ + https://pypi.org/project/botocore/ +" +SRC_URI=" + https://github.com/boto/botocore/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + <dev-python/jmespath-2[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +# unbundled packages +RDEPEND+=" + dev-python/requests[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/jsonschema[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + + # unbundle deps + rm -r botocore/vendored || die + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # rely on bundled six + tests/functional/test_six_imports.py::test_no_bare_six_imports + tests/functional/test_six_threading.py::test_six_thread_safety + ) + + epytest tests/{functional,unit} +} diff --git a/dev-python/braintree/Manifest b/dev-python/braintree/Manifest index 8c6d822dfc4c..53274f35ffa3 100644 --- a/dev-python/braintree/Manifest +++ b/dev-python/braintree/Manifest @@ -1 +1,2 @@ DIST braintree_python-4.44.0.gh.tar.gz 273269 BLAKE2B afddc608f6ee2cb4decd86ec44492031945a4d3880344dd5ed0a7b9d7d7ede6a38a4d6c5975ce3ea78e13c31768c718ec52423f0e148ee168f2b0c6394b0e75c SHA512 5e93ea7c4a12bbdb1e4ac45a48f7f02f45c1b27f77d0e6e0ea798092534bbb24dc01bbf66bdb4110e718a681302053ba174204738b48a5de5a61758af1c2427f +DIST braintree_python-4.45.0.gh.tar.gz 273684 BLAKE2B 70784ec41d9e6fe9f80cdf3d0ac1b8386c2b25350082fd3ccae91709abacde75bec6ded6cf16fb53aeb18ff68038e9ae515e42460d464a6deae5a26b23966965 SHA512 daf3e860b5a7c30cfbf2c58d959654ab3a18e40e4eef78f20fd3a40115f0bb50648412b8c153149816e985a01b9cce82c3c938a5ef6f51af15c75ef8eeb7c7c5 diff --git a/dev-python/braintree/braintree-4.45.0.ebuild b/dev-python/braintree/braintree-4.45.0.ebuild new file mode 100644 index 000000000000..376089a2bfd1 --- /dev/null +++ b/dev-python/braintree/braintree-4.45.0.ebuild @@ -0,0 +1,39 @@ +# Copyright 2020-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +MY_P=braintree_python-${PV} +DESCRIPTION="Braintree Python Library" +HOMEPAGE=" + https://developer.paypal.com/braintree/docs/reference/overview/ + https://github.com/braintree/braintree_python/ + https://pypi.org/project/braintree/ +" +# no tests in sdist, as of 4.19.0 +SRC_URI=" + https://github.com/braintree/braintree_python/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + >=dev-python/requests-0.11.0[${PYTHON_USEDEP}] +" + +DOCS=( README.md ) + +distutils_enable_tests unittest + +python_test() { + eunittest tests/unit +} diff --git a/dev-python/clang/Manifest b/dev-python/clang/Manifest index 91d9f2577d36..ed7dc1b36ffc 100644 --- a/dev-python/clang/Manifest +++ b/dev-python/clang/Manifest @@ -12,4 +12,6 @@ DIST llvm-project-21.1.8.src.tar.xz 158958576 BLAKE2B 0d3d4ee920f8e5db50e9815261 DIST llvm-project-21.1.8.src.tar.xz.sig 119 BLAKE2B cffc1825f5778a3e3c128ec3e856ff6ee50687319d621cdf42e895abf67e05cc51cb7493308e2b506ab60dbdbaca7aa75eb9f78d91d42c81f9682a36f4042e9d SHA512 10f58eff58ed6e701d0f123b15e68c82ab8cbdf99b1c86c0d83e3b8553e90ea51055e30327e8e442ded57c8f503e2a2de9ee075e9c28b5ba815a0f8922f8671c DIST llvm-project-22.1.7.src.tar.xz 167066344 BLAKE2B 201b7f8f8b4216ad250f9dcdc87f817ac2dac99c1c7f151077e46165c0efae6d04c33c84c70c04c670fe0733e621af866f78d4d93f49e4d8385645f71495f53b SHA512 b7e56121cd6cb24085185ca0b621fec272dd9aa237c49a901043a9a4c31fdbc1ff33e650891d9786cd9495c006e87d4553ac36b518c864c75e99a80e40771bfd DIST llvm-project-22.1.7.src.tar.xz.sig 119 BLAKE2B 0a1125837ae881dcb356c43e6fcd24dd14e107cd045524906b3879db94184e2c74835ce1e3ee026e55790af5be4b861d629546de6f74374e71e164a571c6ecd0 SHA512 d56bc596b642d6e6e63f1d141dbc7b8151e58befc70fd3d28847f023789823c9daf90100be233ab6597219037ee28187e6e8996992b7226568265c205abad266 +DIST llvm-project-22.1.8.src.tar.xz 167061596 BLAKE2B 092204f62e0f0364a041c737eb2c25fd073cb5689663d6ccd5a9e4e1743d6d80822360d59b64bff7b4d7872a68a79e899bf2f75f384e55c7d313a79243576f03 SHA512 2615b20ba08534f83ab8ecc7b5ba43b5f1dfcf9cdb2534a32fcdbf0ccdd9a008b46276e45ef26ed9377f65b5e4ae89ea798f3863fd034484b5715140f3a7b35c +DIST llvm-project-22.1.8.src.tar.xz.sig 119 BLAKE2B 2ce93472036e68782252991e4a8bdbeeec8706a56022220083a38a42ef18714a7894c41aaa04dc0d03f18601d8bfc1a5a030ed0ef0f0d64a662eae9843a4b362 SHA512 99a457b5b1fb409a5fe72b59ebd4ddae5cade3e5f2493e33b44d4f4b4625f7a1743f80106efb1134668842b15ea3400ce2c29263bec8ff986e05040910125e15 DIST llvm-project-6d4cd34d861baec5a761d15b81395fbe88f4391b.tar.gz 273781215 BLAKE2B 9ca9896ac0cfcb9449bd0975e16aca725e14ce5a4c3afd859799ef056a0e1341d63fa21b9bfd3ec1bee2a8482c5cecdd59482d373db72f083d399748a2396e15 SHA512 407e7d2ae1df19bf6095a953a1506583de91e203c4d0461b85a87f86d2069f2b23114b65c5c7f0065d9fbbf8d657bec6ef489ba9310b89f0bddab22c86cccb04 diff --git a/dev-python/clang/clang-22.1.8.ebuild b/dev-python/clang/clang-22.1.8.ebuild new file mode 100644 index 000000000000..500848f4e75b --- /dev/null +++ b/dev-python/clang/clang-22.1.8.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{13..14} ) +inherit llvm.org python-r1 + +DESCRIPTION="Python bindings for llvm-core/clang" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" +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=" + >=llvm-core/clang-${PV}:* + !llvm-core/llvm:0[clang(-),python(-)] + !llvm-core/clang:0[python(-)] +" +RDEPEND=" + ${DEPEND} + ${PYTHON_DEPS} +" +BDEPEND=" + ${PYTHON_DEPS} + test? ( + llvm-core/clang:${LLVM_MAJOR} + ) +" + +LLVM_COMPONENTS=( clang/{bindings/python,include} ) +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/elastic-transport/Manifest b/dev-python/elastic-transport/Manifest index 2ab21e532a2a..7ad0a62636d9 100644 --- a/dev-python/elastic-transport/Manifest +++ b/dev-python/elastic-transport/Manifest @@ -1,2 +1,3 @@ DIST elastic-transport-python-9.2.1.gh.tar.gz 78272 BLAKE2B d469e4caa01f741dac083e30fd06b8770739060ae4eee5e4b6b5de1c043bbaf4a5267b3bac3bae63513416d0ddde2981b7c4867cd8a14dd53ea16e14e5187b4f SHA512 5de5929b01e213f61891c6e535da2d4a6197f31a8bc68b372622ce128141a1521fe2c20a92c83afdd0fd65487c9c753755bc0f08716e252fbc3e8ed1906305a6 DIST elastic-transport-python-9.4.1.gh.tar.gz 79921 BLAKE2B 34813c01b8988e98ea54699f979f4689a6a15c00ed72c6358b3efee27c40f348de9aadc690c732242ef74f06428d9a64973d462f324997c3b2d899610ccd5309 SHA512 f7aa92bad0455d82de01329905bd561b3a3159d5cb711df9dd962f16f4a45557d486b38128c190dfe27e9f073592cb650e3ecd6165c4330f5c0e5b07922d9c8e +DIST elastic-transport-python-9.4.2.gh.tar.gz 80044 BLAKE2B fde26b2d8f2adff6156ada512f4a36a09cc99fb3c85d4a72b7002e3f08e73d015df29e67db97adbc304576cf499f758987a0320a250f14c184d4bb958286a80d SHA512 4bd9115de209eb0c978b274dcb242a3068ab7c870a3217fd65b67dac3f000743abd2f0cff22da376dcf77d85f80b2aee9f0a7fbaac6801a164757f9d752f0c5f diff --git a/dev-python/elastic-transport/elastic-transport-9.4.2.ebuild b/dev-python/elastic-transport/elastic-transport-9.4.2.ebuild new file mode 100644 index 000000000000..546e3970bfa9 --- /dev/null +++ b/dev-python/elastic-transport/elastic-transport-9.4.2.ebuild @@ -0,0 +1,70 @@ +# Copyright 2023-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +MY_P=elastic-transport-python-${PV} +DESCRIPTION="Transport classes and utilities shared among Python Elastic client libraries" +HOMEPAGE=" + https://github.com/elastic/elastic-transport-python/ + https://pypi.org/project/elastic-transport/ +" +SRC_URI=" + https://github.com/elastic/elastic-transport-python/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +PROPERTIES="test_network" +RESTRICT="test" + +RDEPEND=" + dev-python/certifi[${PYTHON_USEDEP}] + dev-python/sniffio[${PYTHON_USEDEP}] + >=dev-python/urllib3-2[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/aiohttp[${PYTHON_USEDEP}] + dev-python/httpx[${PYTHON_USEDEP}] + dev-python/opentelemetry-api[${PYTHON_USEDEP}] + dev-python/opentelemetry-sdk[${PYTHON_USEDEP}] + dev-python/orjson[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/respx[${PYTHON_USEDEP}] + dev-python/trustme[${PYTHON_USEDEP}] + ) +" + +distutils_enable_sphinx docs/sphinx \ + dev-python/furo \ + dev-python/sphinx-autodoc-typehints +EPYTEST_PLUGINS=( anyio pytest-asyncio pytest-httpbin pytest-httpserver ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # fragile to random warnings + tests/node/test_http_aiohttp.py::TestAiohttpHttpNode::test_uses_https_if_verify_certs_is_off + tests/node/test_http_aiohttp.py::test_ssl_assert_fingerprint + tests/node/test_urllib3_chain_certs.py::test_assert_fingerprint_in_cert_chain + # hardcodes supported Accept-Encoding + # https://github.com/elastic/elastic-transport-python/issues/269 + tests/async_/test_async_transport.py::test_async_transport_httpbin + tests/async_/test_httpbin.py::test_node + tests/test_httpbin.py::test_node + # formatting mismatch (httpbin?) + tests/test_logging.py::test_debug_logging +) + +python_test() { + epytest -o addopts= # avoid coverage +} diff --git a/dev-python/httpbin/Manifest b/dev-python/httpbin/Manifest index f21fd6043cd9..84212df19247 100644 --- a/dev-python/httpbin/Manifest +++ b/dev-python/httpbin/Manifest @@ -1 +1,3 @@ DIST httpbin-0.10.2.tar.gz 107327 BLAKE2B 39ab1e518c9f7e1ede9cd0aa2e3155f7e36267c83d1d2537a5b6cb5aa1c9e70efe96c5bf98a5b22cd05e70368d1495f8e5364032fcf2f476d62512b7e7322652 SHA512 731b842090be516d9eccb1d2bb8303128d2b2e24b1ebf0b2018a2f0b8629b164c7de686e1775841cd57417ec89941d98fc81f878a284c7242bfef4db481a781b +DIST httpbin-0.10.4.tar.gz 109267 BLAKE2B e01b8b3cb9b91519a517bbb82ea226b94f8c7a18933a0412e2b0e3a4432a9c8d012d5c92a1b031621507195b79c7f330ea24fe5223ca476bcf2659630c3f9cf3 SHA512 dab715d21a134bf3b3d4d929c5685041195d383a91ee2dae2bbe13dcc9fbe5f4d60dc8131438547a48606997437ea7f5e77e0ed3d3d34e358fea88283de54a37 +DIST httpbin-0.10.4.tar.gz.provenance 9636 BLAKE2B 71c8bbc97cb1e36936c1618fe1cc12980650fcd751507c9c98a0e96a03dcfea11bdb414e5e81ece9d7feef8496d149969194ae2394cb3d72eefdeab84e38dfd9 SHA512 f022aa65725e0a156d0c46adbd2f689bcab62a646cad576482e78b76444c56a945af0ae12aad9994321d6b331b12a4bf94eff3270032e5c3ba1a997316b98bf4 diff --git a/dev-python/httpbin/httpbin-0.10.4.ebuild b/dev-python/httpbin/httpbin-0.10.4.ebuild new file mode 100644 index 000000000000..f65331e4f581 --- /dev/null +++ b/dev-python/httpbin/httpbin-0.10.4.ebuild @@ -0,0 +1,45 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/psf/httpbin +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 optfeature pypi + +DESCRIPTION="HTTP Request and Response Service" +HOMEPAGE=" + https://github.com/psf/httpbin/ + https://pypi.org/project/httpbin/ +" + +LICENSE="|| ( MIT ISC )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="test-rust" + +RDEPEND=" + dev-python/brotlicffi[${PYTHON_USEDEP}] + dev-python/decorator[${PYTHON_USEDEP}] + >=dev-python/flask-2.2.4[${PYTHON_USEDEP}] + dev-python/itsdangerous[${PYTHON_USEDEP}] + dev-python/markupsafe[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] + >=dev-python/werkzeug-2.2.2[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + test-rust? ( + dev-python/flasgger[${PYTHON_USEDEP}] + ) + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +pkg_postinst() { + optfeature "Fancy index" dev-python/flasgger +} diff --git a/dev-python/libtmux/Manifest b/dev-python/libtmux/Manifest index d4b22965e2ae..c706ed5c4792 100644 --- a/dev-python/libtmux/Manifest +++ b/dev-python/libtmux/Manifest @@ -15,3 +15,5 @@ DIST libtmux-0.57.1.tar.gz 518481 BLAKE2B 1a3f172c6c7ebcdf49c92945952eb4d60f191a DIST libtmux-0.57.1.tar.gz.provenance 9394 BLAKE2B f6cbf8f2ffcd18c0c4908e13736046b7863511557a9d7fe580eeb84b545f91706b6d925e12eb52a9e192f8643f9dd2c811ae442275bec1885fe00ee2ee9de730 SHA512 7563582689d6276cded95006d54101189ae569a0270a5ee42389f9d3b956bc3308335228ce8aad8e6d70ee9807efaf20ec48eafb88f6f78f8e45c428d0fc59a9 DIST libtmux-0.58.0.tar.gz 522080 BLAKE2B f1d6b4394ddd178bc5e5ff7e15d18a8a18747ed68d229204eadc2d3d8686f1b7ca09da609fd53dfa572d2f2f308c08e3a3add2fbbfbf24aaea31f5b567109239 SHA512 5efc62ab9b6691a500ce0ac6096d4d2c345dc09118b13e9a677e96859438d22e3bdeff7c83a6a9f0c9c173449e3ede8a17290f6475ff33dac15200481d59d390 DIST libtmux-0.58.0.tar.gz.provenance 9331 BLAKE2B fae88b36a504d4e78ece5eb3725401eaa5ab22ac95ad7f77fc84abae6cf099476701ffe658b6662696ddb6109fc7a57e62a130c8dd7f3f93098ed6bcb9d43dbf SHA512 90c590dbc1bdcf9cf13b456ba511cd962e28dd0f1a815ce9961df5f9febf61b0f9c096d8a8ff910182032e2f3968af149334faf28898c6d0c279f1ada9576bc6 +DIST libtmux-0.58.1.tar.gz 519541 BLAKE2B 89d3874297f9a6c7d969de3130d24315f166421a1830122ae63a59d85023b306af22b0832b3b1740131fb6d83d0ab5f77b669b226b87d70fef1d0a748e221af3 SHA512 bda40a1705d417b63cb957e8f4ef9892ad6880ec88a86fe50e69f480ee5b9a8ed39d64daaae8a6988a7a1fab818c78c2751764f97910c4e0e8ced0aef2fa395e +DIST libtmux-0.58.1.tar.gz.provenance 9630 BLAKE2B 9381eb6327b4b2f1c16052b5aba261501e44abdc19b91658d4704547aa2ca9a3d9ed9f7e064c24209a5d8c4ce0cd3b90fbe84e6e8053e884a2b80450991e4ccd SHA512 c7e96448de46703c12d86c17cb3a5dfaa058775837a0cf0c9ed587ac53d6ec050f5ffedc81132db144525f1effdd1d5636a230c69aecb965229c91e03172b0fb diff --git a/dev-python/libtmux/libtmux-0.58.1.ebuild b/dev-python/libtmux/libtmux-0.58.1.ebuild new file mode 100644 index 000000000000..a85d2d5eaa37 --- /dev/null +++ b/dev-python/libtmux/libtmux-0.58.1.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/tmux-python/libtmux +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Typed library that provides an ORM wrapper for tmux, a terminal multiplexer" +HOMEPAGE=" + https://libtmux.git-pull.com/ + https://github.com/tmux-python/libtmux/ + https://pypi.org/project/libtmux/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86" + +RDEPEND=" + >=app-misc/tmux-3.0a +" + +EPYTEST_PLUGIN_LOAD_VIA_ENV=1 +EPYTEST_PLUGINS=( "${PN}" pytest-mock ) +EPYTEST_RERUNS=5 +distutils_enable_tests pytest + +python_test() { + # Avoid stale /tmp/tmux-$(id -u) confusing things (bug #896406) + local -x TMUX_TMPDIR=$(mktemp --directory --tmpdir=/tmp libtmux.XXXXXXXXXX) + # tests/test_window.py::test_fresh_window_data fails if TMUX_PANE is set + # https://bugs.gentoo.org/927158 + local -x TMUX_PANE= + + epytest -o addopts= tests +} diff --git a/dev-python/lit/Manifest b/dev-python/lit/Manifest index 91d9f2577d36..ed7dc1b36ffc 100644 --- a/dev-python/lit/Manifest +++ b/dev-python/lit/Manifest @@ -12,4 +12,6 @@ DIST llvm-project-21.1.8.src.tar.xz 158958576 BLAKE2B 0d3d4ee920f8e5db50e9815261 DIST llvm-project-21.1.8.src.tar.xz.sig 119 BLAKE2B cffc1825f5778a3e3c128ec3e856ff6ee50687319d621cdf42e895abf67e05cc51cb7493308e2b506ab60dbdbaca7aa75eb9f78d91d42c81f9682a36f4042e9d SHA512 10f58eff58ed6e701d0f123b15e68c82ab8cbdf99b1c86c0d83e3b8553e90ea51055e30327e8e442ded57c8f503e2a2de9ee075e9c28b5ba815a0f8922f8671c DIST llvm-project-22.1.7.src.tar.xz 167066344 BLAKE2B 201b7f8f8b4216ad250f9dcdc87f817ac2dac99c1c7f151077e46165c0efae6d04c33c84c70c04c670fe0733e621af866f78d4d93f49e4d8385645f71495f53b SHA512 b7e56121cd6cb24085185ca0b621fec272dd9aa237c49a901043a9a4c31fdbc1ff33e650891d9786cd9495c006e87d4553ac36b518c864c75e99a80e40771bfd DIST llvm-project-22.1.7.src.tar.xz.sig 119 BLAKE2B 0a1125837ae881dcb356c43e6fcd24dd14e107cd045524906b3879db94184e2c74835ce1e3ee026e55790af5be4b861d629546de6f74374e71e164a571c6ecd0 SHA512 d56bc596b642d6e6e63f1d141dbc7b8151e58befc70fd3d28847f023789823c9daf90100be233ab6597219037ee28187e6e8996992b7226568265c205abad266 +DIST llvm-project-22.1.8.src.tar.xz 167061596 BLAKE2B 092204f62e0f0364a041c737eb2c25fd073cb5689663d6ccd5a9e4e1743d6d80822360d59b64bff7b4d7872a68a79e899bf2f75f384e55c7d313a79243576f03 SHA512 2615b20ba08534f83ab8ecc7b5ba43b5f1dfcf9cdb2534a32fcdbf0ccdd9a008b46276e45ef26ed9377f65b5e4ae89ea798f3863fd034484b5715140f3a7b35c +DIST llvm-project-22.1.8.src.tar.xz.sig 119 BLAKE2B 2ce93472036e68782252991e4a8bdbeeec8706a56022220083a38a42ef18714a7894c41aaa04dc0d03f18601d8bfc1a5a030ed0ef0f0d64a662eae9843a4b362 SHA512 99a457b5b1fb409a5fe72b59ebd4ddae5cade3e5f2493e33b44d4f4b4625f7a1743f80106efb1134668842b15ea3400ce2c29263bec8ff986e05040910125e15 DIST llvm-project-6d4cd34d861baec5a761d15b81395fbe88f4391b.tar.gz 273781215 BLAKE2B 9ca9896ac0cfcb9449bd0975e16aca725e14ce5a4c3afd859799ef056a0e1341d63fa21b9bfd3ec1bee2a8482c5cecdd59482d373db72f083d399748a2396e15 SHA512 407e7d2ae1df19bf6095a953a1506583de91e203c4d0461b85a87f86d2069f2b23114b65c5c7f0065d9fbbf8d657bec6ef489ba9310b89f0bddab22c86cccb04 diff --git a/dev-python/lit/lit-22.1.8.ebuild b/dev-python/lit/lit-22.1.8.ebuild new file mode 100644 index 000000000000..a233dc0bef70 --- /dev/null +++ b/dev-python/lit/lit-22.1.8.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +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" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +# Tests require 'FileCheck' and 'not' utilities (from llvm) +BDEPEND=" + test? ( + dev-python/psutil[${PYTHON_USEDEP}] + llvm-core/llvm + ) +" + +LLVM_COMPONENTS=( llvm/utils/lit ) +llvm.org_set_globals + +# TODO: move the manpage generation here (from llvm-core/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/parse/parse-1.22.1.ebuild b/dev-python/parse/parse-1.22.1.ebuild index f71c3f8e2a4b..0a4993c43494 100644 --- a/dev-python/parse/parse-1.22.1.ebuild +++ b/dev-python/parse/parse-1.22.1.ebuild @@ -12,7 +12,7 @@ HOMEPAGE="https://github.com/r1chardj0n3s/parse/" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" +KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv x86" EPYTEST_PLUGINS=() distutils_enable_tests pytest diff --git a/dev-python/peewee/Manifest b/dev-python/peewee/Manifest index 075d8b4c9645..b10dccef3831 100644 --- a/dev-python/peewee/Manifest +++ b/dev-python/peewee/Manifest @@ -3,3 +3,4 @@ DIST peewee-4.0.6.gh.tar.gz 963861 BLAKE2B 4f1edded4a1e708ec2bf04b2af42b3fabe041 DIST peewee-4.0.7.gh.tar.gz 990613 BLAKE2B cec728c18d5be72b04cf82f9f0b58a7aa1de4bc7b8ff1b49ac543210e50f91ebf51c39d16315aed7c183e20dcb21a4c3e4a093d52bd8f05aaf1db90affefcafa SHA512 6e57b4cb98e68eb1a046c2ca9a58a3f07641b4c7a1ec3c8db23e97b199d2c61971178a3abbb9d7893e8f73ce83808124fdfa821a427ace116df826f1bd9000d3 DIST peewee-4.0.8.gh.tar.gz 1001592 BLAKE2B 4b2328fa31aab3315511ce4320008d56e51882c041a15f4ec5e4732fd4c72e2a5c98346b4e515619d2cde056d030e52e76a128db31e00b985b6ed6aa19623166 SHA512 2c9ee4d98f4e63eeb4ec1a28762a32efe41c506fd7437667325a65c73cad821c35d18faad8da5a30f8dde25af88f4f6431cc73858c735468be3837e675fa46d0 DIST peewee-4.0.9.gh.tar.gz 1002262 BLAKE2B 456af69c3d57d2e8344080cf40845163c9d0a9bd6b4a418940adc28ed388aea7faad8e3759973b23fcc8fb0e27e6a88c40b953081825f8a7acf6f8eb64c91894 SHA512 dd68b9e38dca84eff67c90f1f78cd6d59713c18b73faa8e2a36fa1b343e2e1f154a0dd57415803b763fd7368a151eb08c30312c72d1c2db665f7941a99a0ad8c +DIST peewee-4.1.0.gh.tar.gz 1002833 BLAKE2B 65d8317829f59aa67b2650bd8e690e99f291d0bb8383a5945b16387c0c6a313236ec0b9654e8c81faf868208b41e4776d1d5dc1b2ce220aefd5215c4bed8b4a8 SHA512 c24e46e339b84e68db86efb2a39bc4c15a6620dd91c6c28ecf982bcf74499febdc878707bc35cfe49dbee960ab88d2162032cfd57057adcf212da8119910d747 diff --git a/dev-python/peewee/peewee-4.1.0.ebuild b/dev-python/peewee/peewee-4.1.0.ebuild new file mode 100644 index 000000000000..354b1a91f483 --- /dev/null +++ b/dev-python/peewee/peewee-4.1.0.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2026 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_{13..14} ) +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 ~arm64 ~riscv ~x86" +IUSE="examples +native-extensions test" +RESTRICT="!test? ( test )" + +DEPEND=" + native-extensions? ( dev-db/sqlite:3= ) +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + native-extensions? ( + 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() { + default + + # disable test failing on postgres 16 + sed -e 's/test_timeout/_&/' -i tests/sqliteq.py || die +} + +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/pulsectl-asyncio/Manifest b/dev-python/pulsectl-asyncio/Manifest index 4cda73f7324f..c59d17efb319 100644 --- a/dev-python/pulsectl-asyncio/Manifest +++ b/dev-python/pulsectl-asyncio/Manifest @@ -1 +1,2 @@ DIST pulsectl-asyncio-1.2.2.gh.tar.gz 19528 BLAKE2B 8b4ccf8a1509fddff19cf201dc9ff4cbf03aedc2ab47c6f4920f95072706051a0a9ab3704e4a4650be8ebce67682bff28d8dacdfac272c36019810eea358f01f SHA512 ccaa7ae14fd2ca7e9d6483efcb3d48f8364ed87ab99c700323c2f2d803986408394ae0fe83880d4d77b77daf17dfb58c6e9f94043a9b03ad643bff2e909a673a +DIST pulsectl-asyncio-1.3.0.gh.tar.gz 19393 BLAKE2B ebd07bb9335f3eb15a4dbe86f1c7cf5a357fd1354145a955adc1f74ebc813b697fd1033da3332b91d52ac4409dc3cdaf62ad2655e3c654fd639cf4f75eefbae6 SHA512 7f8997c855ca7f9b011950d471d37c3e45c011902c38bb094045e30056f5e21a19a1f423d8d3a3682e03dbb20318c877be6973ac7edeb35f8aed6fe7e49047df diff --git a/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.3.0.ebuild b/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.3.0.ebuild new file mode 100644 index 000000000000..860363af38fa --- /dev/null +++ b/dev-python/pulsectl-asyncio/pulsectl-asyncio-1.3.0.ebuild @@ -0,0 +1,42 @@ +# Copyright 2023-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +DESCRIPTION="Asyncio frontend for pulsectl, Python bindings of libpulse" +HOMEPAGE=" + https://github.com/mhthies/pulsectl-asyncio/ + https://pypi.org/project/pulsectl-asyncio/ +" +# sdist is missing examples that are used in tests +SRC_URI=" + https://github.com/mhthies/pulsectl-asyncio/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/pulsectl-23.5.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + media-sound/pulseaudio-daemon + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e 's:,<=[0-9.]*::' pyproject.toml || die + distutils-r1_src_prepare +} diff --git a/dev-python/s3transfer/Manifest b/dev-python/s3transfer/Manifest index 485ab08efc16..b0b80ff229a7 100644 --- a/dev-python/s3transfer/Manifest +++ b/dev-python/s3transfer/Manifest @@ -2,3 +2,4 @@ DIST s3transfer-0.16.1.tar.gz 154801 BLAKE2B 7a8684162402007c148b9cbd5eb29a006b9 DIST s3transfer-0.17.0.tar.gz 155337 BLAKE2B bc1898fc9cc8ca5bbedad81a3491127cdf2021ee522b099121592f89a0c3bb3ece9a9cae3d35593b1cf9b379790c7135523bcf2e53675a5060fe64ed5be9a5da SHA512 cbd5a5ac93d3cad66b54d93fdd07b36dbc40a377e89395fd16349f0e8e5abc66938f4c74c00cc8ee4a14b9ac4673a43b18c217357eb4fcd72cb61682605bd134 DIST s3transfer-0.17.1.tar.gz 159439 BLAKE2B 21d98ca77b864abb2fec9e14436c80072530eb191ed85d8ad653d77b6f297f38151dfcaf1d84569ac88df8c963eff2575f9dc4ee25051114a917bbd2e4c47cd4 SHA512 3af4ea30906004fab19e41d9c55d491908ee8750af8e2791c1c8644a73743e533c32aeb7bf3f5e4675c88575cd4c01246ab8a685669ea560af99a997862d9ba8 DIST s3transfer-0.18.0.tar.gz 160560 BLAKE2B dac8d96e8bb37cd5fe12a0777825c233015332482be0fd4ab718a0866569b309bc89f5b62d32c948da6935df06c8f46ff9a20b558271c9a36737a41140e42b39 SHA512 b9ffc2c01ff254203f7a909dc9e5c860708a49ded3763ce9f9bfc922a032f4f69db6a057765c48b087e060d9efed8b367bc04a71b5f3c36c1930bb43db533d76 +DIST s3transfer-0.19.0.tar.gz 165171 BLAKE2B df0310c69a6ec7687a94c1b9321c843c52578ef07e3ee7ae5c68ba1b4cb36d6172954c7d3d371f6ee31c45690240f7b3869620b5079bbfe951b9192576bd0299 SHA512 8f4deb706ac23add37472c6921ab1d63dc2def57f4bd27f372766f7208a136facf963db0ab484be72133ab6f8ba620277af098fc98f4f8f7d01fc490cf49c716 diff --git a/dev-python/s3transfer/s3transfer-0.19.0.ebuild b/dev-python/s3transfer/s3transfer-0.19.0.ebuild new file mode 100644 index 000000000000..9742b462e53c --- /dev/null +++ b/dev-python/s3transfer/s3transfer-0.19.0.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="An Amazon S3 Transfer Manager" +HOMEPAGE=" + https://github.com/boto/s3transfer/ + https://pypi.org/project/s3transfer/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + <dev-python/botocore-2[${PYTHON_USEDEP}] + >=dev-python/botocore-1.37.4[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # 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 +} + +python_test() { + epytest tests/{unit,functional} +} diff --git a/dev-python/selenium/Manifest b/dev-python/selenium/Manifest index f34484189bbd..894d815b3c13 100644 --- a/dev-python/selenium/Manifest +++ b/dev-python/selenium/Manifest @@ -1,6 +1,9 @@ DIST selenium-4.34.2.tar.gz 896309 BLAKE2B 094d3596a86e1cd50a6967a65b3e7b9a73300403f5d88163ded8b1d3a62cb09d77057e9b90a35b39f3a6000a8ba604bd71ecb051866cf7ad88c5ab9e21752978 SHA512 f5911f41bc4988e1af26812299cf37aba7e88820cf4e719e0e04a36a5dbdba5420422c52393c8d31c4e0f88efe779e9beec2c490892e4546caa0a920047e01fa DIST selenium-4.35.0.tar.gz 907991 BLAKE2B e2d0baade499b41cdb23bdbae0059163fb58157dc86c3bcf4d7b9c4d040bcec19aba4000a223a4e7dd0137d4cc321064e95cd12fe22beaa311237c18261518ce SHA512 09f9149b94974c7965d5b81ee1ca65cca7e7a1de775d7323335c21acbbdc21da17f0f6314a8162177c6a22fdbb23b4147c213b2c3a98bfd9a13ac077dc113812 DIST selenium-4.44.0.tar.gz 993133 BLAKE2B 1c8f7f1fdfb21812569651c6086eba57455354b79ab1736d7fbfe6415affafed1f154bb21ead08a66fc5ffc638e05244a60f1ee1e85405b492ba3e84ac8b9f06 SHA512 72dabe202620ed29c9f66936827c257adf44d2f7c98a39724b1d2ef99fd7819875877f2d3cd2b1086f9e544a1f29bb3df6aa516ff8670f3701469b2ce75f5856 +DIST selenium-4.45.0.tar.gz 1005503 BLAKE2B ae9de988a6a7fd2b07aaac90d90973b600d7f494c8c840b8da7e19159222352382005e1d2a5774d2be6fff0987455e828da5227a8fdf71d0532e3ae759c1f6de SHA512 e67a731e93d172c0e1029656fdb06d4af808ccae3649fee85ba94f519da2407799b5d4a344c7334e0ce419031017493f83fd5fe82583d41060aeba49c369ff7a +DIST selenium-4.45.0.tar.gz.provenance 9743 BLAKE2B 485094912f8be3583d22377e06248ac42c2aadf8d7eb4cc6a0fdef566532f33346f7ba32a0b190e34e8657755c886de3fde73633d0f349c7282579a8c0fc4965 SHA512 dcbd6d32d76b3d76cb273c2dcd80966a84113879e8731f81a598d3c66495c0e26d7d870dca78f36da413bee052ce4d9db16e938efa6b0c1f6b8c138c798340cc DIST selenium-selenium-4.34.2-python.gh.tar.gz 52515190 BLAKE2B 319a7083d5942c1962b4f48f907fea12943a403e4490f74f3cd38662f1c63f57270b27b6039a5a8f29a980540cd0dcf1d1c7560c7ac126f07e491983dc0e81ef SHA512 5ca0b6e970ded3dc93cd55a2c1af7c43063d87f57f119a011313eb7d08faa4057896a56d4eac2e13d39857c94b54f04840a053153cc39008c76cbdd33c8ddbba DIST selenium-selenium-4.35.0.gh.tar.gz 52550104 BLAKE2B b7ed0fb513cfb2ed24aa8393497b349f930739c3d24a330e5942fbaa5505f31d7086396a430776a3a28a5f65927b92bf27c0a32e8c36d893b5d62ef73151d5ef SHA512 dc73829e3b0fcb7fb7ee1cc04574b95b63d23f67974575dbd66338e14a5cb2b06f983145ce874be0d7124e8828b0a41b99c75d3befb19e04cbf8d027d0bb983a DIST selenium-selenium-4.44.0.gh.tar.gz 43755091 BLAKE2B 05a58f6cde1bf1a9cdd4aa7dc61a93bedbeed814f6b16c9876cb85879d5aa4f470db569c21b6582673a281af01637237c0e099c79d9dc6e602ceedfc57e1a04d SHA512 6b93db69b9c1196e72b0a762b64b0677d70262428fc5a8dfe8d93847588fa5b78e481e9fa195fac41279ebbe4f1dd354b1217635cabcf7fac1c964a3a8b18e7a +DIST selenium-selenium-4.45.0.gh.tar.gz 43849895 BLAKE2B ac9f2a6fdb393946e4e92326174c07c36fb15e1a8fc5053cbe5b4f4c76234127545234863149ec2d1811445d0985794b51927924f86d1067f2a9b4a5e36e2835 SHA512 943db9e790a2e9f52dcab9ea688bf805a9e6875a7eb43972f3c2b2eb454d2067eeb14204146dbc203b255d7228b18d9806a41711c8e37fa2e3d07a5b0bb96985 diff --git a/dev-python/selenium/selenium-4.45.0.ebuild b/dev-python/selenium/selenium-4.45.0.ebuild new file mode 100644 index 000000000000..27ddd7464f40 --- /dev/null +++ b/dev-python/selenium/selenium-4.45.0.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/SeleniumHQ/selenium +PYTHON_TESTED=( python3_{13..14} ) +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +# base releases are usually ${P}, followups ${P}-python +TEST_TAG=${P} +[[ ${PV} != *.0 ]] && TEST_TAG+=-python +TEST_P=selenium-${TEST_TAG} + +DESCRIPTION="Python language binding for Selenium Remote Control" +HOMEPAGE=" + https://seleniumhq.org/ + https://github.com/SeleniumHQ/selenium/tree/trunk/py/ + https://pypi.org/project/selenium/ +" +SRC_URI+=" + test? ( + https://github.com/SeleniumHQ/selenium/archive/${TEST_TAG}.tar.gz + -> ${TEST_P}.gh.tar.gz + ) +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~s390 ~x86" +IUSE="test test-rust" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/certifi-2026.1.4[${PYTHON_USEDEP}] + >=dev-python/trio-0.31.0[${PYTHON_USEDEP}] + >=dev-python/trio-websocket-0.12.2[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.15.0[${PYTHON_USEDEP}] + >=dev-python/urllib3-2.6.0[${PYTHON_USEDEP}] + >=dev-python/websocket-client-1.8.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + ${RDEPEND} + $(python_gen_cond_dep " + dev-python/filetype[\${PYTHON_USEDEP}] + dev-python/pytest-mock[\${PYTHON_USEDEP}] + dev-python/rich[\${PYTHON_USEDEP}] + test-rust? ( + dev-python/pytest[\${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[\${PYTHON_USEDEP}] + >=dev-util/selenium-manager-${PV} + net-misc/geckodriver + || ( + www-client/firefox + www-client/firefox-bin + ) + ) + " "${PYTHON_TESTED[@]}") + ) +" + +src_prepare() { + distutils-r1_src_prepare + + # do not build selenium-manager implicitly + sed -e 's:\[tool\.setuptools-rust:[tool.ignore-me:' \ + -i pyproject.toml || die + # unpin deps + sed -i -e 's:,<[0-9.]*::' pyproject.toml || die + # remove nonsense typing deps + sed -i -e '/types/d' -e '/typing/d' pyproject.toml || die +} + +python_test() { + # NB: xdist is causing random pytest crashes with high job numbers + + if ! has "${EPYTHON/./_}" "${PYTHON_TESTED[@]}"; then + einfo "Skipping tests on ${EPYTHON}" + return + fi + + local EPYTEST_PLUGINS=( pytest-mock ) + local EPYTEST_IGNORE=() + local EPYTEST_DESELECT=( + # expects vanilla certifi + test/unit/selenium/webdriver/remote/remote_connection_tests.py::test_get_connection_manager_for_certs_and_timeout + ) + local pytest_args=( + # https://github.com/SeleniumHQ/selenium/blob/selenium-4.8.2-python/py/test/runner/run_pytest.py#L20-L24 + # seriously? + -o "python_files=*_tests.py test_*.py" + ) + if use test-rust; then + local -x PATH=${T}/bin:${PATH} + local -x SE_MANAGER_PATH="$(type -P selenium-manager)" + + local EPYTEST_RERUNS=5 + pytest_args+=( + --driver=firefox + --browser-binary="$(type -P firefox || type -P firefox-bin)" + --driver-binary="$(type -P geckodriver)" + --headless + ) + + local EPYTEST_IGNORE+=( + # requires some "python.runfiles", also bidi tests generally fail + test/selenium/webdriver/common/bidi_webextension_tests.py + # throws some error that pytest doesn't even show + test/selenium/webdriver/firefox/ff_installs_addons_tests.py + ) + EPYTEST_DESELECT+=( + # expects prebuilt executables for various systems + test/selenium/webdriver/common/selenium_manager_tests.py::test_uses_windows + test/selenium/webdriver/common/selenium_manager_tests.py::test_uses_linux + test/selenium/webdriver/common/selenium_manager_tests.py::test_uses_mac + test/selenium/webdriver/common/selenium_manager_tests.py::test_errors_if_invalid_os + + # TODO: these don't respect --*-binary and try to fetch versions + test/selenium/webdriver/firefox + test/selenium/webdriver/marionette/mn_context_tests.py::test_context_sets_correct_context_and_returns + test/selenium/webdriver/marionette/mn_context_tests.py::test_context_sets_correct_context_and_returns + test/selenium/webdriver/marionette/mn_options_tests.py::TestIntegration::test_we_can_pass_options + test/selenium/webdriver/marionette/mn_set_context_tests.py::test_we_can_switch_context_to_chrome + + # TODO + 'test/selenium/webdriver/common/devtools_tests.py::test_check_console_messages[firefox]' + + # TODO + test/selenium/webdriver/common/bidi_browser_tests.py + test/selenium/webdriver/common/bidi_browsing_context_tests.py + test/selenium/webdriver/common/bidi_emulation_tests.py + test/selenium/webdriver/common/bidi_errors_tests.py + test/selenium/webdriver/common/bidi_input_tests.py + test/selenium/webdriver/common/bidi_integration_tests.py + test/selenium/webdriver/common/bidi_log_tests.py + test/selenium/webdriver/common/bidi_network_tests.py + test/selenium/webdriver/common/bidi_permissions_tests.py + test/selenium/webdriver/common/bidi_script_tests.py + test/selenium/webdriver/common/bidi_session_tests.py + test/selenium/webdriver/common/bidi_storage_tests.py + test/selenium/webdriver/common/bidi_tests.py + test/selenium/webdriver/marionette/mn_options_tests.py::TestUnit::test_binary + test/selenium/webdriver/marionette/mn_options_tests.py::TestUnit::test_ctor + test/selenium/webdriver/marionette/mn_options_tests.py::TestUnit::test_prefs + test/selenium/webdriver/marionette/mn_options_tests.py::TestUnit::test_to_capabilities + test/selenium/webdriver/remote/remote_custom_locator_tests.py::test_find_element_with_custom_locator + test/selenium/webdriver/remote/remote_custom_locator_tests.py::test_find_elements_with_custom_locator + + # Internet + test/selenium/webdriver/remote/remote_server_tests.py::test_download_latest_server + test/selenium/webdriver/remote/remote_hub_connection_tests.py::test_command_executor_ssl_certificate_is_verified + ) + else + EPYTEST_IGNORE+=( + test/selenium + ) + fi + + cd "${WORKDIR}/${TEST_P}/py" || die + rm -rf selenium || die + epytest "${pytest_args[@]}" +} diff --git a/dev-python/snakeoil/Manifest b/dev-python/snakeoil/Manifest index 4755a2674428..4fcaefc78408 100644 --- a/dev-python/snakeoil/Manifest +++ b/dev-python/snakeoil/Manifest @@ -1,3 +1,2 @@ -DIST snakeoil-0.10.11.tar.gz 174701 BLAKE2B 5dba8eac3fdd6dfc88fcb2ffac8cd16f18c28485d39e6726708f98f0c86cdc6d101bf343da75c505f34c59c0bede89b0adbc268bc6d93a996cfefce4e968ac75 SHA512 6cd4fb1449e1ccf74bf8042afa4e113704eb328c89ff1def59581e96031082b27d78f46574796f59a612148947626d727b13a04134bc895e96f2f4733ce54c41 DIST snakeoil-0.11.0.tar.gz 201462 BLAKE2B c8d9953b5fc482afbadd471c6de273518d1b30a42cff2cc45cd2700544bb9a84b25ea3686e8f056bd44562075f1eedf7db3af6cf935f177b513e9b3f0a76840c SHA512 6636def3a05469a3f22e0a510d00fd5d6399c561fa436f7028507b5b548c5d20200ec93fdf2d8ba03176e76f2d6a0e51f12f63fa4b6a16a11839552dcbd7543c DIST snakeoil-0.11.0.tar.gz.provenance 9238 BLAKE2B 6724f3cde7cfabdfc44a8e0056a8c112d97ff7ffba98c90c998f8244a7ebf5b38198613b49f0df7dc9106cba6d07a68bb02b6cfaf70d83e6692f730a4fdce1c2 SHA512 990cf993fab784e7878517872183edf91b0a9725c08e618974a05b68c75c35b2bd03e865bd5a3ce21fcc138cbc84a1a0051be40fda639d5f3bcc8c8c0a6ef347 diff --git a/dev-python/snakeoil/snakeoil-0.10.11.ebuild b/dev-python/snakeoil/snakeoil-0.10.11.ebuild deleted file mode 100644 index 8a6efb563bb6..000000000000 --- a/dev-python/snakeoil/snakeoil-0.10.11.ebuild +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=flit -PYTHON_COMPAT=( python3_{13..14} ) -PYTHON_REQ_USE="threads(+)" -inherit distutils-r1 - -if [[ ${PV} == *9999 ]] ; then - EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/pkgcore/snakeoil.git - https://github.com/pkgcore/snakeoil.git" - inherit git-r3 -else - KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86 ~x64-macos" - inherit pypi -fi - -DESCRIPTION="misc common functionality and useful optimizations" -HOMEPAGE="https://github.com/pkgcore/snakeoil" - -LICENSE="BSD BSD-2 MIT" -SLOT="0" - -RDEPEND=" - dev-python/lazy-object-proxy[${PYTHON_USEDEP}] -" - -distutils_enable_tests pytest diff --git a/dev-python/sphinxcontrib-programoutput/Manifest b/dev-python/sphinxcontrib-programoutput/Manifest index 0fbad188abaa..7507a7c55c66 100644 --- a/dev-python/sphinxcontrib-programoutput/Manifest +++ b/dev-python/sphinxcontrib-programoutput/Manifest @@ -1 +1,2 @@ DIST sphinxcontrib_programoutput-0.19.tar.gz 27534 BLAKE2B 8a76c7c5026faac12bea50b5ba95e3e866069fb3f775c098af4523fa41cf2ae15458fa33a08c6dbef1fef7bed130bc20f281705acefa2a200e1d8c41d004a185 SHA512 817553a2ac53f08125725bdc16268af804c484ba99f27e5584719f3fc53e15d44ca0874e3af45cfeb5074b20cb464ee3c3444973f51b4495d6a2c3d735524738 +DIST sphinxcontrib_programoutput-0.20.tar.gz 28235 BLAKE2B 16dd6c683f98f8c9fa472809a08f6e172e83a2cbae797e3ad2d38d0d27fa875912b638d307179e33174ae46f2bd0018744b6cf70409ff733cfe223dfd9a95c0a SHA512 b5aae31688b907bdad8980f48ea41f2fde9a42fb9de549366ca4920746c93b058eae01bb15cb06a8b280e97d9dad83c914b6d67fd008afeae15e336612010a62 diff --git a/dev-python/sphinxcontrib-programoutput/sphinxcontrib-programoutput-0.20.ebuild b/dev-python/sphinxcontrib-programoutput/sphinxcontrib-programoutput-0.20.ebuild new file mode 100644 index 000000000000..f862c4d85dd6 --- /dev/null +++ b/dev-python/sphinxcontrib-programoutput/sphinxcontrib-programoutput-0.20.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Extension to sphinx to include program output" +HOMEPAGE=" + https://github.com/OpenNTI/sphinxcontrib-programoutput/ + https://pypi.org/project/sphinxcontrib-programoutput/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/docutils[${PYTHON_USEDEP}] + >=dev-python/sphinx-5[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest +distutils_enable_sphinx docs \ + dev-python/furo + +python_test() { + local EPYTEST_DESELECT=( + # requires 'erbsland' + test_directive.py::TestDirective::test_use_ansi_enabled_extension + ) + + epytest --pyargs sphinxcontrib.programoutput.tests +} diff --git a/dev-python/svglib/Manifest b/dev-python/svglib/Manifest index ef5e23eee5a2..c812f78bbba4 100644 --- a/dev-python/svglib/Manifest +++ b/dev-python/svglib/Manifest @@ -1,2 +1,3 @@ DIST svglib-1.6.0.tar.gz 1318276 BLAKE2B cc2ceb1850ad3a1c82f310b5b5c28f95ad047b3f933d323c40ab082df10b480788f24556fb29722ff5ae70490eeff5919780b979b9752c39e21523630dc3358a SHA512 7d6e30629b409cbdf80de3278a6b7a67ae4a3d82cd83c6f53cb72c21b59839eafbef4d34989621744773f9c7ba47b6cbe86d8f8b222054ff016061a740bf2bc2 DIST svglib-1.6.0.tar.gz.provenance 9400 BLAKE2B d570304d15dfac0590892b9c440e0c878a4d33f2e552b5f1f934cb741da4f58c407c4773f63e6528e4931ffd1a0fcc7e1d8db60122f0631d4e5846b0d492648c SHA512 51c43849de39807fd38002fddda0b544d92f3534619f0823cefeaf75d486d6d8833857c90603ce7bf64074db292b8f4effdaaf83afc62c3b11d29b8f51c2660a +DIST svglib-2.0.0.tar.gz 1462932 BLAKE2B 7fa50da9bb93fbe452a1178fe40b4016a8a94cd444931dd95d163ad08b76e5e50fceb5c9e75b2bc4f775187380ccf469d13376ee7f94d22b931bfdbbe047a297 SHA512 74adb5a557c182144c20bf98d69219a904b22e67d37c5627e1ac4bbfdb62bd248e6f213edbf0ebd71e96eade90e3546245696eab768a6d0c9def2c531d5ed8a4 diff --git a/dev-python/svglib/svglib-2.0.0.ebuild b/dev-python/svglib/svglib-2.0.0.ebuild new file mode 100644 index 000000000000..4f488ad9d154 --- /dev/null +++ b/dev-python/svglib/svglib-2.0.0.ebuild @@ -0,0 +1,35 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Pure-Python library for reading and converting SVG" +HOMEPAGE=" + https://github.com/deeplook/svglib/ + https://pypi.org/project/svglib/ +" + +LICENSE="LGPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/cssselect2-0.2.0[${PYTHON_USEDEP}] + >=dev-python/lxml-6.0.0[${PYTHON_USEDEP}] + >=dev-python/reportlab-4.4.3[${PYTHON_USEDEP}] + >=dev-python/tinycss2-0.6.0[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # Needs network access + tests/test_samples.py::TestWikipediaFlags::test_convert_pdf + tests/test_samples.py::TestW3CSVG::test_convert_pdf_png +) diff --git a/dev-python/vcrpy/Manifest b/dev-python/vcrpy/Manifest index bd3d0b22f657..273b76748059 100644 --- a/dev-python/vcrpy/Manifest +++ b/dev-python/vcrpy/Manifest @@ -1,2 +1,3 @@ DIST vcrpy-8.1.1.gh.tar.gz 339641 BLAKE2B 140678b9d8ba38ac6c3492fcfe35ffaa9db17b9e07d52554466a84b5bf0ddb7d932eab8d009f20dd1e74722cf56c330b6bcb3c58245dac04613f480aca8586e2 SHA512 3596c1ca34dc9f9f461579e9f4ec64395d028abd8180388af664078a0cb9dd557aee3b5a654ff6873b63969865f9ac3c6e021ba1ac302c11def090d873ae5bf2 DIST vcrpy-8.2.0.gh.tar.gz 342891 BLAKE2B 1ac45a640cb8204c666b8f7f1ebc64a17c39abc08551d4d683d25beb1b2ab14723de64beed063b7e8e6e79bd926bbade7f48dc2a49802e404f031d79b9e1aae1 SHA512 97c621e12360f0de7c108b3914ee604d7d9abdf49c435addae687f4b732600a0a77a92b97447a518b6d1c42581781ee91c5cb714cfcdfb94c30afd8439f728da +DIST vcrpy-8.2.1.gh.tar.gz 344628 BLAKE2B f1f5974b798f4cc9f43059de6afcae5473b605e8be392b876db30068f6a0e95ce8d709aca9d6dd2f05a487d1e567416a6ee5e1a57d6f05343f07bf942dfdb887 SHA512 7e997bced734f6d0379da018596b4f0aa91d3591190f1a1b2ec48516f6bc6085954314f945d242ae510f74d742bf820eff5732495696cfab7849f2011fd8f8ee diff --git a/dev-python/vcrpy/vcrpy-8.2.1.ebuild b/dev-python/vcrpy/vcrpy-8.2.1.ebuild new file mode 100644 index 000000000000..2d2a8bacfbe4 --- /dev/null +++ b/dev-python/vcrpy/vcrpy-8.2.1.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +DESCRIPTION="Automatically mock your HTTP interactions to simplify and speed up testing" +HOMEPAGE=" + https://github.com/kevin1024/vcrpy/ + https://pypi.org/project/vcrpy/ +" +SRC_URI=" + https://github.com/kevin1024/vcrpy/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc ~x86" + +RDEPEND=" + dev-python/pyyaml[${PYTHON_USEDEP}] + >=dev-python/requests-2.22.0[${PYTHON_USEDEP}] + dev-python/urllib3[${PYTHON_USEDEP}] + dev-python/wrapt[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/httplib2-0.9.1[${PYTHON_USEDEP}] + dev-python/httpx[${PYTHON_USEDEP}] + dev-python/httpx2[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-{asyncio,httpbin} ) +EPYTEST_RERUNS=5 +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # aiohttp incompatibility + tests/transport/aio/test_aiohttp.py::TestRequest::test_request_clone_with_active_session + # Internet + "tests/integration/test_urllib3.py::test_post[https]" + ) + + local EPYTEST_IGNORE=( + # requires boto3 + tests/integration/test_boto3.py + # Internet + tests/integration/test_tornado.py + tests/integration/test_aiohttp.py + ) + + local -x REQUESTS_CA_BUNDLE=$("${EPYTHON}" -m pytest_httpbin.certs) + epytest -m 'not online' +} diff --git a/dev-python/virtualenv/Manifest b/dev-python/virtualenv/Manifest index 0054e76a40cf..ec913100c48d 100644 --- a/dev-python/virtualenv/Manifest +++ b/dev-python/virtualenv/Manifest @@ -6,3 +6,5 @@ DIST virtualenv-21.4.3.tar.gz 7644454 BLAKE2B ef289a57f1cad1c42aa0bb38624a0abd37 DIST virtualenv-21.4.3.tar.gz.provenance 9500 BLAKE2B d5adf2b90488d9d0728101d7ecebb593350d07d0f1b08f0acd67847f22b99a7b1b8d1fd082fe739bc927fd79c75cda1f55cf39b2b8467fa8ddaa6178505d1909 SHA512 6c5dfc394d1c95c161c30235994b2066127653678430e69b769dc50ed2a007b6703379eb8c495d1395b953ec67d797ad1e4433121cdfd6fc722367937ac5178a DIST virtualenv-21.5.0.tar.gz 4577424 BLAKE2B 16f683b0c124478cd6dbd2eb4b4ad89c283c0669fe96062c199ae3e230e3009f5cd18066f4e98eeec3f6fab5f7bc04fbb5f1ecdafe2599d2bce13218fd8a5b2e SHA512 214d487e71fa30814982ea79979d37fd76f9dd175d47bbaa8704b917e917d348ad6a5352faf9a1fbd66cec40a51a7beb5b7a8d5f2adfba45f98de52c570b30fe DIST virtualenv-21.5.0.tar.gz.provenance 9555 BLAKE2B e9e6410cc70900f98d039924e0fe95e1e8ff483f0b4e9072ead40f3ebfb80ee9b10c043d12f47cccada8037901a4e38f6cccfa979fd8fd08d36612a40d6f9950 SHA512 683baa83889889292ebeb5646662c91598bfdef6653a04ee07cd3e8dbb7ebd1647cb8a41544ae52ea4860a04a16eba0ab230bee49d4b67c4319be0e335abd796 +DIST virtualenv-21.5.1.tar.gz 4578798 BLAKE2B 495289992d27ca98114ad713e680c7db257ef887dae500cf2b432486984b3c9a84d2108a39318f2d95a840fb3d000aaa894a189a8345a0023024d9c4f3b17568 SHA512 c7d49b496ede5ffcd6bf10ba8bcf47acae3c98470c5bb1e41c2a074c9f128ee0a6d83f89a0e088c4ca1e237e27e6d73affe0adbaa884f5afd526ac6881d2dbb8 +DIST virtualenv-21.5.1.tar.gz.provenance 9602 BLAKE2B 1e436f34c3b5a85ef334727eed745f3ca76bdfb5f6e8d7a484d602c177f4b680e8200a7ffa4fd2d6c4b43ec53a3829dd4c6c2b90db0487d752fec175aec456fc SHA512 37b56c52097132ba42d78c606c13b1e2d2a470662e4de29ae32f923db735b538b13f7f7365e220da8b97f788ba496e53705b6af20060826fc0168d323608ae91 diff --git a/dev-python/virtualenv/files/virtualenv-21.5.1-ensurepip.patch b/dev-python/virtualenv/files/virtualenv-21.5.1-ensurepip.patch new file mode 100644 index 000000000000..626c74bc45ea --- /dev/null +++ b/dev-python/virtualenv/files/virtualenv-21.5.1-ensurepip.patch @@ -0,0 +1,28 @@ +From 1cca270137efcdd6ece52198f9b50e2ef3c98acc Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Sat, 22 Jun 2024 14:28:23 +0200 +Subject: [PATCH] [Gentoo] Use ensurepip wheels instead of local bundle + +--- + src/virtualenv/seed/wheels/embed/__init__.py | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/src/virtualenv/seed/wheels/embed/__init__.py b/src/virtualenv/seed/wheels/embed/__init__.py +index ac9a85f8..4f93accc 100644 +--- a/src/virtualenv/seed/wheels/embed/__init__.py ++++ b/src/virtualenv/seed/wheels/embed/__init__.py +@@ -77,6 +77,14 @@ def get_embed_wheel(distribution: str, for_py_version: str | None) -> Wheel | No + :raises RuntimeError: if the bundled wheel on disk fails SHA-256 verification. + + """ ++ # Gentoo hack: get wheel from ensurepip directory ++ import sysconfig ++ bundle_dir = Path(sysconfig.get_config_var("WHEEL_PKG_DIR")) ++ try: ++ return Wheel.from_path(next(bundle_dir.glob(f"{distribution}-*.whl"))) ++ except StopIteration: ++ return None ++ + if for_py_version is None or _release_tuple(for_py_version) > _release_tuple(MAX): + # no specific target, or a Python newer than anything bundled: reuse the newest bundle + mapping = BUNDLE_SUPPORT[MAX] diff --git a/dev-python/virtualenv/virtualenv-21.5.1.ebuild b/dev-python/virtualenv/virtualenv-21.5.1.ebuild new file mode 100644 index 000000000000..96575f686dd3 --- /dev/null +++ b/dev-python/virtualenv/virtualenv-21.5.1.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/pypa/virtualenv +PYTHON_TESTED=( python3_{13..14} ) +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Virtual Python Environment builder" +HOMEPAGE=" + https://virtualenv.pypa.io/en/stable/ + https://pypi.org/project/virtualenv/ + https://github.com/pypa/virtualenv/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~m68k ~ppc ~ppc64 ~riscv ~s390 ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/distlib-0.3.7[${PYTHON_USEDEP}] + >=dev-python/filelock-3.24.2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-3.9.1[${PYTHON_USEDEP}] + >=dev-python/python-discovery-1.4.2[${PYTHON_USEDEP}] + + dev-python/ensurepip-pip + >=dev-python/ensurepip-setuptools-70.1 + dev-python/ensurepip-wheel +" +# coverage is used somehow magically in virtualenv, maybe it actually +# tests something useful +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + ${RDEPEND} + $(python_gen_cond_dep ' + dev-python/coverage[${PYTHON_USEDEP}] + >=dev-python/pip-22.2.1[${PYTHON_USEDEP}] + >=dev-python/pytest-mock-3.6.1[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/setuptools-67.8[${PYTHON_USEDEP}] + dev-python/time-machine[${PYTHON_USEDEP}] + dev-python/wheel[${PYTHON_USEDEP}] + >=dev-python/packaging-20.0[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" + +src_prepare() { + local PATCHES=( + # use wheels from ensurepip bundle + "${FILESDIR}/${PN}-21.5.1-ensurepip.patch" + ) + + distutils-r1_src_prepare + + # workaround test failures due to warnings from setuptools-scm, sigh + echo '[tool.setuptools_scm]' >> pyproject.toml || die + + # remove useless pins + sed -i -e 's:,<[=0-9.]*::' pyproject.toml || die + + # remove bundled wheels + rm src/virtualenv/seed/wheels/embed/*.whl || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + einfo "Skipping testing on ${EPYTHON}" + return + fi + + local EPYTEST_DESELECT=( + tests/unit/seed/embed/test_bootstrap_link_via_app_data.py::test_seed_link_via_app_data + # tests for old wheels with py3.7 support + tests/unit/seed/embed/test_pip_invoke.py::test_base_bootstrap_via_pip_invoke + tests/unit/seed/wheels/test_wheels_util.py::test_wheel_not_support + # broken by different wheel versions in ensurepip + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_string + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_exact + tests/unit/seed/wheels/test_acquire_find_wheel.py::test_find_latest_none + tests/unit/seed/wheels/test_acquire.py::test_download_wheel_bad_output + tests/unit/seed/wheels/test_wheels_util.py::test_embed_wheel_below_oldest_supported_is_missing + # hangs on a busy system, sigh + tests/unit/test_util.py::test_reentrant_file_lock_is_thread_safe + # TODO + tests/unit/create/via_global_ref/test_build_c_ext.py::test_can_build_c_extensions + # random resource leaks or xdist + tests/unit/test_file_limit.py::test_too_many_open_files + # Internet + tests/unit/create/test_creator.py::test_create_distutils_cfg + # we do not use bundled wheels + tests/unit/seed/wheels/test_bundle.py::test_every_wheel_on_disk_has_sha256 + ) + + local -x TZ=UTC + local EPYTEST_PLUGINS=( pytest-{mock,rerunfailures} time-machine ) + local EPYTEST_RERUNS=5 + local EPYTEST_TIMEOUT=180 + local EPYTEST_XDIST=1 + epytest -o addopts= +} + +src_install() { + distutils-r1_src_install + + # remove bundled wheels, we're using ensurepip bundle instead + find "${ED}" -name '*.whl' -delete || die +} |
