diff options
| author | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2025-03-20 08:56:18 +0000 |
|---|---|---|
| committer | Liguros - Gitlab CI/CD [develop] <gitlab@liguros.net> | 2025-03-20 08:56:18 +0000 |
| commit | a4ba7e428342eb91e7e06afd240c5618c96e03d0 (patch) | |
| tree | aeede425a280537996a45a3538e80b4f067ac166 /dev-python | |
| parent | 31d4271c74f4334c8c37de8b6c5fd2634084bb76 (diff) | |
| download | baldeagleos-repo-a4ba7e428342eb91e7e06afd240c5618c96e03d0.tar.gz baldeagleos-repo-a4ba7e428342eb91e7e06afd240c5618c96e03d0.tar.xz baldeagleos-repo-a4ba7e428342eb91e7e06afd240c5618c96e03d0.zip | |
Adding metadata
Diffstat (limited to 'dev-python')
104 files changed, 1934 insertions, 2750 deletions
diff --git a/dev-python/aiohttp/aiohttp-3.11.13.ebuild b/dev-python/aiohttp/aiohttp-3.11.13.ebuild index a0fbae8f985c..d6a173a61329 100644 --- a/dev-python/aiohttp/aiohttp-3.11.13.ebuild +++ b/dev-python/aiohttp/aiohttp-3.11.13.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~mips ~ppc ppc64 ~riscv ~s390 sparc x86" IUSE="+native-extensions test-rust" RDEPEND=" diff --git a/dev-python/authres/authres-1.2.0-r1.ebuild b/dev-python/authres/authres-1.2.0-r1.ebuild index 863e55ecfc7f..089c93ccb48c 100644 --- a/dev-python/authres/authres-1.2.0-r1.ebuild +++ b/dev-python/authres/authres-1.2.0-r1.ebuild @@ -16,7 +16,7 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="amd64 arm64 x86" +KEYWORDS="amd64 arm64 ~riscv x86" python_test() { "${EPYTHON}" -m doctest -v authres/tests || diff --git a/dev-python/bitarray/Manifest b/dev-python/bitarray/Manifest index 4fe44f1a2a82..48e00f3e2554 100644 --- a/dev-python/bitarray/Manifest +++ b/dev-python/bitarray/Manifest @@ -1,3 +1,3 @@ DIST bitarray-3.0.0.tar.gz 126627 BLAKE2B c00d45f2ac165c8bd801932cadf2437b1665f7acf2aea821f976c9550a188443d43b6ace08d3af8db2c27331dd090e51174f96b92aa8ebcf3eb5210d52b5d336 SHA512 36ff7305e66bb766888de7598d6596315caeb34acfb6dcc56130b9ddefea15b31e90eabb8b65ce676bbec08c38e8cd39784edfa8b50f53c3f7a6b7f23795fa85 -DIST bitarray-3.1.0.tar.gz 127114 BLAKE2B 1f2f764ef4072eb4c13c91e3c737cb53f849951f5b8d81cf3d7a41d81e28651b65110a446f9bb413cb433a17f43f6f579e38b24e002bc7c5906ef250f75de94e SHA512 2a1b267f4ead5e0d8daa502d6bda9462922d66cb129589814e90f710c807c6b23a118afd3676fa9834f8f9bac1cbf8a9c4340bdf6457fc1503ce712ace7584fa DIST bitarray-3.1.1.tar.gz 135976 BLAKE2B b27949162c185e2b5631bd4758d6b7c070cc9ffcf9aa22dd343c29eb9e40b97e591f957b7e4882aadd805d84b7ac7c08ffa020431869aa180b2d6f6414abc1bc SHA512 dc34dff5c10c8eb5b0693a680a999c9ecd9d7ea0680404a6f97094fc450c96f5c4a16c49e4c5f4a5fea54ba46b6a49794d0a48c6ab7b0422f1a9b356d71c514c +DIST bitarray-3.2.0.tar.gz 137064 BLAKE2B bb84759f4cfc35879645ebb4384194e9b14ff0b25fff5eaf4fc2d828d250f97a0417eee72e4eddf98d9a4761e8de421ec663e4e05f879d606ed5c6aea602e73b SHA512 cacaf04800309f7eda59f02473afb6497cd49c245cc01b1e472f6e9917e36332c05bc123b152c289fb3a7adeaa9b308190b1e183f749d8711bc91c47ea7c6e02 diff --git a/dev-python/bitarray/bitarray-3.1.0.ebuild b/dev-python/bitarray/bitarray-3.2.0.ebuild index aea47d8e463c..aea47d8e463c 100644 --- a/dev-python/bitarray/bitarray-3.1.0.ebuild +++ b/dev-python/bitarray/bitarray-3.2.0.ebuild diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest index 56c28a34dbee..8e6cf5dd9a8d 100644 --- a/dev-python/boto3/Manifest +++ b/dev-python/boto3/Manifest @@ -1,4 +1,6 @@ DIST boto3-1.37.13.gh.tar.gz 913692 BLAKE2B cc8b3dbe1f30d5969b8d0abb64b0ff6b7b6c72596c23dee90ad3ca08a0ac09b0b509dfb038ca4434461dd7375f155e5afaf541ed4224610f14793d5cf9a15ed6 SHA512 25fc69799cbabf7e834ddfda5e1a1dadaab42731721a64a09020a58b2c12ddae489eef5a28c687a7f04d39a3fb3ef007739acb3c59882f7d1cc04d64f6211e67 DIST boto3-1.37.14.gh.tar.gz 914511 BLAKE2B 0c175c4213ccb02e338fa42733032c6578983a313d3f1a6b0efdc90d1cd99b736af0a241959afe48ed16a4e16ca6202e2e4de4efe0a8b38b42a830f76001d794 SHA512 a238502382f19c697f6d6a1b8ea3293ead6232654a20a193fde6866a7a1915b3355bd0dec810eecad2b9023640623ae5ce1fdfa473743eeda89936eebd959ded +DIST boto3-1.37.15.gh.tar.gz 914892 BLAKE2B 139f7b6b6f7d092113a0be77338c53ae955bccd29900ad630867788f935cdbb2a7212b03b322fb5c9366d6f68cab5ce0a7386685eb537e1655aecd4778fbbc7b SHA512 c5da973796066b56893f88a93867441e0186add4b86ec30791010c7e09deaeabb495bf40781cff847b818e31e801848233a422b3d2d0ad49dd6e51d2ebcdb05c +DIST boto3-1.37.16.gh.tar.gz 915317 BLAKE2B 2404b868dea6b75a5036ab7852789c78fad85f929bc0aaafea74714c3f38eb934e0bfa5ac0928d206fc0975adc807b12ddb625883834532954b50721d683d4a9 SHA512 d571fa3264b2cdc3243da1fac271e1ff1c7d9b77aa2679f532b43277189db5be5cba322a8ceb003c587f05e786e59fd1ec0a05f0a717e3d705426012227eeebe DIST boto3-1.37.4.gh.tar.gz 908620 BLAKE2B ed63365ccd6da9b97715e4110be2b562285a123139a90ddb10c1411d5bd5ba0de9c110177a31f03ecb7e257fd79a0de89a8be97493a83f3207050676f7022e04 SHA512 dbf40cb809ee1d3ef352b97f62c111d113293211226a63298979d8ea14833c83ac2e321714dac349bfe095f75120c2752d08a01c19e51d9b0fc947e27a910005 DIST boto3-1.37.9.gh.tar.gz 911836 BLAKE2B d190525b9c5e39b445042aba6d8e57da5e49165775901ceebe44b76fd2780ec85a2f5a8a08d3a9a5e451d42bbae19b679e565a7a9acc663258ea0b7909a9a798 SHA512 12cba48d5f2c158b372eaf4e44903e22ca963e5712c3c463fbfd20626a771efe30530852b6c9ab70132a26472ff1b4656095675a5de37524f6b489c25175f8fe diff --git a/dev-python/boto3/boto3-1.37.15.ebuild b/dev-python/boto3/boto3-1.37.15.ebuild new file mode 100644 index 000000000000..dfe05b3d9a81 --- /dev/null +++ b/dev-python/boto3/boto3-1.37.15.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_{9,10,11,12,13} ) + +inherit distutils-r1 + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE=" + https://github.com/boto/boto3/ + https://pypi.org/project/boto3/ +" +SRC_URI=" + https://github.com/boto/boto3/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + >=dev-python/botocore-${PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.11.0[${PYTHON_USEDEP}] +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # do not rely on bundled deps in botocore (sic!) + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_python_prepare_all +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests/{functional,unit} +} diff --git a/dev-python/boto3/boto3-1.37.16.ebuild b/dev-python/boto3/boto3-1.37.16.ebuild new file mode 100644 index 000000000000..dfe05b3d9a81 --- /dev/null +++ b/dev-python/boto3/boto3-1.37.16.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_{9,10,11,12,13} ) + +inherit distutils-r1 + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE=" + https://github.com/boto/boto3/ + https://pypi.org/project/boto3/ +" +SRC_URI=" + https://github.com/boto/boto3/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + >=dev-python/botocore-${PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.11.0[${PYTHON_USEDEP}] +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # do not rely on bundled deps in botocore (sic!) + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_python_prepare_all +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests/{functional,unit} +} diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest index bdf7a911453f..e511f5441bce 100644 --- a/dev-python/botocore/Manifest +++ b/dev-python/botocore/Manifest @@ -1,4 +1,6 @@ DIST botocore-1.37.13.gh.tar.gz 14365580 BLAKE2B 5dac1351dde66b7a2591faedd6ff9f0a05b02d7fa5f2d9f212a25e979f8b6f2a177c23843ee9d5949e83ce9cb44cdb1c9b75a9ee3e9e21ad69fa99458d733fcf SHA512 6635b42a6c29e6fc8293535f939463a77bcfb9abd7211a3043d9da60ecf291fc7bd8704902bfca0667be37448b1d5230393afaf1d32ef5be821d8d60a8578144 DIST botocore-1.37.14.gh.tar.gz 14368684 BLAKE2B 43d5adc8f5fa3647246a2bd581f3ac1f14f90f96e8ece75e678d2a468baaaa3e1045698a09b8c41a5134028a4b6cb59b5a6cbc394b928d9309269784a3f3b1f9 SHA512 1df5055f3bedcc7f7120f041b707eff5622071b3ba6aa6954c239ec1a6b8295014961e99d6ceb817b051d15144ef0064262d1c2dc1768e48273875993a5a2e8d +DIST botocore-1.37.15.gh.tar.gz 14375061 BLAKE2B ed93870aece21913f88ff87cd29d3e51bc868eb5fb75d183ac54953f0a7d5af0e379fd3e0b014d860ca7655d5b489e244dd18203f6a80dbf87f034a50d4de141 SHA512 0f29b962b125796dda97721155914bc4f78da102587dac3e0a38990929a38b58502c39ae4559d8c6dfb59aa4a277441856442dfee909eb68b35265c20a6e9cbd +DIST botocore-1.37.16.gh.tar.gz 14377645 BLAKE2B 40a38516282eacbc398527d7d76d4c13478263b1bf6336f4fe9a6e119c75f5615f2b40566686a84da326a85139d190b8628ef7b30f31e42b8b5a16d237315dbe SHA512 491e87293f9e98bf802982a268ec191d6ea74b861a96d38991605c3c48e93fabe2edffe84dfe75e681c307dec58fa36dbc7d1876c4091f8b3b8c8fa5499f63af DIST botocore-1.37.4.gh.tar.gz 14291786 BLAKE2B ab55a62f2291e623e61a0ec6712241815279ae6d8f25e678adbf6cf167265d216f44b0eae78f2b66a454253dc4ef977b90c38f1aa329c855b38fa844eaa478b7 SHA512 07921ca8d51ff2afd8a4dafa77b40b5c24afa0351d71dbf68cef716573ba1f695a331634734fb6d9822eee55c91829128dbf215920e3da92ea2b40b727d0a0f6 DIST botocore-1.37.9.gh.tar.gz 14346488 BLAKE2B 29ac550ad462ab7c83bad7989588ec62fb57959586a8ec91be9756d90712ad86e3dfd813a347e619b7cac3fd7afb56affcd81926e15d91b8d0ceae2cd4436a8d SHA512 e191c9485e95188049c02020fcb32c4429de6cfd78f237a2026200b7240890d5759f5cdd96166cd2aec035dac82d32db155fe00d9ec6be482c655cfdb44265f9 diff --git a/dev-python/botocore/botocore-1.37.15.ebuild b/dev-python/botocore/botocore-1.37.15.ebuild new file mode 100644 index 000000000000..df85ee0d220c --- /dev/null +++ b/dev-python/botocore/botocore-1.37.15.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_{9,10,11,12,13} ) + +inherit distutils-r1 + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE=" + https://github.com/boto/botocore/ + https://pypi.org/project/botocore/ +" +SRC_URI=" + https://github.com/boto/botocore/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + <dev-python/jmespath-2[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +# unbundled packages +RDEPEND+=" + dev-python/requests[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/jsonschema[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + + # unbundle deps + rm -r botocore/vendored || die + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # rely on bundled six + tests/functional/test_six_imports.py::test_no_bare_six_imports + tests/functional/test_six_threading.py::test_six_thread_safety + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests/{functional,unit} +} diff --git a/dev-python/botocore/botocore-1.37.16.ebuild b/dev-python/botocore/botocore-1.37.16.ebuild new file mode 100644 index 000000000000..df85ee0d220c --- /dev/null +++ b/dev-python/botocore/botocore-1.37.16.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_{9,10,11,12,13} ) + +inherit distutils-r1 + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE=" + https://github.com/boto/botocore/ + https://pypi.org/project/botocore/ +" +SRC_URI=" + https://github.com/boto/botocore/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux" + +RDEPEND=" + <dev-python/jmespath-2[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +# unbundled packages +RDEPEND+=" + dev-python/requests[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/jsonschema[${PYTHON_USEDEP}] + ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + + # unbundle deps + rm -r botocore/vendored || die + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # rely on bundled six + tests/functional/test_six_imports.py::test_no_bare_six_imports + tests/functional/test_six_threading.py::test_six_thread_safety + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest tests/{functional,unit} +} diff --git a/dev-python/cfn-lint/Manifest b/dev-python/cfn-lint/Manifest index 906fd65ed361..3e8ef108edae 100644 --- a/dev-python/cfn-lint/Manifest +++ b/dev-python/cfn-lint/Manifest @@ -1,7 +1,6 @@ -DIST cfn_lint-1.24.0.tar.gz 2803280 BLAKE2B b859d41231c915c1a06939c75af91da619cc7c3ed7cd95196e0dc708a460e320eaa312197007e54037601db861b5332bdb27d5bae9a5d603171adf492d89968a SHA512 c9d1984671fbcadc659211d74cdc797924d7a0cffe3baaa284438831fca61b53adfcc615b93e23e946058a9ffc278cc5c088e5c24f2745035f32e9f6cdae24be -DIST cfn_lint-1.25.1.tar.gz 2837233 BLAKE2B 0779afe85f8cc1190f24fb9531c576b61a2921be1e725289c164c5113cfffeca6ad984832c0efa10cb6e7dbb78515b24fea3dbb5da3ef4b63765ed80eb1294af SHA512 f623dc24d3a6e3425e9c764498c874afcbc9406a31d8aa4f2c1a0a14e3dd4446584a0524d5a6d016bdcc95810907418b7dda9883d80d9ff2f3ae9385453d428a -DIST cfn_lint-1.26.1.tar.gz 2943127 BLAKE2B ca87cf05d0b5ed3774c6c216f856c057bc04b9353f41feb4b1090c7d809685dc65057dab9b1b121fda78488c55bc8da2b3303a25a5047340843723a2e5d3849a SHA512 a8c14275188d64e7ff53d5dd798805a69cf3fc4b13ca9cce19775cd4033b0a0a5815efb9f6900ed8d4116c8877ce62117738098d500373ae6ba3984fe4170ff1 DIST cfn_lint-1.27.0.tar.gz 3023073 BLAKE2B 5540d44e40810b17ff6cbf699f14f0a80b70376e8ddf2b66e2623a6a29dbbbd76ef55645fb03f167639119ff6fd0584128b808bce210e9b06f9b7cf8e33b6f15 SHA512 be1b4ec9848d927d478130df3cfd1853be694e65999050d524eab90e08cff25f6751c3b83ecdb4e1da5c4ab69d96c57694d857ce39ece0b6b60c628776a7cc6b DIST cfn_lint-1.28.0.tar.gz 3162534 BLAKE2B 120831c39c09419744c048d8c5d4ba8978ae50fe873841e3ab4bea82a83965bd5d7b9c2ccf1895e7fc981d4acc982827cd4a8af352ccdc6ecdab8dbf62396783 SHA512 69325f028beb6ddb05db144f2409575bdf4cc17efe9ee5c4a221aa82e09cafd6e97521398fbd52e5b797e67aedc3581d6455523490e23cd88d01e7af62436dd7 DIST cfn_lint-1.29.1.tar.gz 2829516 BLAKE2B a624ed18ffe214dafccf807cd71de3ca5285224d090ba1becbca76e541261061843153142487f48000530b8ab5818b434f8ffb8e131d8ad8d345d3590e5f9767 SHA512 bbf4cac928bd419b75b93e9d049d14bc36dd46a599fd497296aa47c8818462b74897716009689b7512454172257499142b18dc4af65e9f0bf011a2af45116ade DIST cfn_lint-1.30.0.tar.gz 2832092 BLAKE2B 0d69bc3702447828c5a03662d00f62e1ee421a554354dc3e754ed509108d0f5ef031e4e256de51476bb4904bba34089ac263203bd688d3c27fff050655b5a35a SHA512 0a8819b5ca691a308622a1a394d19c633c06253f3b8a480a95c12dfcebb94220f0464f11e51ee9719f2d00d097520226d9c2ab6b8944ff0b00e117de21d458d9 +DIST cfn_lint-1.31.1.tar.gz 2855924 BLAKE2B 753c23cb4f45e17e9a2f5215f819d63a0cf330d4677bf89adce9da3cf3eea0ecbc7c192520747b1ffdbd830891fb5a6ffbc181d1bc924fe4f105c597a96969e8 SHA512 cf75ef2b8b9e24be00aa334604e2dbbe312e6cd45a527ecd8a150c7bf93f477258c606f86f87c815901182b2b2921fa23d47e5bade368e8bc3099024dc0e1d0f +DIST cfn_lint-1.31.3.tar.gz 2856311 BLAKE2B 46c7dee3b3a70f59675dd3879604a0860b99b193ce37e11b05f60bb08d1f3e97da7887b8d13be48d5721826ca46f5bdca61945b8d2fc6558d9290eec5257fa64 SHA512 4d63d3d529b292125be9b139ebc73ae75024e61afa0928afd6f73f573aaadd9cb1e359cf4bc61aa245c05de86406b9894bca1519b682248946eff0664bbefeba diff --git a/dev-python/cfn-lint/cfn-lint-1.24.0.ebuild b/dev-python/cfn-lint/cfn-lint-1.24.0.ebuild deleted file mode 100644 index f52ac728e3f2..000000000000 --- a/dev-python/cfn-lint/cfn-lint-1.24.0.ebuild +++ /dev/null @@ -1,70 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{9,10,11,12,13} ) - -inherit distutils-r1 pypi - -DESCRIPTION="CloudFormation Linter" -HOMEPAGE=" - https://github.com/aws-cloudformation/cfn-lint/ - https://pypi.org/project/cfn-lint/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 arm64 ~riscv x86" - -RDEPEND=" - >=dev-python/aws-sam-translator-1.94.0[${PYTHON_USEDEP}] - dev-python/jsonpatch[${PYTHON_USEDEP}] - >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}] - <dev-python/jsonschema-5[${PYTHON_USEDEP}] - >=dev-python/jsonschema-3.0[${PYTHON_USEDEP}] - dev-python/junit-xml[${PYTHON_USEDEP}] - <dev-python/networkx-4[${PYTHON_USEDEP}] - >dev-python/pyyaml-5.4[${PYTHON_USEDEP}] - >=dev-python/regex-2021.7.1[${PYTHON_USEDEP}] - >=dev-python/sarif-om-1.0.4[${PYTHON_USEDEP}] - >=dev-python/sympy-1.0.0[${PYTHON_USEDEP}] -" -BDEPEND=" - test? ( - dev-python/defusedxml[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -src_prepare() { - # unpin the deps - sed -e 's:~=[0-9.]*::' -i pyproject.toml || die - distutils-r1_src_prepare -} - -python_test() { - local EPYTEST_DESELECT=( - # TODO - test/unit/module/test_template.py::TestTemplate::test_build_graph - # requires git repo - test/unit/module/maintenance/test_update_documentation.py::TestUpdateDocumentation::test_update_docs - # Internet - test/unit/module/formatters/test_formatters.py::TestFormatters::test_sarif_formatter - test/unit/module/maintenance/test_update_resource_specs.py::TestUpdateResourceSpecs::test_update_resource_specs_python_3 - # TODO: it looks as if AWS_DEFAULT_REGION didn't work - test/unit/module/core/test_run_cli.py::TestCli::test_bad_config - test/unit/module/core/test_run_cli.py::TestCli::test_override_parameters - test/unit/module/core/test_run_cli.py::TestCli::test_positional_template_parameters - test/unit/module/core/test_run_cli.py::TestCli::test_template_config - # different graphviz version? - test/unit/module/template/test_template.py::TestTemplate::test_build_graph - ) - - # from tox.ini - local -x AWS_DEFAULT_REGION=us-east-1 - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -} diff --git a/dev-python/cfn-lint/cfn-lint-1.27.0.ebuild b/dev-python/cfn-lint/cfn-lint-1.27.0.ebuild index 3ae37d5581a5..f52ac728e3f2 100644 --- a/dev-python/cfn-lint/cfn-lint-1.27.0.ebuild +++ b/dev-python/cfn-lint/cfn-lint-1.27.0.ebuild @@ -16,7 +16,7 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="~amd64 ~arm64 ~riscv ~x86" +KEYWORDS="amd64 arm64 ~riscv x86" RDEPEND=" >=dev-python/aws-sam-translator-1.94.0[${PYTHON_USEDEP}] diff --git a/dev-python/cfn-lint/cfn-lint-1.25.1.ebuild b/dev-python/cfn-lint/cfn-lint-1.31.1.ebuild index 3ae37d5581a5..55473d6d5896 100644 --- a/dev-python/cfn-lint/cfn-lint-1.25.1.ebuild +++ b/dev-python/cfn-lint/cfn-lint-1.31.1.ebuild @@ -19,7 +19,7 @@ SLOT="0" KEYWORDS="~amd64 ~arm64 ~riscv ~x86" RDEPEND=" - >=dev-python/aws-sam-translator-1.94.0[${PYTHON_USEDEP}] + >=dev-python/aws-sam-translator-1.95.0[${PYTHON_USEDEP}] dev-python/jsonpatch[${PYTHON_USEDEP}] >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}] <dev-python/jsonschema-5[${PYTHON_USEDEP}] diff --git a/dev-python/cfn-lint/cfn-lint-1.26.1.ebuild b/dev-python/cfn-lint/cfn-lint-1.31.3.ebuild index 3ae37d5581a5..55473d6d5896 100644 --- a/dev-python/cfn-lint/cfn-lint-1.26.1.ebuild +++ b/dev-python/cfn-lint/cfn-lint-1.31.3.ebuild @@ -19,7 +19,7 @@ SLOT="0" KEYWORDS="~amd64 ~arm64 ~riscv ~x86" RDEPEND=" - >=dev-python/aws-sam-translator-1.94.0[${PYTHON_USEDEP}] + >=dev-python/aws-sam-translator-1.95.0[${PYTHON_USEDEP}] dev-python/jsonpatch[${PYTHON_USEDEP}] >=dev-python/jschema-to-python-1.2.3[${PYTHON_USEDEP}] <dev-python/jsonschema-5[${PYTHON_USEDEP}] diff --git a/dev-python/django/Manifest b/dev-python/django/Manifest index aa397703fe06..5fbda51204a0 100644 --- a/dev-python/django/Manifest +++ b/dev-python/django/Manifest @@ -6,5 +6,7 @@ DIST Django-5.1.7.checksum.txt 2407 BLAKE2B 8ed1a118ab754dfbe9978c28771c9a4925f2 DIST Django-5.1.7.tar.gz 10716510 BLAKE2B 0ed9a8e75715ab60da23e57b83931dd9a06360723439df6e2dd9690ad25ed688a13a1c3ebe35426325d612a0f6cded076dd3efb3a56f5f9e717854abacc36a11 SHA512 8c0d2d79eab1c60f4a50c94e5f584f0ed70835a8b3ac64f4c5c0397fc186cf8e9188926ad08545323a139976efc207c8429faa7f0b5948b21cef98482124980a DIST Django-5.2b1.checksum.txt 2411 BLAKE2B ed45a877cfb217909b59351bc9b51e8b4d757b3bb812da4597056f79ff86d9d453dad815e4c5932b6b159e51ca696d982ae4cd8bdd78d53f0b9a058643b5e0d2 SHA512 f0a306a337fe54a6e8ab88a8196c5a9da8af0d03c825034f4141ca1e95cbf9092a30c6a346590e9a4b44c4a299178ecbbaacc86d81c58b7d14dc8eb9743f0343 DIST Django-5.2b1.tar.gz 10816962 BLAKE2B 8308cecd8870f9ca3ac96aab370d5f9eba4d4a9c580a19f7214a9bf504eee5c2388f46164a33113126364ffdf1e5f13cf9f30c73c49fb5c6eefe255aed4a30c2 SHA512 212b92758ab32fa29d4a60517a09ee7068fbbc4f8893a4473797641d104fa3c21b20b4dea6ec64471b07991da7d3749226f169ac7fee76651896b4518f016180 +DIST Django-5.2rc1.checksum.txt 2385 BLAKE2B 071ce02b5834ecb0273e3ef18ed457da50b6d191ea58cb1941c4bec7b00ef19149bc1eeddf20005fbe762d26b491ad694ee0ece4a915257a0d9cd6231f43fe71 SHA512 03bc004144844c1e0002007083af17efec222f1ec86b2d698a87cc85332e6b5c8c958790dfcc0e131ffe0ad2de43c909aecc8998436e4f9f9ec7cf161c046961 +DIST Django-5.2rc1.tar.gz 10817143 BLAKE2B 36e87232346fe176783786a2476005523017d89410457a2c9b7943ba1f54e5d6c26ad16b4d28cc9088a90af5233758e11f0adffeaf980b4546fa488ba7aa47f9 SHA512 78424f84b83a89d678f78c07fe01b8a1a26dfc10a2e64cc15c68a342dd382be8a538d959302f6a878a59a9a2b3c5607d008b9fd8e809982396282ee73533abec DIST django-4.2.17-pypy3.patch.xz 5900 BLAKE2B 2a564fc31d8e2f3def5a532d3bca1a4426a496c659192f602d659e0c1a5f5882978baedb384cc3b67fda8c836513ce43aece80db1528c8e8b6e9ca420f7572ce SHA512 9c9d935aff6db7230a26931b5e7f5f94f3b5ff4fc8f7d4201178571de9d9c7929a0e1e558cc2d9b54b8ee91f85819a5680d24fad6251620515a4a020e3b2d66d DIST django-5.0-pypy3.patch.xz 6124 BLAKE2B 7eba7cc70b30743cf4e186a2c5b0f27c13f49114a7a80bcaa2b25fdd7a959583c115a302c9bc6da97c32f6401cf8f3616818ba759190d317c5b033a0f0088766 SHA512 c550e2b2c1243d13cd1f4908f4b6df606355d1491e3bf72042e4b4777a4474306ff0f67b1c2eb4ab4d137cc85bde52dcdbd54bec245d2ba2e092545be8a2993b diff --git a/dev-python/django/django-5.2_rc1.ebuild b/dev-python/django/django-5.2_rc1.ebuild new file mode 100644 index 000000000000..7473f8504efc --- /dev/null +++ b/dev-python/django/django-5.2_rc1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) +PYTHON_REQ_USE='sqlite?,threads(+)' + +inherit bash-completion-r1 distutils-r1 multiprocessing optfeature verify-sig + +MY_P=${PN^}-${PV/_} +DESCRIPTION="High-level Python web framework" +HOMEPAGE=" + https://www.djangoproject.com/ + https://github.com/django/django/ + https://pypi.org/project/Django/ +" +SRC_URI=" + https://media.djangoproject.com/releases/$(ver_cut 1-2)/${MY_P}.tar.gz + verify-sig? ( https://media.djangoproject.com/pgp/${MY_P}.checksum.txt ) +" +S=${WORKDIR}/${MY_P} + +LICENSE="BSD" +# admin fonts: Roboto (media-fonts/roboto) +LICENSE+=" Apache-2.0" +# admin icons, jquery, xregexp.js +LICENSE+=" MIT" +SLOT="0" +IUSE="doc sqlite test" +RESTRICT="!test? ( test )" + +RDEPEND=" + <dev-python/asgiref-4[${PYTHON_USEDEP}] + >=dev-python/asgiref-3.8.1[${PYTHON_USEDEP}] + >=dev-python/sqlparse-0.3.1[${PYTHON_USEDEP}] + sys-libs/timezone-data +" +BDEPEND=" + test? ( + $(python_gen_impl_dep sqlite) + ${RDEPEND} + >=dev-python/docutils-0.19[${PYTHON_USEDEP}] + >=dev-python/jinja2-2.11.0[${PYTHON_USEDEP}] + dev-python/numpy[${PYTHON_USEDEP}] + dev-python/pillow[webp,${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + >=dev-python/selenium-4.8.0[${PYTHON_USEDEP}] + >=dev-python/tblib-1.5.0[${PYTHON_USEDEP}] + sys-devel/gettext + ) + verify-sig? ( >=sec-keys/openpgp-keys-django-20240807 ) +" + +PATCHES=( + "${FILESDIR}"/django-4.0-bashcomp.patch +) + +distutils_enable_sphinx docs --no-autodoc + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/django.asc + +src_unpack() { + if use verify-sig; then + cd "${DISTDIR}" || die + verify-sig_verify_signed_checksums \ + "${MY_P}.checksum.txt" sha256 "${MY_P}.tar.gz" + cd "${WORKDIR}" || die + fi + + default +} + +python_test() { + # Tests have non-standard assumptions about PYTHONPATH, + # and don't work with ${BUILD_DIR}/lib. + PYTHONPATH=. "${EPYTHON}" tests/runtests.py --settings=test_sqlite \ + -v2 --parallel="${EPYTEST_JOBS:-$(makeopts_jobs)}" || + die "Tests fail with ${EPYTHON}" +} + +python_install_all() { + newbashcomp extras/django_bash_completion ${PN}-admin + bashcomp_alias ${PN}-admin django-admin.py + + distutils-r1_python_install_all +} + +pkg_postinst() { + optfeature_header "Additional Backend support can be enabled via:" + optfeature "MySQL backend support" dev-python/mysqlclient + optfeature "PostgreSQL backend support" dev-python/psycopg:0 + optfeature_header + optfeature "GEO Django" "sci-libs/gdal[geos]" + optfeature "Memcached support" dev-python/pylibmc dev-python/python-memcached + optfeature "ImageField Support" dev-python/pillow + optfeature "Password encryption" dev-python/bcrypt +} diff --git a/dev-python/ensurepip-setuptools/Manifest b/dev-python/ensurepip-setuptools/Manifest index f35fa4a2cc4a..606ce237ee80 100644 --- a/dev-python/ensurepip-setuptools/Manifest +++ b/dev-python/ensurepip-setuptools/Manifest @@ -1,3 +1,4 @@ DIST setuptools-75.8.2-py3-none-any.whl 1229385 BLAKE2B e2890604e9acbf23aefc94ee99927bafdc189e45c84b0e4e0b48737d120ba60590438603195e180988b26e3e8fb378812507e2a0b513bf886c3b1eb673853da5 SHA512 083447a6bd375ca99e017ec4c5e3083ee4eee32b65d911b4d5ccadfa587ec213d43562d21d0f238753cc5c54354027b8425880d7248fbbd170b0c006613f4327 DIST setuptools-76.0.0-py3-none-any.whl 1236106 BLAKE2B 783411ca7c3ee2f2aaaba2d40abb010f7014eb640e6ebee125e0d80afd863634eb01a10343c086b46a7b928db14d5edc6270c92129d2b20bbf0ce36229de932a SHA512 6b2af35acbd3c73f19a5eac91cc13329ef6b0c9b9dbad18fdcfabb0625215a661d320d164a08018a08a3578c5bc3aedfd9ed9ecdaaf62ef08e30fcae34a3eefb DIST setuptools-76.1.0-py3-none-any.whl 1236933 BLAKE2B c8e1d368f50aea8ed819d6c828505bbbecfd1d2f320c108df3910f8f49133aa12cbafbed5e626572232812671650cb4398a6771a21ed37d7d1ea882e87a08dbc SHA512 44330c0b2bf22a6cdc9b3cf087fbd7695a5e15a4e0e013c88252258fabb69ed89d9550b35b407f01711c66b45a964f687ce7c8f373ed0860e93842e70aa9e55b +DIST setuptools-77.0.1-py3-none-any.whl 1254282 BLAKE2B 8034051467ae46c6c81c7dbdb071c0e3e87e21114e3c20e57db9d5e42838e94e07cd13c3829b586a8d3eb1836365757d00f6e95af822eabb805a38b7b9109d1d SHA512 a880771b05095c6bf0d4e522d4403de0dde7027241d0fe58e6c2487f3a779ef85a3c3aa1ac2f4c4f3c4979028335daf8bf16d0ad995b0da744097cd415b285ec diff --git a/dev-python/ensurepip-setuptools/ensurepip-setuptools-77.0.1.ebuild b/dev-python/ensurepip-setuptools/ensurepip-setuptools-77.0.1.ebuild new file mode 100644 index 000000000000..b76c3f6972d8 --- /dev/null +++ b/dev-python/ensurepip-setuptools/ensurepip-setuptools-77.0.1.ebuild @@ -0,0 +1,20 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit pypi + +DESCRIPTION="Shared setuptools wheel for ensurepip Python module" +HOMEPAGE="https://pypi.org/project/setuptools/" +SRC_URI="$(pypi_wheel_url "${PN#ensurepip-}")" +S=${DISTDIR} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + +src_install() { + insinto /usr/lib/python/ensurepip + doins "${A}" +} diff --git a/dev-python/faker/Manifest b/dev-python/faker/Manifest index f259dcf3ad03..3756c55a54e8 100644 --- a/dev-python/faker/Manifest +++ b/dev-python/faker/Manifest @@ -1,3 +1,5 @@ DIST faker-36.1.1.tar.gz 1874935 BLAKE2B 501926d322a468943f730f7de48a0e68ff9388f39e638170606f5aa3884029aa27a21bdda68cb19224432e1d44f8de63da591688150a62e8b33bea54f44ad083 SHA512 c5afc49c76a97b7326fbc30eeb3c1d6102cdfcc35f52a7db61d1f58b37b812554274e002cac9ff9003a9669ce9c106e02e71e697045920b4ed006e1292de8a93 DIST faker-36.2.1.tar.gz 1874849 BLAKE2B 355c3c5c4c0753d57ea7f63d510ebe07dcc1194d000d0a2c2aa81e70de486256999418c780d0f98e281b8a218cd6d68598dc936d05fc48205e07bcbac2036dd9 SHA512 81dca7225e10434f11036ddd4e9c3e88e30d2b9ca61531478b78aca77d7b7e2fb27ca6e5755c68b041e88fdfe805ac9688f5803899e4b895f4980428ed9076aa DIST faker-37.0.0.tar.gz 1875487 BLAKE2B 4dcd442648bd089b97eca2e544ed24d37087837dd6f9f138f9c645ddb5de18a79910b99a22a884ed77ab26fdfd548096f8738b3d16b062b67e0a359b101848b8 SHA512 9142e0c24725066d7354943c24fdb9cbc28b362ab84d8a854e11ae8e983416d4de762e4d0df2c3d14082897ab353331749d13a0711fd841342308a30af3d70bf +DIST faker-37.0.1.tar.gz 1875530 BLAKE2B 40c5bd083469f4406352e1ec709a588bde8adef4cd3afd67fae81091ab1e19a921ce02cbf81169b7b06c675a92c345729c93bda250f4805d881ce141f1b22434 SHA512 3ddb8d55284bdb244354af73b927412240232418cd93cbba5c684fe668a5e09ffdee845df85d582423b23697759c0a20ce29dd5315ad36d464c323d83b0a73b5 +DIST faker-37.0.2.tar.gz 1875441 BLAKE2B 9c98f9f19e4c9de4b216644f7173a0278f6d89822901bd5e4c8f2bbd6ccdba520a3182788feb7741753b7893ad8355c74ada8bbd00225366fdecb06aa43454be SHA512 a407c8f28cc31ae60aeb42c1f092d72905ac3f9e7bf35d48997123592aa48aa5ac2390f11f400034096eeb394609196d791fb6a441f12bd23e3fe6927771aa81 diff --git a/dev-python/faker/faker-37.0.1.ebuild b/dev-python/faker/faker-37.0.1.ebuild new file mode 100644 index 000000000000..07e6ec6efccf --- /dev/null +++ b/dev-python/faker/faker-37.0.1.ebuild @@ -0,0 +1,42 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=${PN^} +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A Python package that generates fake data for you" +HOMEPAGE=" + https://github.com/joke2k/faker/ + https://pypi.org/project/Faker/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/tzdata[${PYTHON_USEDEP}] + !dev-ruby/faker +" +BDEPEND=" + test? ( + dev-python/freezegun[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP},tiff] + dev-python/validators[${PYTHON_USEDEP}] + ) +" + +# note: tests are flaky with xdist +distutils_enable_tests pytest + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin + epytest + epytest --exclusive-faker-session tests/pytest/session_overrides +} diff --git a/dev-python/faker/faker-37.0.2.ebuild b/dev-python/faker/faker-37.0.2.ebuild new file mode 100644 index 000000000000..07e6ec6efccf --- /dev/null +++ b/dev-python/faker/faker-37.0.2.ebuild @@ -0,0 +1,42 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=${PN^} +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A Python package that generates fake data for you" +HOMEPAGE=" + https://github.com/joke2k/faker/ + https://pypi.org/project/Faker/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/tzdata[${PYTHON_USEDEP}] + !dev-ruby/faker +" +BDEPEND=" + test? ( + dev-python/freezegun[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP},tiff] + dev-python/validators[${PYTHON_USEDEP}] + ) +" + +# note: tests are flaky with xdist +distutils_enable_tests pytest + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + local -x PYTEST_PLUGINS=faker.contrib.pytest.plugin + epytest + epytest --exclusive-faker-session tests/pytest/session_overrides +} diff --git a/dev-python/google-api-python-client/Manifest b/dev-python/google-api-python-client/Manifest index 892738285a12..3fd7e1f649f4 100644 --- a/dev-python/google-api-python-client/Manifest +++ b/dev-python/google-api-python-client/Manifest @@ -1,3 +1,4 @@ DIST google_api_python_client-2.162.0.tar.gz 12562719 BLAKE2B b011064f127a6d8f131121b3776b554551e39aadea780e3357194cf90877b5b1711d91b6cdf56fa0118b96f371216d443b66a284c04a9cda8af7d9bf3687932c SHA512 15febe68247e1cb6722c4c509b9f31f879cb058110b46297d4db6df8533fca4bc095ac8f3e7faddff2a32749e44e356179e7f99085592dd5e218b41981364f6a DIST google_api_python_client-2.163.0.tar.gz 12588615 BLAKE2B bb586205a1567e6792dcf336c69c4c357bd22b06ebe172bc5e07a96ca1c8246483d44201546ebbf1fec4239210759e20eed332f44be5e842bc6b9b050d4190a0 SHA512 993f173fd6366b03b57944b44fdf5ef74815789ced2585211dba06c8ca41c37e5bbfa1582e4ed4944a3cc5bc65cce2f043eeae68a0e6832460f3f7f6941639f9 DIST google_api_python_client-2.164.0.tar.gz 12595711 BLAKE2B deea81a5cca626ab775daf381583d36cc7c2d58775db4e0741b812ce63cdbb4930f20320d84fd715925767ef0555ca93554578052d295df408e3620b998ae567 SHA512 43524613d65d6ebf60d6bf65654b66e7173faf1026a0f6c0ffea36d55c4e33fa5da595d2e3eb7ee7c00353ac963b5a51c958c83206809bcdc6a5a6bc13340d26 +DIST google_api_python_client-2.165.0.tar.gz 12636391 BLAKE2B 247508db35b4d083b62a1040465f6089626e7ad81f4d64e75a149150b80f83e7481ea58a66fe059858fd2658959f99dddd764808c8378b56507ba7a8fa72d88a SHA512 1d27d0166b8d8ab5fc2a4b48d1919e5db5ca598f2a29c911ef47cbedeff8893679c17c26e83fbef61bd07272b08456e09b10d86a65101324591f35340e78727c diff --git a/dev-python/google-api-python-client/google-api-python-client-2.165.0.ebuild b/dev-python/google-api-python-client/google-api-python-client-2.165.0.ebuild new file mode 100644 index 000000000000..b2220fafe3ef --- /dev/null +++ b/dev-python/google-api-python-client/google-api-python-client-2.165.0.ebuild @@ -0,0 +1,50 @@ +# 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} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Google API Client for Python" +HOMEPAGE=" + https://github.com/googleapis/google-api-python-client/ + https://pypi.org/project/google-api-python-client/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-python/httplib2-0.15[${PYTHON_USEDEP}] + <dev-python/httplib2-1[${PYTHON_USEDEP}] + >=dev-python/google-api-core-2.3.1[${PYTHON_USEDEP}] + >=dev-python/google-auth-1.35.0[${PYTHON_USEDEP}] + >=dev-python/google-auth-httplib2-0.1.0[${PYTHON_USEDEP}] + >=dev-python/uritemplate-3.0.0[${PYTHON_USEDEP}] + <dev-python/uritemplate-5[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + dev-python/pandas[${PYTHON_USEDEP}] + dev-python/parameterized[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # require Internet access (and credentials) + tests/test_discovery.py::DiscoveryErrors::test_credentials_and_credentials_file_mutually_exclusive + tests/test_discovery.py::DiscoveryFromDocument::test_api_endpoint_override_from_client_options_mapping_object + tests/test_discovery.py::Universe::test_client_options_universe_configured_with_mtls + tests/test_discovery.py::Universe::test_universe_env_var_configured_with_mtls + ) + + epytest tests +} diff --git a/dev-python/griffe/Manifest b/dev-python/griffe/Manifest index ec3ef8dee8ca..ec77cedf25c9 100644 --- a/dev-python/griffe/Manifest +++ b/dev-python/griffe/Manifest @@ -1,2 +1,2 @@ -DIST griffe-1.5.7.gh.tar.gz 393455 BLAKE2B d294a62e131ce5276c52e3f11adef5081c10131156cdb3c112761569d3776091e1c1dfea445252cc3595572baf1caab416ff510d89f84a4511d147f1aa36b762 SHA512 cfea773780a645f92f8ad32b0f2e682561f63cf3082f2e24bd1f944f1a907b35db15883cb7df726d34e03373e73fe5e855f3d00a455cc01cac265bced822b4ed DIST griffe-1.6.0.gh.tar.gz 393773 BLAKE2B 62f1ed8109353013e2ef10bf32359dc66c467641b62ff0ecceb49718cafc773c5aab2cc151797e023dbff96f476e8b67d3bd7f5b664e3f5d6ea96f20e1744b60 SHA512 8ce0565ba8c43afb262d7e65b2eab369b10a57d4855a226a83ffea60bd83d7f624d5f15876c51dd20861ba5d652c012245bd55dd87dd0beeda75305f26f330bf +DIST griffe-1.6.1.gh.tar.gz 394343 BLAKE2B 0ec76016c2701e08e4f0f8061e31aad830fb209f37c2a175d17bd28ecb533f60e59196ebd5c3c60869ac7fdf6579ee10cc66a7adeddd51da10a95e5aceded856 SHA512 eb62f6e77937dc8dd740cd0d77b7f0157a5be310d5813c9f3e26787bb8d1776a5318e0e8d917693b9bb3a42c0ea8715367752328b1c9306e594b1f6ba535d8d0 diff --git a/dev-python/griffe/griffe-1.5.7.ebuild b/dev-python/griffe/griffe-1.6.1.ebuild index 6f7090dd3f3d..6f7090dd3f3d 100644 --- a/dev-python/griffe/griffe-1.5.7.ebuild +++ b/dev-python/griffe/griffe-1.6.1.ebuild diff --git a/dev-python/hcloud/Manifest b/dev-python/hcloud/Manifest index 42d511efeb31..6a818b7cd316 100644 --- a/dev-python/hcloud/Manifest +++ b/dev-python/hcloud/Manifest @@ -1 +1,2 @@ DIST hcloud-python-2.3.0.gh.tar.gz 119846 BLAKE2B eab64db78ee9e5f33539142a869663d7a12cc08f25581a82e1d87d620452d1ce4877ff65654724f30ac602a7513e371f1f59455dcff5cdc2b94ba6751136d7b3 SHA512 8591b5406d51c8f71fdcb16bb423cc2317310484d3ef6a784d63fdb2dca9ec10d33a9fd6347f3c37e7a7c4772869a15013f8c6a83b5a2b867da0c41184c88d45 +DIST hcloud-python-2.4.0.gh.tar.gz 120779 BLAKE2B 9a81c91e7ddc90148b10ca370589e27cb06af9b8a7acff26979fa9ed4f4a095f0ebb458ba4b8223338d8c69123e0ca5763627a41a4d610786b2ac98594700098 SHA512 a22970ab1f1241368d424bc08d540da5f9287581d2a4ecdbba3feb7a97176ddafce66fc0397ee5e22b4131702cfabcab89347da3709a8b6d4d1aa71df001518b diff --git a/dev-python/hcloud/hcloud-2.4.0.ebuild b/dev-python/hcloud/hcloud-2.4.0.ebuild new file mode 100644 index 000000000000..4dec20f2ed8c --- /dev/null +++ b/dev-python/hcloud/hcloud-2.4.0.ebuild @@ -0,0 +1,49 @@ +# 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} ) + +inherit distutils-r1 + +MY_P=hcloud-python-${PV} +DESCRIPTION="Official Hetzner Cloud python library" +HOMEPAGE=" + https://github.com/hetznercloud/hcloud-python/ + https://pypi.org/project/hcloud/ +" +# sdist is missing doc assets as of 1.19.0 +# https://github.com/hetznercloud/hcloud-python/pull/183 +SRC_URI=" + https://github.com/hetznercloud/hcloud-python/archive/v${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="examples" + +RDEPEND=" + >=dev-python/python-dateutil-2.7.5[${PYTHON_USEDEP}] + >=dev-python/requests-2.20[${PYTHON_USEDEP}] +" + +distutils_enable_sphinx docs \ + dev-python/myst-parser \ + dev-python/sphinx-rtd-theme +distutils_enable_tests pytest + +EPYTEST_IGNORE=( + # Integration tests need docker: + # https://github.com/hetznercloud/hcloud-python/blob/master/.travis.yml#L16 + tests/integration +) + +python_install_all() { + use examples && dodoc -r examples + distutils-r1_python_install_all +} diff --git a/dev-python/icalendar/Manifest b/dev-python/icalendar/Manifest index ebd4c8facb8f..8473695d82d2 100644 --- a/dev-python/icalendar/Manifest +++ b/dev-python/icalendar/Manifest @@ -1 +1,2 @@ DIST icalendar-6.1.1.tar.gz 145256 BLAKE2B cf3cf5a79f25f6c2820e4a04fc02a1546949e99c4e3fa9e6a204b0e4eb13e475b0c5a1f3179009b77437a33ab360b561cdff59453bcd77b771fc223ad14a2494 SHA512 3afb10dcfd07d0348bb404e2bfef3b790e312764bed1147999a3322255d7c881a1513077b49b3ed6cfc03a22afa81a3211823d94a2414b00bc2c4503bed73264 +DIST icalendar-6.1.2.tar.gz 151266 BLAKE2B 3f6fd1074f48f9e7fbd6b91b1fc73c592752fe8d6885c460ac9278e715a7812022a606f89d32eaf67f214ae35641677330e8ee9b0f7106946c6c3872a875343a SHA512 6dfb0480894f107abe6d676c8addf437c114088491e55d253334bdda9b37c758c4d7943e98a16196b2f8811e67aef81f527d57b78fe86a279b76b7f5c8c91e6f diff --git a/dev-python/icalendar/icalendar-6.1.2.ebuild b/dev-python/icalendar/icalendar-6.1.2.ebuild new file mode 100644 index 000000000000..f2142f2410cf --- /dev/null +++ b/dev-python/icalendar/icalendar-6.1.2.ebuild @@ -0,0 +1,54 @@ +# 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} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Package used for parsing and generating iCalendar files (RFC 2445)" +HOMEPAGE=" + https://github.com/collective/icalendar/ + https://pypi.org/project/icalendar/ +" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" + +RDEPEND=" + dev-python/python-dateutil[${PYTHON_USEDEP}] + dev-python/tzdata[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/hypothesis[${PYTHON_USEDEP}] + dev-python/pytz[${PYTHON_USEDEP}] + ) +" + +distutils_enable_sphinx docs \ + dev-python/sphinx-copybutton \ + dev-python/sphinx-rtd-theme +distutils_enable_tests pytest + +python_prepare_all() { + # reset conf.py to not read version from an installed instance + sed -e "s:pkg_resources.get_distribution('icalendar').version:'${PV}':" \ + -i docs/conf.py || die + distutils-r1_python_prepare_all +} + +python_test() { + local EPYTEST_DESELECT=( + # https://github.com/collective/icalendar/issues/791 + 'src/icalendar/tests/test_issue_722_generate_vtimezone.py::test_we_can_identify_dateutil_timezones[Asia/Manila]' + 'src/icalendar/tests/test_timezone_identification.py::test_can_identify_dateutil[Asia/Manila]' + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} diff --git a/dev-python/iniconfig/Manifest b/dev-python/iniconfig/Manifest index b8e9cf1e05c2..879f445b75cb 100644 --- a/dev-python/iniconfig/Manifest +++ b/dev-python/iniconfig/Manifest @@ -1 +1,2 @@ DIST iniconfig-2.0.0.gh.tar.gz 8077 BLAKE2B bb24006bafed64bc28d7a784ed24663dbcea782ef241b9c7ccb5dc0268f6d6ce149882155617d4c021805457c7c5e4775437d267da6905266fb84e877f16e09c SHA512 e474aaa904070ed79dbbd2b4b572574ebb591b97a4ca0f9c4e4aef437af01035d2f73c48bb670afcec2cd8b7ea093b92d6b0c0eca7ba42033418a2b0e0ac80ad +DIST iniconfig-2.1.0.gh.tar.gz 8195 BLAKE2B f72d682bebf84893a2e035742bb5bb59c40e37e7916e7c997144768f3a7b188f1df8a544aea216d9e38db54cd33abced66f1c99ee0c6ae5c9403187d10707e47 SHA512 2f973195ca65a3274961b32d1d478fef4e7beca7b9be27b7e88956d61b50eab4f8b10d491427aff23e973cb94cbcfe7dcc25e6767364a6ed52b3b81219549a20 diff --git a/dev-python/iniconfig/iniconfig-2.1.0.ebuild b/dev-python/iniconfig/iniconfig-2.1.0.ebuild new file mode 100644 index 000000000000..fc412b637a19 --- /dev/null +++ b/dev-python/iniconfig/iniconfig-2.1.0.ebuild @@ -0,0 +1,31 @@ +# Copyright 2020-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 + +DESCRIPTION="Brain-dead simple config-ini parsing" +HOMEPAGE=" + https://github.com/pytest-dev/iniconfig/ + https://pypi.org/project/iniconfig/ +" +SRC_URI=" + https://github.com/pytest-dev/iniconfig/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" + +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] +" + +distutils_enable_tests pytest + +export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} diff --git a/dev-python/logbook/Manifest b/dev-python/logbook/Manifest index a428cd9d9447..923a154efdb3 100644 --- a/dev-python/logbook/Manifest +++ b/dev-python/logbook/Manifest @@ -1 +1,2 @@ DIST logbook-1.8.0.gh.tar.gz 364862 BLAKE2B 1b245223ab9d3b026967b626e1cba2fed3d03b5abc745be238f76c2ddebf8e0909597acdad3a3e70738b8c9b9e6350f4d23d5e02c8f1b1d8ff6ec5f6509d2b9f SHA512 73e4d9170af6c4db6eadf27e84419927136658c786b173e5eae91dc9499d3c374fe5a4a7e8f7bc463194b19648aee23aceba0cce9a63fd25a6ee0a53b1dbe8f9 +DIST logbook-1.8.1.gh.tar.gz 364883 BLAKE2B 1a200a5dddbd6e414c17e294e412737ab5bdebd18acf707be08aef47fd16d445f6b3d726614f67142c05a6136541d6f86b0e9893a5c9980b9545406c77e4b82f SHA512 3a7960a34c30cf14319dbb01d12dbfb3bf87d624b75d692e417a95ee5357c92b1fa46678f3c546d0e539f60367a13a19bfb0f83c27d151cb972e0cf4fb278105 diff --git a/dev-python/logbook/logbook-1.8.1.ebuild b/dev-python/logbook/logbook-1.8.1.ebuild new file mode 100644 index 000000000000..7f2dea10fdbd --- /dev/null +++ b/dev-python/logbook/logbook-1.8.1.ebuild @@ -0,0 +1,52 @@ +# 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} ) + +inherit distutils-r1 + +DESCRIPTION="A logging replacement for Python" +HOMEPAGE=" + https://logbook.readthedocs.io/en/stable/ + https://github.com/getlogbook/logbook/ + https://pypi.org/project/Logbook/ +" +SRC_URI=" + https://github.com/getlogbook/logbook/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~riscv ~x86" + +BDEPEND=" + test? ( + app-arch/brotli[${PYTHON_USEDEP},python] + >=dev-python/execnet-1.0.9[${PYTHON_USEDEP}] + dev-python/jinja2[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pytest-rerunfailures[${PYTHON_USEDEP}] + dev-python/pyzmq[${PYTHON_USEDEP}] + >=dev-python/sqlalchemy-1.4[${PYTHON_USEDEP}] + ) +" +distutils_enable_tests pytest +distutils_enable_sphinx docs + +python_configure_all() { + export DISABLE_LOGBOOK_CEXT=1 +} + +python_test() { + local EPYTEST_DESELECT=( + # Delete test file requiring local connection to redis server + tests/test_queues.py + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p rerunfailures +} diff --git a/dev-python/markdown-exec/Manifest b/dev-python/markdown-exec/Manifest index 8bd9dc8e7d53..8a1a9bfa37ea 100644 --- a/dev-python/markdown-exec/Manifest +++ b/dev-python/markdown-exec/Manifest @@ -1,2 +1,3 @@ DIST markdown_exec-1.10.0.tar.gz 76830 BLAKE2B 7c8194decf4d44cabecfddee27d74e8a513b227533b9eb1c5c2bdc100ca9f64e2ef3641386839167ac937d62c9ec13f511fd5cd76bca8050dd19bb74b4e399ea SHA512 996d4ad9ea06943d34ced435f2bd3b22c0b6a4453d5a59443966ad8caa767f1a3eea1c7c6f1f01056b4d2019550e202a2e11cd8e148a149c5ca35f9f87c45990 DIST markdown_exec-1.10.1.tar.gz 77711 BLAKE2B e30585bbaf8443c44de010d18e0755cfc23f7083b1b44c4c0e3ad782c8952ea3f0c78ae144bfc762049719f05c195fa1c4afe7c4cb9d776be0d46a47f2fd3ec2 SHA512 38e46b0422f9e09942ae5dcb6676d215e55347b18718aed6039a09b15c080eb59551cb304f918ee9d54e637ca272f420a8ccf985464616786ad0154ef1304fd3 +DIST markdown_exec-1.10.2.tar.gz 80842 BLAKE2B 0adf537d1e187179b49c1275820dc4f5ba9ee4a1d6edc584301f641fc3334e244ef05484dd5a01f824fae6ffca2db91651e6f51f93eeb882a468d2c695ae0fb4 SHA512 981d176caeef709581332a7d02d6f129859e12646159b0b879c579c6a95574e0c306adc1a265bbd46f6177f7e5c007999ae76d6db918b68e296949936e300eeb diff --git a/dev-python/markdown-exec/markdown-exec-1.10.2.ebuild b/dev-python/markdown-exec/markdown-exec-1.10.2.ebuild new file mode 100644 index 000000000000..d60ef65d9c00 --- /dev/null +++ b/dev-python/markdown-exec/markdown-exec-1.10.2.ebuild @@ -0,0 +1,34 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=pdm-backend +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Utilities to execute code blocks in Markdown files" +HOMEPAGE=" + https://pawamoy.github.io/markdown-exec/ + https://pypi.org/project/markdown-exec/ +" + +LICENSE="ISC" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~riscv" +IUSE="ansi" + +RDEPEND=" + >=dev-python/pymdown-extensions-9[${PYTHON_USEDEP}] + ansi? ( + dev-python/pygments-ansi-color[${PYTHON_USEDEP}] + ) +" +BDEPEND=" + test? ( + dev-python/markupsafe[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest diff --git a/dev-python/matplotlib/Manifest b/dev-python/matplotlib/Manifest index dd3da063db73..fc4688516b14 100644 --- a/dev-python/matplotlib/Manifest +++ b/dev-python/matplotlib/Manifest @@ -1,6 +1,3 @@ DIST freetype-2.6.1.tar.gz 2302080 BLAKE2B 6a5fb98e5fa6cf4b7d7533ad44e364227d8c2f7dded4c552d6e22e204c32b7858f20d41d1e809ecdad6e5353d6cec81bea0e0b06a4533363a41ecab83ce3f7ca SHA512 ff2daed64d712737085924c50e75862fafbcbb24eef6d72dac9eaae63bb656d7245397fd828f5d3e47ac847f7ff83d73dedfdd61fde1f7d6e0f0cdeb49bcf83b -DIST matplotlib-3.10.0.tar.gz 36686418 BLAKE2B b154d4d2512a7989d967e7e257ef148e530b1bb030375fe0443f0feb3adea8b0cdc0287d292587832542f6263ccbbb89860fa0b827301fb9dbed34f6a197a475 SHA512 31a71640ef9cbc8cae928156c70119a0bdc1a8c44c8dc5af5333f5484525dd6a375e6f263d739ad3422b0e35d474f7742e08c71c40df0f1f71b526e21adc17e1 DIST matplotlib-3.10.1.tar.gz 36743335 BLAKE2B e689dcaa314a6af8ce2934aac95208adf0f87822e4f84d6fb15ac1a17d162deea106636abf52b5332636ad8bb944301f16100b15d409b04ef2a8ecd287ea827c SHA512 1b52a421e61ca0a295d7b1d2bbe9bdcb1dd58f6c750b21d95e263547b20a17d58aadcc86f97ae0fdff9151d3c2f75a6c5419a35b258b698d777f42de7b598c4e DIST matplotlib-3.9.0.tar.gz 36069890 BLAKE2B 02ddb25901b5a93a8daf6f26c98b92d5e35abe2e98783b039928338abb1d628adbf3fd4786c08cb1610bf405cb558ca31fc12dbde77ec5f2a633143c7ea659a1 SHA512 135ee2f97c26cb60479cc10bf8a833384c393993d8a905ab869f4c73b91a50ffa596f84ce349af7f1a0b08a21e1906394cf6a702bb567a9c3999d40f54974326 -DIST matplotlib-3.9.2.tar.gz 36088381 BLAKE2B c84d08b7afa1f0460b5b57447481ef90f22380c02d20227c3a45b6f603032a11359b223397f18c8dc9111ad36fbd7510e2d5496502b3202e3074ddf8e8258bb7 SHA512 4b7437eeb085915a90db64600d0e6c59501ea1513d07b8298a159a763461ef6947a0cb332dcde1a5f0996840320ca7dd1d972d7514ff6f87b036fc631e79885f -DIST matplotlib-3.9.4.tar.gz 36106529 BLAKE2B f95791bce82bf62d922e3db7ebe8e34e5759896c26cf952e2c67e92d5c4e5e190c556ba3ff4d7160d60de3c90ed5e1dc4d7ca2866647ded6b96dd35e16d4e259 SHA512 adfa875cba0b030ee0efaf11ed1be881858dc13391c966a2d9485ae2358fccf0b5356e16966a0c9da9f682e4a9d2f3960551756aca30ddc048632346548b1447 diff --git a/dev-python/matplotlib/files/matplotlib-3.9.3-test.patch b/dev-python/matplotlib/files/matplotlib-3.9.3-test.patch deleted file mode 100644 index 62461c655d88..000000000000 --- a/dev-python/matplotlib/files/matplotlib-3.9.3-test.patch +++ /dev/null @@ -1,249 +0,0 @@ -diff --git a/lib/matplotlib/tests/test_arrow_patches.py b/lib/matplotlib/tests/test_arrow_patches.py -index 254b86cb54..1f93b1a476 100644 ---- a/lib/matplotlib/tests/test_arrow_patches.py -+++ b/lib/matplotlib/tests/test_arrow_patches.py -@@ -68,7 +68,7 @@ def __prepare_fancyarrow_dpi_cor_test(): - - - @image_comparison(['fancyarrow_dpi_cor_100dpi.png'], remove_text=True, -- tol=0 if platform.machine() == 'x86_64' else 0.02, -+ tol=0.015 if platform.machine() == 'x86_64' else 0.02, - savefig_kwarg=dict(dpi=100)) - def test_fancyarrow_dpi_cor_100dpi(): - """ -@@ -83,7 +83,7 @@ def test_fancyarrow_dpi_cor_100dpi(): - - - @image_comparison(['fancyarrow_dpi_cor_200dpi.png'], remove_text=True, -- tol=0 if platform.machine() == 'x86_64' else 0.02, -+ tol=0.018 if platform.machine() == 'x86_64' else 0.02, - savefig_kwarg=dict(dpi=200)) - def test_fancyarrow_dpi_cor_200dpi(): - """ -@@ -116,7 +116,7 @@ def test_fancyarrow_dash(): - - - @image_comparison(['arrow_styles.png'], style='mpl20', remove_text=True, -- tol=0 if platform.machine() == 'x86_64' else 0.02) -+ tol=0.005 if platform.machine() == 'x86_64' else 0.02) - def test_arrow_styles(): - styles = mpatches.ArrowStyle.get_styles() - -diff --git a/lib/matplotlib/tests/test_axes.py b/lib/matplotlib/tests/test_axes.py -index e99ef129eb..73ed9bd974 100644 ---- a/lib/matplotlib/tests/test_axes.py -+++ b/lib/matplotlib/tests/test_axes.py -@@ -1186,7 +1186,7 @@ def test_imshow(): - - @image_comparison( - ['imshow_clip'], style='mpl20', -- tol=1.24 if platform.machine() in ('aarch64', 'arm64', 'ppc64le', 's390x') else 0) -+ tol=1.24) - def test_imshow_clip(): - # As originally reported by Gellule Xg <gellule.xg@free.fr> - # use former defaults to match existing baseline image -@@ -2570,7 +2570,7 @@ def test_contour_hatching(): - - @image_comparison( - ['contour_colorbar'], style='mpl20', -- tol=0.54 if platform.machine() in ('aarch64', 'arm64', 'ppc64le', 's390x') else 0) -+ tol=0.54) - def test_contour_colorbar(): - x, y, z = contour_dat() - -@@ -4931,7 +4931,7 @@ def test_vertex_markers(): - - - @image_comparison(['vline_hline_zorder', 'errorbar_zorder'], -- tol=0 if platform.machine() == 'x86_64' else 0.026) -+ tol=0.015 if platform.machine() == 'x86_64' else 0.026) - def test_eb_line_zorder(): - x = list(range(10)) - -@@ -8861,7 +8861,7 @@ def test_zorder_and_explicit_rasterization(): - - - @image_comparison(["preset_clip_paths.png"], remove_text=True, style="mpl20", -- tol=0.027 if platform.machine() == "arm64" else 0) -+ tol=0.027 if platform.machine() == "arm64" else 0.02) - def test_preset_clip_paths(): - fig, ax = plt.subplots() - -diff --git a/lib/matplotlib/tests/test_colorbar.py b/lib/matplotlib/tests/test_colorbar.py -index 35911afc79..852075c78d 100644 ---- a/lib/matplotlib/tests/test_colorbar.py -+++ b/lib/matplotlib/tests/test_colorbar.py -@@ -235,7 +235,7 @@ def test_colorbar_single_ax_panchor_east(constrained): - - - @image_comparison(['contour_colorbar.png'], remove_text=True, -- tol=0 if platform.machine() == 'x86_64' else 0.054) -+ tol=0.01 if platform.machine() == 'x86_64' else 0.054) - def test_contour_colorbar(): - fig, ax = plt.subplots(figsize=(4, 2)) - data = np.arange(1200).reshape(30, 40) - 500 -diff --git a/lib/matplotlib/tests/test_constrainedlayout.py b/lib/matplotlib/tests/test_constrainedlayout.py -index 4dc4d9501e..015e46cbe4 100644 ---- a/lib/matplotlib/tests/test_constrainedlayout.py -+++ b/lib/matplotlib/tests/test_constrainedlayout.py -@@ -655,11 +655,11 @@ def test_compressed1(): - fig.draw_without_rendering() - - pos = axs[0, 0].get_position() -- np.testing.assert_allclose(pos.x0, 0.06195, atol=1e-3) -- np.testing.assert_allclose(pos.y1, 0.8537, atol=1e-3) -+ np.testing.assert_allclose(pos.x0, 0.06195, atol=2e-3) -+ np.testing.assert_allclose(pos.y1, 0.8537, atol=2e-3) - pos = axs[1, 2].get_position() -- np.testing.assert_allclose(pos.x1, 0.8618, atol=1e-3) -- np.testing.assert_allclose(pos.y0, 0.1934, atol=1e-3) -+ np.testing.assert_allclose(pos.x1, 0.8618, atol=2e-3) -+ np.testing.assert_allclose(pos.y0, 0.1934, atol=2e-3) - - - @pytest.mark.parametrize('arg, state', [ -diff --git a/lib/matplotlib/tests/test_contour.py b/lib/matplotlib/tests/test_contour.py -index a3e00c30ce..7366dc8b39 100644 ---- a/lib/matplotlib/tests/test_contour.py -+++ b/lib/matplotlib/tests/test_contour.py -@@ -450,8 +450,7 @@ def test_contourf_log_extension(split_collections): - @pytest.mark.parametrize("split_collections", [False, True]) - @image_comparison( - ['contour_addlines.png'], remove_text=True, style='mpl20', -- tol=0.15 if platform.machine() in ('aarch64', 'arm64', 'ppc64le', 's390x') -- else 0.03) -+ tol=0.15) - # tolerance is because image changed minutely when tick finding on - # colorbars was cleaned up... - def test_contour_addlines(split_collections): -diff --git a/lib/matplotlib/tests/test_figure.py b/lib/matplotlib/tests/test_figure.py -index 6e6daa7706..7492fded94 100644 ---- a/lib/matplotlib/tests/test_figure.py -+++ b/lib/matplotlib/tests/test_figure.py -@@ -26,7 +26,7 @@ import matplotlib.dates as mdates - - - @image_comparison(['figure_align_labels'], extensions=['png', 'svg'], -- tol=0 if platform.machine() == 'x86_64' else 0.01) -+ tol=0.02) - def test_align_labels(): - fig = plt.figure(layout='tight') - gs = gridspec.GridSpec(3, 3) -@@ -68,7 +68,7 @@ def test_align_labels(): - - @image_comparison(['figure_align_titles_tight.png', - 'figure_align_titles_constrained.png'], -- tol=0 if platform.machine() == 'x86_64' else 0.022, -+ tol=0.01 if platform.machine() == 'x86_64' else 0.022, - style='mpl20') - def test_align_titles(): - for layout in ['tight', 'constrained']: -diff --git a/lib/matplotlib/tests/test_image.py b/lib/matplotlib/tests/test_image.py -index 0c032fa536..5e417881e9 100644 ---- a/lib/matplotlib/tests/test_image.py -+++ b/lib/matplotlib/tests/test_image.py -@@ -1417,7 +1417,7 @@ def test_nonuniform_and_pcolor(): - - @image_comparison( - ['rgba_antialias.png'], style='mpl20', remove_text=True, -- tol=0 if platform.machine() == 'x86_64' else 0.007) -+ tol=0.007) - def test_rgba_antialias(): - fig, axs = plt.subplots(2, 2, figsize=(3.5, 3.5), sharex=False, - sharey=False, constrained_layout=True) -diff --git a/lib/matplotlib/tests/test_legend.py b/lib/matplotlib/tests/test_legend.py -index 3c2af27564..c65887b5e4 100644 ---- a/lib/matplotlib/tests/test_legend.py -+++ b/lib/matplotlib/tests/test_legend.py -@@ -177,7 +177,7 @@ def test_multiple_keys(): - - - @image_comparison(['rgba_alpha.png'], remove_text=True, -- tol=0 if platform.machine() == 'x86_64' else 0.03) -+ tol=0.02 if platform.machine() == 'x86_64' else 0.03) - def test_alpha_rgba(): - fig, ax = plt.subplots() - ax.plot(range(10), lw=5) -@@ -186,7 +186,7 @@ def test_alpha_rgba(): - - - @image_comparison(['rcparam_alpha.png'], remove_text=True, -- tol=0 if platform.machine() == 'x86_64' else 0.03) -+ tol=0.02 if platform.machine() == 'x86_64' else 0.03) - def test_alpha_rcparam(): - fig, ax = plt.subplots() - ax.plot(range(10), lw=5) -@@ -214,7 +214,7 @@ def test_fancy(): - - - @image_comparison(['framealpha'], remove_text=True, -- tol=0 if platform.machine() == 'x86_64' else 0.024) -+ tol=0.02 if platform.machine() == 'x86_64' else 0.024) - def test_framealpha(): - x = np.linspace(1, 100, 100) - y = x -diff --git a/lib/matplotlib/tests/test_lines.py b/lib/matplotlib/tests/test_lines.py -index 902b7aa2c0..d5145a38f0 100644 ---- a/lib/matplotlib/tests/test_lines.py -+++ b/lib/matplotlib/tests/test_lines.py -@@ -185,7 +185,7 @@ def test_set_drawstyle(): - - @image_comparison( - ['line_collection_dashes'], remove_text=True, style='mpl20', -- tol=0 if platform.machine() == 'x86_64' else 0.65) -+ tol=0.65) - def test_set_line_coll_dash_image(): - fig, ax = plt.subplots() - np.random.seed(0) -diff --git a/lib/matplotlib/tests/test_units.py b/lib/matplotlib/tests/test_units.py -index ae6372fea1..4f0dc25732 100644 ---- a/lib/matplotlib/tests/test_units.py -+++ b/lib/matplotlib/tests/test_units.py -@@ -79,7 +79,7 @@ def quantity_converter(): - # Tests that the conversion machinery works properly for classes that - # work as a facade over numpy arrays (like pint) - @image_comparison(['plot_pint.png'], style='mpl20', -- tol=0 if platform.machine() == 'x86_64' else 0.03) -+ tol=0.002 if platform.machine() == 'x86_64' else 0.03) - def test_numpy_facade(quantity_converter): - # use former defaults to match existing baseline image - plt.rcParams['axes.formatter.limits'] = -7, 7 -@@ -106,7 +106,7 @@ def test_numpy_facade(quantity_converter): - - # Tests gh-8908 - @image_comparison(['plot_masked_units.png'], remove_text=True, style='mpl20', -- tol=0 if platform.machine() == 'x86_64' else 0.02) -+ tol=0.02) - def test_plot_masked_units(): - data = np.linspace(-5, 5) - data_masked = np.ma.array(data, mask=(data > -2) & (data < 2)) -diff --git a/lib/matplotlib/tests/test_usetex.py b/lib/matplotlib/tests/test_usetex.py -index 342face450..c7256586bc 100644 ---- a/lib/matplotlib/tests/test_usetex.py -+++ b/lib/matplotlib/tests/test_usetex.py -@@ -15,6 +15,7 @@ import matplotlib.pyplot as plt - pytestmark = needs_usetex - - -+@pytest.mark.skip(reason="TODO: broken") - @image_comparison( - baseline_images=['test_usetex'], - extensions=['pdf', 'png'], -@@ -65,7 +66,7 @@ def test_mathdefault(): - fig.canvas.draw() - - --@image_comparison(['eqnarray.png']) -+@image_comparison(['eqnarray.png'], tol=23) - def test_multiline_eqnarray(): - text = ( - r'\begin{eqnarray*}' -@@ -163,7 +164,7 @@ except mpl.ExecutableNotFoundError: - - - @image_comparison(baseline_images=['rotation'], extensions=['eps', 'pdf', 'png', 'svg'], -- style='mpl20', tol=3.91 if _old_gs_version else 0) -+ style='mpl20', tol=30) - def test_rotation(): - mpl.rcParams['text.usetex'] = True - diff --git a/dev-python/matplotlib/matplotlib-3.10.0.ebuild b/dev-python/matplotlib/matplotlib-3.10.0.ebuild deleted file mode 100644 index 98d59fda5be6..000000000000 --- a/dev-python/matplotlib/matplotlib-3.10.0.ebuild +++ /dev/null @@ -1,315 +0,0 @@ -# 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_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} - - local PATCHES=( - "${FILESDIR}"/matplotlib-3.10.0-test.patch - ) - - # increase lock timeout to 30 s - sed -i -e 's:retries = 50:retries = 300:' lib/matplotlib/cbook.py || 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 - # "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: warning isn't passed through - tests/test_image.py::test_large_image - # 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 - 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 - tests/test_axes.py::test_axes_clear_reference_cycle - 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' - ) - ;& - 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 - - # 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}"/test - cp -r "${BUILD_DIR}"/{install,test}"${EPREFIX}/usr/bin" || die - local -x PATH=${BUILD_DIR}/test${EPREFIX}/usr/bin:${PATH} - - pushd lib >/dev/null || die - local path - local sitedir=${BUILD_DIR}/test$(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 - - # speed tests up - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - # pretend we're on CI to increase timeouts - local -x CI=1 - nonfatal epytest --pyargs matplotlib -m "not network" \ - -p rerunfailures --reruns=3 \ - -o tmp_path_retention_policy=all || die -} diff --git a/dev-python/matplotlib/matplotlib-3.10.1.ebuild b/dev-python/matplotlib/matplotlib-3.10.1.ebuild index 610a46559736..66acfc29071f 100644 --- a/dev-python/matplotlib/matplotlib-3.10.1.ebuild +++ b/dev-python/matplotlib/matplotlib-3.10.1.ebuild @@ -29,7 +29,7 @@ SRC_URI+=" # 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" +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=" @@ -261,7 +261,20 @@ python_test() { '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 diff --git a/dev-python/matplotlib/matplotlib-3.9.2.ebuild b/dev-python/matplotlib/matplotlib-3.9.2.ebuild deleted file mode 100644 index 11bdcd193022..000000000000 --- a/dev-python/matplotlib/matplotlib-3.9.2.ebuild +++ /dev/null @@ -1,301 +0,0 @@ -# Copyright 1999-2024 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 qt5 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 - ) - qt5? ( - $(python_gen_cond_dep ' - dev-python/pyqt5[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_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} - - local PATCHES=( - "${FILESDIR}"/matplotlib-3.9.0-test.patch - ) - - # increase lock timeout to 30 s - sed -i -e 's:retries = 50:retries = 300:' lib/matplotlib/cbook.py || 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 - # "no warnings" - tests/test_backend_pdf.py::test_invalid_metadata - tests/test_figure.py::test_too_many_figures - ) - - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - # TODO: warning isn't passed through - tests/test_image.py::test_large_image - # 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 - 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 - ) - if has_version "<dev-python/pypy3_10-exe-7.3.13_p2" || - has_version "<dev-python/pypy3_10-exe-bin-7.3.13_p2" - then - EPYTEST_DESELECT+=( - # TypeError is raised when exception is raised in a starred - # expression referencing a generator that uses "yield from" - # and raises -- non-critical, since some exception is raised - # after all - # https://foss.heptapod.net/pypy/pypy/-/issues/4032 - tests/test_axes.py::test_bad_plot_args - tests/test_axes.py::test_plot_errors - tests/test_axes.py::test_plot_format_errors - ) - fi - ;; - 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' - ) - ;& - 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 - - # 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}"/test - cp -r "${BUILD_DIR}"/{install,test}"${EPREFIX}/usr/bin" || die - local -x PATH=${BUILD_DIR}/test${EPREFIX}/usr/bin:${PATH} - - pushd lib >/dev/null || die - local path - local sitedir=${BUILD_DIR}/test$(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 - - # speed tests up - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - # pretend we're on CI to increase timeouts - local -x CI=1 - nonfatal epytest --pyargs matplotlib -m "not network" \ - -p rerunfailures --reruns=3 \ - -o tmp_path_retention_policy=all || die -} diff --git a/dev-python/matplotlib/matplotlib-3.9.4.ebuild b/dev-python/matplotlib/matplotlib-3.9.4.ebuild deleted file mode 100644 index b54890d76a69..000000000000 --- a/dev-python/matplotlib/matplotlib-3.9.4.ebuild +++ /dev/null @@ -1,301 +0,0 @@ -# Copyright 1999-2024 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 qt5 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 - ) - qt5? ( - $(python_gen_cond_dep ' - dev-python/pyqt5[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_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} - - local PATCHES=( - "${FILESDIR}"/matplotlib-3.9.3-test.patch - ) - - # increase lock timeout to 30 s - sed -i -e 's:retries = 50:retries = 300:' lib/matplotlib/cbook.py || 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 - # "no warnings" - tests/test_backend_pdf.py::test_invalid_metadata - tests/test_figure.py::test_too_many_figures - ) - - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - # TODO: warning isn't passed through - tests/test_image.py::test_large_image - # 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 - 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 - ) - if has_version "<dev-python/pypy3_10-exe-7.3.13_p2" || - has_version "<dev-python/pypy3_10-exe-bin-7.3.13_p2" - then - EPYTEST_DESELECT+=( - # TypeError is raised when exception is raised in a starred - # expression referencing a generator that uses "yield from" - # and raises -- non-critical, since some exception is raised - # after all - # https://foss.heptapod.net/pypy/pypy/-/issues/4032 - tests/test_axes.py::test_bad_plot_args - tests/test_axes.py::test_plot_errors - tests/test_axes.py::test_plot_format_errors - ) - fi - ;; - 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' - ) - ;& - 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 - - # 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}"/test - cp -r "${BUILD_DIR}"/{install,test}"${EPREFIX}/usr/bin" || die - local -x PATH=${BUILD_DIR}/test${EPREFIX}/usr/bin:${PATH} - - pushd lib >/dev/null || die - local path - local sitedir=${BUILD_DIR}/test$(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 - - # speed tests up - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - # pretend we're on CI to increase timeouts - local -x CI=1 - nonfatal epytest --pyargs matplotlib -m "not network" \ - -p rerunfailures --reruns=3 \ - -o tmp_path_retention_policy=all || die -} diff --git a/dev-python/mistune/Manifest b/dev-python/mistune/Manifest index 69a6bd511324..ed99f5072185 100644 --- a/dev-python/mistune/Manifest +++ b/dev-python/mistune/Manifest @@ -1 +1,2 @@ DIST mistune-3.1.2.tar.gz 94613 BLAKE2B 89d7c8fc94c7b4fb3860fb720dff170b5505e474beda1f2c6b97a8812d8ac7c2e47b604c542739d96355adc60d0ab7f5e482f17714e0a338f1babd1b6812da50 SHA512 62fe0a8849a36bc3e07854a9d3d333d1155e6a1e84cab0ade824b98869df2dbdc5741dea3e26b7af8e72e8339c7991f00729d890f5af2289c57865585a5d681a +DIST mistune-3.1.3.tar.gz 94347 BLAKE2B 3464e6b5e4e48faacc303cbf50b15fca235eb9af4fd862bfa7eb4f97a97b4fcefdf4d221151c1e2e546693b3c539d6c71844fe6a2234a2fd9303fb5a9f29f1fd SHA512 6728543398f0e86612adbf2828b4706da8901738cb8f14df68797bf9cb20e8b9fc15b63e9cd88ee6dd8199fc47676bc4586c54063412256548e429bc4c27488b diff --git a/dev-python/mistune/mistune-3.1.3.ebuild b/dev-python/mistune/mistune-3.1.3.ebuild new file mode 100644 index 000000000000..0707bb168a76 --- /dev/null +++ b/dev-python/mistune/mistune-3.1.3.ebuild @@ -0,0 +1,27 @@ +# 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" + +distutils_enable_tests pytest + +RDEPEND=" + $(python_gen_cond_dep ' + dev-python/typing-extensions[${PYTHON_USEDEP}] + ' 3.10) +" diff --git a/dev-python/mitmproxy-wireguard/mitmproxy-wireguard-0.1.20-r1.ebuild b/dev-python/mitmproxy-wireguard/mitmproxy-wireguard-0.1.20-r1.ebuild index 749ef99984d0..42fa7f8e54ca 100644 --- a/dev-python/mitmproxy-wireguard/mitmproxy-wireguard-0.1.20-r1.ebuild +++ b/dev-python/mitmproxy-wireguard/mitmproxy-wireguard-0.1.20-r1.ebuild @@ -1,4 +1,4 @@ -# Copyright 2022-2024 Gentoo Authors +# Copyright 2022-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 diff --git a/dev-python/mkdocstrings-python/Manifest b/dev-python/mkdocstrings-python/Manifest index 05ac7877299b..62f7f3c222fb 100644 --- a/dev-python/mkdocstrings-python/Manifest +++ b/dev-python/mkdocstrings-python/Manifest @@ -1,3 +1,2 @@ -DIST mkdocstrings_python-1.16.2.tar.gz 423492 BLAKE2B 2f5c7d8c3f5b6b1256b6f15334bc131cf0281883bf8072400ab195d724eddf2c8367c081abe571e0f4fd889c97181effc1764bd1e701da00fe44593007c12919 SHA512 52c78484139df79a1a9d0924a03c08e6902e91ebb3dc1db129c3bf372d670578206d00335d0a3ef34af0c33cebe592f829023ba645102839da76be07c72be739 -DIST mkdocstrings_python-1.16.3.tar.gz 424073 BLAKE2B 7ad6114c3424dcd4b9f2da916eaf69a67bb5d6d53286d5e60c95af8cab333a9c56f106df3057107fddfd83e1f0f0875b5a4d6c6ff097b0416cd8bdb84fc81599 SHA512 7778ff0e8c2677ea84b61b5ddd623ccd0db2c6eeef3a6beb988d2a85ac0d8f4fb5f5ffeabc823ef0d9e486217efababc8d647b6e7b1873d00f26d6785f051cd3 DIST mkdocstrings_python-1.16.5.tar.gz 426979 BLAKE2B b6c7185c4f5abae35d7feade0d3dd36cdc1eecc5ac631f2af354e57037507f3d291bc1ff0326b665058acc73f68834e853a2d07d831fb0c08bf262111659267e SHA512 07a4a0698769a4daa0cae4607cb98e7124013a8f7190390a16818c0e21de18d78e5dcac39206d2062160cad61310b77212fe279a5cffbfb2183d49d24c792d79 +DIST mkdocstrings_python-1.16.6.tar.gz 201565 BLAKE2B 0e555d5e85959cceab121e557c39bebb2b05f2ed5ff098f1fa3d8c1714b80d271be7e559c2b1124ac4fca1877cf0627f075da31af2406cf97340f5320ad4eb0d SHA512 8091d9ed36eba2b420092efff874d4904f3d655d6b5b86090b8a7a403f6287581e345a001e4f26d57d789740674299af7b4a5f19ebeaf7976620b3688404ecbd diff --git a/dev-python/mkdocstrings-python/mkdocstrings-python-1.16.2.ebuild b/dev-python/mkdocstrings-python/mkdocstrings-python-1.16.2.ebuild deleted file mode 100644 index c42dd5127852..000000000000 --- a/dev-python/mkdocstrings-python/mkdocstrings-python-1.16.2.ebuild +++ /dev/null @@ -1,51 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=pdm-backend -PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) - -inherit distutils-r1 pypi - -DESCRIPTION="Python handler for dev-python/mkdocstrings" -HOMEPAGE=" - https://mkdocstrings.github.io/python/ - https://github.com/mkdocstrings/python/ - https://pypi.org/project/mkdocstrings-python/ -" - -LICENSE="ISC" -SLOT="0" -KEYWORDS="~amd64 ~arm64 ~riscv" - -RDEPEND=" - >=dev-python/griffe-0.49[${PYTHON_USEDEP}] - >=dev-python/mkdocstrings-0.28.2[${PYTHON_USEDEP}] - >=dev-python/mkdocs-autorefs-1.4[${PYTHON_USEDEP}] - $(python_gen_cond_dep ' - >=dev-python/typing-extensions-4.0[${PYTHON_USEDEP}] - ' 3.10) -" -BDEPEND=" - test? ( - >=dev-python/beautifulsoup4-4.12.3[${PYTHON_USEDEP}] - >=dev-python/inline-snapshot-0.18[${PYTHON_USEDEP}] - dev-python/mkdocs-material[${PYTHON_USEDEP}] - ) -" - -distutils_enable_tests pytest - -export PDM_BUILD_SCM_VERSION=${PV} - -python_test() { - local EPYTEST_DESELECT=( - # "None" meaning particular formatter not installed - "tests/test_rendering.py::test_format_code[None-print('Hello')]" - "tests/test_rendering.py::test_format_code[None-aaaaa(bbbbb, ccccc=1) + ddddd.eeeee[ffff] or {ggggg: hhhhh, iiiii: jjjjj}]" - ) - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -p inline_snapshot -} diff --git a/dev-python/mkdocstrings-python/mkdocstrings-python-1.16.3.ebuild b/dev-python/mkdocstrings-python/mkdocstrings-python-1.16.6.ebuild index f1b21b66ce1a..f1b21b66ce1a 100644 --- a/dev-python/mkdocstrings-python/mkdocstrings-python-1.16.3.ebuild +++ b/dev-python/mkdocstrings-python/mkdocstrings-python-1.16.6.ebuild diff --git a/dev-python/owslib/Manifest b/dev-python/owslib/Manifest index 5a8d28e56fc3..5d0d75ff4da6 100644 --- a/dev-python/owslib/Manifest +++ b/dev-python/owslib/Manifest @@ -1 +1,2 @@ DIST OWSLib-0.32.1.gh.tar.gz 1060242 BLAKE2B 03f32ca140b1b337af0eff9676c61c075e27b97d582e46fefddd0563bfa7b71c152a94055df1808294860395271031adb045df1ba3b1ba103f2d423d2eab4eab SHA512 1d8ff92295a26395459b2a8caa92120c2bb813d33eaaba95476af09c32eb92cd2d52f9b29422d93837c8456cbf63535b5b60a196c212a1d349c803db9349543e +DIST OWSLib-0.33.0.gh.tar.gz 1073327 BLAKE2B dd0ea8dd04f2ee1cd2b972b8d0b0c5425d0c611f9dd32aeb3e9a4799ecc3f9b9132e280099b038769c47b35211cd2f192dd4ced304240ab48a3996643329bd7b SHA512 64833cf3b390e9db85bfd20ed5b77cf026a6e946f7b538e1227c7b8eb50809d6c9099693e52ea39bd3c7098bdfd8a519c7290751c9743ba5cdcae5733b22143f diff --git a/dev-python/owslib/owslib-0.33.0.ebuild b/dev-python/owslib/owslib-0.33.0.ebuild new file mode 100644 index 000000000000..74715a0d3628 --- /dev/null +++ b/dev-python/owslib/owslib-0.33.0.ebuild @@ -0,0 +1,46 @@ +# 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} ) + +inherit distutils-r1 + +MY_P=OWSLib-${PV} +DESCRIPTION="Library for client programming with Open Geospatial Consortium web service" +HOMEPAGE=" + https://geopython.github.io/OWSLib/ + https://github.com/geopython/owslib/ + https://pypi.org/project/OWSLib/ +" +SRC_URI=" + https://github.com/geopython/${PN}/archive/${PV}.tar.gz + -> ${MY_P}.gh.tar.gz +" +S=${WORKDIR}/${MY_P} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +RDEPEND=" + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/pytest-httpserver[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -o addopts= -m "not online" +} diff --git a/dev-python/pbs-installer/Manifest b/dev-python/pbs-installer/Manifest index ad8aec634dbd..a1900c109a2b 100644 --- a/dev-python/pbs-installer/Manifest +++ b/dev-python/pbs-installer/Manifest @@ -1,2 +1,2 @@ -DIST pbs-installer-2025.02.12.gh.tar.gz 84756 BLAKE2B e2b9063f36b0e53877dbf88536194c89a74ea4abaeeecf823caf95d98a680608f1e4b673fde6d528b69e55dc81a9b5533065ea79f3262ba33dd9453d7656fdd8 SHA512 9f342684f4338dd1dd9b409a31d0cf2626d444f3222adbcf9fc93c54e79f8870d07804265a0935c139ae9c5261bed76225fe22aa36d3736fb511a024dc174a91 DIST pbs-installer-2025.03.11.gh.tar.gz 84837 BLAKE2B 32860346f216907a320881e9107a194870a460f39c51d6a4f4f366119de0717b36a7dbf6a98be99a6aef30212eb48e9e949c1d9ae95642ea7bda34264549cd55 SHA512 5b323d6b1a116516a03843ffcea2e0217c53b7726089ba57f1633dd0072c4217d3d229b32f8a5746f034b54f84be1a0a12bfe3ea6d73ab3fff45c76205230e9f +DIST pbs-installer-2025.03.17.gh.tar.gz 84857 BLAKE2B 84a53ba5257817ae877dc2e65ddeb0cdcc10b88ed72888a773986d66bc349fcfb8892bb8974cc5b81fdf8d5e295771da0fcb21822537bd6ede14f669ad883535 SHA512 8ab4f418c9415ce6395334147a982fe6d04bd0952f33a859a67346c6666c00fdae92d200849fbeb13c7e03fba1c088b04d31a6dbbee5adf44b812a32659624c0 diff --git a/dev-python/pbs-installer/pbs-installer-2025.02.12.ebuild b/dev-python/pbs-installer/pbs-installer-2025.03.17.ebuild index 3844530d8280..3844530d8280 100644 --- a/dev-python/pbs-installer/pbs-installer-2025.02.12.ebuild +++ b/dev-python/pbs-installer/pbs-installer-2025.03.17.ebuild diff --git a/dev-python/platformdirs/Manifest b/dev-python/platformdirs/Manifest index 4b85d64b912e..3df9d1334cb3 100644 --- a/dev-python/platformdirs/Manifest +++ b/dev-python/platformdirs/Manifest @@ -1 +1,2 @@ DIST platformdirs-4.3.6.tar.gz 21302 BLAKE2B 3488d33c70c420a7234fa773a7b61eaabc85e7aabfa75c9de308074ef653b534823a133038eb8098d41f987596d7fa6c70abd6cdde28234590261ecd6c8a9f56 SHA512 8a14126346f5472798074bd9ef73b39cd0c6517951556f7ab839d2c1993d8001a3359101fe3a7a00e803d8a5540cf33057d99e1a2e93b1bd5e20a948c89e4e44 +DIST platformdirs-4.3.7.tar.gz 21291 BLAKE2B 8abe5b99140d1968d0341c025a65cd373d798b4b3848686888e754aad95d5d7e526db9618b2f44300d5b84700655b1562fa40929362a78ed50502a6ef54a55fa SHA512 d2d131aabc448d80581e930b7bb6ced950ce7f2fe595243f0a57ab2e990f7c6669cc45fb4592971f7601f268455451881ceaf303618b5f963056e818c1580bcc diff --git a/dev-python/platformdirs/platformdirs-4.3.7.ebuild b/dev-python/platformdirs/platformdirs-4.3.7.ebuild new file mode 100644 index 000000000000..97f77a4f8ac1 --- /dev/null +++ b/dev-python/platformdirs/platformdirs-4.3.7.ebuild @@ -0,0 +1,54 @@ +# Copyright 2021-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="A small Python module for determining appropriate platform-specific dirs" +HOMEPAGE=" + https://pypi.org/project/platformdirs/ + https://github.com/tox-dev/platformdirs/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +BDEPEND=" + test? ( + dev-python/appdirs[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "hatchling' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease setuptools bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "${PN}" + version = "${PV}" + description = 'A small Python package for determining appropriate platform-specific dirs, e.g. a "user data dir".' + EOF + # sigh + cat > src/platformdirs/version.py <<-EOF || die + __version__ = version = '${PV}' + __version_tuple__ = version_tuple = (${PV//./, }) + EOF +} + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -p pytest_mock +} diff --git a/dev-python/protobuf/Manifest b/dev-python/protobuf/Manifest index 2238ce99e655..f159ab88d003 100644 --- a/dev-python/protobuf/Manifest +++ b/dev-python/protobuf/Manifest @@ -8,6 +8,7 @@ DIST protobuf-5.27.5.py.tar.gz 401551 BLAKE2B ab51b7a99af041ae2cd96751b2d73092c5 DIST protobuf-5.28.0.py.tar.gz 422388 BLAKE2B 208f92bdb2bc0b92dca76de4d13eda0c98bc4784cb2ce9d57690682d9327fb2a66646241ecc02e96be602b6763b177b3192ca457732540d1fa8c33afecd8d76f SHA512 91f05915ace778ee76a07856049410c48c02a665f6c4665df9ac3e32992a67235a93fb4e19c9f991821652f236b87749c3d79cfabd8c6508fdc17a2ee612cee5 DIST protobuf-5.28.3.py.tar.gz 422479 BLAKE2B ce571a63641cbb9af0aafd21b140c0732028bf04ae5aafe60301b3b1e31defc9b4d7d1d8f088e5b01fa7911617230feb5f58e38c0909b8f88676e62c59385a69 SHA512 5c42d50c6fbccf03acb95872d3233f75ff20333924e4eba6b36c095824f850121c9aa1664a5826dcb3a7dc79e9647e4f7decdee0d78a1a8557373613645d6507 DIST protobuf-5.29.2.py.tar.gz 424901 BLAKE2B ea90ff2bda8e2d264b9870d34a2aecf3e86691d144b420c39db1bcfb425723ef91ece5a2d7d448d026160866ee93d2c5d0e506a99712a5c22165f7c07865dc54 SHA512 7b7a0b116f03e5c64e9342ac0f9143bf8a41fe716697bcd58e20a410fb5d1043a174e68b33209178c5e3605421a145a11a17338ca1171597194eb0a5cfd2e63d +DIST protobuf-5.29.4.py.tar.gz 424902 BLAKE2B 54941b008ff5ebd007076448828564128d98e9a6a4613c87057c359124940d341358fe28107b929e3e842ac7e1b34ed54c30219ed95cbb418826592e2458a01f SHA512 634faf103ed8320762593689796d26e6b988e1b40277b12dc7356983c07d5d1da8cac1530e4f16c0a1494abfb885f26bf9884988029e863515cf535c62d96c77 DIST protobuf-python-4.25.4.tar.gz 380283 BLAKE2B 3ded7b654fa4db54b0dff2309f096bcab634b9d587bd94dae4ab49fb2fe9dc8f821c52deed43b026e06189b3b7a1a6697074942c1fa732ec82257233bf1b2f90 SHA512 7b91a9473fafe62b723741faec8e8531c604b025a49ef8be79778f8a48c84c475518447b24f5a08a0a8a8ecb1ff22e2106a3183197b76be3b2b8c6c994d93920 DIST protobuf-python-5.27.2.tar.gz 401640 BLAKE2B 9d3420b75536ffd452cc2a3317a6ad1e16a62df36085f1e329f0178026032f5533e1a96f7b613f91093ac12a44d7ad4059ebededea636f38ded29da563afd075 SHA512 b3afcf13e223d7e855ac0aa000cc395e3ea1301b2e3dfe3c0d5435d8031be3726e6aec1fb6228c572aa1685f75aba2d97d2c9dfdb6d9e058a2e88321d6ba9180 DIST protobuf-python-5.27.4.tar.gz 401622 BLAKE2B 4a7f211a4f4b3e7a338f8be6a7c6cdec2df629d6f9b62dfc276d6029864dfb541468a5e4d221f4540ae9281e5fc622ee898daeb178f9d98bac9932af0c8625db SHA512 2b817947363ab8d31bd484c18d33234004c7f5e6cb7bff55657cc33e1f325e22c7ccf83c19e255e839d6061fc62d632af9b36bc4fef0d4b33623b278239043b2 diff --git a/dev-python/protobuf/protobuf-5.29.4.ebuild b/dev-python/protobuf/protobuf-5.29.4.ebuild new file mode 100644 index 000000000000..bbc42cb227ba --- /dev/null +++ b/dev-python/protobuf/protobuf-5.29.4.ebuild @@ -0,0 +1,29 @@ +# Copyright 2008-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +# Default implementation currently is upb, which doesn't match dev-libs/protobuf +# https://github.com/protocolbuffers/protobuf/blob/main/python/README.md#implementation-backends + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) +PYPI_PN="protobuf" + +inherit distutils-r1 pypi + +DESCRIPTION="Google's Protocol Buffers - Python bindings" +HOMEPAGE=" + https://protobuf.dev/ + https://pypi.org/project/protobuf/ +" + +# Rename sdist to avoid conflicts with dev-libs/protobuf +SRC_URI=" + $(pypi_sdist_url) -> ${P}.py.tar.gz +" + +LICENSE="BSD" +SLOT="0/$(ver_cut 1-3)" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos" diff --git a/dev-python/psycopg/psycopg-3.2.6.ebuild b/dev-python/psycopg/psycopg-3.2.6.ebuild index a7b3f48ff593..93518ee84ce8 100644 --- a/dev-python/psycopg/psycopg-3.2.6.ebuild +++ b/dev-python/psycopg/psycopg-3.2.6.ebuild @@ -95,6 +95,15 @@ python_test() { tests/test_dns_srv.py::test_srv ) + case ${ARCH} in + arm|x86) + EPYTEST_DESELECT+=( + # TODO + tests/types/test_numpy.py::test_classes_identities + ) + ;; + esac + local impls=( python ) if use native-extensions && [[ ${EPYTHON} != pypy3* ]]; then impls+=( c ) diff --git a/dev-python/pygccxml/Manifest b/dev-python/pygccxml/Manifest index 73cd7d4a628e..7e02ba97b661 100644 --- a/dev-python/pygccxml/Manifest +++ b/dev-python/pygccxml/Manifest @@ -1,2 +1,3 @@ DIST pygccxml-2.6.1.gh.tar.gz 3154561 BLAKE2B 95fb9df63f4175eab707211cb14d178437928ddad76eeb416d8cf4a48b29c211d80ba55533deb0a12e6bad4435df9bf82a1321b37cdc8db39d217f2995d1215e SHA512 b0ccd12b50d93287189fa86be6e11f44e28869045e6d7f6f84f34220cea642fc267eee150fe544bb54839b7f467f64af4a6025c84b94df7793645f2d444ae60d DIST pygccxml-3.0.0.gh.tar.gz 3155557 BLAKE2B a485f5b25d724c0c67a4a6108b298ecf5da9bd3fd365f513ce424239d3e94d76a88cdc1b7839fd69b5dc897a3e7e4f86721a8411ca9c6faa37da9edae509d387 SHA512 061150cabbe3eb8853dcd48be91d741f7af405f6682bd6a6000e83bf5c5da8ed572467131f98234158f86deac6c8881736fa47b6a89149edbe10c00729e863b5 +DIST pygccxml-3.0.2.gh.tar.gz 3156023 BLAKE2B add33e230db83cadd5fd394e7e65c8815227abb3d5f86e76c54bcbc13ba52ffa55698d98785802ac51d9396f009972a093476e489280548469d5000aff8aa010 SHA512 d94b9175bd88bc92d039b758e2052d3c72e510cc381cbd974d670ff6cc06f80f7918bcd8da06efd82729d294e0972cee60690c7b0e24ab2c62a53c366bae9fb5 diff --git a/dev-python/pygccxml/pygccxml-3.0.2.ebuild b/dev-python/pygccxml/pygccxml-3.0.2.ebuild new file mode 100644 index 000000000000..46d668b6f074 --- /dev/null +++ b/dev-python/pygccxml/pygccxml-3.0.2.ebuild @@ -0,0 +1,46 @@ +# 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} ) + +inherit distutils-r1 + +DESCRIPTION="A specialized XML reader to navigate C++ declarations" +HOMEPAGE=" + https://github.com/CastXML/pygccxml/ + https://pypi.org/project/pygccxml/ +" +SRC_URI=" + https://github.com/CastXML/pygccxml/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Boost-1.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~riscv ~x86" + +DEPEND=" + ${PYTHON_DEPS} + dev-libs/castxml +" +RDEPEND=" + ${DEPEND} +" + +distutils_enable_tests pytest +distutils_enable_sphinx docs dev-python/sphinx-rtd-theme + +EPYTEST_DESELECT=( + tests/test_smart_pointer.py +) + +python_prepare_all() { + local PATCHES=( + "${FILESDIR}/${PN}-2.4.0-doc.patch" + ) + + distutils-r1_python_prepare_all +} diff --git a/dev-python/pyglet/Manifest b/dev-python/pyglet/Manifest index 37473ee595ee..f3a78f7d923c 100644 --- a/dev-python/pyglet/Manifest +++ b/dev-python/pyglet/Manifest @@ -1,2 +1 @@ -DIST pyglet-2.1.2.gh.tar.gz 6535497 BLAKE2B 96195c8bf42d09bcf0ead5e1541ad93af56d8b5d63d88c472b4c5e32f587b40f158b3e84028eb8449ba32500a9585d6dc3ebf85054909b4df7d9ad358f264237 SHA512 d8c3d64ba9fa8d34a5dc52fe6010af2eea6effd8f9d1297c879979c256634317e391035a24e577b903f1be4635513446ece156277010e42b417796434c6e35de DIST pyglet-2.1.3.gh.tar.gz 6534900 BLAKE2B edf8715213682b184050f1ab2d51913e787acf03e6911b68d7076afb9427ec6d60efbc28145f4e5b7e228d00d0aa5daa5ebb5a8c5a118f2006ab447360e8440f SHA512 fbdc45888ed0cbb380115365b96db82c57ffbfc8f03c03265a276992e154cc5ec81c752e6fc8940003d96c489009eefe0976e3f87129fea1605ab6db7b4fe1bf diff --git a/dev-python/pyglet/pyglet-2.1.2.ebuild b/dev-python/pyglet/pyglet-2.1.2.ebuild deleted file mode 100644 index 8c0de624ea48..000000000000 --- a/dev-python/pyglet/pyglet-2.1.2.ebuild +++ /dev/null @@ -1,84 +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_{9,10,11,12,13} pypy3 ) - -inherit distutils-r1 virtualx xdg-utils - -MY_P=${P/_/.} -DESCRIPTION="Cross-platform windowing and multimedia library for Python" -HOMEPAGE=" - https://pyglet.org/ - https://github.com/pyglet/pyglet/ - https://pypi.org/project/pyglet/ -" -SRC_URI=" - https://github.com/pyglet/pyglet/archive/v${PV/_/.}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux" -IUSE="examples image +sound" - -RDEPEND=" - virtual/glu - virtual/opengl - image? ( - || ( - dev-python/pillow[${PYTHON_USEDEP}] - x11-libs/gtk+:2 - ) - ) - sound? ( - || ( - media-libs/libpulse - media-libs/openal - ) - ) -" -# ffmpeg? ( media-libs/avbin-bin ) -BDEPEND=" - test? ( - dev-python/pillow[${PYTHON_USEDEP}] - media-libs/fontconfig - ) -" - -distutils_enable_tests pytest - -src_test() { - virtx distutils-r1_src_test -} - -python_test() { - xdg_environment_reset - - local EPYTEST_DESELECT=( - # lacking device/server permissions - tests/unit/media/test_listener.py::test_openal_listener - tests/unit/media/test_listener.py::test_pulse_listener - # fragile to system load - tests/unit/media/test_player.py::PlayerTestCase::test_pause_resume - tests/unit/test_clock_freq.py::test_elapsed_time_between_tick - ) - - # Specify path to avoid running interactive tests - # We could add in integration tests, but they're slow - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - nonfatal epytest tests/unit || die "Tests failed with ${EPYTHON}" -} - -python_install_all() { - if use examples; then - dodoc -r examples - docompress -x /usr/share/doc/${PF}/examples - fi - - distutils-r1_python_install_all -} diff --git a/dev-python/pyglet/pyglet-2.1.3.ebuild b/dev-python/pyglet/pyglet-2.1.3.ebuild index 43a5eacb13d6..b6f49260b849 100644 --- a/dev-python/pyglet/pyglet-2.1.3.ebuild +++ b/dev-python/pyglet/pyglet-2.1.3.ebuild @@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P} LICENSE="BSD" SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux" +KEYWORDS="amd64 ~arm arm64 ~loong ~ppc64 ~riscv x86 ~amd64-linux ~x86-linux" IUSE="examples image +sound" RDEPEND=" @@ -47,6 +47,7 @@ BDEPEND=" test? ( dev-python/pillow[${PYTHON_USEDEP}] media-libs/fontconfig + x11-base/xorg-server[-minimal] ) " diff --git a/dev-python/pymongo/Manifest b/dev-python/pymongo/Manifest index 41311ce6f027..ddfd81fc1e92 100644 --- a/dev-python/pymongo/Manifest +++ b/dev-python/pymongo/Manifest @@ -1,6 +1,2 @@ -DIST mongo-python-driver-4.10.1.gh.tar.gz 1957402 BLAKE2B 66f7c166af7c7467ca7cb20266d313e453ab485516c17e8eda5a4771b4818778c00ad314e7bd5868a95f2045f879a73617f64549db634257f1abbc7a9a095181 SHA512 200bda479cd951beef6234a15120a043b4399cadd8ef2fda69bfcd6904e1e0e43d179626092dc81d89f48806768bf8147c55108c91620920f5544f712bf3be51 DIST mongo-python-driver-4.11.1.gh.tar.gz 2111810 BLAKE2B 120168770b1f4a61f7f6327bb7b933e1bf848871ed7a6cb152837a95b438b17236e6b10b1fe54fc29a0791d8ad785033b2d726129dae69e9403ff5b1e3c2b929 SHA512 64f7d2baa90c23f3b5d91192cc4bcc6d3199f81b6b2844c19a1059779a5e6681a45e65872452230b6c1c8c193749324eb30af75f080f8830f9642f575da80bf9 -DIST mongo-python-driver-4.11.2.gh.tar.gz 2112201 BLAKE2B 261dcdacab32b516db4f980947dbf73005c9b972186c3720100495707bc96ed21ec4a8b251c1278f9b315d011ba87a6976e0033c768164abf7228efb061d703c SHA512 210a868c8e6dff923b03683e457085d631153bec2b6ddef85407c04c3f4399bb235331e3851b1193d9a2bed46a77f273ccb5ebf0fde437693a141a7a81673ce9 -DIST mongo-python-driver-4.11.gh.tar.gz 2111008 BLAKE2B 0f65410b5eead108dec0016c23c3e004251ab2db04f3a7b2a31a8757abdddf526cea695400c8cdf2bb4f7fc8c711ee4d2e5f883d0db8b309843a71e194e75016 SHA512 454109e9c9da8fec6785f50e34dfe253f9fd1a82d69cadd5c0366590c6ca6aeac180f16a0e011f855e72c6a949a0cf06f477c7396d4c9f4da6f936646a5d8c20 -DIST mongo-python-driver-4.7.2.gh.tar.gz 1548375 BLAKE2B a40dbe153f36cdf2836583aa0116f447d08376ce7980a09d0f21cea37a34ab318e5ff0b34b7fe1721cf7fc5d5443a1dbe0982d59cb941b0da8a4a99abdc7b19d SHA512 1de8bd14301e365eb53252dedaaaf8c9056dd534662543e2a500511e5f5f67a69e1f11a8a8575efdbd8852bb47b632d59762f66024d32973d20dc17c4448b9be -DIST mongo-python-driver-4.8.0.gh.tar.gz 1550149 BLAKE2B 9462480b17f3da54918883fbcb28a4324e6a00a9c2c34b16267ebcd378170f7fd34ec7290f7a0e3c4c38a5f1f803428cb6a0c64a562d956b3a19c37130697012 SHA512 17513a278187424fea1876d288651e385be759f23eebceca8d04a15182b15ffd64956193bb53e4a90e8b2197c2ebbade274737091f5d2e5fb4398539674c41df +DIST mongo-python-driver-4.11.3.gh.tar.gz 2112671 BLAKE2B 2c19b974461657b805484ad58bb7a3678950be716cbfc0e68853699560221dc3b8094eb8546e3b42efbc933596ebd98da35cc7a195f9690a02e4ff15855dd292 SHA512 f8e282085467b1ef6272ce13859ef7a88fdce9a674a3c40cf6f7e1352baecd80cf3394904834805e0921ce1c339bbc4ff54d1e33eadba7ee9c5f3f7a05e6fd99 diff --git a/dev-python/pymongo/pymongo-4.10.1.ebuild b/dev-python/pymongo/pymongo-4.10.1.ebuild deleted file mode 100644 index d468267f2c19..000000000000 --- a/dev-python/pymongo/pymongo-4.10.1.ebuild +++ /dev/null @@ -1,228 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=hatchling -PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) - -inherit check-reqs distutils-r1 - -MY_P=mongo-python-driver-${PV} -DESCRIPTION="Python driver for MongoDB" -HOMEPAGE=" - https://github.com/mongodb/mongo-python-driver/ - https://pypi.org/project/pymongo/ -" -SRC_URI=" - https://github.com/mongodb/mongo-python-driver/archive/${PV}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 hppa ~loong ~mips ~ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="doc kerberos +native-extensions +test-full" - -RDEPEND=" - <dev-python/dnspython-3.0.0[${PYTHON_USEDEP}] - kerberos? ( dev-python/kerberos[${PYTHON_USEDEP}] ) -" -BDEPEND=" - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - test-full? ( - >=dev-db/mongodb-2.6.0 - ) - ) -" - -distutils_enable_sphinx doc -distutils_enable_tests pytest - -reqcheck() { - if use test && use test-full; then - # During the tests, database size reaches 1.5G. - local CHECKREQS_DISK_BUILD=1536M - - check-reqs_${1} - fi -} - -pkg_pretend() { - reqcheck pkg_pretend -} - -pkg_setup() { - reqcheck pkg_setup -} - -src_prepare() { - distutils-r1_src_prepare - # we do not want hatch-requirements-txt and its ton of NIH deps - sed -i -e '/requirements/d' pyproject.toml || die -} - -python_compile() { - # causes build errors to be fatal - local -x TOX_ENV_NAME=whatever - local DISTUTILS_ARGS=() - # unconditionally implicitly disabled on pypy3 - if ! use native-extensions; then - export NO_EXT=1 - else - export PYMONGO_C_EXT_MUST_BUILD=1 - unset NO_EXT - fi - - distutils-r1_python_compile -} - -python_test() { - rm -rf bson pymongo || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local EPYTEST_DESELECT=( - # network-sandbox - test/asynchronous/test_client.py::AsyncClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver - test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_logging - test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_warning - test/asynchronous/test_client.py::TestClient::test_service_name_from_kwargs - test/asynchronous/test_client.py::TestClient::test_srv_max_hosts_kwarg - test/test_client.py::ClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver - test/test_client.py::ClientUnitTest::test_detected_environment_logging - test/test_client.py::ClientUnitTest::test_detected_environment_warning - test/test_client.py::TestClient::test_service_name_from_kwargs - test/test_client.py::TestClient::test_srv_max_hosts_kwarg - test/test_dns.py::TestCaseInsensitive::test_connect_case_insensitive - test/test_srv_polling.py - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_custom_srvServiceName - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_invalid_type_for_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_negative_integer_for_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_positive_srvMaxHosts_and_loadBalanced=fa - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_loadBalanced=true - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_replicaSet - - # broken regularly by changes in mypy - test/test_typing.py::TestMypyFails::test_mypy_failures - - # fragile to timing? fails because we're getting too many logs - test/test_connection_logging.py::TestConnectionLoggingConnectionPoolOptions::test_maxConnecting_should_be_included_in_connection_pool_created_message_when_specified - - # hangs? - test/asynchronous/test_grid_file.py::AsyncTestGridFile::test_small_chunks - ) - - local run_separately=( - # need to run some tests separately and then restart mongodb - # to prevent it from crashing - # https://bugs.gentoo.org/934389 - # note that this list must not overlap with EPYTEST_DESELECT - test/test_bulk.py - test/test_change_stream.py - test/test_collection.py - test/test_crud_unified.py - test/test_gridfs.py - test/test_gridfs_bucket.py - ) - local run_separately2=( - test/test_command_monitoring.py - test/test_connection_monitoring.py - test/test_cursor.py - test/test_database.py - test/test_grid_file.py - test/test_monitoring.py - ) - local run_separately_async=( - test/asynchronous/test_database.py - test/asynchronous/test_grid_file.py - ) - - if ! use test-full; then - # .invalid is guaranteed to return NXDOMAIN per RFC 6761 - local -x DB_IP=mongodb.invalid - epytest -p asyncio - return - fi - - # Yes, we need TCP/IP for that... - local -x DB_IP=127.0.0.1 - local -x DB_PORT=27000 - - local dbpath=${TMPDIR}/mongo.db - local logpath=${TMPDIR}/mongod.log - - local stage failed= - for stage in {1..5}; do - # Now, the hard part: we need to find a free port for mongod. - # We're just trying to run it random port numbers and check the log - # for bind errors. It shall be noted that 'mongod --fork' does not - # return failure when it fails to bind. - - mkdir -p "${dbpath}" || die - while true; do - ebegin "Trying to start mongod on port ${DB_PORT}" - - LC_ALL=C \ - mongod --dbpath "${dbpath}" --nojournal \ - --bind_ip ${DB_IP} --port ${DB_PORT} \ - --unixSocketPrefix "${TMPDIR}" \ - --logpath "${logpath}" --fork \ - && sleep 2 - - # Now we need to check if the server actually started... - if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then - # yay! - eend 0 - break - elif grep -q 'Address already in use' "${logpath}"; then - # ay, someone took our port! - eend 1 - : $(( DB_PORT += 1 )) - continue - else - eend 1 - eerror "Unable to start mongod for tests. See the server log:" - eerror " ${logpath}" - die "Unable to start mongod for tests." - fi - done - - local async=( -p asyncio -m default_async ) - local def=( -p asyncio -m "default or encryption" ) - case ${stage} in - 1) - nonfatal epytest "${def[@]}" "${run_separately[@]}" || failed=1 - ;; - 2) - nonfatal epytest "${def[@]}" "${run_separately2[@]}" || failed=1 - ;; - 3) - EPYTEST_DESELECT+=( - "${run_separately[@]}" - "${run_separately2[@]}" - ) - nonfatal epytest "${def[@]}" || failed=1 - ;; - 4) - nonfatal epytest "${async[@]}" "${run_separately_async[@]}" || failed=1 - ;; - 5) - EPYTEST_DESELECT+=( - "${run_separately_async[@]}" - ) - nonfatal epytest "${async[@]}" || failed=1 - ;; - esac - - mongod --dbpath "${dbpath}" --shutdown || die - done - - [[ ${failed} ]] && die "Tests fail with ${EPYTHON}" - - rm -rf "${dbpath}" || die -} diff --git a/dev-python/pymongo/pymongo-4.11.1.ebuild b/dev-python/pymongo/pymongo-4.11.1.ebuild index 8cff3ea1ac02..ee78c1cfaf3e 100644 --- a/dev-python/pymongo/pymongo-4.11.1.ebuild +++ b/dev-python/pymongo/pymongo-4.11.1.ebuild @@ -23,7 +23,7 @@ S=${WORKDIR}/${MY_P} LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" +KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86" IUSE="doc kerberos +native-extensions +test-full" RDEPEND=" diff --git a/dev-python/pymongo/pymongo-4.11.2.ebuild b/dev-python/pymongo/pymongo-4.11.3.ebuild index 3423f94e4005..3423f94e4005 100644 --- a/dev-python/pymongo/pymongo-4.11.2.ebuild +++ b/dev-python/pymongo/pymongo-4.11.3.ebuild diff --git a/dev-python/pymongo/pymongo-4.11.ebuild b/dev-python/pymongo/pymongo-4.11.ebuild deleted file mode 100644 index 3423f94e4005..000000000000 --- a/dev-python/pymongo/pymongo-4.11.ebuild +++ /dev/null @@ -1,237 +0,0 @@ -# Copyright 1999-2025 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=hatchling -PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) - -inherit check-reqs distutils-r1 - -MY_P=mongo-python-driver-${PV} -DESCRIPTION="Python driver for MongoDB" -HOMEPAGE=" - https://github.com/mongodb/mongo-python-driver/ - https://pypi.org/project/pymongo/ -" -SRC_URI=" - https://github.com/mongodb/mongo-python-driver/archive/${PV}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" -IUSE="doc kerberos +native-extensions +test-full" - -RDEPEND=" - <dev-python/dnspython-3.0.0[${PYTHON_USEDEP}] - kerberos? ( dev-python/kerberos[${PYTHON_USEDEP}] ) -" -BDEPEND=" - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - dev-python/pytest-asyncio[${PYTHON_USEDEP}] - test-full? ( - >=dev-db/mongodb-2.6.0 - ) - ) -" - -distutils_enable_sphinx doc -distutils_enable_tests pytest - -reqcheck() { - if use test && use test-full; then - # During the tests, database size reaches 1.5G. - local CHECKREQS_DISK_BUILD=1536M - - check-reqs_${1} - fi -} - -pkg_pretend() { - reqcheck pkg_pretend -} - -pkg_setup() { - reqcheck pkg_setup -} - -src_prepare() { - distutils-r1_src_prepare - # we do not want hatch-requirements-txt and its ton of NIH deps - sed -i -e '/requirements/d' pyproject.toml || die -} - -python_compile() { - # causes build errors to be fatal - local -x TOX_ENV_NAME=whatever - local DISTUTILS_ARGS=() - # unconditionally implicitly disabled on pypy3 - if ! use native-extensions; then - export NO_EXT=1 - else - export PYMONGO_C_EXT_MUST_BUILD=1 - unset NO_EXT - fi - - distutils-r1_python_compile -} - -python_test() { - rm -rf bson pymongo || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local EPYTEST_DESELECT=( - # network-sandbox - test/asynchronous/test_client.py::AsyncClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver - test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_logging - test/asynchronous/test_client.py::AsyncClientUnitTest::test_detected_environment_warning - test/asynchronous/test_client.py::TestClient::test_service_name_from_kwargs - test/asynchronous/test_client.py::TestClient::test_srv_max_hosts_kwarg - test/test_client.py::ClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver - test/test_client.py::ClientUnitTest::test_detected_environment_logging - test/test_client.py::ClientUnitTest::test_detected_environment_warning - test/test_client.py::TestClient::test_service_name_from_kwargs - test/test_client.py::TestClient::test_srv_max_hosts_kwarg - test/test_dns.py::TestCaseInsensitive::test_connect_case_insensitive - test/test_srv_polling.py - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_custom_srvServiceName - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_invalid_type_for_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_negative_integer_for_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_positive_srvMaxHosts_and_loadBalanced=fa - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_loadBalanced=true - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_replicaSet - - # broken regularly by changes in mypy - test/test_typing.py::TestMypyFails::test_mypy_failures - - # fragile to timing? fails because we're getting too many logs - test/test_connection_logging.py::TestConnectionLoggingConnectionPoolOptions::test_maxConnecting_should_be_included_in_connection_pool_created_message_when_specified - - # hangs? - test/asynchronous/test_grid_file.py::AsyncTestGridFile::test_small_chunks - - # broken async tests? - test/asynchronous/test_encryption.py - ) - - local run_separately=( - # need to run some tests separately and then restart mongodb - # to prevent it from crashing - # https://bugs.gentoo.org/934389 - # note that this list must not overlap with EPYTEST_DESELECT - test/test_bulk.py - test/test_change_stream.py - test/test_collection.py - test/test_crud_unified.py - test/test_gridfs.py - ) - local run_separately2=( - test/test_command_monitoring.py - test/test_connection_monitoring.py - test/test_cursor.py - test/test_database.py - test/test_grid_file.py - ) - local run_separately3=( - test/test_gridfs_bucket.py - test/test_monitoring.py - ) - local run_separately_async=( - test/asynchronous/test_database.py - test/asynchronous/test_grid_file.py - ) - - if ! use test-full; then - # .invalid is guaranteed to return NXDOMAIN per RFC 6761 - local -x DB_IP=mongodb.invalid - epytest -p asyncio - return - fi - - # Yes, we need TCP/IP for that... - local -x DB_IP=127.0.0.1 - local -x DB_PORT=27000 - - local dbpath=${TMPDIR}/mongo.db - local logpath=${TMPDIR}/mongod.log - - local stage failed= - for stage in {1..6}; do - # Now, the hard part: we need to find a free port for mongod. - # We're just trying to run it random port numbers and check the log - # for bind errors. It shall be noted that 'mongod --fork' does not - # return failure when it fails to bind. - - mkdir -p "${dbpath}" || die - while true; do - ebegin "Trying to start mongod on port ${DB_PORT}" - - LC_ALL=C \ - mongod --dbpath "${dbpath}" --nojournal \ - --bind_ip ${DB_IP} --port ${DB_PORT} \ - --unixSocketPrefix "${TMPDIR}" \ - --logpath "${logpath}" --fork \ - && sleep 2 - - # Now we need to check if the server actually started... - if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then - # yay! - eend 0 - break - elif grep -q 'Address already in use' "${logpath}"; then - # ay, someone took our port! - eend 1 - : $(( DB_PORT += 1 )) - continue - else - eend 1 - eerror "Unable to start mongod for tests. See the server log:" - eerror " ${logpath}" - die "Unable to start mongod for tests." - fi - done - - local async=( -p asyncio -m default_async ) - local def=( -p asyncio -m "default or encryption" ) - case ${stage} in - 1) - nonfatal epytest "${def[@]}" "${run_separately[@]}" || failed=1 - ;; - 2) - nonfatal epytest "${def[@]}" "${run_separately2[@]}" || failed=1 - ;; - 3) - nonfatal epytest "${def[@]}" "${run_separately3[@]}" || failed=1 - ;; - 4) - EPYTEST_DESELECT+=( - "${run_separately[@]}" - "${run_separately2[@]}" - "${run_separately3[@]}" - ) - nonfatal epytest "${def[@]}" || failed=1 - ;; - 5) - nonfatal epytest "${async[@]}" "${run_separately_async[@]}" || failed=1 - ;; - 6) - EPYTEST_DESELECT+=( - "${run_separately_async[@]}" - ) - nonfatal epytest "${async[@]}" || failed=1 - ;; - esac - - mongod --dbpath "${dbpath}" --shutdown || die - done - - [[ ${failed} ]] && die "Tests fail with ${EPYTHON}" - - rm -rf "${dbpath}" || die -} diff --git a/dev-python/pymongo/pymongo-4.7.2.ebuild b/dev-python/pymongo/pymongo-4.7.2.ebuild deleted file mode 100644 index 469adae2c24d..000000000000 --- a/dev-python/pymongo/pymongo-4.7.2.ebuild +++ /dev/null @@ -1,180 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) - -inherit check-reqs distutils-r1 - -MY_P=mongo-python-driver-${PV} -DESCRIPTION="Python driver for MongoDB" -HOMEPAGE=" - https://github.com/mongodb/mongo-python-driver/ - https://pypi.org/project/pymongo/ -" -SRC_URI=" - https://github.com/mongodb/mongo-python-driver/archive/${PV}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="doc kerberos +native-extensions +test-full" - -RDEPEND=" - <dev-python/dnspython-3.0.0[${PYTHON_USEDEP}] - kerberos? ( dev-python/kerberos[${PYTHON_USEDEP}] ) -" -BDEPEND=" - test? ( - test-full? ( - >=dev-db/mongodb-2.6.0 - ) - ) -" - -distutils_enable_sphinx doc -distutils_enable_tests pytest - -reqcheck() { - if use test && use test-full; then - # During the tests, database size reaches 1.5G. - local CHECKREQS_DISK_BUILD=1536M - - check-reqs_${1} - fi -} - -pkg_pretend() { - reqcheck pkg_pretend -} - -pkg_setup() { - reqcheck pkg_setup -} - -python_compile() { - # causes build errors to be fatal - local -x TOX_ENV_NAME=whatever - local DISTUTILS_ARGS=() - # unconditionally implicitly disabled on pypy3 - if ! use native-extensions; then - DISTUTILS_ARGS+=( --no_ext ) - else - export PYMONGO_C_EXT_MUST_BUILD=1 - fi - - distutils-r1_python_compile -} - -python_test() { - rm -rf bson pymongo || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local EPYTEST_DESELECT=( - # network-sandbox - test/test_client.py::ClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver - test/test_client.py::ClientUnitTest::test_detected_environment_logging - test/test_client.py::ClientUnitTest::test_detected_environment_warning - test/test_client.py::TestClient::test_service_name_from_kwargs - test/test_client.py::TestClient::test_srv_max_hosts_kwarg - test/test_dns.py::TestCaseInsensitive::test_connect_case_insensitive - test/test_srv_polling.py - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_custom_srvServiceName - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_invalid_type_for_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_negative_integer_for_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_positive_srvMaxHosts_and_loadBalanced=fa - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_loadBalanced=true - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_replicaSet - - # broken regularly by changes in mypy - test/test_typing.py::TestMypyFails::test_mypy_failures - - # fragile to timing? fails because we're getting too many logs - test/test_connection_logging.py::TestConnectionLoggingConnectionPoolOptions::test_maxConnecting_should_be_included_in_connection_pool_created_message_when_specified - ) - local run_separately=( - # need to run some tests separately and then restart mongodb - # to prevent it from crashing - # https://bugs.gentoo.org/934389 - # note that this list must not overlap with EPYTEST_DESELECT - test/test_change_stream.py - test/test_collation.py - test/test_database.py - test/test_gridfs.py - test/test_gridfs_bucket.py - ) - - if ! use test-full; then - # .invalid is guaranteed to return NXDOMAIN per RFC 6761 - local -x DB_IP=mongodb.invalid - epytest - return - fi - - # Yes, we need TCP/IP for that... - local -x DB_IP=127.0.0.1 - local -x DB_PORT=27000 - - local dbpath=${TMPDIR}/mongo.db - local logpath=${TMPDIR}/mongod.log - - local stage failed= - for stage in 1 2; do - # Now, the hard part: we need to find a free port for mongod. - # We're just trying to run it random port numbers and check the log - # for bind errors. It shall be noted that 'mongod --fork' does not - # return failure when it fails to bind. - - mkdir -p "${dbpath}" || die - while true; do - ebegin "Trying to start mongod on port ${DB_PORT}" - - LC_ALL=C \ - mongod --dbpath "${dbpath}" --nojournal \ - --bind_ip ${DB_IP} --port ${DB_PORT} \ - --unixSocketPrefix "${TMPDIR}" \ - --logpath "${logpath}" --fork \ - && sleep 2 - - # Now we need to check if the server actually started... - if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then - # yay! - eend 0 - break - elif grep -q 'Address already in use' "${logpath}"; then - # ay, someone took our port! - eend 1 - : $(( DB_PORT += 1 )) - continue - else - eend 1 - eerror "Unable to start mongod for tests. See the server log:" - eerror " ${logpath}" - die "Unable to start mongod for tests." - fi - done - - case ${stage} in - 1) - nonfatal epytest "${run_separately[@]}" || failed=1 - ;; - 2) - EPYTEST_DESELECT+=( "${run_separately[@]}" ) - nonfatal epytest || failed=1 - ;; - esac - - mongod --dbpath "${dbpath}" --shutdown || die - done - - [[ ${failed} ]] && die "Tests fail with ${EPYTHON}" - - rm -rf "${dbpath}" || die -} diff --git a/dev-python/pymongo/pymongo-4.8.0.ebuild b/dev-python/pymongo/pymongo-4.8.0.ebuild deleted file mode 100644 index 273c377abd60..000000000000 --- a/dev-python/pymongo/pymongo-4.8.0.ebuild +++ /dev/null @@ -1,205 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=hatchling -PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) - -inherit check-reqs distutils-r1 - -MY_P=mongo-python-driver-${PV} -DESCRIPTION="Python driver for MongoDB" -HOMEPAGE=" - https://github.com/mongodb/mongo-python-driver/ - https://pypi.org/project/pymongo/ -" -SRC_URI=" - https://github.com/mongodb/mongo-python-driver/archive/${PV}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~loong ppc ppc64 ~riscv ~s390 sparc x86" -IUSE="doc kerberos +native-extensions +test-full" - -RDEPEND=" - <dev-python/dnspython-3.0.0[${PYTHON_USEDEP}] - kerberos? ( dev-python/kerberos[${PYTHON_USEDEP}] ) -" -BDEPEND=" - dev-python/setuptools[${PYTHON_USEDEP}] - test? ( - test-full? ( - >=dev-db/mongodb-2.6.0 - ) - ) -" - -distutils_enable_sphinx doc -distutils_enable_tests pytest - -reqcheck() { - if use test && use test-full; then - # During the tests, database size reaches 1.5G. - local CHECKREQS_DISK_BUILD=1536M - - check-reqs_${1} - fi -} - -pkg_pretend() { - reqcheck pkg_pretend -} - -pkg_setup() { - reqcheck pkg_setup -} - -src_prepare() { - distutils-r1_src_prepare - # we do not want hatch-requirements-txt and its ton of NIH deps - sed -i -e '/requirements/d' pyproject.toml || die -} - -python_compile() { - # causes build errors to be fatal - local -x TOX_ENV_NAME=whatever - local DISTUTILS_ARGS=() - # unconditionally implicitly disabled on pypy3 - if ! use native-extensions; then - export NO_EXT=1 - else - export PYMONGO_C_EXT_MUST_BUILD=1 - unset NO_EXT - fi - - distutils-r1_python_compile -} - -python_test() { - rm -rf bson pymongo || die - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - local EPYTEST_DESELECT=( - # network-sandbox - test/test_client.py::ClientUnitTest::test_connection_timeout_ms_propagates_to_DNS_resolver - test/test_client.py::ClientUnitTest::test_detected_environment_logging - test/test_client.py::ClientUnitTest::test_detected_environment_warning - test/test_client.py::TestClient::test_service_name_from_kwargs - test/test_client.py::TestClient::test_srv_max_hosts_kwarg - test/test_dns.py::TestCaseInsensitive::test_connect_case_insensitive - test/test_srv_polling.py - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_custom_srvServiceName - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_invalid_type_for_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_negative_integer_for_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_positive_srvMaxHosts_and_loadBalanced=fa - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_loadBalanced=true - test/test_uri_spec.py::TestAllScenarios::test_test_uri_options_srv-options_SRV_URI_with_srvMaxHosts=0_and_replicaSet - - # broken regularly by changes in mypy - test/test_typing.py::TestMypyFails::test_mypy_failures - - # fragile to timing? fails because we're getting too many logs - test/test_connection_logging.py::TestConnectionLoggingConnectionPoolOptions::test_maxConnecting_should_be_included_in_connection_pool_created_message_when_specified - ) - local run_separately=( - # need to run some tests separately and then restart mongodb - # to prevent it from crashing - # https://bugs.gentoo.org/934389 - # note that this list must not overlap with EPYTEST_DESELECT - test/test_bulk.py - test/test_change_stream.py - test/test_collection.py - test/test_crud_unified.py - test/test_gridfs.py - test/test_gridfs_bucket.py - test/test_gridfs_spec.py - ) - local run_separately2=( - # sigh - test/test_command_monitoring.py - test/test_connection_monitoring.py - test/test_cursor.py - test/test_database.py - test/test_grid_file.py - test/test_monitoring.py - ) - - if ! use test-full; then - # .invalid is guaranteed to return NXDOMAIN per RFC 6761 - local -x DB_IP=mongodb.invalid - epytest - return - fi - - # Yes, we need TCP/IP for that... - local -x DB_IP=127.0.0.1 - local -x DB_PORT=27000 - - local dbpath=${TMPDIR}/mongo.db - local logpath=${TMPDIR}/mongod.log - - local stage failed= - for stage in 1 2 3; do - # Now, the hard part: we need to find a free port for mongod. - # We're just trying to run it random port numbers and check the log - # for bind errors. It shall be noted that 'mongod --fork' does not - # return failure when it fails to bind. - - mkdir -p "${dbpath}" || die - while true; do - ebegin "Trying to start mongod on port ${DB_PORT}" - - LC_ALL=C \ - mongod --dbpath "${dbpath}" --nojournal \ - --bind_ip ${DB_IP} --port ${DB_PORT} \ - --unixSocketPrefix "${TMPDIR}" \ - --logpath "${logpath}" --fork \ - && sleep 2 - - # Now we need to check if the server actually started... - if [[ ${?} -eq 0 && -S "${TMPDIR}"/mongodb-${DB_PORT}.sock ]]; then - # yay! - eend 0 - break - elif grep -q 'Address already in use' "${logpath}"; then - # ay, someone took our port! - eend 1 - : $(( DB_PORT += 1 )) - continue - else - eend 1 - eerror "Unable to start mongod for tests. See the server log:" - eerror " ${logpath}" - die "Unable to start mongod for tests." - fi - done - - case ${stage} in - 1) - nonfatal epytest "${run_separately[@]}" || failed=1 - ;; - 2) - nonfatal epytest "${run_separately2[@]}" || failed=1 - ;; - 3) - EPYTEST_DESELECT+=( - "${run_separately[@]}" - "${run_separately2[@]}" - ) - nonfatal epytest || failed=1 - ;; - esac - - mongod --dbpath "${dbpath}" --shutdown || die - done - - [[ ${failed} ]] && die "Tests fail with ${EPYTHON}" - - rm -rf "${dbpath}" || die -} diff --git a/dev-python/pysnmp/Manifest b/dev-python/pysnmp/Manifest index 9f6de676219f..520c63b208e2 100644 --- a/dev-python/pysnmp/Manifest +++ b/dev-python/pysnmp/Manifest @@ -1 +1,2 @@ DIST pysnmp-7.1.16.tar.gz 379606 BLAKE2B 7ba59e52b7d27ef9400e1ec4c2aee395f86873b03b9bbb3a313e23c3af69965b245e2f3d5c4c3cdc98ee257aa4bc41c213b9d0237e9d5bc960dda2a4606c57ff SHA512 ee6a86dbf104f510eb698cc705d24f2c67efcede0b4605f7ba0aa5f3b1ebdec50608eb1144a16e6418213f824f996a7185c1452fd144d5a0df1a4f2650dbf3a4 +DIST pysnmp-7.1.17.tar.gz 366560 BLAKE2B 43a1483af845ce16e6b99e6ae4858d797ec21450012302817d67d790bfba7b435fb443eedc29b58bf2c69d534263710d835655a955b578a680b8054cd0f2f78e SHA512 01fa8483499374e26ed7672de4a30865f197c6b14beb679fec1b2750c7a2c983f3b74851418c9830a37fb8a73881beeaca844a1dc8eab2a5081eb8038be8bfe2 diff --git a/dev-python/pysnmp/pysnmp-7.1.17.ebuild b/dev-python/pysnmp/pysnmp-7.1.17.ebuild new file mode 100644 index 000000000000..f802845870d1 --- /dev/null +++ b/dev-python/pysnmp/pysnmp-7.1.17.ebuild @@ -0,0 +1,49 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=poetry +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) +inherit distutils-r1 pypi + +DESCRIPTION="Python SNMP library" +HOMEPAGE=" + https://pypi.org/project/pysnmp/ + https://github.com/lextudio/pysnmp/ +" + +LICENSE="BSD-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~sparc ~x86" +PROPERTIES="test_network" +RESTRICT="test" + +RDEPEND=" + >=dev-python/cryptography-43.0.1[${PYTHON_USEDEP}] + >=dev-python/pyasn1-0.4.8[${PYTHON_USEDEP}] + >=dev-python/pysmi-1.5.7[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest +# TODO +# distutils_enable_sphinx docs/source dev-python/furo dev-python/sphinx-copybutton dev-python/sphinx-sitemap + +python_test() { + local EPYTEST_DESELECT=( + # TODO + tests/smi/manager/test_mib-tree-inspection.py::test_getNodeName_by_symbol_description_with_module_name_2 + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + mibdump CISCO-ENHANCED-IPSEC-FLOW-MIB.py || die + mibdump LEXTUDIO-TEST-MIB || die + mibdump NET-SNMP-EXAMPLES-MIB || die + mibdump IF-MIB || die + epytest -p asyncio +} diff --git a/dev-python/pyspf/pyspf-2.0.14-r3.ebuild b/dev-python/pyspf/pyspf-2.0.14-r3.ebuild index 64ed834f8c03..fadad02c1bbc 100644 --- a/dev-python/pyspf/pyspf-2.0.14-r3.ebuild +++ b/dev-python/pyspf/pyspf-2.0.14-r3.ebuild @@ -17,7 +17,7 @@ HOMEPAGE=" LICENSE="PSF-2" SLOT="0" -KEYWORDS="amd64 arm64 x86" +KEYWORDS="amd64 arm64 ~riscv x86" IUSE="test" RESTRICT="!test? ( test )" diff --git a/dev-python/pystache/Manifest b/dev-python/pystache/Manifest index a99010343a1f..8acbd64924a3 100644 --- a/dev-python/pystache/Manifest +++ b/dev-python/pystache/Manifest @@ -1,2 +1,2 @@ -DIST pystache-0.6.6.gh.tar.gz 272592 BLAKE2B c79efc37991c4fd0ea7995017bb225d6426e1a09c1d0d4d700da91400e340e8548e79b75ffb3d7ae485eb1d305709b2640ad2555f484068496e2f68681ad8ebc SHA512 debbeedc99201825c87274c14dafa757f48833de0a210444e1939e16decb06126f1fa4fd13b384fbaf28cdc9269d26a87c462db792b0b420a84e08c4f4484346 DIST pystache-0.6.7.gh.tar.gz 272905 BLAKE2B f99a65d4fa0fc54200a1a84735de7140f5c29bad1908b38678f3978c15ecb2a0c08f354b4148d5313ecc757355eaaecdb1a536933175ff24056664ca34b8d216 SHA512 97cbce10a38c83bdb080f44dc09c594a93c9656f779b90945a384d1c7c7252ad9dd5124ae0304b39dc3df026568121b15926e6dd53598e0cd994d15e91829ddd +DIST pystache-0.6.8.gh.tar.gz 273350 BLAKE2B 55ca9cca131dbd61cb30b3cf37d677069f721f6ff80d8452b3abc51b76e5963a0bb68c35caa3afe4ad0cb0071e91866b7342eb01c636f39689bdecb38a91e6fc SHA512 b2eecabdc39f86713b4f3387b4a80afaa0a80ecc0a34482e3d9341467660666a7bdcd83d21fc9fd3b61a764a1c840a5ba8041f9a66a3b130c849e8bd8cf1f9b5 diff --git a/dev-python/pystache/pystache-0.6.6.ebuild b/dev-python/pystache/pystache-0.6.8.ebuild index 45309e2aeff2..3f40c89db84b 100644 --- a/dev-python/pystache/pystache-0.6.6.ebuild +++ b/dev-python/pystache/pystache-0.6.8.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2024 Gentoo Authors +# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -38,15 +38,4 @@ BDEPEND=" distutils_enable_tests pytest -distutils_enable_sphinx \ - docs/source \ - dev-python/sphinx-rtd-theme \ - dev-python/recommonmark \ - dev-python/sphinxcontrib-apidoc - export SETUPTOOLS_SCM_PRETEND_VERSION=${PV} - -src_prepare() { - sed -i '/sphinx_git/d' "${S}"/setup.cfg "${S}"/docs/source/conf.py - default -} diff --git a/dev-python/pytest-check/Manifest b/dev-python/pytest-check/Manifest index 4c404ed49565..67abbf1aba05 100644 --- a/dev-python/pytest-check/Manifest +++ b/dev-python/pytest-check/Manifest @@ -1 +1,2 @@ DIST pytest_check-2.5.0.tar.gz 26844 BLAKE2B 3428071078f9a15ae33937be56957c537c4c98344cb3a5cda798f71caa6bd99e067113af64f548380c949bf6a79202db84e98da16f861d73ad23053a3ea2ec05 SHA512 0a3738f67f1a8467504919d5289398811af8b6bbacef81e27942ce467d3d9e373f2ec9497e4f1794ead2e3f8f9552da538c2472236b9c882cfd2ee3822c50d39 +DIST pytest_check-2.5.1.tar.gz 26889 BLAKE2B 3922c81743a9065860a40501b07c258005a128f8377a7060032fb20cb06dbfba9567211ee51e05a3776384d3b3b7f2612353c724c5412b41cc7405f826364916 SHA512 5407f88036d47d88e41da369400209191dda5f3814c4c964056d1bb561931d212068f11844fc382a1e42821ca850baa483420741c44b2e1574370453305085d9 diff --git a/dev-python/pytest-check/pytest-check-2.5.1.ebuild b/dev-python/pytest-check/pytest-check-2.5.1.ebuild new file mode 100644 index 000000000000..fbcaf827b75d --- /dev/null +++ b/dev-python/pytest-check/pytest-check-2.5.1.ebuild @@ -0,0 +1,28 @@ +# Copyright 2021-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} ) + +inherit distutils-r1 pypi + +DESCRIPTION="pytest plugin that allows multiple failures per test" +HOMEPAGE=" + https://github.com/okken/pytest-check/ + https://pypi.org/project/pytest-check/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + >=dev-python/pytest-7.0.0[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/typing-extensions-4.12.2[${PYTHON_USEDEP}] + ' 3.10) +" + +distutils_enable_tests pytest diff --git a/dev-python/python-ironicclient/files/python-ironicclient-5.10.0-test.patch b/dev-python/python-ironicclient/files/python-ironicclient-5.10.0-test.patch new file mode 100644 index 000000000000..336af0fd6a9f --- /dev/null +++ b/dev-python/python-ironicclient/files/python-ironicclient-5.10.0-test.patch @@ -0,0 +1,163 @@ +From 0684eafa407973aec608fbcfac13e146511c10e2 Mon Sep 17 00:00:00 2001 +From: Riccardo Pittau <elfosardo@gmail.com> +Date: Thu, 6 Mar 2025 12:08:08 +0100 +Subject: [PATCH 3/3] Fix bare metal info order in unit tests + +Info on bare metal components have changed order + +Change-Id: Ibbd76a115175caea9db038d0b6601b83f9c0c3e8 +(cherry picked from commit b969cc865ab7b59214fe3fa86115d88decfe2823) +--- + .../unit/osc/v1/test_baremetal_chassis.py | 4 +- + .../unit/osc/v1/test_baremetal_conductor.py | 15 ++--- + .../tests/unit/osc/v1/test_baremetal_node.py | 58 ++++++++++--------- + 3 files changed, 40 insertions(+), 37 deletions(-) + +diff --git a/ironicclient/tests/unit/osc/v1/test_baremetal_chassis.py b/ironicclient/tests/unit/osc/v1/test_baremetal_chassis.py +index 9af4853..6422ea0 100644 +--- a/ironicclient/tests/unit/osc/v1/test_baremetal_chassis.py ++++ b/ironicclient/tests/unit/osc/v1/test_baremetal_chassis.py +@@ -50,14 +50,14 @@ class TestChassisCreate(TestChassis): + self.arglist = [] + self.verifylist = [] + self.collist = ( ++ 'uuid', + 'description', + 'extra', +- 'uuid', + ) + self.datalist = ( ++ baremetal_fakes.baremetal_chassis_uuid, + baremetal_fakes.baremetal_chassis_description, + baremetal_fakes.baremetal_chassis_extra, +- baremetal_fakes.baremetal_chassis_uuid, + ) + self.actual_kwargs = {} + +diff --git a/ironicclient/tests/unit/osc/v1/test_baremetal_conductor.py b/ironicclient/tests/unit/osc/v1/test_baremetal_conductor.py +index e9708a9..4c00834 100644 +--- a/ironicclient/tests/unit/osc/v1/test_baremetal_conductor.py ++++ b/ironicclient/tests/unit/osc/v1/test_baremetal_conductor.py +@@ -212,17 +212,18 @@ class TestBaremetalConductorShow(TestBaremetalConductor): + *args, fields=None + ) + +- collist = ('alive', +- 'conductor_group', +- 'drivers', +- 'hostname', +- ) ++ collist = ( ++ 'hostname', ++ 'conductor_group', ++ 'alive', ++ 'drivers', ++ ) + self.assertEqual(collist, columns) + datalist = ( +- baremetal_fakes.baremetal_alive, ++ baremetal_fakes.baremetal_hostname, + baremetal_fakes.baremetal_conductor_group, ++ baremetal_fakes.baremetal_alive, + baremetal_fakes.baremetal_drivers, +- baremetal_fakes.baremetal_hostname, + ) + self.assertEqual(datalist, tuple(data)) + +diff --git a/ironicclient/tests/unit/osc/v1/test_baremetal_node.py b/ironicclient/tests/unit/osc/v1/test_baremetal_node.py +index 3194910..a1fab2b 100644 +--- a/ironicclient/tests/unit/osc/v1/test_baremetal_node.py ++++ b/ironicclient/tests/unit/osc/v1/test_baremetal_node.py +@@ -759,22 +759,23 @@ class TestBaremetalCreate(TestBaremetal): + self.cmd = baremetal_node.CreateBaremetalNode(self.app, None) + self.arglist = ['--driver', 'fake_driver'] + self.verifylist = [('driver', 'fake_driver')] +- self.collist = ('chassis_uuid', +- 'instance_uuid', +- 'maintenance', +- 'name', +- 'power_state', +- 'provision_state', +- 'uuid' +- ) ++ self.collist = ( ++ 'uuid', ++ 'name', ++ 'instance_uuid', ++ 'power_state', ++ 'provision_state', ++ 'maintenance', ++ 'chassis_uuid' ++ ) + self.datalist = ( +- baremetal_fakes.baremetal_chassis_uuid_empty, +- baremetal_fakes.baremetal_instance_uuid, +- baremetal_fakes.baremetal_maintenance, ++ baremetal_fakes.baremetal_uuid, + baremetal_fakes.baremetal_name, ++ baremetal_fakes.baremetal_instance_uuid, + baremetal_fakes.baremetal_power_state, + baremetal_fakes.baremetal_provision_state, +- baremetal_fakes.baremetal_uuid, ++ baremetal_fakes.baremetal_maintenance, ++ baremetal_fakes.baremetal_chassis_uuid_empty, + ) + self.actual_kwargs = { + 'driver': 'fake_driver' +@@ -3704,25 +3705,26 @@ class TestBaremetalShow(TestBaremetal): + *args, fields=None + ) + +- collist = ('chassis_uuid', +- 'instance_uuid', +- 'maintenance', +- 'name', +- 'power_state', +- 'provision_state', +- 'uuid' +- ) ++ collist = ( ++ 'uuid', ++ 'name', ++ 'instance_uuid', ++ 'power_state', ++ 'provision_state', ++ 'maintenance', ++ 'chassis_uuid', ++ ) + self.assertEqual(collist, columns) + self.assertNotIn('ports', columns) + self.assertNotIn('states', columns) + datalist = ( +- baremetal_fakes.baremetal_chassis_uuid_empty, +- baremetal_fakes.baremetal_instance_uuid, +- baremetal_fakes.baremetal_maintenance, ++ baremetal_fakes.baremetal_uuid, + baremetal_fakes.baremetal_name, ++ baremetal_fakes.baremetal_instance_uuid, + baremetal_fakes.baremetal_power_state, + baremetal_fakes.baremetal_provision_state, +- baremetal_fakes.baremetal_uuid ++ baremetal_fakes.baremetal_maintenance, ++ baremetal_fakes.baremetal_chassis_uuid_empty, + ) + self.assertEqual(datalist, tuple(data)) + +@@ -4828,10 +4830,10 @@ class TestNodeHistoryEventGet(TestBaremetal): + columns, data = self.cmd.take_action(parsed_args) + self.baremetal_mock.node.get_history_event.assert_called_once_with( + 'node_uuid', 'event_uuid') +- expected_columns = ('conductor', 'created_at', 'event', 'event_type', +- 'severity', 'user', 'uuid') +- expected_data = ('lap-conductor', 'time', 'meow', 'purring', 'info', +- '0191', 'abcdef1') ++ expected_columns = ('uuid', 'created_at', 'severity', 'event', ++ 'event_type', 'conductor', 'user') ++ expected_data = ('abcdef1', 'time', 'info', 'meow', 'purring', ++ 'lap-conductor', '0191') + + self.assertEqual(expected_columns, columns) + self.assertEqual(expected_data, tuple(data)) +-- +2.49.0 + diff --git a/dev-python/python-ironicclient/python-ironicclient-5.10.0-r1.ebuild b/dev-python/python-ironicclient/python-ironicclient-5.10.0-r1.ebuild index 59dad531a38a..bf1b363570a2 100644 --- a/dev-python/python-ironicclient/python-ironicclient-5.10.0-r1.ebuild +++ b/dev-python/python-ironicclient/python-ironicclient-5.10.0-r1.ebuild @@ -47,3 +47,8 @@ BDEPEND=" " distutils_enable_tests unittest + +PATCHES=( + # https://bugs.gentoo.org/951568 + "${FILESDIR}/${P}-test.patch" +) diff --git a/dev-python/python-tests/python-tests-3.13.2-r100.ebuild b/dev-python/python-tests/python-tests-3.13.2-r100.ebuild new file mode 100644 index 000000000000..4b4ec8eeaf49 --- /dev/null +++ b/dev-python/python-tests/python-tests-3.13.2-r100.ebuild @@ -0,0 +1,68 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{9,10,11,12,13} ) + +inherit python-r1 verify-sig + +MY_PV=${PV/_} +MY_P="Python-${MY_PV%_p*}" +PYVER=$(ver_cut 1-2)t +PATCHSET="python-gentoo-patches-${MY_PV}" + +DESCRIPTION="Test modules from dev-lang/python" +HOMEPAGE=" + https://www.python.org/ + https://github.com/python/cpython/ +" +SRC_URI=" + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz + https://dev.gentoo.org/~mgorny/dist/python/${PATCHSET}.tar.xz + verify-sig? ( + https://www.python.org/ftp/python/${PV%%_*}/${MY_P}.tar.xz.asc + ) +" +S="${WORKDIR}/${MY_P}/Lib" + +LICENSE="PSF-2" +SLOT="${PYVER}" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND=" + ${PYTHON_DEPS} + ~dev-lang/python-${PV}:${PYVER} +" +BDEPEND=" + ${RDEPEND} + verify-sig? ( >=sec-keys/openpgp-keys-python-20221025 ) +" + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/python.org.asc + +src_unpack() { + if use verify-sig; then + verify-sig_verify_detached "${DISTDIR}"/${MY_P}.tar.xz{,.asc} + fi + default +} + +src_prepare() { + local PATCHES=( + "${WORKDIR}/${PATCHSET}" + ) + + cd .. || die + default +} + +src_install() { + python_setup + # keep in sync with TESTSUBDIRS in Makefile.pre.in + python_moduleinto "/usr/lib/python${PYVER}" + python_domodule test + python_moduleinto "/usr/lib/python${PYVER}/idlelib" + python_domodule idlelib/idle_test +} diff --git a/dev-python/pythran/Manifest b/dev-python/pythran/Manifest index b9c36750ccd4..4780cea6d973 100644 --- a/dev-python/pythran/Manifest +++ b/dev-python/pythran/Manifest @@ -1,2 +1 @@ -DIST pythran-0.16.1.gh.tar.gz 3680817 BLAKE2B 2a4b928e9d0ce68248eb543c97da5afca900d81bc660377313617149c5aae7529a371bfd3604dd9feb6e38f834360fef881c8324ae72b585d8ab86e867c2f6b3 SHA512 7a89546b52bdae9bdaeba42768ac822c584a3714b8f4e32417d793454dc0b5492342dfd393d92f8ecee12c854bc39e418f5860aadd00d328afef7b17ebddec99 DIST pythran-0.17.0.gh.tar.gz 3697173 BLAKE2B 90f765283e4346392eb69d8e6fadf4b00469779bd7fb8dc99084ed0d2d940a1ca949c9dd0eb0fc484c2938de79b1e3650c417dc1cd30786b25b6781c519a629d SHA512 af14cd497bcbef7ac97b42b80e297e641bd520f51938b04a68ebf01de86d6900926653c01ff99b1af7f699674094241099101f1501acfae2be5dc9d1724af777 diff --git a/dev-python/pythran/pythran-0.16.1-r3.ebuild b/dev-python/pythran/pythran-0.16.1-r3.ebuild deleted file mode 100644 index ef24d53f9b53..000000000000 --- a/dev-python/pythran/pythran-0.16.1-r3.ebuild +++ /dev/null @@ -1,110 +0,0 @@ -# Copyright 2021-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 - -MY_P=${P/_p/.post} -DESCRIPTION="Ahead of Time compiler for numeric kernels" -HOMEPAGE=" - https://pypi.org/project/pythran/ - https://github.com/serge-sans-paille/pythran/ -" -SRC_URI=" - https://github.com/serge-sans-paille/pythran/archive/${PV/_p/.post}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv ~s390 ~sparc x86" - -RDEPEND=" - dev-libs/boost - dev-cpp/xsimd - =dev-python/beniget-0.4*[${PYTHON_USEDEP}] - =dev-python/gast-0.5*[${PYTHON_USEDEP}] - dev-python/numpy:=[${PYTHON_USEDEP}] - >=dev-python/ply-3.4[${PYTHON_USEDEP}] - || ( - <dev-python/setuptools-73[${PYTHON_USEDEP}] - >=dev-python/setuptools-73.0.1[${PYTHON_USEDEP}] - ) -" -DEPEND=" - test? ( - dev-libs/boost - dev-cpp/xsimd - ) -" -BDEPEND=" - test? ( - dev-python/ipython[${PYTHON_USEDEP}] - dev-python/pip[${PYTHON_USEDEP}] - dev-python/packaging[${PYTHON_USEDEP}] - dev-python/scipy[${PYTHON_USEDEP}] - dev-python/wheel[${PYTHON_USEDEP}] - virtual/cblas - !!dev-python/setuptools-declarative-requirements - ) -" - -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -src_configure() { - # vendored C++ headers -- use system copies - rm -r pythran/{boost,xsimd} || die - - if use test ; then - # https://bugs.gentoo.org/916461 - sed -i \ - -e 's|blas=blas|blas=cblas|' \ - -e 's|libs=|libs=cblas|' \ - pythran/pythran-*.cfg || die - fi -} - -python_test() { - local -x COLUMNS=80 - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - - local EPYTEST_DESELECT=( - # TODO - pythran/tests/test_numpy_ufunc_unary.py::TestNumpyUFuncUnary::test_signbit0 - ) - - if has_version ">=dev-python/numpy-2[${PYTHON_USEDEP}]"; then - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - pythran/tests/test_distutils.py::TestDistutils::test_setup_bdist_install3 - pythran/tests/test_distutils.py::TestDistutils::test_setup_build3 - pythran/tests/test_distutils.py::TestDistutils::test_setup_sdist_install - pythran/tests/test_distutils.py::TestDistutils::test_setup_sdist_install2 - pythran/tests/test_distutils.py::TestDistutils::test_setup_sdist_install3 - pythran/tests/test_exception.py::TestException::test_multiple_tuple_exception_register - pythran/tests/test_ndarray.py::TestNdarray::test_ndarray_fancy_indexing1 - pythran/tests/test_numpy_fft.py::TestNumpyFFTN::test_fftn_1 - pythran/tests/test_numpy_func0.py::TestNumpyFunc0::test_ravel0 - pythran/tests/test_numpy_func3.py::TestNumpyFunc3::test_list_imag0 - pythran/tests/test_numpy_random.py::TestNumpyRandom::test_numpy_uniform_size_int - pythran/tests/test_set.py::TestSet::test_fct_symmetric_difference_update - ) - ;; - python3.13) - EPYTEST_DESELECT+=( - # repr() differences? - pythran/tests/test_xdoc.py::TestDoctest::test_tutorial - pythran/tests/test_xdoc.py::TestDoctest::test_utils - ) - esac - fi - - epytest -} diff --git a/dev-python/pythran/pythran-0.17.0-r1.ebuild b/dev-python/pythran/pythran-0.17.0-r1.ebuild deleted file mode 100644 index 37d304a634ac..000000000000 --- a/dev-python/pythran/pythran-0.17.0-r1.ebuild +++ /dev/null @@ -1,107 +0,0 @@ -# Copyright 2021-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 - -MY_P=${P/_p/.post} -DESCRIPTION="Ahead of Time compiler for numeric kernels" -HOMEPAGE=" - https://pypi.org/project/pythran/ - https://github.com/serge-sans-paille/pythran/ -" -SRC_URI=" - https://github.com/serge-sans-paille/pythran/archive/${PV/_p/.post}.tar.gz - -> ${MY_P}.gh.tar.gz -" -S=${WORKDIR}/${MY_P} - -LICENSE="BSD" -SLOT="0" -KEYWORDS="amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~s390 ~sparc ~x86" - -RDEPEND=" - dev-libs/boost - dev-cpp/xsimd - =dev-python/beniget-0.4*[${PYTHON_USEDEP}] - =dev-python/gast-0.6*[${PYTHON_USEDEP}] - dev-python/numpy:=[${PYTHON_USEDEP}] - >=dev-python/ply-3.4[${PYTHON_USEDEP}] - >=dev-python/setuptools-73.0.1[${PYTHON_USEDEP}] -" -DEPEND=" - test? ( - dev-libs/boost - dev-cpp/xsimd - ) -" -BDEPEND=" - test? ( - dev-python/ipython[${PYTHON_USEDEP}] - dev-python/pip[${PYTHON_USEDEP}] - dev-python/packaging[${PYTHON_USEDEP}] - dev-python/scipy[${PYTHON_USEDEP}] - dev-python/wheel[${PYTHON_USEDEP}] - virtual/cblas - !!dev-python/setuptools-declarative-requirements - ) -" - -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -src_configure() { - # vendored C++ headers -- use system copies - rm -r pythran/{boost,xsimd} || die - - if use test ; then - # https://bugs.gentoo.org/916461 - sed -i \ - -e 's|blas=blas|blas=cblas|' \ - -e 's|libs=|libs=cblas|' \ - pythran/pythran-*.cfg || die - fi -} - -python_test() { - local -x COLUMNS=80 - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - - local EPYTEST_DESELECT=( - # TODO - pythran/tests/test_numpy_ufunc_unary.py::TestNumpyUFuncUnary::test_signbit0 - ) - - if has_version ">=dev-python/numpy-2[${PYTHON_USEDEP}]"; then - case ${EPYTHON} in - pypy3) - EPYTEST_DESELECT+=( - pythran/tests/test_distutils.py::TestDistutils::test_setup_bdist_install3 - pythran/tests/test_distutils.py::TestDistutils::test_setup_build3 - pythran/tests/test_distutils.py::TestDistutils::test_setup_sdist_install - pythran/tests/test_distutils.py::TestDistutils::test_setup_sdist_install2 - pythran/tests/test_distutils.py::TestDistutils::test_setup_sdist_install3 - pythran/tests/test_distutils.py::TestMeson::test_meson_build - pythran/tests/test_exception.py::TestException::test_multiple_tuple_exception_register - pythran/tests/test_ndarray.py::TestNdarray::test_ndarray_fancy_indexing1 - pythran/tests/test_numpy_fft.py::TestNumpyFFTN::test_fftn_1 - pythran/tests/test_numpy_func0.py::TestNumpyFunc0::test_ravel0 - pythran/tests/test_numpy_func3.py::TestNumpyFunc3::test_list_imag0 - pythran/tests/test_numpy_random.py::TestNumpyRandom::test_numpy_uniform_size_int - pythran/tests/test_set.py::TestSet::test_fct_symmetric_difference_update - ) - ;; - python3.13) - EPYTEST_DESELECT+=( - # repr() differences? - pythran/tests/test_xdoc.py::TestDoctest::test_tutorial - ) - esac - fi - - epytest -} diff --git a/dev-python/pythran/pythran-0.17.0-r2.ebuild b/dev-python/pythran/pythran-0.17.0-r2.ebuild index e57419cf27dc..a27b99d44da4 100644 --- a/dev-python/pythran/pythran-0.17.0-r2.ebuild +++ b/dev-python/pythran/pythran-0.17.0-r2.ebuild @@ -22,7 +22,7 @@ S=${WORKDIR}/${MY_P} LICENSE="BSD" SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="amd64 arm arm64 ~loong ppc64 ~riscv ~s390 ~sparc x86" RDEPEND=" dev-libs/boost @@ -70,16 +70,32 @@ src_configure() { } python_test() { - local EPYTEST_DESELECT=() + local EPYTEST_DESELECT=( + # multiple extra deps (meson, openblas) + # also broken on pypy3* + pythran/tests/test_distutils.py::TestMeson::test_meson_build + ) + + case ${ARCH} in + arm) + EPYTEST_DESELECT+=( + # TODO + pythran/tests/test_numpy_fft.py::TestNumpyFFT::test_fft_3d_axis + pythran/tests/test_numpy_fft.py::TestNumpyFFTN + ) + ;& + arm|x86) + EPYTEST_DESELECT+=( + # https://github.com/serge-sans-paille/pythran/issues/2290 + pythran/tests/test_conversion.py::TestConversion::test_builtin_type9 + pythran/tests/test_ndarray.py::TestNdarray::test_ndarray_uintp + pythran/tests/test_numpy_ufunc_unary.py::TestNumpyUFuncUnary::test_numpy_ufunc_unary_numpy_ufunc_unary_numpy_uint32_scalar_float + ) + ;; + esac if has_version ">=dev-python/numpy-2[${PYTHON_USEDEP}]"; then case ${EPYTHON} in - pypy3*) - EPYTEST_DESELECT+=( - # tries to link to libpypy*.so - pythran/tests/test_distutils.py::TestMeson::test_meson_build - ) - ;; python3.13) EPYTEST_DESELECT+=( # repr() differences? diff --git a/dev-python/pyzotero/Manifest b/dev-python/pyzotero/Manifest index 20a92ca0cb8f..13ed9ee54a85 100644 --- a/dev-python/pyzotero/Manifest +++ b/dev-python/pyzotero/Manifest @@ -1,2 +1,3 @@ +DIST pyzotero-1.6.10.tar.gz 552327 BLAKE2B a716c476f5e2f6f5505e32c2b7837b2e5cb70dac480a3f012999eaa9302e608e3745b7ad9fcb88dfd0f39863949062fd05baf0ca01919e6f85c20fdfa2267258 SHA512 e0f550eff328b8d99a10c5caf6f2d79e1842313f9deaa87ab0b9caeafd10e82d4c48537213a55a4178191783131a202a12f00198a76e222cd4ca5ed1830e92a1 DIST pyzotero-1.6.8.tar.gz 543598 BLAKE2B 86a4d770c16eabb07959cd9653980e12628d3dbf78ceebd724f83b1f54489b6c800a1fd65f2711c2d1e344ebd1bb2ac61e8d7dbe1091eca30ec3672df82409fd SHA512 34dd7a9f6bf8ed5ec2ee7ca4a9c533efbc20454439da4a9e59b3ab793f26074cb683fd0bebf66f819aa5c03e2dbdfabb3043ab3772beb35264ce9640a6e8752d DIST pyzotero-1.6.9.tar.gz 552275 BLAKE2B 6f27ac6be25147e88d0fd3e8f3825185c348ebf17e8402ffcce7195ff336dd068d1d5f165c00c96968eaee0e0e05c77f4bcf2e567e18db162e67b634501c1726 SHA512 3d333442716b47771526fc1916ec8aa78cdbd6ddbfb4728712ff68c11b22028a2ff901fd74dace97d951972d6d4d8a7142e9756c0c6df2ac50e5558b5c5f8c95 diff --git a/dev-python/pyzotero/pyzotero-1.6.10.ebuild b/dev-python/pyzotero/pyzotero-1.6.10.ebuild new file mode 100644 index 000000000000..2cf81fc7bd4f --- /dev/null +++ b/dev-python/pyzotero/pyzotero-1.6.10.ebuild @@ -0,0 +1,46 @@ +# 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} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A Python client for the Zotero API" +HOMEPAGE=" + https://github.com/urschrei/pyzotero/ + https://pypi.org/project/pyzotero/ +" + +LICENSE="BlueOak-1.0.0" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND=" + app-text/zotero-bin + dev-python/bibtexparser[${PYTHON_USEDEP}] + >=dev-python/feedparser-6.0.11[${PYTHON_USEDEP}] + >=dev-python/httpx-0.28.1[${PYTHON_USEDEP}] + dev-python/pytz[${PYTHON_USEDEP}] +" + +BDEPEND=" + >=dev-python/trove-classifiers-2024.7.2[${PYTHON_USEDEP}] + test? ( + dev-python/httpretty[${PYTHON_USEDEP}] + dev-python/ipython[${PYTHON_USEDEP}] + dev-python/pytest-asyncio[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + ) +" + +distutils_enable_sphinx doc \ + dev-python/sphinx-rtd-theme +distutils_enable_tests pytest + +python_test() { + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest -o addopts= -p asyncio +} diff --git a/dev-python/setuptools-scm/Manifest b/dev-python/setuptools-scm/Manifest index ddd6fc517f05..db039bba5023 100644 --- a/dev-python/setuptools-scm/Manifest +++ b/dev-python/setuptools-scm/Manifest @@ -1 +1,2 @@ DIST setuptools_scm-8.2.0.tar.gz 77572 BLAKE2B 105ddebf318a1bc0d1f0ee0e5232f5af8a43a8ed0908bd6ffceb6ba188ff8640b681a0a98006f67cc8c2f82917e6e0565f8a1aba44e8d7ff29700e3d158dde22 SHA512 3f4c4eb8a3e4f71a29187486cdc00b1e9af9b577c55a58b5ad03e6c6bad50b638b2e23ed8ee3db739481f8380d126635b42213b16172e79ba9f6ec81ce774e27 +DIST setuptools_scm-8.2.1.tar.gz 78075 BLAKE2B e026c02cd172b6a7cbcea93c2ceeeaaff9912722063523b1f12039b7d9c147a9b5d1267e907867e27d8c8deb14e9d32e4c48cdf5683ec796a0c1fc01dabf1843 SHA512 4afa1bba1a9e3791be5b2cda945ee9c6a0d3b085a528ec9d74ca4e3649522d947594aade9e146164df3548a853aed96c62a14c617d38b50a7797f8e1f53f7ab1 diff --git a/dev-python/setuptools-scm/setuptools-scm-8.2.1.ebuild b/dev-python/setuptools-scm/setuptools-scm-8.2.1.ebuild new file mode 100644 index 000000000000..f342244a272d --- /dev/null +++ b/dev-python/setuptools-scm/setuptools-scm-8.2.1.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +DISTUTILS_USE_PEP517=standalone +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Manage versions by scm tags via setuptools" +HOMEPAGE=" + https://github.com/pypa/setuptools-scm/ + https://pypi.org/project/setuptools-scm/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + +# there's an optional dep on rich for cute logs +RDEPEND=" + dev-python/packaging[${PYTHON_USEDEP}] + >=dev-python/setuptools-61[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.0.2[${PYTHON_USEDEP}] + ' 3.10) +" +BDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + dev-python/build[${PYTHON_USEDEP}] + dev-python/typing-extensions[${PYTHON_USEDEP}] + dev-vcs/git + ) +" + +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # the usual nondescript gpg-agent failure + testing/test_git.py::test_git_getdate_signed_commit + + # fetching from the Internet + testing/test_regressions.py::test_pip_download + + # calls flake8, unpredictable + testing/test_functions.py::test_dump_version_flake8 + ) + + if has_version dev-python/nose; then + EPYTEST_DESELECT+=( + # https://bugs.gentoo.org/892639 + testing/test_integration.py::test_pyproject_support + ) + fi + + epytest +} diff --git a/dev-python/setuptools/Manifest b/dev-python/setuptools/Manifest index 8c5b6f19c9ee..0a166809e166 100644 --- a/dev-python/setuptools/Manifest +++ b/dev-python/setuptools/Manifest @@ -1,3 +1,4 @@ DIST setuptools-75.8.2.tar.gz 1344083 BLAKE2B 7d4dff2c0948bb411ef5f70e5f5f91bc0e230b155a97419d263f88e54a94390fd7dcadad14105f4d886a25024bf4c95e776ae7b25e4b1d6f17e45e6060b99da2 SHA512 adf7f5d2eab7621b03c86e3f96857b176631108dc8a0eba2b16b87e394bff0b607998bc24cc074cd3f7b0ed6dbe0bd753cce5af2f108fce2473fb50b22f32913 DIST setuptools-76.0.0.tar.gz 1349387 BLAKE2B 4293d1b0719c70c17bde8b6091f394420a300175b787f0a1aa5a42cc81b4dfad186f1d0927b32124f37f78a730a049e16cfd87dbc71fa1ed5c1bb632634ece84 SHA512 8272f0f2823d8f093d24eeb12270f978dab52d1a609c08275248024decf2b47bc5b1ce352f22ea198bd93eb3375c829757e573921721e05f5269651669df9b2e DIST setuptools-76.1.0.tar.gz 1350273 BLAKE2B ba4a2b83b793394fdddaa1ce817b8ea65db395d9f5ef5b2293f54b56d88570bc5db307d609c1f1531d720ece5333808a38fc1788832b2d5783ffd2b498a2b7ee SHA512 3e937bbf68c313ac8fe7dedbd3f644598dca623d564a943edc53fddf6726c3d8dd1f6efcd5bc9350ee1c98e0d8005c9854eefc162baefb1aaabd7d8cff9893d9 +DIST setuptools-77.0.1.tar.gz 1366225 BLAKE2B 7c49143cabfd4d8fc0ca668e10e4b23e8c44de529f6f9a00166cd3f8a95a1a2c566bd7024c3327cabbac736e64c80b5fe701e3bc28a0b2463baa1c6051c64704 SHA512 3481e4e76f539a53f93ff5b1650bfc24f164b0331edd27680399b473c5b4c8409e5ea5dc3aaa1db1924dff64c4e8dba2a4ef385a5e207ef9f624c881139445e3 diff --git a/dev-python/setuptools/setuptools-77.0.1.ebuild b/dev-python/setuptools/setuptools-77.0.1.ebuild new file mode 100644 index 000000000000..822ccb8b69c8 --- /dev/null +++ b/dev-python/setuptools/setuptools-77.0.1.ebuild @@ -0,0 +1,135 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# please keep this ebuild at EAPI 8 -- sys-apps/portage dep +EAPI=8 + +# please bump dev-python/ensurepip-setuptools along with this package! + +DISTUTILS_USE_PEP517=standalone +PYTHON_TESTED=( python3_{9,10,11,12,13} pypy3 ) +PYTHON_COMPAT=( "${PYTHON_TESTED[@]}" ) +PYTHON_REQ_USE="xml(+)" + +inherit distutils-r1 pypi + +DESCRIPTION="Collection of extensions to Distutils" +HOMEPAGE=" + https://github.com/pypa/setuptools/ + https://pypi.org/project/setuptools/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + !<dev-python/setuptools-rust-1.8.0 + dev-python/jaraco-collections[${PYTHON_USEDEP}] + >=dev-python/jaraco-functools-4[${PYTHON_USEDEP}] + >=dev-python/jaraco-text-3.7.0-r1[${PYTHON_USEDEP}] + >=dev-python/more-itertools-8.12.0-r1[${PYTHON_USEDEP}] + >=dev-python/packaging-24.2[${PYTHON_USEDEP}] + >=dev-python/platformdirs-4.2.2[${PYTHON_USEDEP}] + >=dev-python/wheel-0.44.0[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/tomli-2.0.1[${PYTHON_USEDEP}] + ' 3.10) + !<=dev-libs/gobject-introspection-1.76.1-r0 + !=dev-libs/gobject-introspection-1.78.1-r0 + !=dev-libs/gobject-introspection-1.80.1-r1 +" +BDEPEND=" + ${RDEPEND} + test? ( + $(python_gen_cond_dep ' + >=dev-python/build-1.0.3[${PYTHON_USEDEP}] + >=dev-python/ini2toml-0.14[${PYTHON_USEDEP}] + >=dev-python/filelock-3.4.0[${PYTHON_USEDEP}] + >=dev-python/jaraco-envs-2.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-path-3.7.2[${PYTHON_USEDEP}] + >=dev-python/jaraco-test-5.5[${PYTHON_USEDEP}] + dev-python/pip[${PYTHON_USEDEP}] + dev-python/pip-run[${PYTHON_USEDEP}] + dev-python/pyproject-hooks[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + >=dev-python/pytest-home-0.5[${PYTHON_USEDEP}] + dev-python/pytest-subprocess[${PYTHON_USEDEP}] + dev-python/pytest-timeout[${PYTHON_USEDEP}] + dev-python/pytest-xdist[${PYTHON_USEDEP}] + >=dev-python/tomli-w-1.0.0[${PYTHON_USEDEP}] + >=dev-python/virtualenv-20[${PYTHON_USEDEP}] + ' "${PYTHON_TESTED[@]}") + ) +" +# setuptools-scm is here because installing plugins apparently breaks stuff at +# runtime, so let's pull it early. See bug #663324. +# +# trove-classifiers are optionally used in validation, if they are +# installed. Since we really oughtn't block them, let's always enforce +# the newest version for the time being to avoid errors. +# https://github.com/pypa/setuptools/issues/4459 +PDEPEND=" + dev-python/setuptools-scm[${PYTHON_USEDEP}] + >=dev-python/trove-classifiers-2024.10.16[${PYTHON_USEDEP}] +" + +src_prepare() { + local PATCHES=( + # TODO: remove this when we're 100% PEP517 mode + "${FILESDIR}/setuptools-62.4.0-py-compile.patch" + # https://github.com/abravalheri/validate-pyproject/pull/221 + "${FILESDIR}/setuptools-75.6.0-disable-trove-classifiers.patch" + ) + + distutils-r1_src_prepare + + # breaks tests + sed -i -e '/--import-mode/d' pytest.ini || die + + # remove bundled dependencies + rm -r */_vendor || die +} + +python_test() { + if ! has "${EPYTHON}" "${PYTHON_TESTED[@]/_/.}"; then + return + fi + + local EPYTEST_DESELECT=( + # network + setuptools/tests/test_build_meta.py::test_legacy_editable_install + setuptools/tests/test_distutils_adoption.py + setuptools/tests/test_editable_install.py + setuptools/tests/test_virtualenv.py::test_no_missing_dependencies + setuptools/tests/test_virtualenv.py::test_test_command_install_requirements + # TODO + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_basic + setuptools/tests/config/test_setupcfg.py::TestConfigurationReader::test_ignore_errors + # expects bundled deps in virtualenv + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_in_sdist + setuptools/tests/config/test_apply_pyprojecttoml.py::TestMeta::test_example_file_not_in_wheel + # fails if python-xlib is installed + setuptools/tests/test_easy_install.py::TestSetupRequires::test_setup_requires_with_allow_hosts + # TODO, probably some random package + setuptools/tests/config/test_setupcfg.py::TestOptions::test_cmdclass + # broken by unbundling + setuptools/tests/test_setuptools.py::test_wheel_includes_vendored_metadata + # fails on normalized metadata, perhaps different dep version? + setuptools/tests/test_build_meta.py::TestBuildMetaBackend::test_build_with_pyproject_config + # TODO + setuptools/tests/test_sdist.py::test_sanity_check_setuptools_own_sdist + # relies on -Werror + setuptools/_static.py::setuptools._static.Dict + setuptools/_static.py::setuptools._static.List + # TODO + setuptools/dist.py::setuptools.dist.Distribution._find_pattern + ) + + local EPYTEST_XDIST=1 + local -x PRE_BUILT_SETUPTOOLS_WHEEL=${DISTUTILS_WHEEL_PATH} + epytest -o tmp_path_retention_policy=all \ + -m "not uses_network" setuptools +} diff --git a/dev-python/test/test-0.ebuild b/dev-python/test/test-0.ebuild index d8bf93f40c8d..fa246954612a 100644 --- a/dev-python/test/test-0.ebuild +++ b/dev-python/test/test-0.ebuild @@ -42,4 +42,7 @@ RDEPEND=" <dev-lang/python-3.13.0_rc1_p3-r1:3.13 ) ' python3_13) + $(python_gen_cond_dep ' + dev-python/python-tests:3.13t + ' python3_13t) " diff --git a/dev-python/trimesh/Manifest b/dev-python/trimesh/Manifest index 1cd3c8b45a18..dd98f08f41d7 100644 --- a/dev-python/trimesh/Manifest +++ b/dev-python/trimesh/Manifest @@ -1 +1,2 @@ DIST trimesh-4.6.4.gh.tar.gz 13624427 BLAKE2B b61caf9a08f219bd0dc7f6f55262dd798d3ce7c56e7a9daf3486365ec8b035b19c63f1d99ddc68ecfa9e940480e2f4307229a4fb8371e75a583f5cf8d9c29db0 SHA512 2f52ea216d448fbab32938f905137df6aac593f88343672e0e93a808f2dfece8eb477e82185c0d1150245742f2c4bb4be8c704757e428cba87f528dc1ebdb3d7 +DIST trimesh-4.6.5.gh.tar.gz 13625081 BLAKE2B 81c5527ad7cdb1dc78b61a3bfbf2fb3ff6e3b412050b77fdf249a1af7b4be9aacb3bdc19331cc334803eee998be0e5390c3282d400598aa5be3b41fd701ed3f9 SHA512 b1fc5de064fd06c3bf453e507ff6c3e14dcfb2c8d1d909b4a3c2bc2e894e2aac57342b85c0d170b0a161f3ae27b9ca2490df601fb047c1873703cb71ce97f1fa diff --git a/dev-python/trimesh/trimesh-4.6.5.ebuild b/dev-python/trimesh/trimesh-4.6.5.ebuild new file mode 100644 index 000000000000..9a55e3b051f5 --- /dev/null +++ b/dev-python/trimesh/trimesh-4.6.5.ebuild @@ -0,0 +1,79 @@ +# 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} ) + +inherit distutils-r1 optfeature + +DESCRIPTION="Python library for loading and using triangular meshes" +HOMEPAGE=" + https://trimesh.org/ + https://github.com/mikedh/trimesh/ + https://pypi.org/project/trimesh/ +" +SRC_URI=" + https://github.com/mikedh/${PN}/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + dev-python/charset-normalizer[${PYTHON_USEDEP}] + dev-python/colorlog[${PYTHON_USEDEP}] + dev-python/httpx[${PYTHON_USEDEP}] + dev-python/jsonschema[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/networkx[${PYTHON_USEDEP}] + >=dev-python/numpy-1.20[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/pycollada[${PYTHON_USEDEP}] + dev-python/pyglet[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/scipy[${PYTHON_USEDEP}] + >=dev-python/shapely-1.8.2[${PYTHON_USEDEP}] + dev-python/svg-path[${PYTHON_USEDEP}] + dev-python/sympy[${PYTHON_USEDEP}] + dev-python/xxhash[${PYTHON_USEDEP}] + dev-python/rtree[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mapbox-earcut[${PYTHON_USEDEP}] + dev-python/pillow[webp,${PYTHON_USEDEP}] + ) +" + +EPYTEST_TIMEOUT=1800 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_test() { + local EPYTEST_DESELECT=( + # requires manifold3d + tests/test_boolean.py::test_multiple_difference + # timing nonsense + tests/test_bounds.py::BoundsTest::test_obb_mesh_large + ) + local EPYTEST_IGNORE=( + # require pyinstrument + tests/test_sweep.py + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + epytest +} + +pkg_postinst() { + optfeature_header "${PN} functionality can be extended by installing the following packages:" + optfeature "making GUI applications with 3D stuff" dev-python/glooey + optfeature "2D triangulations of polygons" dev-python/mapbox-earcut + optfeature "loading a number of additional mesh formats" dev-python/meshio + optfeature "figuring out how much memory we have" dev-python/psutil + optfeature "marching cubes and other nice stuff" dev-python/scikit-image +} diff --git a/dev-python/trove-classifiers/Manifest b/dev-python/trove-classifiers/Manifest index 0bbdd117f5d3..b92a52f6d421 100644 --- a/dev-python/trove-classifiers/Manifest +++ b/dev-python/trove-classifiers/Manifest @@ -1,2 +1,3 @@ DIST trove_classifiers-2025.3.13.13.tar.gz 16266 BLAKE2B c5bea5e7cba406c466d0fba3f00b9ad519d9639833407f76ea171e7783ae662bcca89c584c75d4e0b74d753acdf9107e17458f0af3e840b8035263e1056507c7 SHA512 15e6f8bd6ca8150efb8bc8d90d1c6e3774f9b740dfdd5c7e34870cfc73ca31faa1450bdc9ec26452c383259f5e6171d291d07cdcaf49c87ea9275704faaaa61f +DIST trove_classifiers-2025.3.19.19.tar.gz 16280 BLAKE2B be2679f7ea31e9cafa1e161e6b5932a1ba05f84c3ad2e74ca8a1711c75ddb99016e82b72e1fbdd0193fb2c59c96af53edb5a01747c580893adec5b865b211cc9 SHA512 2e531939642f0436650cbd12b8d40faa2a32211575c39a23508194ea65c2d0b01ade63fe2c59d6098e6e92f2a6648ded3b55a3d359ff5d5b056722f1af9291cc DIST trove_classifiers-2025.3.3.18.tar.gz 16239 BLAKE2B 439b7c7aadae4a2dfb55a065b57853cf5f1f5752072c6e52fcde0ed63bc95a8d17ad9e618983f3302af0bb2b91af5e7db3d076d001008d0c06a62bdf5680facf SHA512 a84ee9e3ff20664b433bd07835e0050fa9cd149d18bbcbd2514abb8f1d056725788c64e37c8863b779070728795f5aa01c0a38b8088082ddc37a10629b9ae492 diff --git a/dev-python/trove-classifiers/trove-classifiers-2025.3.19.19.ebuild b/dev-python/trove-classifiers/trove-classifiers-2025.3.19.19.ebuild new file mode 100644 index 000000000000..e43d7ad35d9d --- /dev/null +++ b/dev-python/trove-classifiers/trove-classifiers-2025.3.19.19.ebuild @@ -0,0 +1,42 @@ +# Copyright 2022-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Canonical source for classifiers on PyPI (pypi.org)" +HOMEPAGE=" + https://github.com/pypa/trove-classifiers/ + https://pypi.org/project/trove-classifiers/ +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + +distutils_enable_tests pytest + +src_configure() { + grep -q 'build-backend = "setuptools' pyproject.toml || + die "Upstream changed build-backend, recheck" + # write a custom pyproject.toml to ease hatchling bootstrap + cat > pyproject.toml <<-EOF || die + [build-system] + requires = ["flit_core >=3.2,<4"] + build-backend = "flit_core.buildapi" + + [project] + name = "trove-classifiers" + version = "${PV}" + description = "Canonical source for classifiers on PyPI (pypi.org)." + EOF +} + +python_test() { + epytest + "${EPYTHON}" -m tests.lib || die +} diff --git a/dev-python/typing-extensions/Manifest b/dev-python/typing-extensions/Manifest index ef63c13168bf..70cc78e4abcd 100644 --- a/dev-python/typing-extensions/Manifest +++ b/dev-python/typing-extensions/Manifest @@ -1 +1,2 @@ DIST typing_extensions-4.12.2.tar.gz 85321 BLAKE2B 8f32740675f5da226c6fd5fa95e0b903794d76cc25d759bee6b136913a3eedc7a702cdc7709587cae13ba3b3d44a7bb1acbdad61333fe655382e3d01d63a3fa7 SHA512 b06f26ae55194f37ee48dcb894bf583051c9e74f639f25195990f56330eae7b585ab4b8655ca575539f48254c20f1920628db6db10512953d1f6364e3c076a27 +DIST typing_extensions-4.13.0rc1.tar.gz 106487 BLAKE2B 82e8107db7aa7e61e0a2ddc775b0accd116281847bc459213165b53b42cf235bd812d753bc68e857ba16aca960d40ff12e43d697ad5d973891ecf1704cf9f838 SHA512 058daa21f1d310a9cef0b09136aa2d2f0553d0c61e6d170e039281c3337e5da81493d507f5364b0b47e48f095fab314382341be8015e9932353fe5df500be5f8 diff --git a/dev-python/typing-extensions/typing-extensions-4.13.0_rc1.ebuild b/dev-python/typing-extensions/typing-extensions-4.13.0_rc1.ebuild new file mode 100644 index 000000000000..5f37a92f4605 --- /dev/null +++ b/dev-python/typing-extensions/typing-extensions-4.13.0_rc1.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=flit +PYTHON_COMPAT=( python3_{9,10,11,12,13} pypy3 ) + +inherit distutils-r1 pypi + +DESCRIPTION="Backported and Experimental Type Hints for Python 3.7+" +HOMEPAGE=" + https://pypi.org/project/typing-extensions/ + https://github.com/python/typing_extensions/ +" + +LICENSE="PSF-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" + +BDEPEND=" + >=dev-python/flit-core-3.11[${PYTHON_USEDEP}] + test? ( + dev-python/test[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests unittest + +python_test() { + cd src || die + eunittest +} diff --git a/dev-python/uv/Manifest b/dev-python/uv/Manifest index fa553236b551..6bef93c0dcfd 100644 --- a/dev-python/uv/Manifest +++ b/dev-python/uv/Manifest @@ -9,3 +9,5 @@ DIST uv-0.6.6-crates.tar.xz 60230976 BLAKE2B 9b0dcb0d8246fc275f5b508c48661f08446 DIST uv-0.6.6.gh.tar.gz 3767860 BLAKE2B 09bcb296f10ecebc9bda81091ea9c7f589b9b44169981676b5013088c001301d2302bab8514d4c6fb9542ba0bc0d07377e68a46c35f667a6a408f86e499a1a89 SHA512 49ad9fdb411e719b5a2aae6d48750932c8ad65bace2b0a747a54b475bcd0a40da368712d074b4b3afdf28cc8003532aca712b3714d54323f184ee1358521d7c5 DIST uv-0.6.7-crates.tar.xz 60339544 BLAKE2B 5bde165c809ee9a66c23a1811d461502021b2038c747deaa250b2f30e947712e6ccad23f188fc93b000edaaf53b657d90971803acff94ade6c61a29684cf5601 SHA512 d339b9cc8b4b19ba802d203f476da311d060962e07cffaeedd0aed05b21125b6a959a971d3654db3e26087c15331588dd6ebba2ab9e52fcd91b1a38a2dc8e9e7 DIST uv-0.6.7.gh.tar.gz 3791242 BLAKE2B ca24f6945d6a442c32a574b901cf47dac3ede08603255b62feded82d36179a578aada04fca402d7738d2b3b78adfe22e4d1dbded502cafb2c5d4eb0407a5b5d4 SHA512 992f8a64f3d0c8f57be6959f91242ce7420c6ee94839f067dc142f895fb2c0b9ab4161b6a51112241e30c8836eefb7e5bc747f867c28bf09b95e0aaa52de8350 +DIST uv-0.6.8-crates.tar.xz 58007724 BLAKE2B bcf38b328d17e61cb74e9c1e51e0459fe91fd3b9124510e3f26606a3216189d2eb223cffd70dafce18cafe2340efc86f84379abf97444f79a57635dff0429590 SHA512 289cc35931ea54eb466e65cb279f842f06695ca09fae574dc5a3ba519db39c7441de9bf13c8c490cfa975f103b04988a943ea6de088090bbea0a944178064dbf +DIST uv-0.6.8.gh.tar.gz 3793571 BLAKE2B 7bdcbaee54edb8114328410590406b2bb7240c597e9b5450a56a59de477467246fa6746ba21602cbd27b828c2c9606406d1701b6149b4b7160ac7ff21fe775bb SHA512 edf3e45e773bc4db3e1ee7a76419ef62beadc882f2dbe6342ec334520e170f941b55d376469677a2b8107a6ab8e38d9c704bfae6700e4f2f4932db9fda57478c diff --git a/dev-python/uv/uv-0.6.8.ebuild b/dev-python/uv/uv-0.6.8.ebuild new file mode 100644 index 000000000000..44cb91d40951 --- /dev/null +++ b/dev-python/uv/uv-0.6.8.ebuild @@ -0,0 +1,170 @@ +# Copyright 2024-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +CRATES=" +" + +declare -A GIT_CRATES=( + [async_zip]='https://github.com/charliermarsh/rs-async-zip;c909fda63fcafe4af496a07bfda28a5aae97e58d;rs-async-zip-%commit%' + [pubgrub]='https://github.com/astral-sh/pubgrub;b70cf707aa43f21b32f3a61b8a0889b15032d5c4;pubgrub-%commit%' + [tl]='https://github.com/astral-sh/tl;6e25b2ee2513d75385101a8ff9f591ef51f314ec;tl-%commit%' + [version-ranges]='https://github.com/astral-sh/pubgrub;b70cf707aa43f21b32f3a61b8a0889b15032d5c4;pubgrub-%commit%/version-ranges' +) + +RUST_MIN_VER="1.83.0" + +inherit cargo check-reqs + +CRATE_PV=${PV} +DESCRIPTION="A Python package installer and resolver, written in Rust" +HOMEPAGE=" + https://github.com/astral-sh/uv/ + https://pypi.org/project/uv/ +" +# pypi sdist misses scripts/, needed for tests +SRC_URI=" + https://github.com/astral-sh/uv/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz + ${CARGO_CRATE_URIS} +" +if [[ ${PKGBUMPING} != ${PVR} ]]; then + SRC_URI+=" + https://github.com/gentoo-crate-dist/uv/releases/download/${CRATE_PV}/uv-${CRATE_PV}-crates.tar.xz + " +fi + +# most of the code +LICENSE="|| ( Apache-2.0 MIT )" +# crates/pep508-rs is || ( Apache-2.0 BSD-2 ) which is covered below +# Dependent crate licenses +LICENSE+=" + 0BSD Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD-2 BSD Boost-1.0 + ISC MIT MPL-2.0 Unicode-3.0 Unicode-DFS-2016 ZLIB +" +# ring crate +LICENSE+=" openssl" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" +IUSE="test" +RESTRICT="test" +PROPERTIES="test_network" + +DEPEND=" + app-arch/bzip2:= + app-arch/xz-utils:= + app-arch/zstd:= +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + test? ( + dev-lang/python:3.8 + dev-lang/python:3.9 + dev-lang/python:3.10 + dev-lang/python:3.11 + dev-lang/python:3.12 + !!~dev-python/uv-0.5.0 + ) +" + +QA_FLAGS_IGNORED="usr/bin/.*" + +check_space() { + local CHECKREQS_DISK_BUILD=3G + use debug && CHECKREQS_DISK_BUILD=9G + check-reqs_pkg_setup +} + +pkg_pretend() { + check_space +} + +pkg_setup() { + check_space + rust_pkg_setup +} + +src_prepare() { + default + + # enable system libraries where supported + export ZSTD_SYS_USE_PKG_CONFIG=1 + # TODO: unbundle libz-ng-sys, tikv-jemalloc-sys? + + # remove unbundled sources, just in case + find "${ECARGO_VENDOR}"/{bzip2,lzma,zstd}-sys-*/ -name '*.c' -delete || die + + # bzip2-sys requires a pkg-config file + # https://github.com/alexcrichton/bzip2-rs/issues/104 + mkdir "${T}/pkg-config" || die + export PKG_CONFIG_PATH=${T}/pkg-config${PKG_CONFIG_PATH+:${PKG_CONFIG_PATH}} + cat >> "${T}/pkg-config/bzip2.pc" <<-EOF || die + Name: bzip2 + Version: 9999 + Description: + Libs: -lbz2 + EOF +} + +src_configure() { + local myfeatures=( + git + pypi + python + ) + + cargo_src_configure --no-default-features +} + +src_compile() { + cd crates/uv || die + cargo_src_compile +} + +src_test() { + # work around https://github.com/astral-sh/uv/issues/4376 + local -x PATH=${BROOT}/usr/lib/python-exec/python3.12:${PATH} + local -x COLUMNS=100 + local -x PYTHONDONTWRITEBYTECODE= + # fix tests failing because of our config + local -x XDG_CONFIG_DIRS=${T} + + cd crates/uv || die + cargo_src_test --no-fail-fast +} + +src_install() { + cd crates/uv || die + cargo_src_install + + insinto /etc/xdg/uv + newins - uv.toml <<-EOF || die + # These defaults match Fedora, see: + # https://src.fedoraproject.org/rpms/uv/pull-request/18 + + # By default ("automatic"), uv downloads missing Python versions + # automatically and keeps them in the user's home directory. + # Disable that to make downloading opt-in, and especially + # to avoid unnecessarily fetching custom Python when the distro + # package would be preferable. Python builds can still be + # downloaded manually via "uv python install". + # + # https://docs.astral.sh/uv/reference/settings/#python-downloads + python-downloads = "manual" + + # By default ("managed"), uv always prefers self-installed + # Python versions over the system Python, independently + # of versions. Since we generally expect users to use that + # to install old Python versions not in ::gentoo anymore, + # this effectively means that uv would end up preferring very + # old Python versions over the newer ones that are provided + # by the system. Default to using the system versions to avoid + # this counter-intuitive behavior. + # + # https://docs.astral.sh/uv/reference/settings/#python-preference + python-preference = "system" + EOF +} diff --git a/dev-python/xarray/Manifest b/dev-python/xarray/Manifest index ce94f7c4a681..97dbac239aa4 100644 --- a/dev-python/xarray/Manifest +++ b/dev-python/xarray/Manifest @@ -1,6 +1,4 @@ -DIST xarray-2024.10.0.tar.gz 3788358 BLAKE2B 974e84e4584201a435e6b2eb48e882f09c44b4fd66583fb86aad4002e404bb07480598e27b1ae5b66863b8f69026d62affdf999f0a6d316966e05841cf1f21b9 SHA512 3a17548cdc3d3b6123c81c124a47b1e538b223e8955593064b37dcc23f61b7cbaf62df57d74a0b8f8cd55f21bfd1a8c69622cb328d08e4212cf0c16d464416dd -DIST xarray-2024.11.0.tar.gz 3247277 BLAKE2B 2011ba6fa587a6fe96792a7d5a8f253dc589aea59af909c14b7c6a6295eda555df3a12d225fea0af503a778551c8a542fa743a5027c27b60c3e2f8cb4f6c3281 SHA512 0f2d22391eb851b82b804ebd9404a9863143a9ca647fa0d52d9c1b421f94187739986e8c1205274840f46329478846802b11304c02c5dad58ae9ffc6062b1cec DIST xarray-2024.9.0.tar.gz 3747432 BLAKE2B 4b2a3be1712194710aa00f4416479d93171ba3bcc49a68edf2bff65a2224c334807d4db9e63a95d6da7f7bd08170771cdad73f2d224837c35ccfcb2c72b881fb SHA512 179e1a6689095a091c49d6fe3b34e72afbfcfbf4d10056a695e4804cee2fc5e6da1ff9b3073ecce790618031286a2f383f00042d38c49e94a672ee6c2214b85b -DIST xarray-2025.1.0.tar.gz 3256313 BLAKE2B 28d16b4d7ee99252ce684e4e0ed69b6eb06a3f476c0dbdd6b952bae08a68357bcdc3dde427a788ebffa4498856eb1af78fe9a625541bf6616a32a5daa7862468 SHA512 ea70284f3a9b8bc1dc217354683e67101ea03514ace39a3bdd9f96bf58c36ae6846330ef647f72475e25087f272a33114ba88ecdfed5e18a5df8593efa6e19fd DIST xarray-2025.1.1.tar.gz 3257038 BLAKE2B 2a1efed4dbd9de3f099d6fbc89f31f477dfa31f9067b976a5c18d1d8699d21428a6bb5d94a6ca7f31b296f4b132e8ef4e312aca25fc3da6a5d7dec4022f084c4 SHA512 a0cde2c8e38887878bcde25fd3ea6ee436b522ca73f52359d2c8ac1993447472d7cd5e5d4b11016ec48d1b86dba08e9207caf00b2b43ab896c777395e51f7943 DIST xarray-2025.1.2.tar.gz 3271214 BLAKE2B e41848061158bdda3042b5fafdc251b686ec0aba957a560d6205a14dcb4d604c32f62de7051148690e8d5cf3939dbf54e12ca9c3e3347767a8da9aecceb7d07c SHA512 604d552435a5c986818042de13b9163626ce2138e891f938e67d2885f51107fb741c81cfde5c4029575ba7011e0ac2edd3b88da76f5d7c54157a091d21e9761d +DIST xarray-2025.3.0.tar.gz 3292399 BLAKE2B 6d892e4ac788a90aa244225874a6b0d68fdd476b8867e5cf6a78b894c7b0fbc6dcfcdf4899ac0ee2cc2aa81cb25c73dcc40863629f62ff68dc8ab99ef0ad72a4 SHA512 84750291edb163767938da69425b14294c3aff4618de50a61df9529b9ccf543798ec5d00a8a317b04ade45cf5a2f1d482b63fc1cf69ae52acf4d841da6580850 diff --git a/dev-python/xarray/xarray-2024.10.0.ebuild b/dev-python/xarray/xarray-2024.10.0.ebuild deleted file mode 100644 index 0dcfe478b127..000000000000 --- a/dev-python/xarray/xarray-2024.10.0.ebuild +++ /dev/null @@ -1,126 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{9,10,11,12,13} ) - -inherit distutils-r1 pypi - -DESCRIPTION="N-D labeled arrays and datasets in Python" -HOMEPAGE=" - https://xarray.pydata.org/ - https://github.com/pydata/xarray/ - https://pypi.org/project/xarray/ -" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="amd64 arm64 ~riscv ~x86" -IUSE="big-endian" - -RDEPEND=" - <dev-python/numpy-2.1[${PYTHON_USEDEP}] - >=dev-python/numpy-1.24[${PYTHON_USEDEP}] - >=dev-python/pandas-2.1[${PYTHON_USEDEP}] - >=dev-python/packaging-23.1[${PYTHON_USEDEP}] -" -# note: most of the test dependencies are optional -BDEPEND=" - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/bottleneck[${PYTHON_USEDEP}] - dev-python/cftime[${PYTHON_USEDEP}] - dev-python/hypothesis[${PYTHON_USEDEP}] - dev-python/matplotlib[${PYTHON_USEDEP}] - !riscv? ( !x86? ( - dev-python/netcdf4[bzip2,szip,${PYTHON_USEDEP}] - ) ) - dev-python/toolz[${PYTHON_USEDEP}] - !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] ) - ) -" - -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -python_test() { - local EPYTEST_DESELECT=( - # TODO: these fail with filter errors even if netcdf4 is built - # with blosc/zstd support - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[zstd]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_lz]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_lz4]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_lz4hc]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_zlib]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_zstd]' - ) - - if ! has_version ">=dev-python/scipy-1.4[${PYTHON_USEDEP}]" ; then - EPYTEST_DESELECT+=( - 'xarray/tests/test_missing.py::test_interpolate_na_2d[coords1]' - ) - - if ! has_version "dev-python/scipy[${PYTHON_USEDEP}]" ; then - EPYTEST_DESELECT+=( - xarray/tests/test_calendar_ops.py::test_interp_calendar - ) - fi - fi - - if use big-endian ; then - EPYTEST_DESELECT+=( - # Appears to be a numpy issue in display? See bug #916460. - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-20-True]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-09-21T00:12:44.145224808-ns-float64-1e+30-True]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225216-ns-float64--9.223372036854776e+18-True]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-None-False]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225-us-int64-None-False]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-01-01T00:00:01.000001-us-int64-None-False]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:21:52.901038080-ns-float32-20.0-True]' - ) - fi - - if [[ ${ABI} != *64* ]]; then - EPYTEST_DESELECT+=( - # these tests hardcode object sizes for 64-bit arches - # https://github.com/pydata/xarray/issues/9127 - xarray/tests/test_dataarray.py::TestDataArray::test_repr_multiindex - xarray/tests/test_dataarray.py::TestDataArray::test_repr_multiindex_long - xarray/tests/test_dataset.py::TestDataset::test_repr_multiindex - xarray/tests/test_formatting.py::test_array_repr_dtypes_unix - - # converting timestamps into ns, causing an overflow - xarray/tests/test_cftimeindex.py::test_asi8 - xarray/tests/test_coding_times.py::test_decode_cf_time_bounds - xarray/tests/test_coding_times.py::test_use_cftime_false_standard_calendar_in_range - xarray/tests/test_coding_times.py::test_decode_cf_datetime_non_standard_units - ) - fi - - case ${ARCH} in - arm64) - EPYTEST_DESELECT+=( - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_roundtrip_mask_and_scale[dtype0-create_unsigned_false_masked_scaled_data-create_encoded_unsigned_false_masked_scaled_data]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_roundtrip_mask_and_scale[dtype1-create_unsigned_false_masked_scaled_data-create_encoded_unsigned_false_masked_scaled_data]' - ) - ;; - esac - - if has_version ">=dev-python/numpy-2[${PYTHON_USEDEP}]"; then - EPYTEST_DESELECT+=( - xarray/tests/test_dataset.py::TestDataset::test_polyfit_warnings - # https://github.com/pandas-dev/pandas/issues/56996 - xarray/tests/test_backends.py::test_use_cftime_false_standard_calendar_in_range - # TODO - 'xarray/tests/test_dtypes.py::test_maybe_promote[q-expected19]' - 'xarray/tests/test_dtypes.py::test_maybe_promote[Q-expected20]' - 'xarray/tests/test_conventions.py::TestCFEncodedDataStore::test_roundtrip_mask_and_scale[dtype0-create_unsigned_masked_scaled_data-create_encoded_unsigned_masked_scaled_data]' - 'xarray/tests/test_conventions.py::TestCFEncodedDataStore::test_roundtrip_mask_and_scale[dtype1-create_unsigned_masked_scaled_data-create_encoded_unsigned_masked_scaled_data]' - ) - fi - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -} diff --git a/dev-python/xarray/xarray-2024.11.0.ebuild b/dev-python/xarray/xarray-2024.11.0.ebuild deleted file mode 100644 index 01c76abddff9..000000000000 --- a/dev-python/xarray/xarray-2024.11.0.ebuild +++ /dev/null @@ -1,132 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{9,10,11,12,13} ) - -inherit distutils-r1 pypi - -DESCRIPTION="N-D labeled arrays and datasets in Python" -HOMEPAGE=" - https://xarray.pydata.org/ - https://github.com/pydata/xarray/ - https://pypi.org/project/xarray/ -" - -LICENSE="Apache-2.0" -SLOT="0" -KEYWORDS="amd64 ~arm64 ~riscv ~x86" -IUSE="big-endian" - -RDEPEND=" - <dev-python/numpy-2.1[${PYTHON_USEDEP}] - >=dev-python/numpy-1.24[${PYTHON_USEDEP}] - >=dev-python/pandas-2.1[${PYTHON_USEDEP}] - >=dev-python/packaging-23.2[${PYTHON_USEDEP}] -" -# note: most of the test dependencies are optional -BDEPEND=" - dev-python/setuptools-scm[${PYTHON_USEDEP}] - test? ( - dev-python/bottleneck[${PYTHON_USEDEP}] - dev-python/cftime[${PYTHON_USEDEP}] - dev-python/hypothesis[${PYTHON_USEDEP}] - dev-python/matplotlib[${PYTHON_USEDEP}] - !riscv? ( !x86? ( - dev-python/netcdf4[bzip2,szip,${PYTHON_USEDEP}] - ) ) - dev-python/toolz[${PYTHON_USEDEP}] - !hppa? ( >=dev-python/scipy-1.4[${PYTHON_USEDEP}] ) - ) -" - -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -python_test() { - local EPYTEST_DESELECT=( - # TODO: these fail with filter errors even if netcdf4 is built - # with blosc/zstd support - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[zstd]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_lz]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_lz4]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_lz4hc]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_zlib]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_compression_encoding[blosc_zstd]' - ) - - if ! has_version ">=dev-python/scipy-1.4[${PYTHON_USEDEP}]" ; then - EPYTEST_DESELECT+=( - 'xarray/tests/test_missing.py::test_interpolate_na_2d[coords1]' - ) - - if ! has_version "dev-python/scipy[${PYTHON_USEDEP}]" ; then - EPYTEST_DESELECT+=( - xarray/tests/test_calendar_ops.py::test_interp_calendar - ) - fi - fi - - if use big-endian ; then - EPYTEST_DESELECT+=( - # Appears to be a numpy issue in display? See bug #916460. - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-20-True]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-09-21T00:12:44.145224808-ns-float64-1e+30-True]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225216-ns-float64--9.223372036854776e+18-True]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145224193-ns-int64-None-False]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:12:43.145225-us-int64-None-False]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1970-01-01T00:00:01.000001-us-int64-None-False]' - 'xarray/tests/test_coding_times.py::test_roundtrip_datetime64_nanosecond_precision[1677-09-21T00:21:52.901038080-ns-float32-20.0-True]' - ) - fi - - if [[ ${ABI} != *64* ]]; then - EPYTEST_DESELECT+=( - # these tests hardcode object sizes for 64-bit arches - # https://github.com/pydata/xarray/issues/9127 - xarray/tests/test_dataarray.py::TestDataArray::test_repr_multiindex - xarray/tests/test_dataarray.py::TestDataArray::test_repr_multiindex_long - xarray/tests/test_dataset.py::TestDataset::test_repr_multiindex - xarray/tests/test_formatting.py::test_array_repr_dtypes_unix - - # converting timestamps into ns, causing an overflow - xarray/tests/test_cftimeindex.py::test_asi8 - xarray/tests/test_coding_times.py::test_decode_cf_time_bounds - xarray/tests/test_coding_times.py::test_use_cftime_false_standard_calendar_in_range - xarray/tests/test_coding_times.py::test_decode_cf_datetime_non_standard_units - ) - fi - - case ${ARCH} in - arm64) - EPYTEST_DESELECT+=( - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_roundtrip_mask_and_scale[dtype0-create_unsigned_false_masked_scaled_data-create_encoded_unsigned_false_masked_scaled_data]' - 'xarray/tests/test_backends.py::TestNetCDF4Data::test_roundtrip_mask_and_scale[dtype1-create_unsigned_false_masked_scaled_data-create_encoded_unsigned_false_masked_scaled_data]' - ) - ;; - esac - - if has_version ">=dev-python/numpy-2[${PYTHON_USEDEP}]"; then - EPYTEST_DESELECT+=( - xarray/tests/test_dataset.py::TestDataset::test_polyfit_warnings - # https://github.com/pandas-dev/pandas/issues/56996 - xarray/tests/test_backends.py::test_use_cftime_false_standard_calendar_in_range - # TODO - 'xarray/tests/test_dtypes.py::test_maybe_promote[q-expected19]' - 'xarray/tests/test_dtypes.py::test_maybe_promote[Q-expected20]' - 'xarray/tests/test_conventions.py::TestCFEncodedDataStore::test_roundtrip_mask_and_scale[dtype0-create_unsigned_masked_scaled_data-create_encoded_unsigned_masked_scaled_data]' - 'xarray/tests/test_conventions.py::TestCFEncodedDataStore::test_roundtrip_mask_and_scale[dtype1-create_unsigned_masked_scaled_data-create_encoded_unsigned_masked_scaled_data]' - ) - fi - - if ! has_version "dev-python/seaborn[${PYTHON_USEDEP}]"; then - EPYTEST_DESELECT+=( - xarray/tests/test_plot.py::TestContour::test_colors - ) - fi - - local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest -} diff --git a/dev-python/xarray/xarray-2025.1.0-r1.ebuild b/dev-python/xarray/xarray-2025.3.0.ebuild index 0866f3804b53..341ef4c9e486 100644 --- a/dev-python/xarray/xarray-2025.1.0-r1.ebuild +++ b/dev-python/xarray/xarray-2025.3.0.ebuild @@ -114,5 +114,5 @@ python_test() { fi local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 - epytest + epytest -o addopts= } diff --git a/dev-python/xmlschema/Manifest b/dev-python/xmlschema/Manifest index 8845f13151e3..926a7c922b39 100644 --- a/dev-python/xmlschema/Manifest +++ b/dev-python/xmlschema/Manifest @@ -1 +1,2 @@ DIST xmlschema-3.4.3.tar.gz 585144 BLAKE2B e93ed5fed2f108f9a067b2c96aff884bda4980d57ad0efedacb7c0302cb7cebc99ce49d98e4272a50f6c6bc79a401218c75cbde682028558bbe6e815b6aeaad3 SHA512 7645ea820ec6f469e560ffaba10948b185d9dcfc7a5d4cde1a5062f20b904cb97ffbc7f57893768879a192cbb63208a5c6f79775d09be650d24a54b1bb7e9176 +DIST xmlschema-3.4.4.tar.gz 591585 BLAKE2B 03c215df5d8929d1371dadeaebbbd509b8a9a0f3c01f94999ffa7eac547a2ced80f48dbd74faeb1aa9e59fca06e1c92d44db41f11ceed367bf2b4b822e30476d SHA512 a8fa3d295b2fec631a9dc54d800c19e6a7e57981541b536b2a699573bb0de45be1d65f4f73e63017620358711effef9f2d1745ca5e10ddd5e04b02565301d697 diff --git a/dev-python/xmlschema/xmlschema-3.4.4.ebuild b/dev-python/xmlschema/xmlschema-3.4.4.ebuild new file mode 100644 index 000000000000..c4b4fd46e50e --- /dev/null +++ b/dev-python/xmlschema/xmlschema-3.4.4.ebuild @@ -0,0 +1,37 @@ +# Copyright 2019-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="An XML Schema validator and decoder" +HOMEPAGE=" + https://github.com/sissaschool/xmlschema/ + https://pypi.org/project/xmlschema/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + <dev-python/elementpath-5[${PYTHON_USEDEP}] + >=dev-python/elementpath-4.4.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + ${RDEPEND} + dev-python/jinja2[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + ) +" + +python_test() { + "${EPYTHON}" tests/test_all.py -v || die "Tests fail with ${EPYTHON}" +} |
