diff options
Diffstat (limited to 'dev-python')
46 files changed, 1119 insertions, 292 deletions
diff --git a/dev-python/authlib/Manifest b/dev-python/authlib/Manifest index 6338faa49ee0..3aeb1b892a9b 100644 --- a/dev-python/authlib/Manifest +++ b/dev-python/authlib/Manifest @@ -1,2 +1,2 @@ -DIST authlib-1.7.2.gh.tar.gz 356607 BLAKE2B 60d232c26a672bdbd2cb57073ed05bcde2d5ed1caa143cb1d64760758c0a93adf0cde3db579c787d219fd741c50eb182d932c91e3a23251837784e963dc2b37c SHA512 814d5160baec83de80ba4a9bed86a611ae4b2605c3674dc6fe24844bd5da1bb9dc2d73e8c42bb44e378991f2479ed478477e42535cf2888c29506ee25e629aa7 DIST authlib-1.8.0.gh.tar.gz 361890 BLAKE2B 3aaaea7334859b19f1bc4c0acfd0e17d40f79f9ee183a9d4a6bfec68d761e6b740cac4fe092a5b0b4c4a60f30873ed58dd55088f708139c4564a74877458969e SHA512 c75e5e97461c23b26511fefa442e24b1d0467d45d7521e702d9d399680235cb4dd15645085a702bd158e1523f41b07308995e9586f2d5bc46ec6396bf8babbe0 +DIST authlib-1.9.1.gh.tar.gz 388395 BLAKE2B 20579375edb0965c5ff6755eefcc43c69c35352f43db71be86087ef1c8a6b462dd477add868d55d332c7f3367f6ad330f916e1b495d87180ab89ec227657d006 SHA512 3f106f800a668c0f2f11fab6cbe56185975c5ad9a9509637055ca6d5528006c88c17dc6980bfc78cdda8e719c7823aee86c64dd3e939829f93ef250e0939809f diff --git a/dev-python/authlib/authlib-1.7.2.ebuild b/dev-python/authlib/authlib-1.9.1.ebuild index ef399ad123b4..a5be86c9252e 100644 --- a/dev-python/authlib/authlib-1.7.2.ebuild +++ b/dev-python/authlib/authlib-1.9.1.ebuild @@ -23,16 +23,14 @@ SRC_URI=" LICENSE="BSD" SLOT="0" KEYWORDS="~amd64" -IUSE="django jose test" +IUSE="django test" RESTRICT="!test? ( test )" RDEPEND=" - dev-python/cryptography[${PYTHON_USEDEP}] + >=dev-python/cryptography-45.0.1[${PYTHON_USEDEP}] + >=dev-python/joserfc-1.6.8[${PYTHON_USEDEP}] django? ( - dev-python/django[${PYTHON_USEDEP}] - ) - jose? ( - dev-python/joserfc[${PYTHON_USEDEP}] + >=dev-python/django-3.2.9[${PYTHON_USEDEP}] ) " BDEPEND=" @@ -42,6 +40,7 @@ BDEPEND=" dev-python/django[${PYTHON_USEDEP}] dev-python/flask[${PYTHON_USEDEP}] dev-python/httpx[${PYTHON_USEDEP}] + dev-python/httpx2[${PYTHON_USEDEP}] dev-python/joserfc[${PYTHON_USEDEP}] >=dev-python/pycryptodome-3.10[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] @@ -49,7 +48,7 @@ BDEPEND=" ) " -EPYTEST_PLUGINS=( pytest-asyncio ) +EPYTEST_PLUGINS=( pytest-{asyncio,env} ) # EPYTEST_XDIST makes tests flaky distutils_enable_tests pytest @@ -62,7 +61,6 @@ src_prepare() { } python_test() { - local -x DJANGO_SETTINGS_MODULE=tests.django_settings epytest tests/{core,jose,clients} # TODO: django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet. diff --git a/dev-python/bitarray/Manifest b/dev-python/bitarray/Manifest index 51a2e68a6fdc..474b48966dac 100644 --- a/dev-python/bitarray/Manifest +++ b/dev-python/bitarray/Manifest @@ -2,3 +2,4 @@ DIST bitarray-3.10.1.tar.gz 168648 BLAKE2B 12b22225a86c93db32dc70854c17a5046fd0e DIST bitarray-3.11.0.tar.gz 174911 BLAKE2B e9a2444607225488576e565046039ae5fa8787543ca6a3c75cd72fc28a49944168cc5cbdf0f573c32ba1387007dc665bbde7c11d260af3cc1fc85c1e3d7f77af SHA512 de61eff60c8534af4505046e99b1343d49e6a29f39bcd02693ad28a6ff03643c04103c2ab21c19d1515a9720721765a41a3acfb5c1452df44fb4561e8b79c691 DIST bitarray-3.12.0.tar.gz 186999 BLAKE2B 258cb651eb603b391f7713e6590122375cee85448f2d009c817602b4bdf2a56af2df3631d7f27cb51429008a2059e5349e9a7b4e8b103a8ab109db9f6f551d78 SHA512 36852e5dce353a640aff490064b0604effac3481c9ed9f32ba510f4bb2ed98b7fc9a06e3ea19a78fe838ea7a2177835d0376dfde7c5366452f73830d97194528 DIST bitarray-3.12.1.tar.gz 187103 BLAKE2B f8d9d2c3959f2bfadfea5addbc176bf78feac812644d3508979784b841f6fb8af9bfac1b4781887421813dd45b895956c7a8e2917e089d0fe48fe953868e16b5 SHA512 83ac90d9d2b6422862b978847c8511e5c254e13e30909a4da199aab9c826ea0f3c17a7f6b816288b1880b48638d1ee597046d77b3cad624cd0e8b7765d28b1ce +DIST bitarray-3.12.2.tar.gz 187672 BLAKE2B de8063e169a25a0c55964481f28b53d635e56c55e13862eac55154aaa0cf5a76eecc3170e785c960a3d90d5f9927c0f86dbd781de760bf89a6f565fe1f714f75 SHA512 ae387e63d3d30dabb1bbe58484cda665ad87a31ad2598233583116ebc7da7390f9170f43ffb60dbf48703141141e885becabfa2026595e09c88b4b9465546889 diff --git a/dev-python/bitarray/bitarray-3.12.2.ebuild b/dev-python/bitarray/bitarray-3.12.2.ebuild new file mode 100644 index 000000000000..c70a37e0f30b --- /dev/null +++ b/dev-python/bitarray/bitarray-3.12.2.ebuild @@ -0,0 +1,24 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Efficient arrays of booleans -- C extension" +HOMEPAGE=" + https://github.com/ilanschnell/bitarray/ + https://pypi.org/project/bitarray/ +" + +LICENSE="PSF-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86" + +python_test() { + "${EPYTHON}" bitarray/test_bitarray.py -v || die "Tests fail with ${EPYTHON}" +} diff --git a/dev-python/boto3/Manifest b/dev-python/boto3/Manifest index 6e2b56bab617..c288af25ee5d 100644 --- a/dev-python/boto3/Manifest +++ b/dev-python/boto3/Manifest @@ -3,6 +3,7 @@ DIST boto3-1.43.108.gh.tar.gz 1250263 BLAKE2B 73f98863859b8c1ff06655d84d6b155811 DIST boto3-1.43.111.gh.tar.gz 1253888 BLAKE2B 972d4fbed26dc6ef267f1ee9433d13a9030a405a7dca1da23f2b3b39a6c32e13bbb8a15d202e3c86d067040326934c57161901262c409262c3bd2e41ea003bef SHA512 bd26006eb35ad806c071e185bf86d92c8eeb2345871575cb26812c1bffcdca602a54244074bcd2edce1487b17240caf9975f98037eee02a01dd4d07f1f964190 DIST boto3-1.43.112.gh.tar.gz 1255810 BLAKE2B 7d46c0c0d0815d9cd278d60cc0b78b8a137509c8224be0e899895f897c9ceb415ce1224feaf888e56a1e368451d760765bd101b4c14e870406248c7e64221d77 SHA512 63609af1366d12eed03f1b64b2d20cd6721a632d7d583e547f44f5a7519d3ef33360338611679f0b4964e541e8d4b61f9dc330fad5f909ff2e0c852764921a56 DIST boto3-1.43.113.gh.tar.gz 1257679 BLAKE2B 130963c74bfc5ce7c059178f5e971bbdf65f6b88f7f9c7f1cca0fb7d2f49b5bf7378a5e37245d20100f1933af7371315ab01292025d166f8ea526a0b52995a39 SHA512 293f0d29ef97f24eab7529c3bc66f03d72dafdd59bafadf463c9087f8154c6eebe9f6f59ff8cbba6685617acba19fc7e05e10b7db6ab8b4b1d2491a0818ea255 +DIST boto3-1.43.114.gh.tar.gz 1259584 BLAKE2B 07307d6e1005fc031d4f0cb888b885c68429000cba799e33bfd4ee53031731eb48194f0c93c2d6586bbe016e46be371edb9837c1a6ae06b427dd1e927ff673a3 SHA512 f95a3e57a4283e1ba736ef9101fe486c599afdd38cb2f6d4b202eca124b839ff0886a8d258e1594e1e0a722314a76b041c04fb48b5a68847f655cae5e08e5489 DIST boto3-1.43.89.gh.tar.gz 1225424 BLAKE2B 625bb37a542644c8fe37aab42a115bf8be2e36373d7f6149dcc7e150e327c75b334ef480897be1d4954809b233a47e02854d7b28b4a3904f0e5cdcea3f0440d7 SHA512 1c04fd6df819abbe60d551c6d706f7254fe6d6758e95fd53ec70d4dd892b6f7bf69981cb001fc6ca5bc5885f083718b80a4fd045b146e7f4add16a50ac3a9d38 DIST boto3-1.43.93.gh.tar.gz 1230597 BLAKE2B 183d94cea0d706147a75674cb85a600ad21c2683618ba18a14e8630f23b19c94c11d0bc03ddc517194dad42dfb9445d1b34076b1f1b3ecbcec51ceccf30e5db0 SHA512 01612175497aada3b3fdf62ffcdb0626dc0fd5090d7d156d2a1f5fad4ec19b904ffecfd4b59880cf71ec07658bf00c2245bdd3c989a7513689ab59a2511e06ea DIST boto3-1.43.98.gh.tar.gz 1235430 BLAKE2B 6a08b191374c1c31b69c975cb4281685bee4914b8f2ab32dd2eb13c7742ff7e228a151f0e78b7f323d43ffe9b4dd7e4574104bc4a63cd573726715eceeb13137 SHA512 550c5daf6b3110562ba08e0694cdc19b7cd02e9d00aba22acc3a8272a63124d3e9eea870d7fced18685ee89459f375ace66aca49fcaece88a1d7dbfa1d54022e diff --git a/dev-python/boto3/boto3-1.43.114.ebuild b/dev-python/boto3/boto3-1.43.114.ebuild new file mode 100644 index 000000000000..fcfc7c9a743e --- /dev/null +++ b/dev-python/boto3/boto3-1.43.114.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +DESCRIPTION="The AWS SDK for Python" +HOMEPAGE=" + https://github.com/boto/boto3/ + https://pypi.org/project/boto3/ +" +SRC_URI=" + https://github.com/boto/boto3/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + +RDEPEND=" + >=dev-python/botocore-${PV}[${PYTHON_USEDEP}] + >=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}] + >=dev-python/s3transfer-0.19.0[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_prepare_all() { + # don't lock versions to narrow ranges + sed -e '/botocore/ d' \ + -e '/jmespath/ d' \ + -e '/s3transfer/ d' \ + -i setup.py || die + + # do not rely on bundled deps in botocore (sic!) + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_python_prepare_all +} + +python_test() { + epytest tests/{functional,unit} +} diff --git a/dev-python/botocore/Manifest b/dev-python/botocore/Manifest index 169ed55b7a63..d1bfe7332582 100644 --- a/dev-python/botocore/Manifest +++ b/dev-python/botocore/Manifest @@ -3,6 +3,7 @@ DIST botocore-1.43.108.gh.tar.gz 17372621 BLAKE2B c4a053b10a7a95d78a84254aabe941 DIST botocore-1.43.111.gh.tar.gz 17387410 BLAKE2B 36f5cde64e3be6b364ed4b0338531e8dca38e5b817e6e2607a16ef48ae1ad4cd21bcfc48a7c982358ad45b7fab3073f995817da8689ef7a8c0d8a376d079d88e SHA512 fb63e7844d5d74bbae67fe601b18629f4f366128972bd35498263b3f7fc5d3af7fa1a3e39f3cc9673d87954aff6990bcbff350ea8ed28ab6d887fb8e33e6652a DIST botocore-1.43.112.gh.tar.gz 17421218 BLAKE2B a32c8c09753310247810be3939df3cf2885140bad9a9b13fdba3eb6ee862b1ecf08cd8f841c84c9b9e10037f9d5f68ec47ead537536cf66673efd17a2a0d3b8d SHA512 264de478efb971616b44d47191ce6294e1981565aa75fe3db978e8e4491fbc7728dbbe4a223097a464c5b71decd1f1e9019e719fb94b436701c5de775faac4a6 DIST botocore-1.43.113.gh.tar.gz 17434227 BLAKE2B a76cb5a7acfd27fefd63528af078e973618a8d101091728f49ff83cd1ce82c1e0a19cc4cf44212786c49affd3987631e3f61b142166b56f6c0f7edd3d6e162b2 SHA512 39f47829e8012abb4311e745deb5065ba385dae4386d2555188754b37d1870af5967dea522ea9fd678d024d0506abffbbf29af4c16c757201ca3aec17f0a2363 +DIST botocore-1.43.114.gh.tar.gz 17441489 BLAKE2B 587bd7b0e7afbbcb85fd7a1d4c499577d15a7c69cfd3a9cf37d951700ad4a0e25e0f456a5b7542673bc2182567fe238ecf016c63d49232284b8f16936d3af29d SHA512 c4dd34ef3fe0fc407ff60478aec7c4327e3773cc2a7858cb7911571d02cdb71f9409c84523ca47e7c3f7b7e0f2bb2d1e0c12de3a30342dc4ce0e823d84c6b693 DIST botocore-1.43.89.gh.tar.gz 17111395 BLAKE2B 25837125b5d9477b011c065594ffa1b49a2f5d0cf76e1c664aa5401d50dfe8dd9573d0ab3a60f739c796c32965a7dd7608e302a284bfcc97d9f7f4a8a2b698e3 SHA512 c9c0b7636fb7595d4ff3ee2ec7e1ef8ad3000e9e453ce6edb827a1152109fc2fb6b226bd08f27653fc1436444c39be6f160fa4f7c34eb50a7384988686933590 DIST botocore-1.43.93.gh.tar.gz 17142451 BLAKE2B eec2955aa252ff8bc49c24095006f0c75669f7946dcdaece4c7f640e724910b14c1b1b0b07fb8e6661d96e95fe148201381d70b4685a7282c2c64f2656fde57a SHA512 e021322d630deb94f738aa5096a7b72ffdeffbeaf5d3f6fbc9e835b7f41afa25a738d353e37b4fbd73b5b8889334ccdf4caec64d4c63e4e966e0e245c6117cf0 DIST botocore-1.43.98.gh.tar.gz 17171860 BLAKE2B 8bb682accc106b35b89f19fc6512314f3251a896d5e3e74b02112d9dc6218c56388685113d1889dbbde18ca9ea2b18acd2386d54603567d334644bebc55a678a SHA512 42700b9fbbf6df97f410cff159aae5dd57f5c114567e80fe4930b42166608609fcd9822f011c0acb8a4fc46c92aedd9a7ea5afa1608a24e47b0e30d78274d0ac diff --git a/dev-python/botocore/botocore-1.43.114.ebuild b/dev-python/botocore/botocore-1.43.114.ebuild new file mode 100644 index 000000000000..c5a99a77214e --- /dev/null +++ b/dev-python/botocore/botocore-1.43.114.ebuild @@ -0,0 +1,80 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 + +DESCRIPTION="Low-level, data-driven core of boto 3" +HOMEPAGE=" + https://github.com/boto/botocore/ + https://pypi.org/project/botocore/ +" +SRC_URI=" + https://github.com/boto/botocore/archive/${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86" + +RDEPEND=" + <dev-python/jmespath-2[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + >=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}] +" +# unbundled packages +RDEPEND+=" + dev-python/requests[${PYTHON_USEDEP}] + dev-python/six[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/jsonschema[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + # unpin deps + sed -i -e "s:>=.*':':" setup.py || die + + # unbundle deps + rm -r botocore/vendored || die + find -name '*.py' -exec sed -i \ + -e 's:from botocore[.]vendored import:import:' \ + -e 's:from botocore[.]vendored[.]:from :' \ + {} + || die + + distutils-r1_src_prepare +} + +python_test() { + local EPYTEST_DESELECT=( + # rely on bundled six + tests/functional/test_six_imports.py::test_no_bare_six_imports + tests/functional/test_six_threading.py::test_six_thread_safety + ) + + # The test suite can eat up a lot of memory when running via xdist, + # and slow down some tiny tests. Let's just run a safe subset + # of tests known to be slow-ish in parallel, and the rest in series. + local parallel_tests=( + tests/functional/*/ + tests/functional/test_event_alias.py + tests/functional/test_[cds-z]*.py + tests/unit/ + ) + + epytest "${parallel_tests[@]}" + + local EPYTEST_IGNORE=( "${parallel_tests[@]}" ) + EPYTEST_XDIST= epytest tests/functional +} diff --git a/dev-python/cftime/Manifest b/dev-python/cftime/Manifest index 3d4d3718360f..6d44779dc2a7 100644 --- a/dev-python/cftime/Manifest +++ b/dev-python/cftime/Manifest @@ -1,3 +1,5 @@ DIST cftime-1.6.5.tar.gz 326605 BLAKE2B 41971028ce294e69a9b67d9adc0d8346d9656faa05abd9b156d13441c459ee63f1b74f085081e8b7066fa8fc4e64f8d319a545bdda85d0dac29c2bc2e3da28ad SHA512 ccb19d9216536094a3fff4f9f396d284971647f55e3239fba358342e4afc8a4c5449bda2b6c3d930ed43b9cf9f2756c62d2f66b8356a341189f590625b721621 +DIST cftime-1.6.6.1.tar.gz 381552 BLAKE2B 37a31e57784193216bc6a5de2f736a6ecb6e2d855c2b2001c7538b192c2e2a1d06cd86baeed487f82125c1b6189839b0cfe79c3df3f094fe3d05a1b75d4409bb SHA512 9ccc6d29ce46b5e4f11612805b77f6363e33e36c3b06c13c4a1dc6cbbd3fa55cfa9f915bf6dc6c5724661ededa05c342b465368b4dc6cd43c419c6d1284c6447 +DIST cftime-1.6.6.1.tar.gz.provenance 9968 BLAKE2B 32aef82b13ad2d0880261652ff8bfd3ff66cadd542e6c17d39e951e01c2018275aca5ff07c5a3aa9d697470bcc012327691dee4c03a0667fba2ad39ba24dddc8 SHA512 a8334a5f40e8fc92ef02be2f41da4120c68e7898819319620c156b385af818acdcf0fcef2f51f294fa9bbdea931a45247990923418357d9510abb8103dcc6ce2 DIST cftime-1.6.6.tar.gz 380802 BLAKE2B 2513dde7d96698509aa655d62473fca0d588cee346f933f283966c9a291fdafc41a50dcbba713f682511a6f8971225c2bd37a3b2ee1f2a02c82348cdda89c7df SHA512 f24924bcdd930079f8af6e3bdcfeb7e8768177a38fb07625ba02b7eac23eefb5c7eeff153fb0ac69b382b00558cc65c7930ef0ea7025dfa09061005fba1828a6 DIST cftime-1.6.6.tar.gz.provenance 9762 BLAKE2B a4deebc020594b0abf1f1b0f70f2f884f61bad6c22509af49cc56fd9a773b66a627916d29ad16e1436bdc83236fc3920a22cac042ec6358a8bcfb2f6418e0fb0 SHA512 92f43350ae1c824959acd08b1ef3436ce8d02063d4c3fc373a3774e9c099f9580c5eff101e69bf40b198b874e2e83999abde19cc819234fe699be5a892edfee7 diff --git a/dev-python/cftime/cftime-1.6.6.1.ebuild b/dev-python/cftime/cftime-1.6.6.1.ebuild new file mode 100644 index 000000000000..849614a695f4 --- /dev/null +++ b/dev-python/cftime/cftime-1.6.6.1.ebuild @@ -0,0 +1,34 @@ +# Copyright 2020-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/Unidata/cftime +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Time-handling functionality from netcdf4-python" +HOMEPAGE=" + https://github.com/Unidata/cftime/ + https://pypi.org/project/cftime/ +" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~s390 ~x86" + +DEPEND=" + >=dev-python/numpy-1.26.0[${PYTHON_USEDEP}] +" +RDEPEND=" + ${DEPEND} +" +BDEPEND=" + >=dev-python/cython-0.29.20[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest diff --git a/dev-python/cramjam/cramjam-2.14.0.ebuild b/dev-python/cramjam/cramjam-2.14.0.ebuild index ec4fc063cd0c..26608d4b31e9 100644 --- a/dev-python/cramjam/cramjam-2.14.0.ebuild +++ b/dev-python/cramjam/cramjam-2.14.0.ebuild @@ -8,7 +8,7 @@ DISTUTILS_USE_PEP517=maturin PYPI_VERIFY_REPO=https://github.com/milesgranger/cramjam PYTHON_COMPAT=( python3_{13..14} ) -RUST_MIN_VER="1.83.0" +RUST_MIN_VER="1.85.0" # Note: you need to use top-level Cargo.lock to generate the crate list. CRATES=" adler2@2.0.1 diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest index a73f6bf1eae2..c4c86a65c1b6 100644 --- a/dev-python/fakeredis/Manifest +++ b/dev-python/fakeredis/Manifest @@ -6,3 +6,5 @@ DIST fakeredis-2.38.0.tar.gz 271116 BLAKE2B c16d21d194a2589363a753737fbbe0729ead DIST fakeredis-2.38.0.tar.gz.provenance 9942 BLAKE2B e29e23b6ec2a64fcbbe8c078ea0b01aa728d81a63e6c4898971187184aa59bfb219c072d8933bc4ae64040db6d89b7ad334b4489b6da8e2d640c639200e33fa2 SHA512 18400e533c3471d087e8429a41d5cb664a023a5bc12276f0021aeb9616dd7c18523284716f9a89c93ac3f30019f6540bb3935c6a7073f43fd59d4644afb499ba DIST fakeredis-2.39.0.tar.gz 301722 BLAKE2B 4f0550eb73f0b67061cc96e6b44bca7920aaa423563ab0c588ed264259e340de20a417c4535f82dc09714d6902d9bc298e07145b27ac72c3642bb3b387c74d2e SHA512 b0b15942440a0926ebb40db4ffe49e80d35bddf59de6919d3c68b651ddab6ebce17f7310406bc2c9ee5fe912f875a6bf58430392652ec95c18cbc5c7f839b7ca DIST fakeredis-2.39.0.tar.gz.provenance 9797 BLAKE2B 07d67ab697bee1676aa436aaeb30e10628cc407823d1ce3f4a4c9187f1a9862050d720c6d2c70bacc082d4244c48968dae848ff615115f50ec8084f757ff0547 SHA512 b50b217469ca5fc2629e297823abfd2f83c398cbb4c4dda962c59286eb3af0c811d8cbadaf1d0291edf1f95916db96587a559a1279dda9bba6e95fabca7375d7 +DIST fakeredis-2.40.0.tar.gz 332674 BLAKE2B 1dc0b7797d59a895ec93c171f0797daace9c9d11dc17182f714488030a31b3b28cc53c20723454e2430923f2dc7d8d3ed305bca08592e3045ab43eca3ca96c98 SHA512 215a23b61976b7418172a9c28a7646469127a1caa8dcb388fede54d6d64d83fd9691d41b58d7bb3fc4e46c1828ca0b5d7c97371b33b542a839b84c38f75dbf3b +DIST fakeredis-2.40.0.tar.gz.provenance 9869 BLAKE2B 5fa1cfb9ffe0713dbf21a3685f90b2e80b4009b39401cdf7f1ced6d6b4a5c3d392d33e9fa5f6df5d966e3c83f03261c86e66c94df47f649561ea0ec7d5ab6e12 SHA512 6f2db02bfa3f52c4739fc5c58c8b4d14c7d238ed0540c31ea86ab0adef8c34ef1c10352f0452b28e2d513efc56ceb8661426e681a9bce4ab650ae48cd04231bb diff --git a/dev-python/fakeredis/fakeredis-2.40.0.ebuild b/dev-python/fakeredis/fakeredis-2.40.0.ebuild new file mode 100644 index 000000000000..31767ad12918 --- /dev/null +++ b/dev-python/fakeredis/fakeredis-2.40.0.ebuild @@ -0,0 +1,139 @@ +# Copyright 2020-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/cunla/fakeredis-py +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Fake implementation of redis API for testing purposes" +HOMEPAGE=" + https://github.com/cunla/fakeredis-py/ + https://pypi.org/project/fakeredis/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~sparc ~x86" + +RDEPEND=" + >=dev-python/redis-4.3[${PYTHON_USEDEP}] + >=dev-python/sortedcontainers-2[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-db/redis + dev-db/valkey + dev-python/packaging[${PYTHON_USEDEP}] + dev-python/valkey[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-{asyncio,mock} ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_prepare() { + distutils-r1_src_prepare + + # do not install duplicate license + sed -i -e '\@fakeredis/LICENSE@d' pyproject.toml || die +} + +wait_for_status() { + local expected=${1} + + local i + for i in {1..50}; do + "${server}-cli" -p "${redis_port}" ping + [[ ${?} -eq ${expected} ]] && return + sleep 0.2 + done + + die "Timeout while waiting for ${1}-server to start/stop" +} + +src_test() { + local server + for server in redis valkey; do + local redis_pid="${T}/${server}.pid" + local redis_port=6390 + local redis_log="${T}/${server}.log" + local redis_db="${T}/${server}.db" + + einfo "Running ${server} server tests" + "${EPREFIX}/usr/sbin/${server}-server" - <<- EOF || die "Unable to start ${server} server" + daemonize yes + pidfile ${redis_pid} + port ${redis_port} + logfile ${redis_log} + dir ${redis_db%/*} + dbfilename ${redis_db##*/} + bind 127.0.0.1 + EOF + + # wait for the server to start + wait_for_status 0 + + distutils-r1_src_test + + "${server}-cli" -p "${redis_port}" shutdown || die "Unable to stop ${server} server" + + # wait for the server to stop + wait_for_status 1 + done +} + +python_test() { + local EPYTEST_DESELECT=( + # json ext + test/test_stack/test_json.py + test/test_stack/test_json_arr_commands.py + test/test_stack/test_json_fpha.py + # eval command + test/test_internals/test_reply_shaping.py::test_nested_replies_reach_the_client_intact + # TODO + "test/test_mixins/test_pubsub_commands.py::test_published_message_to_shard_channel[Strict3]" + "test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[Strict2]" + "test/test_mixins/test_pubsub_commands.py::test_pubsub_shardnumsub[Strict3]" + ) + + local EPYTEST_IGNORE=( + # these tests fail a lot... + test/test_hypothesis + test/test_hypothesis_joint.py + ) + + case ${server} in + redis) + EPYTEST_DESELECT+=( + "test/test_mixins/test_acl_commands.py::test_acl_cat[Strict2]" + "test/test_mixins/test_acl_commands.py::test_acl_cat[Strict3]" + "test/test_async/test_redis_only.py::test_async_lock[fake_resp2]" + "test/test_async/test_redis_only.py::test_async_lock[fake_resp3]" + "test/test_mixins/test_set_commands.py::test_smismember_wrong_type[FakeStrict2]" + "test/test_mixins/test_set_commands.py::test_smismember_wrong_type[FakeStrict3]" + "test/test_mixins/test_set_commands.py::test_smismember_wrong_type[Strict2]" + "test/test_mixins/test_set_commands.py::test_smismember_wrong_type[Strict3]" + ) + + # run fake tests only once + # TODO: figure out how to run tcp_server tests + # they fail if a server is running, + # and conftest fails if one isn't running + epytest -m "not real and not tcp_server" + ;; + valkey) + EPYTEST_DESELECT+=( + test/test_stack/test_vectorset.py + ) + ;; + esac + + # we can run "fake" tests in parallel, but "real" seem to share + # the same connection + EPYTEST_XDIST= epytest -m "real" +} diff --git a/dev-python/fastapi/Manifest b/dev-python/fastapi/Manifest index 515f4379e5c9..58a957f5b510 100644 --- a/dev-python/fastapi/Manifest +++ b/dev-python/fastapi/Manifest @@ -1,2 +1 @@ -DIST fastapi-0.142.4.tar.gz 467841 BLAKE2B 544d79530c15dae26718c42446ead3f5f2a443baf44bc4030f91ac66ddd38f4a5ed088ada78efce2e148182ee87c0ecf330ff0764d8cb23a9f014ceefe2f3171 SHA512 e82761d7f9a1674c0d44b18fdd23170b95571e195ab4a6ca3d67ae992b99d848304acb7eb6bd6302738caa3236aa328037979a46cf9ac36f86f55ef045222449 DIST fastapi-0.143.0.tar.gz 468391 BLAKE2B 24b1ebaac972c183166ebe37c76ec6fe29ec68b1cbdb78201e1ff11c54e158b56b9ba6f45e2318815202d97c0e94ea7b58fe53c620b501098fdcdeec564a2a43 SHA512 1fc0322645736bbdcb07892cd0f622feeb82b8e751b3e0040bd7cb32f8d749b38a5c33787ee1f1d2d67625b885481e3b2c17e8db9e13ac239833bfa544ff5f11 diff --git a/dev-python/fastapi/fastapi-0.142.4.ebuild b/dev-python/fastapi/fastapi-0.142.4.ebuild deleted file mode 100644 index 001c647ada47..000000000000 --- a/dev-python/fastapi/fastapi-0.142.4.ebuild +++ /dev/null @@ -1,124 +0,0 @@ -# Copyright 2025-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=pdm-backend -PYTHON_COMPAT=( python3_{13..14} ) -#may be not stricly required -PYTHON_REQ_USE="threads(+)" - -inherit distutils-r1 optfeature pypi - -DESCRIPTION="High performance framework, easy to learn, fast to code, ready for production" -HOMEPAGE=" - https://fastapi.tiangolo.com/ - https://github.com/fastapi/fastapi/ - https://pypi.org/project/fastapi/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64" - -RDEPEND=" - >=dev-python/annotated-doc-0.0.4[${PYTHON_USEDEP}] - >=dev-python/opentelemetry-api-1.44.0[${PYTHON_USEDEP}] - >=dev-python/pydantic-2.9.0[${PYTHON_USEDEP}] - >=dev-python/starlette-0.46.0[${PYTHON_USEDEP}] - >=dev-python/typing-extensions-4.8.0[${PYTHON_USEDEP}] - >=dev-python/typing-inspection-0.4.2[${PYTHON_USEDEP}] -" - -#FIXME: add missing deps -BDEPEND=" - test? ( - dev-python/a2wsgi[${PYTHON_USEDEP}] - dev-python/dirty-equals[${PYTHON_USEDEP}] - dev-python/flask[${PYTHON_USEDEP}] - dev-python/httpx[${PYTHON_USEDEP}] - dev-python/httpx2[${PYTHON_USEDEP}] - dev-python/pydantic-settings[${PYTHON_USEDEP}] - dev-python/python-multipart[${PYTHON_USEDEP}] - dev-python/sqlalchemy[${PYTHON_USEDEP}] - dev-python/typer[${PYTHON_USEDEP}] - ) -" - -EPYTEST_PLUGINS=( anyio inline-snapshot pytest-timeout ) -# workaround broken toml config -: ${EPYTEST_TIMEOUT:=30} -# 3k tests+, so use xdist to speed them up -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -# There are some JSON response tests that will exercise orjson or ujson if they are available. -# These are properly skipped if the optional dependencies are not installed at the cost of a little spam. -python_test() { - local EPYTEST_IGNORE=( - # python/strawberry-graphql (in guru, test dep only) - tests/test_tutorial/test_graphql/test_tutorial001.py - # dev-python/sqlmodel (in guru, test dep only) - tests/test_tutorial/test_sql_databases/test_tutorial001.py - tests/test_tutorial/test_sql_databases/test_tutorial002.py - # dev-python/fastapi-cli (missing, test and optfeature) - tests/test_fastapi_cli.py - # dev-python/pwdlib (in guru, test dep only) - tests/test_tutorial/test_security/test_tutorial004.py - tests/test_tutorial/test_security/test_tutorial005.py - # Wants dev-python/multipart _just_ to complain that it's not the right multipart lib. - tests/test_multipart_installation.py - # scripts/tests use CliRunner.isolated_filesystem() removed in recent typer - scripts/tests - ) - local EPYTEST_DESELECT=( - # Requires investigation - missing ./image.png test file (?) - tests/test_tutorial/test_additional_responses/test_tutorial004.py::test_path_operation_img - - # Broken by brotli being available, also fragile to random ordering - tests/test_tutorial/test_header_param_models/test_tutorial001.py::test_header_param_model_invalid - tests/test_tutorial/test_header_param_models/test_tutorial003.py::test_header_param_model_invalid - tests/test_tutorial/test_header_param_models/test_tutorial003.py::test_header_param_model_no_underscore - # opentelemetry-* - tests/test_telemetry/test_background.py::test_background_task_integrations - tests/test_telemetry/test_data.py::test_request_objects_are_not_exported - tests/test_telemetry/test_environment_integrations.py - tests/test_telemetry/test_integrations.py::test_current_contrib - tests/test_telemetry/test_integrations.py::test_current_logfire - tests/test_telemetry/test_integrations.py::test_current_sentry - tests/test_telemetry/test_integrations.py::test_inactive_sentry_does_not_disable_native - tests/test_telemetry/test_integrations.py::test_logfire_global_provider_without_fastapi_instrumentor - tests/test_telemetry/test_native_integrations.py - tests/test_telemetry/test_runtime.py::test_concurrent_provider_owner_wins - tests/test_telemetry/test_runtime.py::test_environment_export_initializes_after_fork - tests/test_telemetry/test_runtime.py::test_failed_registration_closes_new_exporter - tests/test_telemetry/test_runtime.py::test_real_otlp_exception_export_without_traces_or_metrics - tests/test_telemetry/test_runtime.py::test_real_otlp_export_and_repeated_lifespans - tests/test_telemetry/test_runtime.py::test_registration_provider_prefers_public_metric_reader - tests/test_telemetry/test_runtime.py::test_unsupported_provider_warns_without_preventing_startup - ) - epytest -} - -pkg_postinst() { - # not part of any upstream extra - optfeature "alternative JSON library" "dev-python/ujson" # orjson, too but it's deprecated - - # pyproject.toml:project.optional-dependencies.standard - # Following optfeatures should be exposed, but missing deps - # optfeature "fastAPI CLI" "dev-python/fastapi-cli" - missing - depends on this package! - # optfeature "compressed file support" "dev-python/fastar" - missing - # optfeature "pydantic extra types support" "dev-python/pydantic-extra-types" - in guru - optfeature_header "standard extras" - optfeature "ASGI server support" "dev-python/uvicorn" - optfeature "email validation support" "dev-python/email-validator" - optfeature "TestClient for testing FastAPI applications" "dev-python/httpx" - optfeature "templating support" "dev-python/jinja2" - optfeature "multipart form data support" "dev-python/python-multipart" - optfeature "settings management support" "dev-python/pydantic-settings" - - # pyproject.toml:project.optional-dependencies.all - includes all the above plus: - optfeature_header "all extras" - optfeature "session middleware support" "dev-python/itsdangerous" - optfeature "YAML support" "dev-python/pyyaml" -} diff --git a/dev-python/fastsimdjson/Manifest b/dev-python/fastsimdjson/Manifest new file mode 100644 index 000000000000..1743c3b34bb3 --- /dev/null +++ b/dev-python/fastsimdjson/Manifest @@ -0,0 +1,2 @@ +DIST fastsimdjson-0.8.0.tar.gz 3171735 BLAKE2B 8e7ec750b854797c766c46c5c76e50f828bba31cd9eae53d6ba1e4bb82d588c46cd78b5f7aaf05a60d8e77818bef6a6eb526419df526cfa6b60ef6a2515e5cd7 SHA512 cf5a5c92cb8d1be049a261225632c4f01f9bd5198b4c1eb4faebb2dbf368100614e0348d1435cd4d51b0ab1bd2140bdf71f06bcb45068485c0f7c1fac8fef433 +DIST simdjson-data-351949906abde446f0314bf79606fb5d884f5be7.tar.gz 6635608 BLAKE2B 07f96c6b1bfea55a247eb7361bd4c068cb49e06f2cb1f3853c107173025c4cd543b20a5b7a3dcfa1e4462aaca8278a1cff9656f54319da08e221bc38f98e5a9e SHA512 7db557d374b9ce98077b7a9e1265ae66f9a607f0f283f662a9f184147f081727df68c0eb4889ebc8aca609ec62b348753445e553087e6520879a23e268caafba diff --git a/dev-python/fastsimdjson/fastsimdjson-0.8.0.ebuild b/dev-python/fastsimdjson/fastsimdjson-0.8.0.ebuild new file mode 100644 index 000000000000..fc60e3555519 --- /dev/null +++ b/dev-python/fastsimdjson/fastsimdjson-0.8.0.ebuild @@ -0,0 +1,59 @@ +# Copyright 2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) +DISTUTILS_EXT=1 + +inherit distutils-r1 pypi + +DESCRIPTION="fast JSON in Python" +HOMEPAGE=" + https://pypi.org/project/fastsimdjson/ + https://github.com/simdjson/fastpysimdjson +" + +SIMDJSON_DATA_HASH="351949906abde446f0314bf79606fb5d884f5be7" +SRC_URI+=" + test? ( + https://github.com/simdjson/simdjson-data/archive/${SIMDJSON_DATA_HASH}.tar.gz + -> simdjson-data-${SIMDJSON_DATA_HASH}.tar.gz + ) +" + +LICENSE="Apache-2.0 MIT" +SLOT="0" +KEYWORDS="~amd64" + +RDEPEND=" + >=dev-libs/simdjson-5.0.2:=[nan] + >=dev-cpp/simdutf-9.2:= + dev-libs/zmij:= +" +DEPEND="${RDEPEND}" +BDEPEND=" + dev-python/wheel[${PYTHON_USEDEP}] +" +# there is an optional test dep on dev-python/orjson, left that out since it's marked as deprecated + +PATCHES=( + "${FILESDIR}/fastsimdjson-0.8.0-unbundle.patch" +) + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_prepare_all() { + # remove bundled deps + rm -rf vendor || die + + distutils-r1_python_prepare_all +} + +python_test() { + ln -sfn "${WORKDIR}/simdjson-data-${SIMDJSON_DATA_HASH}" "simdjson-data" || die + + distutils-r1_python_test +} diff --git a/dev-python/fastsimdjson/files/fastsimdjson-0.8.0-unbundle.patch b/dev-python/fastsimdjson/files/fastsimdjson-0.8.0-unbundle.patch new file mode 100644 index 000000000000..cd1ad24cdf80 --- /dev/null +++ b/dev-python/fastsimdjson/files/fastsimdjson-0.8.0-unbundle.patch @@ -0,0 +1,54 @@ +diff --git a/setup.py b/setup.py +index 5b96127..1accfc0 100644 +--- a/setup.py ++++ b/setup.py +@@ -10,11 +10,11 @@ DEFINES = [("NDEBUG", None), ("SIMDJSON_ENABLE_NAN_INF", "1")] + ext = Extension( + "fastsimdjson", + # src/fastsimdjson.cpp includes vendor/simdjson.cpp (a unity build). +- sources=["src/fastsimdjson.cpp", "vendor/simdutf.cpp"], +- depends=["vendor/simdjson.cpp", "vendor/simdjson.h", "vendor/simdutf.h", +- "vendor/zmij.h", "vendor/zmij.cc"], +- include_dirs=["vendor"], ++ sources=["src/fastsimdjson.cpp"], ++ depends=[], ++ include_dirs=[], + language="c++", ++ libraries=["simdjson", "simdutf", "zmij"], + define_macros=DEFINES, + ) + +@@ -23,15 +23,8 @@ class BuildExt(build_ext): + def build_extensions(self): + msvc = self.compiler.compiler_type == "msvc" + args = ["/std:c++17", "/O2", "/EHsc", "/utf-8"] if msvc else ["-std=c++17", "-O3"] +- # zmij (float formatting) is compiled as C++14: some compilers reject +- # its constant tables in C++17 mode. +- zmij_args = ["/std:c++14", "/O2", "/EHsc"] if msvc else ["-std=c++14", "-O3"] +- zmij = self.compiler.compile([os.path.join("vendor", "zmij.cc")], +- output_dir=self.build_temp, include_dirs=["vendor"], +- macros=[("NDEBUG", None)], extra_postargs=zmij_args) + for e in self.extensions: + e.extra_compile_args = args +- e.extra_objects = list(zmij) + super().build_extensions() + + +diff --git a/src/fastsimdjson.cpp b/src/fastsimdjson.cpp +index f7fcf2b..c273e26 100644 +--- a/src/fastsimdjson.cpp ++++ b/src/fastsimdjson.cpp +@@ -30,10 +30,9 @@ + + // simdjson.cpp is compiled here (a unity build) so that dumps can call its + // float-to-decimal routine, dtoa_impl::dragonbox, directly. +-#include "simdjson.h" +-#include "simdjson.cpp" +-#include "simdutf.h" +-#include "zmij.h" // shortest float digits for dumps and dumpb (vendor/zmij.cc) ++#include <simdjson.h> ++#include <simdutf.h> ++#include <zmij.h> // shortest float digits for dumps and dumpb (vendor/zmij.cc) + + #ifdef _MSC_VER + #include <intrin.h> diff --git a/dev-python/fastsimdjson/metadata.xml b/dev-python/fastsimdjson/metadata.xml new file mode 100644 index 000000000000..0ba9a7d3033b --- /dev/null +++ b/dev-python/fastsimdjson/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://srcux.com/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>python@gentoo.org</email> + </maintainer> + <maintainer type="person"> + <email>chutzpah@gentoo.org</email> + <name>Patrick McLean</name> + </maintainer> + <origin>srcux</origin> +</pkgmetadata> diff --git a/dev-python/filelock/Manifest b/dev-python/filelock/Manifest index cb6a9b1b910a..688079c36645 100644 --- a/dev-python/filelock/Manifest +++ b/dev-python/filelock/Manifest @@ -22,3 +22,5 @@ DIST filelock-4.1.0.tar.gz 561277 BLAKE2B 4e8a7cc38da18ca61323a0c6fe6a733ed56843 DIST filelock-4.1.0.tar.gz.provenance 9815 BLAKE2B edeae542d4fe299d180e674402fa07da3432893b1ec757267fea6a0b0589a18a03ed4de3180e2be71ae726c46d1163b49d51a7a437401bbc5269247a585fb4f0 SHA512 b96c082948fba515e3d14d0d14e90954b26da26da1235d5d09c858dac10e174f38c3959c8c2c843a9050b21fb1582fdaecd2faab8c9c88af4ef60839c670b4de DIST filelock-4.1.1.tar.gz 563430 BLAKE2B 6fc4121e54e9ace488526aae23fff5640a5999fa61d33805f7ce0c051426fa9bd5033ecfa376d7ab58cbe44b709d2f16c1a5953af7881394e7077cb799bb0ac9 SHA512 09744b4b68a124f358bfacd938034aab7ff8c7ff66c12a1a0aba3966c5534b473d83945ef85c6cd74811a702bf84e0336cc41e7e4d831bf767e9a50ed9ab3fa1 DIST filelock-4.1.1.tar.gz.provenance 9627 BLAKE2B ccd2e9cf36f325dcc1e321dde825f9290e9d007bb7a1db9d872ab6ae40ff351a557f1debdcf655a4baef8be1aebe7912c34e2f78320490a636da7ba49d104f0b SHA512 e4bc59fbf1426c90868607ed7d4ab5b000438a6185ac5eec332cf07a45950d8ae4665b977486ffc0e3ee3530559183e652cf6227285fdb30fee4f10725691cc8 +DIST filelock-4.2.0.tar.gz 569667 BLAKE2B 5c5d8f41206453a9a2089ee86f7f4503e1b3b83a8ef76b174d769c3f736bc561c247595ffe41b31f1edd0cf074c5e8155efa14b79657f1721c5cd82d757a9af5 SHA512 96e9dc73d938c8ee9f357dd92d7999ebbb06c4f07aed08833ec9eec686fc37d961f121d4f4369c0b6e80e16ab31a44cd3ca235934ddaeefdac4ac07fb792fcd2 +DIST filelock-4.2.0.tar.gz.provenance 9768 BLAKE2B 9a17c307d1bce1df7e12340e11bbd93d3e67aba29fce3e920378ef816298b7fe18466743635ab1c5839beebf308766b10b87603a4856b7d87cc8fb27f4c0762c SHA512 e6847b3e7b2021f06c500113033b8419d9c0d3d5405003a93ed80ae9c1088c7fdf8d38df504b5d63bdac398daee1be56c8c5ee21d79f5a41f4a3d37ce4dbee8a diff --git a/dev-python/filelock/filelock-4.2.0.ebuild b/dev-python/filelock/filelock-4.2.0.ebuild new file mode 100644 index 000000000000..51d73c002e05 --- /dev/null +++ b/dev-python/filelock/filelock-4.2.0.ebuild @@ -0,0 +1,38 @@ +# Copyright 2018-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYPI_VERIFY_REPO=https://github.com/tox-dev/filelock +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A platform independent file lock for Python" +HOMEPAGE=" + https://github.com/tox-dev/filelock/ + https://pypi.org/project/filelock/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + +BDEPEND=" + dev-python/hatch-vcs[${PYTHON_USEDEP}] + test? ( + dev-python/virtualenv[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-{asyncio,mock,timeout} ) +EPYTEST_RERUNS=5 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +EPYTEST_DESELECT=( + # TODO + tests/soft_rw/test_soft_rw_async.py::test_async_leaked_singleton_is_closed_on_teardown + tests/soft_rw/test_soft_rw_sync.py::test_leaked_acquired_singleton_is_closed_on_teardown +) diff --git a/dev-python/fonttools/Manifest b/dev-python/fonttools/Manifest index 05d1026d9b14..987c754daceb 100644 --- a/dev-python/fonttools/Manifest +++ b/dev-python/fonttools/Manifest @@ -1,4 +1,3 @@ -DIST fonttools-4.63.0.gh.tar.gz 4031830 BLAKE2B 8cdb1d9018a44898fd792ee538c88443ecda34d7c896d280578d96b80c2f80064ad057b1e4bcb4a865dd706eb3605e86768eb141317fdcf5947a99fc873a7421 SHA512 a2d8df4fd11f36c45e838953d6c8bf1e25999382422d5fc3fe3418c985c06f30b52073f738278cb2a7b19da6e227e5ae709f016661a17e7ae96023b7a762365e DIST fonttools-4.64.0.gh.tar.gz 4106541 BLAKE2B 5bdddac2b811e47567948a48bef0de7c74510b3334bf0710d08986c41f2c9b4d41a16fbc2266ed55923197602b2ecc8525ed0ebfd4636518eb64ee13db4fee9b SHA512 1cf3d8ab10931e6eca3f54e2d365a946413d90e2a8fe0405252db14a51e2908c109c6a65f7b0fb5fabaeb0e30eb27b5b737bf2d1b75a3137806bc88f140a0faa DIST fonttools-4.65.0.gh.tar.gz 4113728 BLAKE2B a8315b819ae12417b6757956d237fa9fffb4a2e75dc893c00be0dafe529880e161070f9496594b3414a0ef0932fe84092d1910ca2f292acc6cf9f1ba07506347 SHA512 b6066e438e5237ff18e9b44343d3533ccd4468ac4e685b066a1f5da035161c082468c025ff79832eec534e29a8bbac7cc558301b13abdb763c61f91d0ceecafa DIST fonttools-4.66.0.gh.tar.gz 4129212 BLAKE2B d35d913e0dda168b623cff44a7fa430b5d5922e5ffdca3c0b14f7882780c26412b0e001dd2d277e806f5202fac1deb05bda12291343de45a5ac92482beb8e1db SHA512 01db954f6f895d941dbae3cbf900683e737ec8b4f46fc2b7158cdf9fab2fb350b9121724088521b5d790d2e5ec0e70939ae1757d1612c87616ecbfec2b9ae0b9 diff --git a/dev-python/fonttools/files/fonttools-4.63.0-py315.patch b/dev-python/fonttools/files/fonttools-4.63.0-py315.patch deleted file mode 100644 index 24db71a60f96..000000000000 --- a/dev-python/fonttools/files/fonttools-4.63.0-py315.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 731282b6a7335b425c37a02ce865b9189ad6ca63 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Sat, 11 Jul 2026 19:52:51 +0200 -Subject: [PATCH] Replace private `glob.glob1()` with `glob.glob(..., - root_dir=...)` -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Replace the use of undocumented `glob.glob1()` function that was removed -in Python 3.15 with its equivalent `glob.glob(..., root_dir=...)`. This -fixes compatibility with Python 3.15 (where the function is removed), -and works all the way down to Python 3.10. - -See: https://docs.python.org/3.13/whatsnew/3.13.html#new-deprecations - -Signed-off-by: Michał Górny <mgorny@gentoo.org> ---- - MetaTools/buildTableList.py | 2 +- - MetaTools/check_table_coverage.py | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/MetaTools/buildTableList.py b/MetaTools/buildTableList.py -index b344f330f..9bdd95642 100755 ---- a/MetaTools/buildTableList.py -+++ b/MetaTools/buildTableList.py -@@ -12,7 +12,7 @@ fontToolsDir = os.path.normpath(fontToolsDir) - tablesDir = os.path.join(fontToolsDir, "Lib", "fontTools", "ttLib", "tables") - docFile = os.path.join(fontToolsDir, "Doc/source/ttx.rst") - --names = glob.glob1(tablesDir, "*.py") -+names = glob.glob("*.py", root_dir=tablesDir) - - modules = [] - tables = [] -diff --git a/MetaTools/check_table_coverage.py b/MetaTools/check_table_coverage.py -index 5764daddb..19ec986eb 100644 ---- a/MetaTools/check_table_coverage.py -+++ b/MetaTools/check_table_coverage.py -@@ -141,7 +141,7 @@ KNOWN_GAPS: dict[str, set[str]] = { - def get_table_modules() -> list[tuple[str, str]]: - """Return sorted list of (module_name, tag_raw) for all table .py files.""" - modules = [] -- for filename in glob.glob1(TABLES_DIR, "*.py"): -+ for filename in glob.glob("*.py", root_dir=TABLES_DIR): - name = filename[:-3] - try: - tag = identifierToTag(name) # may contain trailing spaces, e.g. "cvt " diff --git a/dev-python/fonttools/fonttools-4.63.0-r1.ebuild b/dev-python/fonttools/fonttools-4.63.0-r1.ebuild deleted file mode 100644 index 091fbebb659e..000000000000 --- a/dev-python/fonttools/fonttools-4.63.0-r1.ebuild +++ /dev/null @@ -1,67 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_EXT=1 -DISTUTILS_USE_PEP517=setuptools -PYTHON_COMPAT=( python3_{13..14} ) -PYTHON_REQ_USE="xml(+)" - -inherit distutils-r1 virtualx - -DESCRIPTION="Library for manipulating TrueType, OpenType, AFM and Type1 fonts" -HOMEPAGE=" - https://github.com/fonttools/fonttools/ - https://pypi.org/project/fonttools/ -" -SRC_URI=" - https://github.com/fonttools/fonttools/archive/${PV}.tar.gz - -> ${P}.gh.tar.gz -" - -LICENSE="BSD" -SLOT="0" -KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86" -IUSE="+native-extensions" - -BDEPEND=" - native-extensions? ( - $(python_gen_cond_dep ' - dev-python/cython[${PYTHON_USEDEP}] - ' 'python*') - ) - test? ( - dev-python/brotlicffi[${PYTHON_USEDEP}] - dev-python/munkres[${PYTHON_USEDEP}] - app-arch/zopfli - ) -" - -EPYTEST_PLUGINS=( pytest-rerunfailures ) -# woff2 tests are extremely flaky -EPYTEST_RERUNS=20 -EPYTEST_XDIST=1 -distutils_enable_tests pytest - -PATCHES=( - # https://github.com/fonttools/fonttools/pull/4125 - "${FILESDIR}/${P}-py315.patch" -) - -python_compile() { - local -x FONTTOOLS_WITH_CYTHON=$(usex native-extensions) - [[ ${EPYTHON} == pypy3 ]] && FONTTOOLS_WITH_CYTHON=0 - distutils-r1_python_compile -} - -src_test() { - # virtualx used when matplotlib is installed causing plot module tests to run - virtx distutils-r1_src_test -} - -python_test() { - # nonfatal for virtx - nonfatal epytest Tests fontTools || - die -n "Tests failed with ${EPYTHON}" -} diff --git a/dev-python/gitpython/Manifest b/dev-python/gitpython/Manifest index 74949600efa1..2715e2e2fa94 100644 --- a/dev-python/gitpython/Manifest +++ b/dev-python/gitpython/Manifest @@ -4,9 +4,11 @@ DIST GitPython-3.1.60.gitbundle 13114387 BLAKE2B 6515764c855a8c3207c98fbf7bf1007 DIST GitPython-3.1.61.gitbundle 13122659 BLAKE2B f520b694d6f796523d20c5fcf80d1b4a8e8ba544f371aeb71edec51302500b1203876bf6faf5fdb1ff24abb3f8b9cd720f9e0d240df79b6d518f53d89dd413c9 SHA512 7b83e5dd1dff9475e7017eb2d82694f7a2f6039780e97e7cc8fbc3682ff7971ab6a03967571b2840ad37ebad988f8ab1db958871adf4fab6610dffe25890a280 DIST GitPython-3.1.62.gitbundle 13146787 BLAKE2B 005cf46eefb07a2d98500cc8566ded068446eb391b80cbc884d60ddd12916c8ae3c5917fbdfd6c05315f0b06f4b078a3c5100e45245d624469b4b98d8cc30c81 SHA512 09a57ac6df48396161df439338b95b86b0d8e36ba04139d9f18624537951e6ecbea466bcd8a4f3549a758f0687044b08ecff202a3da8175c98786c6e39397ca3 DIST GitPython-3.2.0.gitbundle 13785675 BLAKE2B 170fc7429f6ff18009b9a79edd8bbffff89af9cd996fd989344ef2f40eaa1f2f8f3779755503e46d80e5afaa67f7ddcba4be51557438341b27d1a435d9f9fc26 SHA512 5c8c1d8c87b0e68aa18119a981565504c10b7fa774e26c4665e59a63701b28b06bd1ba2312640ed0ca42e367d356a0e5b63c480ba5b78d8ea1e90673eb7f9d39 +DIST GitPython-3.2.1.gitbundle 14158222 BLAKE2B 35429b478d5dc51d0920bbb160b5ea5d3f2976dde4d90163eef0aa61d946645ddf1835c9341104a410bb2fe0be05d1037a82b61ae6253415883bc306a7f154a3 SHA512 365387eb1613364967819255d3a912a06dd5afc319bd4430df6e4ea1e9a98c999a2f6cff3db17ff3ff4f452d206f6aac70986d00f9e326f26e7de03664597b39 DIST gitpython-3.1.58.tar.gz 228498 BLAKE2B fcd5b832587b82e2fb51d1a6087c02f294b84418de0c413d5eaa828aff4d2b87e8ead4486b274352d5c9ca09633e63a1c41a232ebf164c671d45df1bd9dd2bd3 SHA512 779e55e5a977b37f6bf46c5b8358e61e07f590d089b27bb402e37fb0b78d35f4a1fae1199274ecb5f7b057f2707057003d946cdc7557e7d0e574d1adb046cb70 DIST gitpython-3.1.59.tar.gz 230445 BLAKE2B ea1a8488cde9d1136f71f34c23224b5f02a3a5581a89dc1fa3a8355e3147d5ae01d533c1b032404471a691b3b9dba26fc55d7517bbf775b30374398b3a57a87b SHA512 ef810ace84c76200b6820818de0b8b3f3e8070ee48f2444bf60f6b24c7eba7710527e616ee3cc306ccb132db893b704033b238a5e2de9d9d186559ebfffcbfd3 DIST gitpython-3.1.60.tar.gz 230793 BLAKE2B d92475ddcd93bac6625a7c8d57d2cf9a1ecf6dd5285c2907d31fe9b4c7d8a4ed2429828f484f2bff5995aa18a9983fd8469df75583d7ad3c17f396e63adc40c1 SHA512 12350f87bed859bc06d40c8d400e40b814f00a9858a97a9a33d719b414292a55976cf9248ea86bd322bbb9f47a49af76a60c17756aaa932e0f713225363ae16a DIST gitpython-3.1.61.tar.gz 231680 BLAKE2B ca6fcd928af08eac9ffecca3a718205d43d982950eccf5cf98fdd47a5344b0fb40e3c08a9205b86e330a5b052228c6126e4a0678c6da357e8ea4125ceed27b2b SHA512 0ba61c823382c384a3da0549f0a2a2e06335d91a1204bbe3364508d864dcb6f4ad0194dfe56c9b263ce83c58f8284884558910175b1a8bdc8416c1fda2f01711 DIST gitpython-3.1.62.tar.gz 231728 BLAKE2B 6b7474b32eb6668f068a4c626cb8652d51225eb4780db3346ca01c1bed438428b902feced1fce22d2d5e31f635e39777dcec7b3c9296438cb213b2e50da0f74b SHA512 47545ecf764f16cfc136852f58426c0ee9388fdd831e64b7677a8fdbb1ed2a5fc561f02c0bb6af587d8825b57fc784db6576fc8d26ca2b196d68bf7babb8837b DIST gitpython-3.2.0.tar.gz 238091 BLAKE2B 9497f8e2b87992a549ee58647c6238d941803afb05a2651fd3f2179e3d599b4639404dde2ff5264b36b54c39eea1174a0128143e0149d6b0807e3e4df77f57b3 SHA512 83d463de8f22f25d8591e72bc3700a417580fd3016a074d84d2c4e21dd0de91977d9201ff27a6a5eb8bf602388a4eea52e07f4108a01f35f2c60bef4706bda87 +DIST gitpython-3.2.1.tar.gz 241688 BLAKE2B d196d3a0480f98c841588a638316ab6a00e71b16ca07665e121a4d07f8c532288db47ab5ec537a16d2b1a20351a944df351918cbd578f1d8a8ead359d09c217a SHA512 dba4203e7d6a91c4e0b5d2c7b3e2ad988214954c0a75f827adb7b2100f3f5a81ec4cf72ac8ad2cc81c45f040f3447e6e7a47ef893cd4348e75d91837adb044ab diff --git a/dev-python/gitpython/gitpython-3.2.1.ebuild b/dev-python/gitpython/gitpython-3.2.1.ebuild new file mode 100644 index 000000000000..ebe35bd5a941 --- /dev/null +++ b/dev-python/gitpython/gitpython-3.2.1.ebuild @@ -0,0 +1,74 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYPI_PN=GitPython +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 pypi + +TEST_P=GitPython-${PV} +GITDB_P=gitdb-4.0.12 +SMMAP_P=smmap-5.0.1 + +DESCRIPTION="Library used to interact with Git repositories" +HOMEPAGE=" + https://github.com/gitpython-developers/GitPython/ + https://pypi.org/project/GitPython/ +" +SRC_URI+=" + test? ( + https://distfiles.gentoo.org/pub/proj/python/GitPython/${TEST_P}.gitbundle + ) +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-vcs/git + >=dev-python/gitdb-4.0.1[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + >=dev-python/ddt-1.1.1[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( pytest-mock ) +distutils_enable_tests pytest + +src_test() { + git config --global user.email "travis@ci.com" || die + git config --global user.name "Travis Runner" || die + + git clone "${DISTDIR}/${TEST_P}.gitbundle" "${T}"/test || die + + cd "${T}"/test || die + git rev-parse HEAD > .git/refs/remotes/origin/master || die + TRAVIS=1 ./init-tests-after-clone.sh || die + cat test/fixtures/.gitconfig >> ~/.gitconfig || die + + distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # performance tests are unreliable by design + test/performance + # unimportant and problematic + test/test_installation.py + # Internet + test/test_quick_doc.py::QuickDoc::test_cloned_repo_object + # TODO + test/test_submodule.py::TestSubmodule::test_base_rw + test/test_submodule.py::TestSubmodule::test_root_module + test/test_remote.py::TestTimeouts::test_timeout_funcs + ) + + epytest -o addopts= test +} diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest index 6e97c14189b2..8cdf716cbbdf 100644 --- a/dev-python/hypothesis/Manifest +++ b/dev-python/hypothesis/Manifest @@ -10,6 +10,7 @@ DIST hypothesis-6.168.4.gh.tar.gz 9712927 BLAKE2B 7eb0492041769b05668cbdc847c27d DIST hypothesis-6.168.5.gh.tar.gz 9713032 BLAKE2B a6c90a5f65a551f6378e5d98b604f401fb795ff7f9c6a6c94d2789e69b4fc8435dce1338d807f1a85392335c8219956aa7af56bbf735e3499aba3587ae461c25 SHA512 2ccf3bcb0a2cbfb3073003e6c6df56c02a4745f1b4b94627732d1977c50642abf2ca41ad7808c218aa75d4dceff965b6c5de4d0dab836ddb55e82f0b32fe11fd DIST hypothesis-6.169.0.gh.tar.gz 9710358 BLAKE2B fb65497c921687a5e1a3b551528b38c2c96d1c1e2280770bf279d46005ae2baae8e9adb1d84f5cf7e17ea57972c96d57699f64140e94261b12fb6b473ac2260a SHA512 c42efd6d1c5345281babccca909d18cebb65c74a0c3aa7c03e7d6944f9004e752fd2e6f4f29cb581ea38577f40479387835627fbeeac3bf972014891665009f0 DIST hypothesis-6.169.1.gh.tar.gz 9710711 BLAKE2B 8abedcdcba8a1d32e424a951047450be5ee33d8fa4fd8cd66e152c89abf60d7fb39fc0573e5778bf09442af2e30a648e4621208c7fe285a8fed670b9c37e15c2 SHA512 f1da6e1709e8e5eccf337cfeece87a197b402d62175a869b1ba4d1e1b06429d438cdf8b9ef8dc99c4928a0f24f8a7991d52272dc748bd2ccfe8655aae62556b0 +DIST hypothesis-6.169.3.gh.tar.gz 9711107 BLAKE2B 973dc2650033c5b31dd2b6e792353609ba51c362e0cd69e312a1731400ba83fdc2babe2be2c82c2fedc998036d15ee245c2f96a8cc4280c646da3b1268b5e46d SHA512 bee8c5489645835eb8371dd6e242ce51c07d937fe06138235637ebc57fc29b9b40272b45e92ce16b0fc43a1992510490189bd55bd635fe1270b3cb34d65069ba DIST libc-0.2.186.crate 821883 BLAKE2B ebe7aac5f8937a8064c64a0d4dc72e5fc794080e09b96c6d245bdec0fd9a19d49ab38e25306e22e47564764cf5dcde45855237cffc70230a143eca2626bd5c3c SHA512 6a58e671ec6811dff9a0d7d4db8f37d38bcbca9efff20dad4706190e5cdb77b426567754bcf0ef0f2d0c31d6506401f724f3ca500b9bed57bb8605b1141ed690 DIST once_cell-1.21.4.crate 35010 BLAKE2B 9117ed1d478e626b7b7be2e3ff8b68a382b051112c7ca4425367bdae86977671f8b5c576131c82fb437740b6d98b72501f718f4172d39781decac2385e8fbd4d SHA512 af67669b0107f44268ba74c355200cb2ed1aab235a6989a8bc54323eb2c9a45677010f8672e7790edadd4c981e939436e0c3a099d33c06dce9c14fd5ede86155 DIST portable-atomic-1.13.1.crate 197001 BLAKE2B 6d0898c2a537a9bf204b7749cca5f5fddf280772b56eb7ce8fdd9cf7d71561137b26ef89f415c40277a1c89981333eef78e5bb4624515a294ba28fdaeb4c70ea SHA512 2a1b31ac9814af884640b3398ab824a9795c72d260527a0966b193113808cfbb3345d50cd1beaebb45863437c3d06c8706d34b26efecceefc649319a4bc274a3 diff --git a/dev-python/hypothesis/hypothesis-6.169.3.ebuild b/dev-python/hypothesis/hypothesis-6.169.3.ebuild new file mode 100644 index 000000000000..d6e8b8e38d1c --- /dev/null +++ b/dev-python/hypothesis/hypothesis-6.169.3.ebuild @@ -0,0 +1,143 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=maturin +CLI_COMPAT=( python3_{12..15} ) +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="threads(+),sqlite" + +RUST_MIN_VER="1.91.0" +CRATES=" + cfg-if@1.0.4 + crunchy@0.2.4 + getrandom@0.3.4 + half@2.7.1 + heck@0.5.0 + libc@0.2.186 + once_cell@1.21.4 + portable-atomic@1.13.1 + ppv-lite86@0.2.21 + proc-macro2@1.0.106 + pyo3-build-config@0.29.3 + pyo3-ffi@0.29.3 + pyo3-macros-backend@0.29.3 + pyo3-macros@0.29.3 + pyo3@0.29.3 + quote@1.0.46 + r-efi@5.3.0 + rand@0.9.4 + rand_chacha@0.9.0 + rand_core@0.9.5 + syn@2.0.118 + target-lexicon@0.13.5 + unicode-ident@1.0.24 + wasip2@1.0.4+wasi-0.2.12 + wit-bindgen@0.57.1 + zerocopy-derive@0.8.53 + zerocopy@0.8.53 +" + +inherit cargo distutils-r1 optfeature + +DESCRIPTION="A library for property based testing" +HOMEPAGE=" + https://github.com/HypothesisWorks/hypothesis/ + https://pypi.org/project/hypothesis/ +" +SRC_URI=" + https://github.com/HypothesisWorks/hypothesis/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz + ${CARGO_CRATE_URIS} +" +S="${WORKDIR}/${P}/hypothesis" + +LICENSE="MPL-2.0" +# Dependent crate licenses +LICENSE+=" Apache-2.0-with-LLVM-exceptions MIT Unicode-3.0" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="cli" + +RDEPEND=" + >=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}] + cli? ( + $(python_gen_cond_dep ' + dev-python/black[${PYTHON_USEDEP}] + dev-python/click[${PYTHON_USEDEP}] + ' "${CLI_COMPAT[@]}") + ) +" +BDEPEND=" + test? ( + >=dev-python/attrs-22.2.0[${PYTHON_USEDEP}] + dev-python/pexpect[${PYTHON_USEDEP}] + >=dev-python/pytest-8[${PYTHON_USEDEP}] + ) +" +PDEPEND=" + dev-python/hypothesis-gentoo[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGIN_LOAD_VIA_ENV=1 +EPYTEST_PLUGINS=( "${PN}" pytest-xdist ) +EPYTEST_RERUNS=5 +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +QA_PREBUILT="usr/lib/python.*/site-packages/hypothesis/_native.*" + +python_test() { + # NB: paths need to be relative to pytest.ini, i.e. start with hypothesis/ + local EPYTEST_DESELECT=( + # broken somehow (xdist?) + 'hypothesis/tests/pytest/test_constant_collection_timing.py::test_constant_collection_timing[True]' + ) + local EPYTEST_IGNORE=( + # require syrupy + tests/cover/test_custom_reprs.py + ) + + case ${EPYTHON} in + python3.15*) + EPYTEST_DESELECT+=( + 'hypothesis/tests/cover/test_lookup.py::test_resolves_forwardrefs_to_builtin_types[sentinel]' + 'hypothesis/tests/cover/test_lookup.py::test_resolves_builtin_types[sentinel]' + 'hypothesis/tests/cover/test_lambda_formatting.py::test_modifying_lambda_source_code_returns_unknown[False]' + ) + ;; + esac + + local -x HYPOTHESIS_NO_PLUGINS=1 + epytest tests/{cover,pytest,quality} +} + +src_install() { + local HAD_CLI= + + distutils-r1_src_install + + if [[ ! ${HAD_CLI} ]]; then + rm -r "${ED}/usr/bin" || die + fi +} + +python_install() { + distutils-r1_python_install + if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then + HAD_CLI=1 + else + rm -r "${D}$(python_get_scriptdir)" || die + fi +} + +pkg_postinst() { + optfeature "datetime support" dev-python/pytz + optfeature "dateutil support" dev-python/python-dateutil + optfeature "numpy support" dev-python/numpy + optfeature "django support" dev-python/django dev-python/pytz + optfeature "pandas support" dev-python/pandas + optfeature "pytest support" dev-python/pytest +} diff --git a/dev-python/more-itertools/Manifest b/dev-python/more-itertools/Manifest index d35a5a2a6880..820295059a1e 100644 --- a/dev-python/more-itertools/Manifest +++ b/dev-python/more-itertools/Manifest @@ -1 +1,2 @@ DIST more_itertools-11.1.0.tar.gz 145772 BLAKE2B 365972289c4cef7587a2bbf388862d330d44e874c7e3119feab492e67bea1539342cc1a8a6b1d34b6a56289a71cf7e1ac390268f138e855805ca1edb91dd6f3b SHA512 462085d7b103e64af94017c5886be4198eaee9abdf60ac3cb1c7a733571e1d2f6841c93d3263f74324c929c99f42420dea695269a6c066fe60815344009755e3 +DIST more_itertools-11.2.1.tar.gz 154133 BLAKE2B d1fec66483a5754b90d60ce623f3baee33995ae7102639c75f2f34c57c1a640757a8fd7241c593d904102cd4b6b57df7ce88cc446d28cd54b8bf7382331ec4ca SHA512 765f8efebc11e985d261f55d9ecd45c8b318a2de0e6e584b291d15f36e1e423119d90cde27d45c0c0f0330b3904afc7f2453f66f5c8d605fd44e234406027db3 diff --git a/dev-python/more-itertools/more-itertools-11.2.1.ebuild b/dev-python/more-itertools/more-itertools-11.2.1.ebuild new file mode 100644 index 000000000000..121e46a65f09 --- /dev/null +++ b/dev-python/more-itertools/more-itertools-11.2.1.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit-core +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="More routines for operating on iterables, beyond itertools" +HOMEPAGE=" + https://github.com/more-itertools/more-itertools/ + https://pypi.org/project/more-itertools/ +" + +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" + +distutils_enable_sphinx docs \ + dev-python/furo +distutils_enable_tests unittest diff --git a/dev-python/pbs-installer/Manifest b/dev-python/pbs-installer/Manifest index 721a919413fd..6165021d6a82 100644 --- a/dev-python/pbs-installer/Manifest +++ b/dev-python/pbs-installer/Manifest @@ -1,5 +1,7 @@ DIST pbs_installer-2026.10.1.tar.gz 81120 BLAKE2B f439ff09203b8b628184b587fdcb6e59c296406a22d6dc0d2b49eaab8d55f9621acef6e1d9b533a1be6fb417cf2d8a64d940fc57e4f681f256d4a907df41741c SHA512 2ee04905365d3cc627dd606a64ea4b9be96dc63508f9a86b2f7b944ab4cbb07a09f8336366a0780aecfd2cab90b66416ee01a6b9d7e72581ec7ec3ad0cd594cd DIST pbs_installer-2026.10.1.tar.gz.provenance 9959 BLAKE2B dbd0e4d6682ea9f692f7c372e1136cfffeaa5dca96c15d56f297359b24bc7fbc12ae54b97750febe8130cc92bb09d2b46054bd942c05ba4d7978d8114769c84f SHA512 f9a8af41b085d413989577c992be521c6237135811b6a2a83af04d1526188b9c4293087a246ef99d61548ec33b169bf5a9dca97b708a7284af8e9ea7e1b12272 +DIST pbs_installer-2026.10.13.tar.gz 82375 BLAKE2B a84a7e86b809cc2600b6ac5fd87f214519d3d866c01c421976b3496f6ec05139aeac4707c1b550d20146720211556a62168a7c7a21b8d38e9e95e770e913cceb SHA512 9fd739f02ee1617915670b88527333fdf0ad727640c1475cce60c1855b9065566b7d7fdebc141773f6c037c870950034e710a58e4a909d90a545611581ac1dca +DIST pbs_installer-2026.10.13.tar.gz.provenance 9835 BLAKE2B d7990b681753b6bb50fd3e06190d064636021b511e3c013d61a8a7d908d476a1329cdd188f91b9647bf2dd9db15bcb7e397d3364a52d9e18db0daa05ace28b16 SHA512 2b6355efcc9022e5a2275b3cb6fcc6d50d8a0d1db0bd4ad4d7696f577267fd71bb64cef4007acf6003227e7c5a487d8f028c69d7727b1269d672ef550a900c02 DIST pbs_installer-2026.10.3.tar.gz 81131 BLAKE2B cc8e52bc72ea442ba1854d9a1f9aeada361def24b145f5cc68885740f8472abf34e48619f780bc11bceb0131a6c1da0dae593df91d1777380554a3059547d23a SHA512 d05194ac0b36f0c510cbe90263bf7b5d4a8cfa7f55a170c128905cd291d026a64a757217a41b1a9c36aed51c353a32ed8c27cfda210f51686d603eee4c18a2fa DIST pbs_installer-2026.10.3.tar.gz.provenance 9994 BLAKE2B eb89d404d27042c7428187a46ddd036d6c4df7730e85519bc0e8fc8aeea2d30e3e34d396e0f5d37ad59a6c7899f9c244ede7da68e32f36a016af9e0f385f9c6e SHA512 4912cdd2730b36c2f015df898c2d230b3e0db2253e27177edf09f4f628146aef721e770b8d5da49a288f554d37e1633956bdfeb97b54d5cc76c47de63ac0cb28 DIST pbs_installer-2026.9.29.tar.gz 77902 BLAKE2B cf42ecc98a55c39a0a90cc82f8fa082b856cf15e74bca224627defa2113ad6b662d57bcf0dc1dcfb86a9cf8ae87555c2585c029e3260b8b55c4dba163c45bf07 SHA512 108c2d89e94ffaefd297ce372b8d3805f46f7555b53f95863e086b853f23832a342ae5271ecc712612e376687808b6ab8957731b8f317613ad34df8b46ed8998 diff --git a/dev-python/pbs-installer/pbs-installer-2026.10.13.ebuild b/dev-python/pbs-installer/pbs-installer-2026.10.13.ebuild new file mode 100644 index 000000000000..ad138f3a6f5d --- /dev/null +++ b/dev-python/pbs-installer/pbs-installer-2026.10.13.ebuild @@ -0,0 +1,33 @@ +# Copyright 2024-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=pdm-backend +PYPI_VERIFY_REPO=https://github.com/frostming/pbs-installer +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="Installer for Python Build Standalone" +HOMEPAGE=" + https://pypi.org/project/pbs-installer/ + https://github.com/frostming/pbs-installer/ +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +# httpx is needed to download builds +# zstandard is needed to install them +RDEPEND=" + $(python_gen_cond_dep ' + >=dev-python/backports-zstd-1.0.0[${PYTHON_USEDEP}] + ' 3.12 3.13) + <dev-python/httpx-1[${PYTHON_USEDEP}] + >=dev-python/httpx-0.27.0[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGINS=() +distutils_enable_tests import-check diff --git a/dev-python/pycryptodome/Manifest b/dev-python/pycryptodome/Manifest index 2847e9cd7434..cf2d4ffa0e46 100644 --- a/dev-python/pycryptodome/Manifest +++ b/dev-python/pycryptodome/Manifest @@ -1 +1,2 @@ DIST pycryptodome-3.24.1.gh.tar.gz 19739898 BLAKE2B 7db01c5bd78f14d61620272d6a15105e3c640b933263a4720d5d047c55a0bd57e984fc150f96469aa29b7947b0fb62dbbe3e199587d146b08f30af28d781600b SHA512 90df69c1f003d9a06391709e09d1cb3124053c4eb4a062cba01e6048c1fc07ba29db36b94dbafc6e5f7f6f173321b8e687358d8a3cca88921234e74f46c17c37 +DIST pycryptodome-4.0.0.gh.tar.gz 16296945 BLAKE2B e6380f4638013d528aeb45d9db1e5c6509de0301bb7bdde07dfb363d0bc833dea72edcb43cc0a1c4ce2b39ef6edf67287494c90d7f68fb0d6697ce1f77f7c3fa SHA512 536522d15b29646cdfbeae1d3d4d23261fe112392858809df117b71f3293af4b7705f9a8421a4ddd7dbf5a5df117852ce4bc506dbe30b241de0ded36c7ce6033 diff --git a/dev-python/pycryptodome/pycryptodome-4.0.0.ebuild b/dev-python/pycryptodome/pycryptodome-4.0.0.ebuild new file mode 100644 index 000000000000..23dee27e3bc1 --- /dev/null +++ b/dev-python/pycryptodome/pycryptodome-4.0.0.ebuild @@ -0,0 +1,48 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( python3_{13..14} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="A self-contained cryptographic library for Python" +HOMEPAGE=" + https://www.pycryptodome.org/ + https://github.com/Legrandin/pycryptodome/ + https://pypi.org/project/pycryptodome/ +" +SRC_URI=" + https://github.com/Legrandin/pycryptodome/archive/v${PV}.tar.gz + -> ${P}.gh.tar.gz +" + +LICENSE="BSD-2 Unlicense" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~arm64-macos ~x64-macos ~x64-solaris" + +DEPEND=" + dev-libs/gmp:= +" +BDEPEND=" + $(python_gen_cond_dep 'dev-python/cffi[${PYTHON_USEDEP}]' 'python*') +" +RDEPEND=" + ${DEPEND} + ${BDEPEND} +" + +python_test() { + local -x PYTHONPATH=${S}/test_vectors:${PYTHONPATH} + "${EPYTHON}" - <<-EOF || die + import sys + from Crypto import SelfTest + SelfTest.run(verbosity=2) + EOF + + # TODO: run cmake tests from src/test? +} diff --git a/dev-python/pydantic-settings/Manifest b/dev-python/pydantic-settings/Manifest index 1e0da2b8e275..dede56afe0f8 100644 --- a/dev-python/pydantic-settings/Manifest +++ b/dev-python/pydantic-settings/Manifest @@ -1,4 +1,4 @@ -DIST pydantic_settings-2.14.2.tar.gz 237700 BLAKE2B c38ade96748b87204ac147907261f121ee5a64236077095658b246f288c71d898ed917f03bf781a0571454b2b904cbe2ee325b86c20f0bc0c6c121c45bd7da08 SHA512 50ec63a4e70bf41f5cd4923c7d4802a9b94de2f50c364f0dec2f9fb2833ef7b22c13f5c5e39004b2b38231f56151b2c1d5f50d547737ec99578840d5e6932c5e -DIST pydantic_settings-2.14.2.tar.gz.provenance 9781 BLAKE2B 012ca046a4ddc054cc19429dae96f995875db49a89e6d6e49870e518d3dafba192d522c27e286aaaa963de366f66728ed8e545e5dc20df456e23cbb225061cac SHA512 5129115c17ea936dd82fd3a0f4cc5203af0739a5361087d8944c868aa3b2080e355954aeaa1025337a3e93245054c38a6671640a4f9409e20ac4a8cdc61ef0b6 DIST pydantic_settings-2.15.0.tar.gz 261253 BLAKE2B aa1157d8ec21ecde15039d47f42bb64da6af910f6693558c9e9ea9bca5ac13b43a38349c688c1ef43441734036d1d8b211646f6db9950ecb275ac212c51b7eac SHA512 0b8ee285df6d1b89429e2156ed5d462d43ea0aed9fe684cf4adb1d240c2174ea315f8937465f682351da18f93d2454cace52ccb4bce30f6fe4e6cf75069296db DIST pydantic_settings-2.15.0.tar.gz.provenance 10063 BLAKE2B c3641f3e2a7c3228432642986199e848da9fdea371e32de40c8ebd9dd0b3ba8ae27694c116fa04dedf8a37fb5a780d8a84777d848a4838d724a180ac66e94473 SHA512 a403278deca993c39e789b02ecc9e2493e1220f5e75c4324abddbcd4a0c9e9f2f7f8ed1aed36c3f5687a031789fe17fd2f5a6b0fbc8ec6f3641db3fe64f98255 +DIST pydantic_settings-2.16.0.tar.gz 301031 BLAKE2B d29990234fb6dbdd314cad75eb27df29fbbf01efeb068bd1b31c58daefbb2e2a7789304b1decf2e6a3ec48fc068189663fef633775b6efbf1f0d19d60c4f68a4 SHA512 ab66b0d217d8b4a95ba1471da8d4732632394fb23e128f774b46bf53155af824a16a7bbbaff047a992aa4db36cce9a4026cde467b5bb25c610fd316837c77100 +DIST pydantic_settings-2.16.0.tar.gz.provenance 9906 BLAKE2B 186a7fd34d1f5c2e1aedb0fe84abed1148742318f09c5e1ce3f0b6fa9d3d371766f9ceb5e1c9c34c80fb7212c483c4beafd17f3884a2c248e0d875a19e098d60 SHA512 36fe224d730e77b3dbf521b94149bfdb6fe74a94566f230b45bac3303da26163b2eef4dd21a90316df142067650df31df04bc9f85fc7a39033953fcec4a553e3 diff --git a/dev-python/pydantic-settings/pydantic-settings-2.14.2.ebuild b/dev-python/pydantic-settings/pydantic-settings-2.16.0.ebuild index 04d77d519415..1971884da040 100644 --- a/dev-python/pydantic-settings/pydantic-settings-2.14.2.ebuild +++ b/dev-python/pydantic-settings/pydantic-settings-2.16.0.ebuild @@ -17,11 +17,12 @@ HOMEPAGE=" LICENSE="MIT" SLOT="0" -KEYWORDS="amd64 arm arm64 ppc64 ~riscv x86" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86" RDEPEND=" >=dev-python/pydantic-2.7.0[${PYTHON_USEDEP}] - >=dev-python/python-dotenv-0.21.0[${PYTHON_USEDEP}] + >=dev-python/python-dotenv-1.2.2[${PYTHON_USEDEP}] + >=dev-python/typing-extensions-4.0.0[${PYTHON_USEDEP}] >=dev-python/typing-inspection-0.4.0[${PYTHON_USEDEP}] " diff --git a/dev-python/pydyf/Manifest b/dev-python/pydyf/Manifest index 825a96aaae6d..2c7a3bb4c8e1 100644 --- a/dev-python/pydyf/Manifest +++ b/dev-python/pydyf/Manifest @@ -1,2 +1,4 @@ DIST pydyf-0.12.1.tar.gz 17716 BLAKE2B fb87f69be503f2bcc92a98315212a6ebd238e541cee0cc47bca68faefb9e417a8574498f94e0dc514c0d2ced12e318af9a40e2d4876d534bc6f32ed63f751f6d SHA512 c241096c8e1674d80c62be40b02d7c28dfb59cb8e82e6029c6b246a65d2863be236fb1a45f3369adc6e055143a891e9aa170b9ea0dd06ac3483c92a2b86bb984 DIST pydyf-0.12.1.tar.gz.provenance 9574 BLAKE2B ec9ba4e745079c2db636ecadd99b03ef8799aec79bec946d1ab5f14dcc69910752f5cb46f39117343d7c909ba7ac06710a2d00ea65be945e744db13bbf090f86 SHA512 11b700c1447ac3b92ac7a61738c789543c338459d82a6beef4b8c0043e8ece57b6fd77f7796ff55fde8cc3b296dc9c692b304afd9d1fe45f51325b1ef321bb12 +DIST pydyf-0.13.0.tar.gz 19566 BLAKE2B 8f563fed31d5fa40fe0ed60446b35ca6367b085506310257277103e5acfa0a4318b4c8dd4d28a3d82afb3375c291359309cc3839805ffb90e3063d4fd6946ea1 SHA512 678029eac3e44eb725695ad98747116ea2b11777708225ed8d92a800757830c0e29f5ab260f3193c12046014445a36b69ace9369c54848a9aa149759e02e1bb1 +DIST pydyf-0.13.0.tar.gz.provenance 9852 BLAKE2B 16fde14a1219cabf9bfee2ef8495e806617741e1739b627be9b807aca92a58f84734e7573f48bf19cf63923b3c5365bbac21b328d2965ec7db843f7db8b72c6c SHA512 297ff2cdc80a30de8db1f66505801dd06900408b312039ecd5ef39317e4bee3d29c09c51bb560083fa89405b8338beb9ab2e7f621d9509836856167876a78893 diff --git a/dev-python/pydyf/pydyf-0.13.0.ebuild b/dev-python/pydyf/pydyf-0.13.0.ebuild new file mode 100644 index 000000000000..44cf2169842a --- /dev/null +++ b/dev-python/pydyf/pydyf-0.13.0.ebuild @@ -0,0 +1,34 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=flit-core +PYPI_VERIFY_REPO=https://github.com/CourtBouillon/pydyf +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="A low-level PDF generator" +HOMEPAGE=" + https://pypi.org/project/pydyf/ + https://github.com/CourtBouillon/pydyf/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +BDEPEND=" + test? ( + app-text/ghostscript-gpl + dev-python/pillow[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=() +distutils_enable_tests pytest + +python_test() { + epytest -o addopts= +} diff --git a/dev-python/pymdown-extensions/Manifest b/dev-python/pymdown-extensions/Manifest index 48ca12a11017..3c7ec609bd5c 100644 --- a/dev-python/pymdown-extensions/Manifest +++ b/dev-python/pymdown-extensions/Manifest @@ -1,5 +1,3 @@ -DIST pymdown_extensions-11.0.1.tar.gz 857113 BLAKE2B a585fd5c325fb4b146ecdddf9204626218fbdd9d4691a06bbe14a564fc2f93c4b8f22ba267929ce23229abbd2b08a2eadb09f3d01185ce88177a9a49e5a865ca SHA512 c95ef9cdb073b1a11f0a78ca82c49e0b0a9c57a301e599bce29a99995ce5a8415530979271ca76b1b0bf7ab3d7f348b9ef0ba7b36c1e19e6121da379c6163484 -DIST pymdown_extensions-11.0.1.tar.gz.provenance 10025 BLAKE2B 11c409e59669f3219fdf115b6593a7f1e40ac7725ffea84e0c3b25d468774a1bd5513df54e7885443631e64d1dcf7c2ef0a521547dca9ca8cf092a4333fc4161 SHA512 5a0515a30b1e65d73fc01e405a5fd0b470259273f1d8c3c152f2f8d2a5ab86bc72830d5c8b08b40fba564cfd0b69fd556524042412ea022cee3528b117aa7083 DIST pymdown_extensions-11.0.2.tar.gz 855419 BLAKE2B e7a73d571f8334a829953c7df6796f930558393c7c3ae272a779ea5271f6112f2163384046c95feddc2365333b6134df41b71e078d213e7ebab0be4d0c1aeb8b SHA512 cd84ba04447bee2f2953453f1045e79c8495b5db0442227a8cc0ef348a9bb64e99e4ac0232032574967683e88b0db21b7eabeb8aa4e6edafde843e07438c5b5a DIST pymdown_extensions-11.0.2.tar.gz.provenance 9980 BLAKE2B 52445950a371bf69ab7ebbe1f8df0e9e689fead80f6aa1b8e356c2a851578c149ffe7ef205c78683b73131a4b463c5867e449383e166475e1bbd5f8249fbb71e SHA512 7940ae93bca9f3ff8027db324e43101871fd5768ea7c59aa25856e10f333c6bce30ada9da383fb46c7f28dd95b6862e296b998d78d3f84eabba06d9ff30ac3c7 DIST pymdown_extensions-12.0.1.tar.gz 866904 BLAKE2B 99dc77c0cf21fc3ae37f9ffca62cfc59f295772ea76cebc4374d07b87f898ac9f4bd1a753ed6706b222a39a1af00238c6d1bc86bb584855ed8d76fdbaf014730 SHA512 bdf73e2fded2e6533fb5c06c20d9aad0a9091d458567de532e2d0a526d6199fbf6e7dca67e74b2b16f7e949a95156653861191b7aae4d683d2d5dce4af8d788d @@ -10,3 +8,5 @@ DIST pymdown_extensions-12.1.tar.gz 868245 BLAKE2B f3503d27b7c819cb88c2b3325c80c DIST pymdown_extensions-12.1.tar.gz.provenance 9948 BLAKE2B 30fc0aec28f48da59c4a236f7b5f5802970975781fb446f01e0040f4ba77f246fde8b3c22a3a149b9d15f01db5d3724029d08f8edce20d0211c6cdcc6fdbf8fe SHA512 cbac49f1d07b4f99f01a649d22ff4ed31bb8e08ac322706265a9e9f2509de841e515015f1378bd55ec117e15a972116823f2f67c04d5e0be1b2532d48d11feef DIST pymdown_extensions-12.2.tar.gz 870226 BLAKE2B 863911fdcce9dd869374c39bf619262c506232f90bfdd30af9507a88fa22e65c5c464527476d62048f0599ace1a17e4badf50995ddb60cde8c9b77662ba55f3f SHA512 3313070cb2333ad79a1e8473d42b58c916e038550513a3fef3b757e0233b4ca49b736343a12e71caab49f17b0431ebf7c4bcd427c85bc12853993590abdcbb58 DIST pymdown_extensions-12.2.tar.gz.provenance 10067 BLAKE2B f9813283c6dedcdc6734941cafa437665f1ba831a1814bdba4953e4e1191065cf2e67c803312d2bd1ba9914a23ea88dc16883e6a05692ceba1896364780f4b43 SHA512 60233f1016da17697737158a3c06fb3ebf988125556ea4d0fe884cfbe106cea922bc17e4c0ca3b0f2499958e28c0de69f505ed01d51cd0bf81421e2f47042285 +DIST pymdown_extensions-12.3.tar.gz 870532 BLAKE2B e8fff15828d98845b7b2149cc3ba1f4fd491bb7846978d3202c29f1a7e858a374be37c09af4a446339fe23b68e97a4b943ecaabdc97056744468448053d07f9d SHA512 ce7e6354e0da496e7fedc900dae61b148dccb3d72fafefac56242dda912650de7d18e2fa06b52d483b6e1f80358bc5d16926677e7c7e35698fcfcaab1a47254e +DIST pymdown_extensions-12.3.tar.gz.provenance 10259 BLAKE2B fe286fa52611a09413880b041be299e82cccca735f8dcda6fed3ca0715e624da53c4f7b84f0beb2a0769ebb68374bdd2797da19c38ad151bddda38149543b4a8 SHA512 531bc16a33edf63258cc1ee0236b2b0ee7b715d38e54c5d5bf68779fc4ad44efd339ea095f567b0364aac4841f18d320587deef6d6238b4700ce1f86651b9a51 diff --git a/dev-python/pymdown-extensions/pymdown-extensions-11.0.1.ebuild b/dev-python/pymdown-extensions/pymdown-extensions-11.0.1.ebuild deleted file mode 100644 index 29ef1f17706c..000000000000 --- a/dev-python/pymdown-extensions/pymdown-extensions-11.0.1.ebuild +++ /dev/null @@ -1,34 +0,0 @@ -# Copyright 1999-2026 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -DISTUTILS_USE_PEP517=hatchling -PYPI_VERIFY_REPO=https://github.com/facelessuser/pymdown-extensions -PYTHON_COMPAT=( python3_{13..14} ) - -inherit distutils-r1 pypi - -DESCRIPTION="Extensions for Python Markdown" -HOMEPAGE=" - https://github.com/facelessuser/pymdown-extensions/ - https://pypi.org/project/pymdown-extensions/ -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="amd64 ~arm arm64 ~ppc ~ppc64 ~riscv x86" - -RDEPEND=" - >=dev-python/markdown-3.6[${PYTHON_USEDEP}] - dev-python/pyyaml[${PYTHON_USEDEP}] -" - -BDEPEND=" - test? ( - >=dev-python/pygments-2.19.1[${PYTHON_USEDEP}] - ) -" - -EPYTEST_PLUGINS=() -distutils_enable_tests pytest diff --git a/dev-python/pymongo/Manifest b/dev-python/pymongo/Manifest index e6703178ab91..2ac7502b4112 100644 --- a/dev-python/pymongo/Manifest +++ b/dev-python/pymongo/Manifest @@ -4,3 +4,4 @@ DIST mongo-python-driver-4.18.0.gh.tar.gz 2821886 BLAKE2B a7905ba2c5ef44ffc0d3d9 DIST mongo-python-driver-4.18.1.gh.tar.gz 2824031 BLAKE2B 16147601da6004c0c87adefe9bf74ce21bcda1a3cf25c0c0ab9d5dc1542b92c1581fa1bb1c6f7024615990e8142ab87bc3fe665ec8cac6df9f48b0accaf9acc7 SHA512 2dd0b300cbfdbc8de197fd5ee21f5bca210b5df1efb1223dd3aa50cddae34b87fd16799450d8126769e50c97ce203d69e9bb1aa4b67a16f63e53a933db88a707 DIST mongo-python-driver-4.18.2.gh.tar.gz 2825405 BLAKE2B 7e1f59ae6473232a1fad4d00b722d85d72584faf3c2fc320669474242e62ed8bf12e07a96c360be86d62e446b4cc33b62c57b6ad319ba7989071404eacf52a65 SHA512 93456d698fd867410d6a00550b7d9739b13a8907b1e451501402a878c907de1525db7648d7c24bf90144982a3f525e2ae5352c2ee677776303bda495b5982c71 DIST mongo-python-driver-4.18.3.gh.tar.gz 2826394 BLAKE2B 830bd301aa011d1e21e61e29df699b4d64bccfc3fd49a6617ebdbe169ad7799b8a4a04dbeddbc570f8a92b22b7f078f062382ada27e8fdf116c86965876aa70f SHA512 a4f0f1ee3474a73244916b1352ad4fbbc372dfe0a486438fb4a843eecb03e4daec6d4902bcbd890ad585dac80bb2a2c7d3c13710b96f0330f5fc28e14ec3a9d4 +DIST mongo-python-driver-4.19.0.gh.tar.gz 2765196 BLAKE2B cf19053f5baa9d74d9e3716fa3c8feb48b75660842598c657d0c0c1b3a0d55fc0e8f6354d9f58582066ace9a6c4cd193df9a952797a83e161d67550cd17e7e93 SHA512 b62fc4daeff113f83049af704f1aedacf8a29eec1657b1f967e3c8dc3a2e65cf578dba096a3d3a8f5fcb8e7e233fb9b3b9a0e8a0df668d1cd2cd77ab40e42961 diff --git a/dev-python/pymongo/pymongo-4.19.0.ebuild b/dev-python/pymongo/pymongo-4.19.0.ebuild new file mode 100644 index 000000000000..a1e9a9e053e1 --- /dev/null +++ b/dev-python/pymongo/pymongo-4.19.0.ebuild @@ -0,0 +1,205 @@ +# Copyright 1999-2026 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_{13..14} ) + +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="~amd64 ~arm ~arm64 ~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? ( + test-full? ( + >=dev-db/mongodb-2.6.0 + ) + ) +" + +distutils_enable_sphinx doc + +EPYTEST_PLUGINS=( pytest-asyncio ) +EPYTEST_RERUNS=5 +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 + + # upstream forces setup.py build_ext -i in their setuptools hack + find -name '*.so' -delete || die +} + +python_test() { + rm -rf bson pymongo || die + + local EPYTEST_DESELECT=( + # network-sandbox + test/asynchronous/test_async_loop_unblocked.py::TestClientLoopUnblocked::test_client_does_not_block_loop + 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/asynchronous/test_dns.py::IsolatedAsyncioTestCaseInsensitive::test_connect_case_insensitive + test/test_srv_polling.py + test/asynchronous/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 + + # -Werror + test/test_read_preferences.py::TestMongosAndReadPreference::test_read_preference_hedge_deprecated + test/asynchronous/test_read_preferences.py::TestMongosAndReadPreference::test_read_preference_hedge_deprecated + + # fragile to timing? Internet? + test/test_client.py::TestClient::test_repr_srv_host + test/asynchronous/test_client.py::TestClient::test_repr_srv_host + test/asynchronous/test_ssl.py::TestSSL::test_pyopenssl_ignored_in_async + + # requires pymongocrypt + test/asynchronous/test_kms_connect_prose.py + test/test_kms_connect.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 failed= + mkdir -p "${dbpath}" || die + while true; do + ebegin "Trying to start mongod on port ${DB_PORT}" + + # mongodb is extremely inefficient + # https://www.mongodb.com/docs/manual/reference/ulimit/#review-and-set-resource-limits + ulimit -n 64000 || die + + local mongod_options=( + --dbpath "${dbpath}" + --bind_ip "${DB_IP}" + --port "${DB_PORT}" + --unixSocketPrefix "${TMPDIR}" + --logpath "${logpath}" + --fork + + # try to reduce resource use + --wiredTigerCacheSizeGB 0.25 + ) + + LC_ALL=C mongod "${mongod_options[@]}" && 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 + + nonfatal epytest -m "default or default_async or encryption" || failed=1 + + mongod --dbpath "${dbpath}" --shutdown || die + + [[ ${failed} ]] && die "Tests fail with ${EPYTHON}" + + rm -rf "${dbpath}" || die +} diff --git a/dev-python/pytest-check/Manifest b/dev-python/pytest-check/Manifest index d8ce27399f42..332ef43831e1 100644 --- a/dev-python/pytest-check/Manifest +++ b/dev-python/pytest-check/Manifest @@ -1,3 +1,4 @@ DIST pytest_check-2.9.1.tar.gz 41394 BLAKE2B ac4a9b88bbf0da7162b7948d7305335189893a0ad9a5591db206d7e332cfec82763a7a6f07124a1e405555f291abbc35aba5dcc4502223165d4fbc3047d45dd3 SHA512 39d8d8d2b9377b79fa18106bb91c0a662ef1823cd58a8ef681fa07a9f97ce435ebad9063397ed72bbca53f0235199ba242b0708ea65a07345d515cfa22b1885c DIST pytest_check-3.0.0.tar.gz 48136 BLAKE2B 6cc899d9ef3c7211b25be33fcd3bad264f589ad9a8f478305b81141eef72996897ae15f1cdbf21b646de55082cf3575aba23b47d83e12a51839068b1345254ee SHA512 95a3e6e7ae3033c13b29c94375be0f2c65fa3cbd1ba7ce0dbaaab7a1cc0d742673abfbbb156b08c69ccbae0904ec075ef88e49a8cad917f88832a2df6a2534ee DIST pytest_check-3.0.1.tar.gz 48520 BLAKE2B 82b2793ef35601ebd50914846ee364cd8255f81ffbeca0a09444de07de29a04d5d1d7da5adc55a85d347d5692c2b93341b1b3bb7ffc0b6353d6aefa8c55d1ea3 SHA512 cac4c060de85e2ef632833c1fb9255ddc8f61871c321b7ab3c9df191b9818ec83203a466f1f9bdd07571fd30e7924c2311a50bb3ae211856a41313cd2485917e +DIST pytest_check-3.0.3.tar.gz 49020 BLAKE2B 511fb0888f9586cba4e6a5e6c4cdcf846338cfebeae8ac49f9236082eacce3ff0039cd92c20f1fc29dbe96576ec7259f076b2ae56200b98ecbe1b31fbdb65ec1 SHA512 b737a8f8e8ce7e1c5965e7862e53e92f4f2065a28b2cea3a241bdb15b28754d8e24b2c68ff5182205a26f665e68d03277097a96da761c85ce8380d2dca162110 diff --git a/dev-python/pytest-check/pytest-check-3.0.3.ebuild b/dev-python/pytest-check/pytest-check-3.0.3.ebuild new file mode 100644 index 000000000000..4b61f86b9463 --- /dev/null +++ b/dev-python/pytest-check/pytest-check-3.0.3.ebuild @@ -0,0 +1,28 @@ +# Copyright 2021-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{13..14} ) + +inherit distutils-r1 pypi + +DESCRIPTION="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/packaging[${PYTHON_USEDEP}] + >=dev-python/pytest-7.0.0[${PYTHON_USEDEP}] +" + +EPYTEST_PLUGIN_LOAD_VIA_ENV=1 +EPYTEST_PLUGINS=( "${PN}" ) +distutils_enable_tests pytest diff --git a/dev-python/sqlglot/Manifest b/dev-python/sqlglot/Manifest index 28bc0bd47881..955208ef979c 100644 --- a/dev-python/sqlglot/Manifest +++ b/dev-python/sqlglot/Manifest @@ -1,2 +1,2 @@ -DIST sqlglot-30.21.0.tar.gz 6064227 BLAKE2B f68dfa2c03ed44f3cf12d5654ab9ba95ccc7ca188018ded9e1e2edbc1e73c4eb3a37041dd2bf35269e8f4127093ad26e31936423c75eb147de5e03fde60137af SHA512 3ec6790fed025087b14c885a29a5e84c998a33fcbe4676592ec920cac69d07e72ae3e0edf2c54405eb097a1569dbb70bf8ea068e9e680054d70622e782b97356 DIST sqlglot-30.22.0.tar.gz 6088770 BLAKE2B bca7d80d5fde475419a4bae31dca2f1be4a4e5b90d2312d9c9b283bbb2927c013a0f849be17142860124b3f830e3adb4b7854c4a4a2ecb2ea1d961ed80145bd8 SHA512 40186858888fe174ec9371b78bd8f72fb04c371341f5ce746b10026feb59530c0477f7f9022edff37ef447e5cb9ef60cc9d20804aa69ddd8a88de9a68b8d0a0f +DIST sqlglot-30.23.0.tar.gz 6108071 BLAKE2B aa470c23542deb3793b208746e480cf642bc1aaea00c5f2a0049f0ad1401e6b50b492826a406a8d7f21607618db57edd9923ab11ad66ee457cc812903292e678 SHA512 dc4c43c751a1cfa2fd703e5d047d8b1ba5eb143996de6c235c165ad8c77180572946bb1ff59c4c4bdf8f441a3e3a08f81a07f147788e2134476214437867a6a2 diff --git a/dev-python/sqlglot/sqlglot-30.21.0.ebuild b/dev-python/sqlglot/sqlglot-30.23.0.ebuild index 063fa5096326..063fa5096326 100644 --- a/dev-python/sqlglot/sqlglot-30.21.0.ebuild +++ b/dev-python/sqlglot/sqlglot-30.23.0.ebuild |
