diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2025-08-30 07:03:32 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2025-08-30 07:03:32 +0000 |
| commit | 869384ee4b3208eb7e4fd1f8d9494e676a29eeb2 (patch) | |
| tree | e7fe78a0932f1fd1acd6929efb5901615a6ebb05 /dev-python | |
| parent | 701d3eeea97b74c07bf53fe354ce4c1c603d8cb4 (diff) | |
| download | baldeagleos-repo-869384ee4b3208eb7e4fd1f8d9494e676a29eeb2.tar.gz baldeagleos-repo-869384ee4b3208eb7e4fd1f8d9494e676a29eeb2.tar.xz baldeagleos-repo-869384ee4b3208eb7e4fd1f8d9494e676a29eeb2.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
29 files changed, 1123 insertions, 2 deletions
diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest index d16e083aa0db..6abc066fa95c 100644 --- a/dev-python/boto3/Manifest +++ b/dev-python/boto3/Manifest @@ -6,4 +6,5 @@ DIST boto3-1.40.17.gh.tar.gz 989571 BLAKE2B c44760e4eaab775fc7edf8ab843c3c83e664 DIST boto3-1.40.18.gh.tar.gz 990535 BLAKE2B b27c45a186cc7982e0fb16e9d7290a8fdab8b770be433956bdb99daa6965819e57cdba358527704f9fafaa9a0719efb8f054342cf23b4e5144c4b1332913c700 SHA512 d79865d9541e8cceccb45a541efb86733f14b024e234ed53fdaf3d926765cbe984ad4776f2045e82b6dbc26e7eb8553b4495a90363e9a4598af7493a3969416a DIST boto3-1.40.19.gh.tar.gz 991027 BLAKE2B db84de35539df907e49dc75bc4797a2e452e5ac08bdb1d3e7d1f0badcf28591396f1191f4681a63aa6320783a5a7b390817a424b12f3fe523a606736c33c5996 SHA512 b359ee8cdfcebc5b67bbf28ab05821ab446594f718ecd2fc181062ead9fff5f1b769e7815394c15f7a6f8c93cec7aad6c78459e0caec51e8f035ff2621a1cfc2 DIST boto3-1.40.20.gh.tar.gz 992089 BLAKE2B 23d76464510023244136518b10d4fbcddd31e62dd0b98126309737763b7274635e32e666efc105b54d4e4d076de83980f1f7e33b227d7a79e108d6e999037c7f SHA512 2647ba715e301eedd309dcc4719ab20cfeabeb65daca03e8d43d6352fce079e0c8e9ee83bc4c526e60b82e59ca4c5507d6d8c6d2d7bc605bdb495a272f0e98ed +DIST boto3-1.40.21.gh.tar.gz 992637 BLAKE2B 5c5b716506fef7223c4f49d6d966d43b59d5ae060ac861ecd525ef323821df20b88205d54e07ecb26bf41872a52d82ce2fb28c6b07a20ccbec38fa67d423699d SHA512 1dab07cac68498d3c1d5e60629f868c8f8d4259f0325bb672afdfbffa19988c5bc037cac9c2116f8d7fb4cf72014eada6ee6d7772be12ac8849d6640d7bddecd DIST boto3-1.40.6.gh.tar.gz 981330 BLAKE2B 929b4326d8d48e46750128e6236776b86fd5e59f0aab113e3ec797f18f138c7f52b30a79724f97de8083fd8e8baa04169e68e219ef5acf592561dabb838b4374 SHA512 65431a0d084298f51e0eee1753119f811261e9e57fdc5fa0491c9ce8d4fc745e705aed22527c8c06e003227c5c0bccc1a659e04bcc96a68fafb61bc53ec70a84 diff --git a/dev-python/boto3/boto3-1.40.21.ebuild b/dev-python/boto3/boto3-1.40.21.ebuild new file mode 100644 index 000000000000..bd6e26787db4 --- /dev/null +++ b/dev-python/boto3/boto3-1.40.21.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_{11..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 ~amd64-linux ~x86-linux" + +RDEPEND=" + >=dev-python/botocore-${PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.13.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 6f059e3d0276..a3b40d3bba9b 100644 --- a/dev-python/botocore/Manifest +++ b/dev-python/botocore/Manifest @@ -6,4 +6,5 @@ DIST botocore-1.40.17.gh.tar.gz 15158810 BLAKE2B 26bdbaf798f129897503d16e78ebd60 DIST botocore-1.40.18.gh.tar.gz 15162586 BLAKE2B 82f844c792de0f92b5e3e6854758f2d2a9aeb2987f7a43449c586be40030cfb0214563b4359c173b1e1569e5982cbd258a33c3d598a8d36c09d24e3cbd83944c SHA512 5caacfc44fb1de1ce178f7940146b7fb2f5c172bfb062bb16b0c0f395599b7dcac11a6bc9d5ba94139f244ade5eebf7eda5c8a402af97a5805ffc7da6d1ebf8c DIST botocore-1.40.19.gh.tar.gz 15105448 BLAKE2B d02ce1e61516591745d5d4f9941d6656c26f2badcdef96c539ec7be275996bd7dfe80b6211aef10be9a9ffab0fea9034ab794f0731cf0555f73a0847ef1d1ae9 SHA512 176c0a5d9b1147e6a47ca7b3251d04c2abefa5840d28d4235ebfebad08728f9e5ad40123c5ba72248ccf1e7a66b1edb70fcef14d3dc03520afc6a03e1a9b5070 DIST botocore-1.40.20.gh.tar.gz 15109331 BLAKE2B 9e1822c3aad609144aeea2bc4e34965f6849f5a71d0d173e3af67b5bb6af541013d5768eef6c6fb627f26cf58f2ee8d0217f7fe530cd99ca43b1b85eb3bf9b05 SHA512 4d7a47f59b84e4b64299a191c60b9cef020b8aeda69512e9dbcc77cdb2a774bf44560d2550b8578bbddc9189df91c7e39cd2c51d3d57e33727469607c03268ae +DIST botocore-1.40.21.gh.tar.gz 15110941 BLAKE2B 93927041ef8b5b3a6349a766a5f15afb73fece9846c9cbf2ac5c8a45b4513e46549539c8a14b85de36d6ffb5a5999cedd2a97251d16e0a93fc3c7dde8bd73b5f SHA512 bc9eca7f4ff7f0a7e58bd3bb60d95df45a71caf2a98739702b341838a1db31b161e1e0818380a6ab805dcb1e05be2e3e182a456c0e2dd91042b34ed3100aaf22 DIST botocore-1.40.6.gh.tar.gz 15096678 BLAKE2B fb76ace4058c814bb8ef17bb216f5f7355eec401e4108d8a6569e07f97b14becb9e99652364dacb7e46e62f3ffaea2e5e1cd241ae832fe0a359ed58bbcfe3500 SHA512 faa311f29da484083f49a9ae7beda844b8878750c7474916ff7200b4a5fdc01e26295923c7a0f0bc4e4b1c22e5381f69546b8685fdeb2112f1c61810d3c9b58d diff --git a/dev-python/botocore/botocore-1.40.21.ebuild b/dev-python/botocore/botocore-1.40.21.ebuild new file mode 100644 index 000000000000..a931fcaefec4 --- /dev/null +++ b/dev-python/botocore/botocore-1.40.21.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_{11..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 ~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_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/coverage/Manifest b/dev-python/coverage/Manifest index 76953018cfd0..75281ee36f68 100644 --- a/dev-python/coverage/Manifest +++ b/dev-python/coverage/Manifest @@ -1,4 +1,4 @@ -DIST coverage-7.10.4.tar.gz 823798 BLAKE2B 65ba8f5931ac5e577da9636a3df82e8b5a4b0447c051e671d18446c56cd642f0c0904984995ebf2896e91d8f1c12b3b1c5f2895269979bb4cba430008a2ae4b1 SHA512 59b7ac1b21be9b5fa5af8710568c24dfedc53d39d6ded5e79af2472ad64c2546e76f2eaaf0c0e4e387d00c52c3932e1d81970c4e14432cf6b19eb1be8fbeb21d DIST coverage-7.10.5.tar.gz 821662 BLAKE2B 36fa0ecff03d140b36efdc93ddfdd8ae9d2cd3aa7a414a73afcda6e1f23c3f02ce5b36cf93250d83b2733c00a438984d7b2428454998238942ca44e0af1ca4a8 SHA512 885454d5b38f523e968df953e7008da23c110c7a8af42aab2fd1c8882784acd587f7f97a0f28bc58b14792ba5177e670683206f413ad4552c632b689b90aac2c +DIST coverage-7.10.6.tar.gz 823736 BLAKE2B fbe443d98426213c275b3c32c6f0457f0e7994477da9a6fe95140c6876dfb42499e95d1239dc8e7ed796b17b81b9296e7a72962bf2b322fe97a09c6b8d4c6e7d SHA512 9b53246be27e009ba8639da2fdb9c975d743da6782f1d20a9f0da3ab07f4ebf2747124f3bb75c2694685c5b7fcdd09377a4611c85819123b9cc4defcf05c1cc3 DIST coverage-7.9.1.tar.gz 813650 BLAKE2B 42ea77277135a98d812c690aad744db427d6832ff01af68197015e4ff932c7ca88d2f804c0bceaca28b86087cb24245e5f57600444d064f1f008fc8b0a2353b5 SHA512 0bccbf802cdbd7d4df7c88cd7573466b024f7fb4cbf41fc5166a3e2dd70cd107caad01529971eb061cd571faadb342de057d0929f02b3b3e513666c052ecf591 DIST coverage-7.9.2.tar.gz 813556 BLAKE2B 6ed57a0011f7d05634c2a5c1e023f9ccfbb40d9a4bdd9011f2eaf03b658468a18df2044417f15108ec6429b6b62c63cd6a73e31904c0266137a4c6e65557207f SHA512 33ace642aada4b0ff5a72c3df628fe60fcc8b5f586f4851bfecc2ffa237cf019cbd78413c133aa8454e168b8895bfbc1363b722cf072eaf90979935b1982662c diff --git a/dev-python/coverage/coverage-7.10.4.ebuild b/dev-python/coverage/coverage-7.10.6.ebuild index e77b298e5776..8a88817c31e2 100644 --- a/dev-python/coverage/coverage-7.10.4.ebuild +++ b/dev-python/coverage/coverage-7.10.6.ebuild @@ -22,8 +22,10 @@ SLOT="0" KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" IUSE="+native-extensions" +# pytest-rerunfailures-16 causes hard crashes BDEPEND=" test? ( + <dev-python/pytest-rerunfailures-16[${PYTHON_USEDEP}] >=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}] ) " diff --git a/dev-python/httplib2/Manifest b/dev-python/httplib2/Manifest index f6cbc21cab80..683426d5f9c2 100644 --- a/dev-python/httplib2/Manifest +++ b/dev-python/httplib2/Manifest @@ -1 +1,2 @@ DIST httplib2-0.22.0.gh.tar.gz 373972 BLAKE2B 6adfbc61d4f898666512da5d02cf082fcaf76bf1816de955510f5c4721a36c38d99fef963d5150b62cca091543ed65bb1ef5f33ce99123e1cd2abe467d4970e3 SHA512 77210f85ccaa2d2cf4a6c89f5146ca5eb9a6f26f00e862f6d0716ec73baffdf94714ae1d5eaced4349920b91276a7835e2f028c6d9156e84c241514b198791e5 +DIST httplib2-0.30.0.gh.tar.gz 276043 BLAKE2B a7381b38fa0969bfc19046cb2d5ca4c751135ad2a1d059b9193f66545c9882f3bafde6ae2a870295b7f5420846007892e3c5a6c284eb6b235c600a52dd240243 SHA512 5e7d6d6e4e7f3695b02f2a29314c2668cd11b2ee693b38aa82a20464cc47901640d8206243def668a350258118db28696f1e95f83620fdeaf9b49e249f875283 diff --git a/dev-python/httplib2/httplib2-0.30.0.ebuild b/dev-python/httplib2/httplib2-0.30.0.ebuild new file mode 100644 index 000000000000..c81e87aed42a --- /dev/null +++ b/dev-python/httplib2/httplib2-0.30.0.ebuild @@ -0,0 +1,45 @@ +# 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_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="A comprehensive HTTP client library" +HOMEPAGE=" + https://pypi.org/project/httplib2/ + https://github.com/httplib2/httplib2/ +" +SRC_URI=" + https://github.com/httplib2/httplib2/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" + +RDEPEND=" + dev-python/certifi[${PYTHON_USEDEP}] + dev-python/pyparsing[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-libs/openssl + dev-python/cryptography[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-timeout ) +# note: tests are racy with xdist +distutils_enable_tests pytest + +src_prepare() { + sed -i -e '/--cov/d' setup.cfg || die + # remove bundled certs, we always want system certs via certifi + rm httplib2/cacerts.txt || die + distutils-r1_src_prepare +} diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest index 9ed6f851d4a9..3513c288ed84 100644 --- a/dev-python/hypothesis/Manifest +++ b/dev-python/hypothesis/Manifest @@ -5,3 +5,4 @@ DIST hypothesis-6.137.3.gh.tar.gz 9612265 BLAKE2B bc0c98872b08013194a11cad69e076 DIST hypothesis-6.138.3.gh.tar.gz 9614871 BLAKE2B 3eb0a034abb704524240d4f8a01e7ceb58a38517d6bf07789d343372bc079116c7b444ba141e8139afac5fa6cdfbdf907963b6b5a42fe2cb1943b057a5e8a9f9 SHA512 4be1e6c5837322732b30343bc27a02336db25b9796c24966d4bd3d9978d79f588dc95e5529c2f14139d3997e471a4d8650d4717b1f2c8099d00ebe080421d382 DIST hypothesis-6.138.6.gh.tar.gz 9618337 BLAKE2B 440385d0928f8a2782bcfc45b309e877e190aa224e30cab87916409539942902e364a534950abdd55bcf3d07bb1fa88b78fbb2cdfc9ab827168400e05b28254f SHA512 b420ef1c2e6dbc3d32bc4f79190219e74caa80c60e7f51685e41c8be95f2e7dcbc8bf9b9d868d450bc4825bdb1bbac5704796c67349a7900705ac85b27a9b925 DIST hypothesis-6.138.7.gh.tar.gz 9618391 BLAKE2B a8f9118e1c9cb5116227c97e7555505f4a8ed6dd028b9d75bb4fe62e323caf9523454e3868e26827885b5bedc6303dfd40083204dfa6ebd1774315d2d0d19e57 SHA512 bc4cee1bcf4ca9cc1e6a632ebfaa3f9e7eac2e2d1f4e034b0003eea491e28a2a99f2d03b2671f5b4f3dbc278db4d3f8d1f4ad4aa0cc4824951acb8c57a463edb +DIST hypothesis-6.138.8.gh.tar.gz 9618512 BLAKE2B 7c6643c9460ce8fe7c36cf9f9504510dd47ddb03b4b271660f068b4e80b2d1229990d691432a140a1a4382cfee87156b694f1c600ce6f0dcad5becbf0eae2b46 SHA512 f9d5affe3c26404355f36e065ed6d0ab190c095a9d742ec5ccbec2bfb1813c780d375e50f01bdc6092390476481070292a2ab4d31fc575777932153a10228984 diff --git a/dev-python/hypothesis/hypothesis-6.138.8.ebuild b/dev-python/hypothesis/hypothesis-6.138.8.ebuild new file mode 100644 index 000000000000..7a7443937da6 --- /dev/null +++ b/dev-python/hypothesis/hypothesis-6.138.8.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +CLI_COMPAT=( python3_{11..13} ) +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) +PYTHON_REQ_USE="threads(+),sqlite" + +inherit distutils-r1 optfeature + +TAG=hypothesis-python-${PV} +MY_P=hypothesis-${TAG} +DESCRIPTION="A library for property based testing" +HOMEPAGE=" + https://github.com/HypothesisWorks/hypothesis/ + https://pypi.org/project/hypothesis/ +" +SRC_URI=" + https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz + -> ${P}.gh.tar.gz +" +S="${WORKDIR}/${MY_P}/hypothesis-python" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="cli" + +RDEPEND=" + >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}] + >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}] + cli? ( + $(python_gen_cond_dep ' + dev-python/black[${PYTHON_USEDEP}] + dev-python/click[${PYTHON_USEDEP}] + ' "${CLI_COMPAT[@]}") + ) +" +BDEPEND=" + test? ( + dev-python/pexpect[${PYTHON_USEDEP}] + >=dev-python/pytest-8[${PYTHON_USEDEP}] + ) +" +PDEPEND=" + dev-python/hypothesis-gentoo[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGIN_LOAD_VIA_ENV=1 +EPYTEST_PLUGINS=( "${PN}" pytest-xdist ) +EPYTEST_RERUNS=5 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + # NB: paths need to be relative to pytest.ini, + # i.e. start with hypothesis-python/ + local EPYTEST_DESELECT=() + case ${EPYTHON} in + python3.13t) + EPYTEST_DESELECT+=( + # TODO: missing warning + 'hypothesis-python/tests/cover/test_random_module.py::test_passing_referenced_instance_within_function_scope_warns' + ) + ;; + python3.14*) + EPYTEST_DESELECT+=( + 'hypothesis-python/tests/cover/test_compat.py::test_resolve_fwd_refs[Foo-Union]' + 'hypothesis-python/tests/cover/test_lookup.py::test_builds_suggests_from_type[Union]' + hypothesis-python/tests/cover/test_attrs_inference.py::test_attrs_inference_builds + hypothesis-python/tests/cover/test_lookup.py::test_bytestring_not_treated_as_generic_sequence + hypothesis-python/tests/cover/test_lookup.py::test_issue_4194_regression + hypothesis-python/tests/cover/test_lookup.py::test_resolves_forwardrefs_to_builtin_types + hypothesis-python/tests/cover/test_lookup.py::test_specialised_collection_types + hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_collection_as_generic + hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_container_as_generic + hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_contextmanager_as_generic + hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_iterable_as_generic + hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_reversible_as_generic + hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_sequence_as_generic + hypothesis-python/tests/cover/test_random_module.py::test_evil_prng_registration_nonsense + hypothesis-python/tests/cover/test_random_module.py::test_passing_referenced_instance_within_function_scope_warns + hypothesis-python/tests/cover/test_random_module.py::test_register_random_within_nested_function_scope + hypothesis-python/tests/cover/test_random_module.py::test_registering_a_Random_is_idempotent + hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_missing_dot_access_forward_ref + hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_missing_forward_ref + hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_type_checking_only_forward_ref_wrong_type + hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_type_cheking_only_forward_ref + ) + ;; + esac + + local -x HYPOTHESIS_NO_PLUGINS=1 + epytest -o filterwarnings= tests/{cover,pytest,quality} +} + +src_install() { + local HAD_CLI= + + distutils-r1_src_install + + if [[ ! ${HAD_CLI} ]]; then + rm -r "${ED}/usr/bin" || die + fi +} + +python_install() { + distutils-r1_python_install + if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then + HAD_CLI=1 + else + rm -r "${D}$(python_get_scriptdir)" || die + fi +} + +pkg_postinst() { + optfeature "datetime support" dev-python/pytz + optfeature "dateutil support" dev-python/python-dateutil + optfeature "numpy support" dev-python/numpy + optfeature "django support" dev-python/django dev-python/pytz + optfeature "pandas support" dev-python/pandas + optfeature "pytest support" dev-python/pytest +} diff --git a/dev-python/matplotlib/Manifest b/dev-python/matplotlib/Manifest index fca5dcb8e8c2..1757b49ecda2 100644 --- a/dev-python/matplotlib/Manifest +++ b/dev-python/matplotlib/Manifest @@ -2,3 +2,4 @@ DIST freetype-2.6.1.tar.gz 2302080 BLAKE2B 6a5fb98e5fa6cf4b7d7533ad44e364227d8c2 DIST matplotlib-3.10.1.tar.gz 36743335 BLAKE2B e689dcaa314a6af8ce2934aac95208adf0f87822e4f84d6fb15ac1a17d162deea106636abf52b5332636ad8bb944301f16100b15d409b04ef2a8ecd287ea827c SHA512 1b52a421e61ca0a295d7b1d2bbe9bdcb1dd58f6c750b21d95e263547b20a17d58aadcc86f97ae0fdff9151d3c2f75a6c5419a35b258b698d777f42de7b598c4e DIST matplotlib-3.10.3.tar.gz 34799811 BLAKE2B f855a65ebf6d33373b8ed62fca0824291aa10319cfa652e0ed07db4fe2511d6bc0232e0ef44858717142ce6f13ef604131c312d3ffa00b414321d34dc45d2727 SHA512 c3027fa116f45a4a7d7ac8e7ce87f509a6604b283c39b74379e8d84a05df61283ddf4e79036c9b83b2dff13291b59945d26aeb7420873d3b275097817a12be72 DIST matplotlib-3.10.5.tar.gz 34804044 BLAKE2B ffda7bfb4c4a5bc6aacabb1f1595525fcdac9070f6e1c039abe6ba480cc34ea1663fc2c35a4583176a4d4695aacc238d3080eb75d965ee4ddc27bd96fda1d3e8 SHA512 761388d0aad410b80179b3bb97d63b6a99d71338a0eb8801702f4a38f4a1a0fdecd8fbb6401e664d2f30a0256f412167c7c102fc494664c1837495572ebf3caa +DIST matplotlib-3.10.6.tar.gz 34804264 BLAKE2B d6bbea7b225052026dcd326ab0434600191746b663fe922a306c21823b59a7eb6cd23ef45992e7eb4630b1e92fc2e58f351f258f53a7d98b8b1cb9c3dbf038af SHA512 c12686d52229bbbd3c16fa5b1d633a7a6eec8e9bae58221554dc3d9595ceae05f985ebb3207425ad2e134e4dae671f590225b1d692b66c2099dd78da13cc6332 diff --git a/dev-python/matplotlib/matplotlib-3.10.6.ebuild b/dev-python/matplotlib/matplotlib-3.10.6.ebuild new file mode 100644 index 000000000000..6ed73b73a3fc --- /dev/null +++ b/dev-python/matplotlib/matplotlib-3.10.6.ebuild @@ -0,0 +1,330 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=meson-python +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) +PYTHON_REQ_USE='tk?,threads(+)' + +inherit distutils-r1 pypi virtualx + +FT_PV=2.6.1 +DESCRIPTION="Pure python plotting library with matlab like syntax" +HOMEPAGE=" + https://matplotlib.org/ + https://github.com/matplotlib/matplotlib/ + https://pypi.org/project/matplotlib/ +" +SRC_URI+=" + test? ( + https://downloads.sourceforge.net/project/freetype/freetype2/${FT_PV}/freetype-${FT_PV}.tar.gz + ) +" + +# Main license: matplotlib +# Some modules: BSD +# matplotlib/backends/qt4_editor: MIT +# Fonts: BitstreamVera, OFL-1.1 +LICENSE="BitstreamVera BSD matplotlib MIT OFL-1.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="cairo excel gtk3 latex qt6 tk webagg wxwidgets" + +DEPEND=" + media-libs/freetype:2 + >=media-libs/qhull-2013:= + >=dev-python/numpy-1.25:=[${PYTHON_USEDEP}] +" +# internal copy of pycxx highly patched +# dev-python/pycxx +RDEPEND=" + ${DEPEND} + >=dev-python/contourpy-1.0.1[${PYTHON_USEDEP}] + >=dev-python/cycler-0.10.0-r1[${PYTHON_USEDEP}] + >=dev-python/fonttools-4.22.0[${PYTHON_USEDEP}] + >=dev-python/kiwisolver-1.3.1[${PYTHON_USEDEP}] + >=dev-python/packaging-20.0[${PYTHON_USEDEP}] + >=dev-python/pillow-8[jpeg,webp,${PYTHON_USEDEP}] + >=dev-python/pyparsing-2.3.1[${PYTHON_USEDEP}] + >=dev-python/python-dateutil-2.7[${PYTHON_USEDEP}] + >=dev-python/pytz-2019.3[${PYTHON_USEDEP}] + media-fonts/dejavu + media-fonts/stix-fonts + media-libs/libpng:0 + virtual/imagemagick-tools[jpeg,tiff] + cairo? ( + dev-python/cairocffi[${PYTHON_USEDEP}] + ) + excel? ( + dev-python/xlwt[${PYTHON_USEDEP}] + ) + gtk3? ( + >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}] + x11-libs/gtk+:3[introspection] + ) + latex? ( + virtual/latex-base + app-text/dvipng + app-text/ghostscript-gpl + app-text/poppler[utils] + dev-texlive/texlive-fontsrecommended + dev-texlive/texlive-latexextra + dev-texlive/texlive-luatex + dev-texlive/texlive-xetex + ) + qt6? ( + $(python_gen_cond_dep ' + || ( + dev-python/pyqt6[gui,widgets,${PYTHON_USEDEP}] + dev-python/pyside:6[gui,widgets,${PYTHON_USEDEP}] + ) + ' 'python3*') + ) + webagg? ( + >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}] + ) + wxwidgets? ( + $(python_gen_cond_dep ' + dev-python/wxpython:*[${PYTHON_USEDEP}] + ' python3_{10..12}) + ) +" + +BDEPEND=" + ${RDEPEND} + dev-python/pybind11[${PYTHON_USEDEP}] + >=dev-python/setuptools-scm-7[${PYTHON_USEDEP}] + virtual/pkgconfig + test? ( + $(python_gen_impl_dep 'tk') + dev-python/psutil[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + >=dev-python/tornado-6.0.4[${PYTHON_USEDEP}] + !hppa? ( !s390? ( + || ( + media-video/ffmpeg[openh264] + media-video/ffmpeg[x264] + ) + ) ) + gtk3? ( + >=dev-python/pygobject-3.40.1-r1:3[cairo?,${PYTHON_USEDEP}] + x11-libs/gtk+:3[introspection] + ) + ) +" + +EPYTEST_PLUGINS=() +EPYTEST_RERUNS=3 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_unpack() { + # do not unpack freetype + unpack "${P//_/}.tar.gz" +} + +python_prepare_all() { + # Affects installed _version.py, bug #854600 + export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} + + # increase lock timeout to 30 s + sed -i -e 's:retries = 50:retries = 300:' lib/matplotlib/cbook.py || die + # upstream uses 'x86_64' condition to require exact matches no their CI + # which doesn't match results from other x86_64 systems + find -name 'test_*.py' -exec \ + sed -i -e "s:platform.machine() == 'x86_64':False:" {} + || die + + distutils-r1_python_prepare_all +} + +src_configure() { + unset DISPLAY # bug #278524 + export XDG_RUNTIME_DIR="${T}/runtime-dir" + mkdir "${XDG_RUNTIME_DIR}" || die + chmod 0700 "${XDG_RUNTIME_DIR}" || die + + DISTUTILS_ARGS=( + -Dsystem-freetype=true + -Dsystem-qhull=true + -Dmacosx=false + ) +} + +src_test() { + mkdir subprojects/packagecache || die + cp "${DISTDIR}/freetype-${FT_PV}.tar.gz" subprojects/packagecache/ || die + virtx distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # broken by -Wdefault + "tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg6-MatplotlibDeprecationWarning]" + "tests/test_rcparams.py::test_validator_invalid[validate_strlist-arg7-MatplotlibDeprecationWarning]" + tests/test_testing.py::test_warn_to_fail + tests/test_legend.py::test_legend_nolabels_warning + # TODO? + tests/test_backend_qt.py::test_fig_sigint_override + tests/test_backend_qt.py::test_ipython + tests/test_backend_nbagg.py::test_ipynb + # leak tests are fragile + tests/test_backends_interactive.py::test_figure_leak_20490 + # major "images not close", new texlive perhaps + tests/test_contour.py::test_all_algorithms + 'tests/test_usetex.py::test_usetex[png]' + 'tests/test_usetex.py::test_multiline_eqnarray[png]' + 'tests/test_usetex.py::test_rotation[png]' + # "no warnings" + tests/test_backend_pdf.py::test_invalid_metadata + tests/test_figure.py::test_too_many_figures + # Requires qt5 + tests/test_backends_interactive.py::test_qt5backends_uses_qt5 + 'tests/test_backends_interactive.py::test_interactive_backend[toolbar2-MPLBACKEND=qtagg-QT_API=PyQt5-BACKEND_DEPS=PyQt5]' + 'tests/test_backends_interactive.py::test_interactive_backend[toolbar2-MPLBACKEND=qtcairo-QT_API=PyQt5-BACKEND_DEPS=PyQt5,cairocffi]' + 'tests/test_backends_interactive.py::test_interactive_backend[toolmanager-MPLBACKEND=qtagg-QT_API=PyQt5-BACKEND_DEPS=PyQt5]' + 'tests/test_backends_interactive.py::test_blitting_events[MPLBACKEND=qtagg-QT_API=PyQt5-BACKEND_DEPS=PyQt5]' + 'tests/test_backends_interactive.py::test_blitting_events[MPLBACKEND=qtcairo-QT_API=PyQt5-BACKEND_DEPS=PyQt5,cairocffi]' + 'tests/test_backends_interactive.py::test_interactive_thread_safety[MPLBACKEND=qtagg-QT_API=PyQt5-BACKEND_DEPS=PyQt5]' + 'tests/test_backends_interactive.py::test_interactive_timers[MPLBACKEND=qtagg-QT_API=PyQt5-BACKEND_DEPS=PyQt5]' + 'tests/test_backends_interactive.py::test_interactive_timers[MPLBACKEND=qtcairo-QT_API=PyQt5-BACKEND_DEPS=PyQt5,cairocffi]' + # Tests mixing qt5 and qt6, requires installing all Qt4Py impl. + tests/test_backends_interactive.py::test_cross_Qt_imports + ) + + case ${EPYTHON} in + pypy3) + EPYTEST_DESELECT+=( + # TODO + tests/test_widgets.py::test_check_buttons + tests/test_widgets.py::test_check_buttons_lines + tests/test_widgets.py::test_check_radio_buttons_image + tests/test_widgets.py::test_radio_buttons + ) + ;& + pypy3.11) + EPYTEST_DESELECT+=( + # TODO: warning isn't passed through + tests/test_image.py::test_large_image + # TODO: regression in 7.3.18+ + tests/test_axes.py::test_axes_clear_reference_cycle + # TODO + tests/test_pickle.py::test_complete + tests/test_pickle.py::test_no_pyplot + tests/test_pickle.py::test_pickle_load_from_subprocess + tests/test_pickle.py::test_simple + tests/test_texmanager.py::test_openin_any_paranoid + ) + ;; + python3.11) + EPYTEST_DESELECT+=( + # https://github.com/matplotlib/matplotlib/issues/23384 + "tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND': 'qtagg', 'QT_API': 'PyQt5'}]" + "tests/test_backends_interactive.py::test_figure_leak_20490[time_mem1-{'MPLBACKEND': 'qtcairo', 'QT_API': 'PyQt5'}]" + ) + ;; + python3.12) + EPYTEST_DESELECT+=( + tests/test_constrainedlayout.py::test_compressed1 + ) + ;; + esac + + case ${ABI} in + hppa) + EPYTEST_DESELECT+=( + 'tests/test_mathtext.py::test_mathtext_exceptions[hspace without value]' + 'tests/test_mathtext.py::test_mathtext_exceptions[hspace with invalid value]' + 'tests/test_mathtext.py::test_mathtext_exceptions[function without space]' + 'tests/test_mathtext.py::test_mathtext_exceptions[accent without space]' + 'tests/test_mathtext.py::test_mathtext_exceptions[frac without parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[frac with empty parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[binom without parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[binom with empty parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[genfrac without parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[genfrac with empty parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[sqrt without parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[sqrt with invalid value]' + 'tests/test_mathtext.py::test_mathtext_exceptions[overline without parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[overline with empty parameter]' + 'tests/test_mathtext.py::test_mathtext_exceptions[left with invalid delimiter]' + 'tests/test_mathtext.py::test_mathtext_exceptions[right with invalid delimiter]' + 'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses with sizing]' + 'tests/test_mathtext.py::test_mathtext_exceptions[unclosed parentheses without sizing]' + 'tests/test_mathtext.py::test_mathtext_exceptions[dfrac without parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[dfrac with empty parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[overset without parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[underset without parameters]' + 'tests/test_mathtext.py::test_mathtext_exceptions[unknown symbol]' + 'tests/test_mathtext.py::test_mathtext_exceptions[double superscript]' + 'tests/test_mathtext.py::test_mathtext_exceptions[double subscript]' + 'tests/test_mathtext.py::test_mathtext_exceptions[super on sub without braces]' + 'tests/test_quiver.py::test_barbs[png]' + 'tests/test_quiver.py::test_barbs_pivot[png]' + 'tests/test_quiver.py::test_barbs_flip[png]' + 'tests/test_text.py::test_parse_math' + 'tests/test_text.py::test_parse_math_rcparams' + ) + ;; + arm) + EPYTEST_DESELECT+=( + tests/test_backend_ps.py::test_savefig_to_stringio + # too large for 32-bit platforms + 'tests/test_axes.py::test_psd_csd[png]' + ) + ;; + sparc64) + EPYTEST_DESELECT+=( + tests/test_backend_pgf.py::test_pdf_pages_metadata_check + tests/test_backend_pgf.py::test_minus_signs_with_tex + ) + ;; + alpha|arm|m68k|o32|ppc|s390|sh|sparc|x86) + EPYTEST_DESELECT+=( + # too large for 32-bit platforms + 'tests/test_axes.py::test_psd_csd[png]' + ) + ;; + *) + ;; + esac + + # override BUILD_DIR used by meson, so that mpl is actually rebuilt + # against bundled freetype + local orig_build_dir=${BUILD_DIR} + local BUILD_DIR=${BUILD_DIR}-test + + # we need to rebuild mpl against bundled freetype, otherwise + # over 1000 tests will fail because of mismatched font rendering + local DISTUTILS_ARGS=( + "${DISTUTILS_ARGS[@]}" + -Dsystem-freetype=false + ) + distutils_pep517_install "${BUILD_DIR}"/install + cp -r {"${orig_build_dir}","${BUILD_DIR}"}/install"${EPREFIX}/usr/bin" || die + cp -r {"${orig_build_dir}","${BUILD_DIR}"}/install"${EPREFIX}/usr/pyvenv.cfg" || die + local -x PATH=${BUILD_DIR}/install${EPREFIX}/usr/bin:${PATH} + + pushd lib >/dev/null || die + local path + local sitedir=${BUILD_DIR}/install$(python_get_sitedir) + # sigh, upstream doesn't install these + while IFS= read -d '' path; do + cp -r "${path}" "${sitedir}/${path}" || die + done < <( + find \( \ + -name baseline_images -o \ + -name '*.ipynb' -o \ + -name '*.pfb' -o \ + -name '*.ttf' -o \ + -name tinypages \ + \) -print0 + ) + popd >/dev/null || die + + # pretend we're on CI to increase timeouts + local -x CI=1 + nonfatal epytest --pyargs matplotlib -m "not network" \ + -o tmp_path_retention_policy=all || die +} diff --git a/dev-python/mistune/Manifest b/dev-python/mistune/Manifest index baf3ba04eae0..60c5ea135073 100644 --- a/dev-python/mistune/Manifest +++ b/dev-python/mistune/Manifest @@ -1 +1,2 @@ DIST mistune-3.1.3.tar.gz 94347 BLAKE2B 3464e6b5e4e48faacc303cbf50b15fca235eb9af4fd862bfa7eb4f97a97b4fcefdf4d221151c1e2e546693b3c539d6c71844fe6a2234a2fd9303fb5a9f29f1fd SHA512 6728543398f0e86612adbf2828b4706da8901738cb8f14df68797bf9cb20e8b9fc15b63e9cd88ee6dd8199fc47676bc4586c54063412256548e429bc4c27488b +DIST mistune-3.1.4.tar.gz 94588 BLAKE2B f08207242c8b91afcfe64cc75d4c3c079f7ffc68a7336772deb410cfdc92be3be7692ab29db18a3ef3dca2ef42f07a00a399127b683022e3be34cb835d816da2 SHA512 e41b096ad7ef08a4e82ceffae74370a8eaaf634b40440e551a9b96ba76f3c274994eed56315abcc5f8dc3dedbd02e6d8eb29bf750a5b4793080ee9bea05f8d11 diff --git a/dev-python/mistune/mistune-3.1.4.ebuild b/dev-python/mistune/mistune-3.1.4.ebuild new file mode 100644 index 000000000000..74081feebad8 --- /dev/null +++ b/dev-python/mistune/mistune-3.1.4.ebuild @@ -0,0 +1,22 @@ +# 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_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="The fastest markdown parser in pure Python" +HOMEPAGE=" + https://github.com/lepture/mistune/ + https://pypi.org/project/mistune/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest diff --git a/dev-python/phonenumbers/Manifest b/dev-python/phonenumbers/Manifest index 55fd29f498be..e2dc8778a2d2 100644 --- a/dev-python/phonenumbers/Manifest +++ b/dev-python/phonenumbers/Manifest @@ -1,3 +1,4 @@ DIST python-phonenumbers-9.0.11.gh.tar.gz 4918150 BLAKE2B 2c954fab20dbf0ef1a7e09b4c38d3bb52c8196f9a90ab543f50a18d517f566b9ece49e26ea212170ec446752b72fe6fdc1ecacf1a9fbf5bb8ca0454421f38a34 SHA512 803881bfa0b0b97e5fb0db65c8c907420da2c8804acb9892b3ca712cb19359f05757c62a4d8c10f9c8f0ee36ef0a0d2bcec083aab1da54cdbaa5311273d01459 DIST python-phonenumbers-9.0.12.gh.tar.gz 4915140 BLAKE2B 4929e25d0525c12321e71c4b7c3262fa22ea3484c4a5522f3995af737dc3c81aedaf44ad9954ac41e7c815d752108c77ae078294b753d70a67358901dff6b87c SHA512 67ab051e45156f635ad37a075abdeb2b04094de4faa964902e4b15bd78736264f27f3b880aceaa54a3b47e6f78129b4c196824446a82dfe2c6ec11ad7dddc074 +DIST python-phonenumbers-9.0.13.gh.tar.gz 4915436 BLAKE2B f49fd90cbdd761d3aa0f91d78a47af2d83975adc85d54e569788999237bf1edd7c0daefedf5f460b32e6d0469222990a362f2192839dbd0a54ad9d33e76a89f5 SHA512 fe37883632624cf4c80cabdfc6f7e9fd14c1ae486b15a697865d09e8b5dd1d4392ea173d37d3070e8a91d0290798b2dd37428e03f34cde232c69d04cccf9a844 DIST python-phonenumbers-r9.0.10.gh.tar.gz 4915184 BLAKE2B cfa395dde633bfda4d7eea1e0946a9007bcc93994fa32ab6d29af24bc1e1191d4cbd4a71ea4ed600832879f4d7795c95f3e337f79316f43ad28e7376ab4cf671 SHA512 fad4fa5820a8a34110a3686c4ce7bbe004a81333c70e056ea3ad613b7e992fb51e1407559ca9cbe0075a5c16c4baba75dd067ed17f712a75bde3ef04f42544b1 diff --git a/dev-python/phonenumbers/phonenumbers-9.0.13.ebuild b/dev-python/phonenumbers/phonenumbers-9.0.13.ebuild new file mode 100644 index 000000000000..a4046879a533 --- /dev/null +++ b/dev-python/phonenumbers/phonenumbers-9.0.13.ebuild @@ -0,0 +1,39 @@ +# 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..14} ) + +inherit distutils-r1 + +MY_P=python-${P} +DESCRIPTION="Python port of Google's libphonenumber" +HOMEPAGE=" + https://github.com/daviddrysdale/python-phonenumbers/ + https://pypi.org/project/phonenumbers/ +" +SRC_URI=" + https://github.com/daviddrysdale/python-phonenumbers/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P}/python + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +BDEPEND=" + test? ( + dev-python/protobuf[${PYTHON_USEDEP}] + ) +" + +DOCS=( ../README.md ) + +python_test() { + "${EPYTHON}" testwrapper.py -v || die "Tests failed with ${EPYTHON}" +} diff --git a/dev-python/pyfakefs/Manifest b/dev-python/pyfakefs/Manifest index 1575e49294c4..3916112d2c29 100644 --- a/dev-python/pyfakefs/Manifest +++ b/dev-python/pyfakefs/Manifest @@ -1,2 +1,3 @@ DIST pyfakefs-5.9.1.gh.tar.gz 255569 BLAKE2B 510e04d23eba15fe3b74c973ef8856851a2cc5b9411273456f631b086af6fa72a4444c1cf4fcd0bb1f59ccc3e551144883181897a8d74736f7e1ed9f16efa303 SHA512 4d869897b98c73e73397032513304116ec1f3740f35831df053e9e80a6d50a5b063034c44269b6c8488119845246f7a4201af6d06ea7611ed988a11564fa0c5a DIST pyfakefs-5.9.2.gh.tar.gz 256364 BLAKE2B 2efa560d8492075570f3e06ea254fbfa550d0edc0bde52b4c94ffeb1a0cbbe246d89d71bb3925129164140793a2ec629b41ba36675c5673781aafa6104b24370 SHA512 323ba306cf7252645eeafb33dc8c7c5c7296dc7418acac7c9c62b8673d658ad737bd1541f5b18e988d718a6442c193d30608720ece6414a1fbb6dbf464f5ddd5 +DIST pyfakefs-5.9.3.gh.tar.gz 256673 BLAKE2B 638720a82f06a0c54298959e4f9d32195fc9ffb2bae00f21fb6c4cc93862e6cb6c5680d7c4e5340ffd6259505f1ce291fdcdbcced077ab89a2b0ba58c365e732 SHA512 5a79fc56836bd8c3416f653c3222f7d93203cff112f08b9ae357b271c695a720f65fc90a8a3bfff2b8b6168ddd8dfba0219ba8582e0f54ec4d9ce393ab55dab9 diff --git a/dev-python/pyfakefs/pyfakefs-5.9.3.ebuild b/dev-python/pyfakefs/pyfakefs-5.9.3.ebuild new file mode 100644 index 000000000000..d9374aa09c61 --- /dev/null +++ b/dev-python/pyfakefs/pyfakefs-5.9.3.ebuild @@ -0,0 +1,60 @@ +# 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_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="A fake file system that mocks the Python file system modules" +HOMEPAGE=" + https://github.com/pytest-dev/pyfakefs/ + https://pypi.org/project/pyfakefs/ +" +SRC_URI=" + https://github.com/pytest-dev/pyfakefs/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + +EPYTEST_PLUGINS=( "${PN}" ) +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # requires *.dist-info/RECORD file that we're stripping + pyfakefs/tests/fake_filesystem_test.py::RealFileSystemAccessTest::test_add_package_metadata + # wants dev-python/openpyxl + pyfakefs/tests/patched_packages_test.py::TestPatchedPackages::test_read_excel + ) + local EPYTEST_IGNORE=( + # test for regression with opentimelineio package + pyfakefs/pytest_tests/segfault_test.py + # test for regression with undefined package + pyfakefs/pytest_tests/pytest_fixture_test.py + ) + + if ! has_version "dev-python/pandas[${PYTHON_USEDEP}]"; then + EPYTEST_IGNORE+=( + pyfakefs/pytest_tests/pytest_reload_pandas_test.py + ) + fi + + case ${EPYTHON} in + pypy3.11) + EPYTEST_DESELECT+=( + # TODO: this test messes up everything + pyfakefs/tests/fake_filesystem_unittest_test.py::TestDeprecationSuppression::test_no_deprecation_warning + # TODO + pyfakefs/tests/fake_pathlib_test.py::SkipPathlibTest::test_exists + ) + ;; + esac + + epytest +} diff --git a/dev-python/pytest-rerunfailures/Manifest b/dev-python/pytest-rerunfailures/Manifest index 201d5fa00fc5..cad53a470734 100644 --- a/dev-python/pytest-rerunfailures/Manifest +++ b/dev-python/pytest-rerunfailures/Manifest @@ -1 +1,2 @@ DIST pytest_rerunfailures-15.1.tar.gz 26981 BLAKE2B 78413183180edccbd9be6ca85ef05be7a1cce96470cf086a056b21231f84a9c7af4a3923fcb18f2081f14e53f6aea7a97807f7c311323cd5b99ff740c9aefedd SHA512 6344d625829038978f9cf224d59d3de07b1afcc6dcea578b22cdff8faefdbcacfaa54d6fc142351f9f5af6bacf6c2bda0e3f62013439b0276e1d48d6c30e8fe0 +DIST pytest_rerunfailures-16.0.tar.gz 28338 BLAKE2B ea90b0fb1fc3aee61f58b475b6ad53f646fcd5fe27233073104124f71e2d44d32381cb130563c3766c7b446328b12c5602b7130ce3b513436bd856d982074126 SHA512 30eb96a1cd442544a99653c4f0291909f330c5beb6a8b29e115bb63db68a35dda1587d093f641b253535503e41bb6282808e8e9583741861dbd27b36d0f1339a diff --git a/dev-python/pytest-rerunfailures/pytest-rerunfailures-16.0.ebuild b/dev-python/pytest-rerunfailures/pytest-rerunfailures-16.0.ebuild new file mode 100644 index 000000000000..6741207a6414 --- /dev/null +++ b/dev-python/pytest-rerunfailures/pytest-rerunfailures-16.0.ebuild @@ -0,0 +1,28 @@ +# 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_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="pytest plugin to re-run tests to eliminate flaky failures" +HOMEPAGE=" + https://github.com/pytest-dev/pytest-rerunfailures/ + https://pypi.org/project/pytest-rerunfailures/ +" + +LICENSE="MPL-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + >=dev-python/packaging-17.1[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGIN_LOAD_VIA_ENV=1 +EPYTEST_PLUGINS=( "${PN}" ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest diff --git a/dev-python/pytools/Manifest b/dev-python/pytools/Manifest index 50fdad663f62..51677cdb7e34 100644 --- a/dev-python/pytools/Manifest +++ b/dev-python/pytools/Manifest @@ -1 +1,2 @@ DIST pytools-2025.2.2.tar.gz 84641 BLAKE2B 942b949ee3d6c0ad27300cd35bb6b8ae44e352943fb7213769e73295cf337164a028a6f58e5f1b4fd427a68b5e877fcb2ce8086cc44f73d0987ffa29c24518d2 SHA512 eaef09ffedec7d73fe9d397502c0f28ad1383f07d68aa8b317c641cc274148a19ea17e1bc07387d4990fce5783031d4040059f0131aaf8660420096a96e27954 +DIST pytools-2025.2.3.tar.gz 85860 BLAKE2B d76daad77e500e1a531f0720ea3b7a7b2b1fb46173df85a852c4eaedf0bc192377aaa308be3d38c32da842d58543b876624b9f84238e836570dc0d048f80cd43 SHA512 4aac187d61c82e7bc871b5fe64e0a3438afb42838ac2f72072caac51f409fb7776230cde672ff9543be5b388407975cdd1a6bce13df7e8e0b1eb3e11371e7b11 diff --git a/dev-python/pytools/pytools-2025.2.3.ebuild b/dev-python/pytools/pytools-2025.2.3.ebuild new file mode 100644 index 000000000000..4d847634cb6a --- /dev/null +++ b/dev-python/pytools/pytools-2025.2.3.ebuild @@ -0,0 +1,33 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{11..14} ) +PYTHON_REQ_USE='sqlite' + +inherit distutils-r1 pypi + +DESCRIPTION="Collection of tools missing from the Python standard library" +HOMEPAGE=" + https://mathema.tician.de/software/pytools/ + https://github.com/inducer/pytools/ + https://pypi.org/project/pytools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv" + +# NB: numpy are an "extra" (optional) deps +RDEPEND=" + >=dev-python/numpy-1.6[${PYTHON_USEDEP}] + >=dev-python/platformdirs-2.2[${PYTHON_USEDEP}] + >=dev-python/siphash24-1.6[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.5[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest diff --git a/dev-python/regex/Manifest b/dev-python/regex/Manifest index 5e92114e9f85..e23210381b58 100644 --- a/dev-python/regex/Manifest +++ b/dev-python/regex/Manifest @@ -1,3 +1,4 @@ DIST regex-2024.11.6.tar.gz 399494 BLAKE2B 5b805e71d505516f1b1454d5198591c902eadf56887529bff988e301af639e891b25196467d4b7e2a55144e223ae731e878e2237c1b1ac7852f282aad1d34e13 SHA512 e04c611c22c07cf649ca01517c2508ea5ffbc0c729c43e6f9e0274a7ede68ace88a452987b50345928317869f710c9c75e0c5a0280e2410fc760bcbac7482dd6 DIST regex-2025.7.31.tar.gz 407354 BLAKE2B 76ff46c4d745c6710faeb2745b7e97260c07093d697dfc26c25118d988d3cb34efdb456417296de8bc3372c2c6e55dc7bb0407a2043ca418ebd1d8cb19a80a18 SHA512 d30a07dee87612efd743eee687c158a886d19de34bcf98183ccbf0c72f911c6f6534875312c46c77506e7897894bf96b6fb42fa7309825e12ea4855045896c3a DIST regex-2025.7.34.tar.gz 400714 BLAKE2B 4eb0c5600b9ef759f1e7511d01d533a3fda7b6010b6c974c0071e7cde2f5bbd9a8c62289b7abb4f2e0d9c251a9421876f6bf0a021892073babffb181d099ae55 SHA512 d30f69559804db12d85ee4c81d7055f3aab70f9a7c86b642932b7a12295ab2a4ca8e2a9bbf3a208b0546b7f7c76c64216cbd0b3ddfb7dfbd3fff7f9d4fa1d9ec +DIST regex-2025.8.29.tar.gz 400817 BLAKE2B 826f2deb3e94069124e35848f2ef33c4eab60464d548c5cba0e3dc16b09185dad0cfc427dde89d38f04f924bb16fbb539d79ebf34d83bcd7c62f344f9ace208d SHA512 9c17e000145523bdbeeffb9cfe177eab89fd55b2bcd7f74d3c122bfed7c7ce42b92b8f6b407157c3f5c84c32b285d24377d27c228ba52ef804ed432d0cd92623 diff --git a/dev-python/regex/regex-2025.8.29.ebuild b/dev-python/regex/regex-2025.8.29.ebuild new file mode 100644 index 000000000000..f59db819ba31 --- /dev/null +++ b/dev-python/regex/regex-2025.8.29.ebuild @@ -0,0 +1,32 @@ +# 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 +# pypy isn't supported upstream because of its UTF8 representation for strings +# See https://github.com/mrabarnett/mrab-regex/issues/521#issuecomment-1936260187. +PYTHON_COMPAT=( python3_{11..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Alternative regular expression module to replace re" +HOMEPAGE=" + https://github.com/mrabarnett/mrab-regex/ + https://pypi.org/project/regex/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos" +IUSE="doc" + +distutils_enable_tests unittest + +python_install_all() { + use doc && local HTML_DOCS=( docs/Features.html ) + local DOCS=( README.rst docs/*.rst ) + + distutils-r1_python_install_all +} diff --git a/dev-python/setuptools-rust/Manifest b/dev-python/setuptools-rust/Manifest index 0345b789e70a..0c87ece07f91 100644 --- a/dev-python/setuptools-rust/Manifest +++ b/dev-python/setuptools-rust/Manifest @@ -43,10 +43,15 @@ DIST precomputed-hash-0.1.1.crate 1640 BLAKE2B 64a37ef3edd317f771e833bb394f7c19b DIST proc-macro-hack-0.5.20+deprecated.crate 15045 BLAKE2B fb7b9fa57ad64f2920e801482bfccc762bb7b2c8c1db7da32f393c7b47414fab37234c8a408a4ca9d7072a541df22b07775fc509f76f352fb6be9fe822f84dfd SHA512 278e786f8e0c93e346de900666b3d55d366324167a2e5e553565870c4444bfe661cf8c151a29cbd3176a4905ec49d69cffb81ae1e4a129f30404f930972c4b43 DIST proc-macro2-1.0.82.crate 48452 BLAKE2B c01f60b788c1395d1041d7eb55fe9519ae4e78f86e3dfa732458747767ff801fcdd5a19a81ee9a8d8cd2457eb0a2bb7cec118299a5a9a64d65b5cf06b9d81165 SHA512 3726463868483243adce01c319c1deb1ab153188f1adcb083b53bff838fa80371091bb8e20ce88709ea850ab3ef74dcd99ca5aa95fa375b330841fd4230c842d DIST pyo3-0.24.1.crate 1113050 BLAKE2B 5a203f8c845b08b40ed64561d385d2e4134a38916723ef6b0b4be8f44fa9de594c4eca138c318ad83a156f66273b20b55acb19897dca3eba5d479e6333be815e SHA512 6c2a8f9d554a3cf151a796ee20610b596ebdbf9e642d6b2ddc35d0142841d7be51e739ddef4332cfa8c4625c972d9705eae5f694b4d8907882bec4add7c6c6ed +DIST pyo3-0.25.1.crate 1121993 BLAKE2B 79a982131fc4c4f9292e97bc8d938d236ee9cefb99bb90646a84703660ad506aee8ae1f1e626d985aa62c695722510f2697544581fa5c3a01f193be2bc2779fe SHA512 9c842c89d274dba0c8a3085a8524736245d65f07e5c05bc13fc89167cfdeb1a4ff2b4a9da9467eee918e45d01777473f39bda11efe0052859969d4fdeac1adc6 DIST pyo3-build-config-0.24.1.crate 34020 BLAKE2B 34ed5a2385de138fde0308439c5fcd8a92a48b215b41799838d5b3106b0845f70023ccd97d60c39cea4729cd8bd850e1ef4e372ac332a06037dc5dd574b09834 SHA512 6008f6737685882b2fd958fcc5f171c0ddc10520631904ca759f857117241dc0a648d4cf30d9a84483662bfbc435eccc3deed9981f98b88016b12a5944ae3ff7 +DIST pyo3-build-config-0.25.1.crate 34126 BLAKE2B ca905f1f74e26f38ab63a4f5754055c9dff01f9396f81ece09b7ce067181b657e6746db3b373f7177805f6564d0df0db064b5fcab8160d5edc357e64dd32d0fc SHA512 d6fe4a46111188203a839c8c73b9835f98cd6bc5982868cbcc9f502c5a09b35c3e61117b50ef8372470051b5bc4959731907748ffca89f42f300a3081b7b0467 DIST pyo3-ffi-0.24.1.crate 76435 BLAKE2B 1fc7b122f0c1064382bf304491617abfd5a8f275ab7511cf31ed892576728b7b55814ea454761bb0fb4d01e263daf8f2c302504fc624970fc9940a5a2cb143fe SHA512 b06265f3852f419a2a788fef049cf9032a5dd4fa6ca818d8d5ceae24b3642164497c61e67492a6576f1c8b22d66e2d887b295c48317fee94f8db8e14de25a71e +DIST pyo3-ffi-0.25.1.crate 78058 BLAKE2B 351fe00c99008a34a003e50cd4f6d25e6dae5a446928358cd5146ac9924254614724a015ae77d8aade7bcb497cf5e5b5018021ff5d89a8efa6412f5ccb48744e SHA512 35ab63888f49df13fab8b96b87f6c705186173923fd5898abe8730675156426f020ee517019926ba5e06cdb4fc5f91a75f648ce9eba892e9eaf3ee17864a8ec7 DIST pyo3-macros-0.24.1.crate 8866 BLAKE2B 48436f5f1a6a6e93d916873be5e18cfdc892d59479e4963f267d2a1805bd134eed6890d53915fdafa8ff93c7458d136b57fbf783bee18f34a6087f7819c9dd92 SHA512 7b9fc55232284d7b138e3e9c9a9c864a1b0d9b5317c3263a057df5dc1976087e934558d6c046d784735e063f1009df35b91776c850ad709800ca8b2be8e993d8 +DIST pyo3-macros-0.25.1.crate 8886 BLAKE2B aad9c975c90ff93429be24287d76edd945578b546a927f54d82b6d4bf184f1f8d426ac112307205346e85999a1e89b097f68310de647f27474790bff01c3517a SHA512 08387f3d1ddb0cc253eed376e6e8ebe5722b31664ec742f16c0454b52f1fbcadbe7720ae9e2d3870fe0ca2690916cf6e3e032f5a3e65d767322c068432f6d470 DIST pyo3-macros-backend-0.24.1.crate 72588 BLAKE2B 35f1810f5d1da5b5f0b5533d0c9e832ea7c7a7a5be20711d9694b84aad62d13b8a9a1c498c61a9a1f2679fda7d25bf508536d38cded43520ed97524681dcfabe SHA512 8378154aa74c75a4d4533de673515298d8ada8377feb687694688bcf21fc5c2bcf856c2db7ce172cb038936b407e57a665ad6c3b9ce1a499a474e54c6bf119ff +DIST pyo3-macros-backend-0.25.1.crate 76006 BLAKE2B 02225f8591585a6cbea7d6e53503bfbac395253cb0f45c588a2eb38908bf241034412832f2fcf4e9301318b5b9b82a888755d970f544f402a4f0cf9e4a6eefe9 SHA512 4c9006424630ab9bcd5dcdd45fe927a95a40a61757f0950396eb9f0c3f1794772092a19773c102220489cc621ad65d81dbbe459a1be472f6cd3211c50ef33cc2 DIST quote-1.0.36.crate 28507 BLAKE2B b93495163ed205e33543ed45f084870240d479071d643704b6e348fb9ada6e1d8401893c13348b9964f4b6b17ddb96cb5458eec540f0d761655fcb96a4cd9129 SHA512 f1f002a912692f7ffd4912ca980ec57ff4aca3a7d9e2e42e9e3409e2105c9f59d86c05719f6af309bccaef2f8843b0848a6e3afda3356e045d8e7cc5956ae685 DIST rand-0.7.3.crate 112246 BLAKE2B ecc7c1bd70ac874c03bd8b7faa3016bb2d5ee5c19603280a12a45a81598f706e445971ee081e6ca410ab6f0f5f7a06d9315848cd556a2d8522a82024f6ff91e4 SHA512 f9b68ef9446f1ca2c8092c50990f15c1b4cb5529eeeac4df8d69755e0b7253c663c587775e7cb0a7298c31edb444975dda34926759306541f6d43d0d3cf57b7e DIST rand-0.8.5.crate 87113 BLAKE2B 516f26bb2a969d0d79e957818133f35d2c0b4d9f1b401098ea23c5b80d27599e842b9298c0c5e46e2a6cb6953857bf8a9fb71ec9366c5ce6708cf17df14f179c SHA512 8b33a8988906ba5e2057a9a84bdd11f867a5536c22f5056eec59ed4ec4e3a6da2fd773da4c0510d343762e5a4ea0f007db4c4a7cef87a47f90e36c1a84d86fb2 @@ -65,6 +70,7 @@ DIST serde-1.0.200.crate 77611 BLAKE2B 57f4a76cf534ffda009a5441e694b0ac87b30e470 DIST serde_derive-1.0.200.crate 55785 BLAKE2B 45eca5504aff6bd099a42dfc794cf732c7e76e5ed362d16082ac069d29e1e6c22bb3e13dede4bc498df8f008bdba15479de618380f37c9742a34d97c9ca12efe SHA512 e70f0e092d81542a96b33610da8ddbf04023d8ecc1fa4a4f31978699c118f096e8534f9e3e4e479ee74280efb86d752dd1fce038ef2def329fdcc10c1aa50942 DIST servo_arc-0.1.1.crate 9817 BLAKE2B 88586ca0c969df8bfb3a04ba4a689606995876434877a2cd48a72b26451deb6fdcf65273aa9b03948adcbc66b2450301840910e5c4162b993535d69585c62128 SHA512 59d531dcf7a9191b8462ce395e713194994714b65275c0af412186f862be169d0c6fc5d86603332a1aacd8af9ace934dc78531b9cb576cf8179ec35709225447 DIST setuptools-rust-1.11.1.gh.tar.gz 305306 BLAKE2B ffeead1cb92290dd7ab2cd5a92e07144f23ba10a05b7690a25f53a0bae4bde3ed6472a821efd976a41ab42d36bda37e7fd8f54eccb22944b6c22227fd94cc9c1 SHA512 2234454cb215e66135bdb737b007d74005f3d377d7912953506e3ed631f0a382bde392ea2e357619f644f14c0c3ddab7d9696fb11d8e62d78efba9cf3a5327c3 +DIST setuptools-rust-1.12.0.gh.tar.gz 305563 BLAKE2B 8565385eeaa081b72b384406beed3fd5ac28cfb03b5a3732630c8fdac0be3b59d7c22d25ff3f13d08a5790af277f933759354b60a1f55336a5f8a7c7ecef3616 SHA512 59c3a32fcb6a306c57b9c43c75c1abef96c2865546083279d0b363115ff2eb493d8d6dba226a26f97c976aa4b5db3b69378cd32ab76a4c59959ed0a26cc980e6 DIST siphasher-0.3.11.crate 10442 BLAKE2B 771221614bbd56f609b9743da4352dc7a2cbd0f6257952fab0cd052e5e5b258a4c95a0461d6d1b579dec90b72d66a0e58e036899b3db8341ae753a421a4cd4d5 SHA512 601121bd41da896142dc6ccc74a6eec3ebee3e976857ab8b5d21e915fdc8bc6e979af66a489c406371fbbbfc7a13338cc4b3744aa981206e43c53998f3e1699b DIST smallvec-1.13.2.crate 35216 BLAKE2B 31a268aad595c06cdb078577a97b089dbea156a0df307a3e6aaaf4861bd9a680c5b11921da9dbdb1bcfe17d58c0cbede1ffe6bba3aef59b384fb1b9703c62d27 SHA512 a97c758b668e40ad9eb572e65feeae4954e09200a04ab92e26a13b48894381cd3a3d2571070c4b7a5e181182e1ede9688f990650342ec69ecfe1a264d234c679 DIST stable_deref_trait-1.2.0.crate 8054 BLAKE2B 287a65c3e5b47213544a43e57c60a54add60b4c2e3c8d042407d860cc950ba7ca01a2e67ce56aed6744992b61ec1f9aed3321e3d88482e33129548b7d51df205 SHA512 a13cfb22723f1f2cf089b2d07d657846f50c37bc0438d1a76096bea30214cad226b7a422c21f9e191ce87071da8a141d61882aedf9e0203a5fffdfda86a5fb03 diff --git a/dev-python/setuptools-rust/setuptools-rust-1.12.0.ebuild b/dev-python/setuptools-rust/setuptools-rust-1.12.0.ebuild new file mode 100644 index 000000000000..63125c20b489 --- /dev/null +++ b/dev-python/setuptools-rust/setuptools-rust-1.12.0.ebuild @@ -0,0 +1,178 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CARGO_OPTIONAL=yes +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +CRATES=" + autocfg@1.3.0 + bitflags@1.3.2 + bitflags@2.5.0 + byteorder@1.5.0 + cfg-if@1.0.0 + convert_case@0.4.0 + cssparser-macros@0.6.1 + cssparser@0.27.2 + derive_more@0.99.17 + dtoa-short@0.3.4 + dtoa@1.0.9 + futf@0.1.5 + fxhash@0.2.1 + getrandom@0.1.16 + getrandom@0.2.15 + heck@0.5.0 + html5ever@0.25.2 + indoc@2.0.5 + itoa@0.4.8 + kuchiki@0.8.1 + libc@0.2.154 + lock_api@0.4.12 + log@0.4.21 + mac@0.1.1 + markup5ever@0.10.1 + matches@0.1.10 + memoffset@0.9.1 + new_debug_unreachable@1.0.6 + nodrop@0.1.14 + once_cell@1.19.0 + parking_lot@0.12.2 + parking_lot_core@0.9.10 + phf@0.8.0 + phf_codegen@0.8.0 + phf_generator@0.10.0 + phf_generator@0.8.0 + phf_macros@0.8.0 + phf_shared@0.10.0 + phf_shared@0.8.0 + portable-atomic@1.6.0 + ppv-lite86@0.2.17 + precomputed-hash@0.1.1 + proc-macro-hack@0.5.20+deprecated + proc-macro2@1.0.82 + pyo3-build-config@0.25.1 + pyo3-ffi@0.25.1 + pyo3-macros-backend@0.25.1 + pyo3-macros@0.25.1 + pyo3@0.25.1 + quote@1.0.36 + rand@0.7.3 + rand@0.8.5 + rand_chacha@0.2.2 + rand_chacha@0.3.1 + rand_core@0.5.1 + rand_core@0.6.4 + rand_hc@0.2.0 + rand_pcg@0.2.1 + redox_syscall@0.5.1 + rustc_version@0.4.0 + scopeguard@1.2.0 + selectors@0.22.0 + semver@1.0.23 + serde@1.0.200 + serde_derive@1.0.200 + servo_arc@0.1.1 + siphasher@0.3.11 + smallvec@1.13.2 + stable_deref_trait@1.2.0 + string_cache@0.8.7 + string_cache_codegen@0.5.2 + syn@1.0.109 + syn@2.0.61 + target-lexicon@0.13.2 + tendril@0.4.3 + thin-slice@0.1.1 + unicode-ident@1.0.12 + unindent@0.2.3 + utf-8@0.7.6 + wasi@0.11.0+wasi-snapshot-preview1 + wasi@0.9.0+wasi-snapshot-preview1 + windows-targets@0.52.5 + windows_aarch64_gnullvm@0.52.5 + windows_aarch64_msvc@0.52.5 + windows_i686_gnu@0.52.5 + windows_i686_gnullvm@0.52.5 + windows_i686_msvc@0.52.5 + windows_x86_64_gnu@0.52.5 + windows_x86_64_gnullvm@0.52.5 + windows_x86_64_msvc@0.52.5 +" + +inherit distutils-r1 cargo + +DESCRIPTION="A plugin for setuptools to build Rust Python extensions" +HOMEPAGE=" + https://github.com/PyO3/setuptools-rust/ + https://pypi.org/project/setuptools-rust/ +" +SRC_URI=" + https://github.com/PyO3/setuptools-rust/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz + test? ( + ${CARGO_CRATE_URIS} + ) +" + +# crates are used at test time only, update via pycargoebuild -L -i ... +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + ${RUST_DEPEND} + <dev-python/semantic-version-3[${PYTHON_USEDEP}] + >=dev-python/semantic-version-2.8.2[${PYTHON_USEDEP}] + >=dev-python/setuptools-62.4[${PYTHON_USEDEP}] +" +BDEPEND=" + >=dev-python/setuptools-62.4[${PYTHON_USEDEP}] + test? ( + ${RDEPEND} + dev-python/beautifulsoup4[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/cffi[${PYTHON_USEDEP}] + ' 'python*') + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + ) +" + +export PYO3_USE_ABI3_FORWARD_COMPATIBILITY=1 + +src_unpack() { + cargo_src_unpack +} + +python_test() { + local examples=( + html-py-ever + namespace_package + rust_with_cffi + ) + for example_dir in ${examples[@]}; do + pushd examples/${example_dir} >/dev/null || die + einfo "Running ${example_dir} test" + esetup.py build --build-lib=build/lib + + case ${example_dir} in + html-py-ever) + pushd tests >/dev/null || die + local -x PYTHONPATH=../build/lib + ${EPYTHON} run_all.py || die "Tests failed with ${EPYTHON}" + popd >/dev/null || die + ;; + *) + pushd build/lib >/dev/null || die + epytest ../../tests + popd >/dev/null || die + ;; + esac + + rm -rf build || die + popd >/dev/null || die + done +} diff --git a/dev-python/statsmodels/statsmodels-0.14.5.ebuild b/dev-python/statsmodels/statsmodels-0.14.5.ebuild index 29c04c9dd534..b081774ce079 100644 --- a/dev-python/statsmodels/statsmodels-0.14.5.ebuild +++ b/dev-python/statsmodels/statsmodels-0.14.5.ebuild @@ -18,7 +18,7 @@ HOMEPAGE=" LICENSE="BSD" SLOT="0" -KEYWORDS="amd64 ~arm64 ~riscv ~amd64-linux" +KEYWORDS="amd64 ~arm64 ~riscv ~x86 ~amd64-linux" IUSE="examples" # NB: upstream requires building with numpy-2 but supports 1.x diff --git a/dev-python/tox/Manifest b/dev-python/tox/Manifest index 05e0bdb6474a..7513bcd4e7a4 100644 --- a/dev-python/tox/Manifest +++ b/dev-python/tox/Manifest @@ -1,3 +1,4 @@ DIST tox-4.26.0.tar.gz 197260 BLAKE2B be05b52e88e3a3d0484203cb893af25e6e6e6f3719cf9e8d5cecf5343e22382b86676345ce00219d599353330ade897f710daf4976e48c2d7277664094a263c9 SHA512 ad2e311cd63c45a079b8c230a2feb364270b7a8bcf44b626385f8e442c6683ae841b3f34417b504f927608685a254fef3767d832fb5cfcc324c9cbf6ff7ea997 DIST tox-4.28.3.tar.gz 199617 BLAKE2B 4bccdf5e4202bb5ea27868ebbf9aadb9f9447a474540a7c41f2b960ef685c8ff7a273da5a920c998eff62cbea891170dc7f3a6b6f814149d37e69560902231d6 SHA512 149a303b3af65987f165e1237dc0f7591bc4970cbb8c5002b6bd927afafb3f76c748757f5b3014f754903b191587181148c17ca83fd1337b7e96bf0cd087bd2a DIST tox-4.28.4.tar.gz 199692 BLAKE2B 0cefd242537cf1f8bd29dac7d3b2553c019b9878d9abbd8388047f6b276287996274f4957ec541e814d5db175784d25ad4e56605d962b9646b66b1e37b13e51b SHA512 f1f19cb41f54a63036cb32e4f4e8ee281b687f71b8baab9cd0d06287af52e84a75eca99a27b5b450105753c1a31cc9b2a53c8cff8e60878a93275dfaf42c94c0 +DIST tox-4.29.0.tar.gz 200853 BLAKE2B 6b9ea0be59a0a73d71b87f4f7b5aa5ca075b80316d5ce2a52a093a717c63eef7cf250efb692a4d962abdeb6f421628cb726b41eb674bebc1f43573813545ad85 SHA512 9f1a88c42d90717f59a414490052107f6f2d357bf981ad6d0c63569af31d2215e626a28c1b3fcdd7e30883f0df5fda0207ed12f91683b0d3261b69af630fa84a diff --git a/dev-python/tox/tox-4.29.0.ebuild b/dev-python/tox/tox-4.29.0.ebuild new file mode 100644 index 000000000000..40f54eaddd32 --- /dev/null +++ b/dev-python/tox/tox-4.29.0.ebuild @@ -0,0 +1,89 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="virtualenv-based automation of test activities" +HOMEPAGE=" + https://tox.readthedocs.io/ + https://github.com/tox-dev/tox/ + https://pypi.org/project/tox/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/cachetools[${PYTHON_USEDEP}] + dev-python/chardet[${PYTHON_USEDEP}] + dev-python/colorama[${PYTHON_USEDEP}] + dev-python/filelock[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/platformdirs[${PYTHON_USEDEP}] + dev-python/pluggy[${PYTHON_USEDEP}] + dev-python/pyproject-api[${PYTHON_USEDEP}] + dev-python/virtualenv[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/build[${PYTHON_USEDEP}] + dev-python/distlib[${PYTHON_USEDEP}] + dev-python/psutil[${PYTHON_USEDEP}] + dev-python/re-assert[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + dev-python/time-machine[${PYTHON_USEDEP}] + ' 'python*') + ) +" + +EPYTEST_PLUGINS=( pytest-{mock,rerunfailures,xdist} ) +distutils_enable_tests pytest + +src_prepare() { + # upstream lower bounds are meaningless + sed -i -e 's:>=[0-9.]*::' pyproject.toml || die + distutils-r1_src_prepare +} + +python_test() { + # devpi_process is not packaged, and has lots of dependencies + cat > "${T}"/devpi_process.py <<-EOF || die + def IndexServer(*args, **kwargs): raise NotImplementedError() + EOF + + local -x PYTHONPATH=${T}:${PYTHONPATH} + local EPYTEST_DESELECT=( + # Internet + tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_build_wheel_external + tests/tox_env/python/virtual_env/package/test_package_cmd_builder.py::test_run_installpkg_targz + ) + local EPYTEST_IGNORE=( + # requires devpi* + tests/test_provision.py + ) + + case ${EPYTHON} in + python*) + local EPYTEST_PLUGINS=( "${EPYTEST_PLUGINS[@]}" time-machine ) + ;; + pypy3*) + EPYTEST_DESELECT+=( + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[constraints-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[explicit+requirements-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_indirect-True-True]' + 'tests/tox_env/python/pip/test_pip_install.py::test_constrain_package_deps[requirements_constraints_indirect-True-True]' + ) + ;; + esac + + epytest -o addopts= +} |
