Merge updates from master

This commit is contained in:
Repository mirror & CI
2025-12-05 07:00:47 +00:00
31 changed files with 468 additions and 721 deletions

View File

@@ -6,3 +6,4 @@ DIST aws-cli-1.43.5.gh.tar.gz 3022688 BLAKE2B 9246ea7ef59101488d290de46e109516c3
DIST aws-cli-1.43.6.gh.tar.gz 3025578 BLAKE2B 33fc6b437c9e2b1717bf51218fb81bcd612eba55fa6e0a553a05312d20484987dcd6e468b4df8fcec09b0496b078dacede13c6b0e4133016e83d625de65a2572 SHA512 c871ad2933d4116e8514aec75412c2902bc46a6199c306fe50e0cc0f6cf3c75cb029688916f1ffcdb9be6cf698e5d125a6863218064ed555996d7d253acc379c
DIST aws-cli-1.43.7.gh.tar.gz 3028477 BLAKE2B 27e815fbbd01912597e0ed0ec5f7f5c177e822a2c3dda1776fdff7d4032920f8d6d4a989ab47815217327a831c0a9e8e06f343a9b10c62a209a110a31bd67776 SHA512 2aa2ed902aa753426719fb36b8de0065bfcd0b6766301eea8eba3167abc50baabd1e9e89640fbd25430111b2233323a99e557fba19e4ca70828709a0a34cef97
DIST aws-cli-1.43.8.gh.tar.gz 3028171 BLAKE2B 21e01698495aaa342579899f8406f24b338d1d1eba4985f2160cf446c1721d5c82cbe94e92e98ec6b94e6f690beda9e1e2f74eb1393da24778fc9d1b77c77c20 SHA512 99a782ee2b3ed8569c31ee5343b7b002d0e8bb44ea459e5f35ef62141efeb02bd95d465beda9f20f6d434664410d0f7bad241978fc7553af3601024b865f9fe5
DIST aws-cli-1.43.9.gh.tar.gz 3028303 BLAKE2B 96b98149f34b7c0105811f8372aafca1c3e02ebbbf9cd2247a533e4ce492f69a3d478f35ce7b5a9d774fc4af689fc07d61d08f1646df6c336d718ce40fc9dca6 SHA512 482185181a393b3d1143afe3a2aaccf17034ba8f9ff19f21c9852aa6d857b2a534ad17f4720ce1bb7b1bae60d218c2db09304c5a6cd8d97586b639bddc8a944d

View File

@@ -0,0 +1,92 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{11..14} )
inherit distutils-r1 shell-completion
MY_P=aws-cli-${PV}
DESCRIPTION="Universal Command Line Environment for AWS"
HOMEPAGE="
https://github.com/aws/aws-cli/
https://pypi.org/project/awscli/
"
SRC_URI="
https://github.com/aws/aws-cli/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
# botocore is x.(y-1).(z-6), sigh
BOTOCORE_PV="$(ver_cut 1).$(( $(ver_cut 2) - 1)).$(( $(ver_cut 3) - 6 ))"
RDEPEND="
>=dev-python/botocore-${BOTOCORE_PV}[${PYTHON_USEDEP}]
dev-python/colorama[${PYTHON_USEDEP}]
dev-python/docutils[${PYTHON_USEDEP}]
dev-python/rsa[${PYTHON_USEDEP}]
>=dev-python/s3transfer-0.16.0[${PYTHON_USEDEP}]
dev-python/pyyaml[${PYTHON_USEDEP}]
!app-admin/awscli-bin
"
BDEPEND="
test? (
dev-python/packaging[${PYTHON_USEDEP}]
)
"
EPYTEST_PLUGINS=( pytest-forked )
EPYTEST_XDIST=1
distutils_enable_tests pytest
src_prepare() {
# do not rely on bundled deps in botocore (sic!)
find -name '*.py' -exec sed -i \
-e 's:from botocore[.]vendored import:import:' \
-e 's:from botocore[.]vendored[.]:from :' \
{} + || die
# strip overzealous upper bounds on requirements
sed -i -e 's:,<[=0-9.]*::' -e 's:==:>=:' setup.py || die
distutils-r1_src_prepare
}
python_test() {
local serial_tests=(
tests/functional/ecs/test_execute_command.py::TestExecuteCommand::test_execute_command_success
tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_{fails,success}
tests/functional/ssm/test_start_session.py::TestSessionManager::test_start_session_with_new_version_plugin_success
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking
tests/unit/customizations/codeartifact/test_adapter_login.py::TestDotNetLogin::test_login_dotnet_sources_listed_with_backtracking_windows
tests/unit/customizations/codeartifact/test_adapter_login.py::TestNuGetLogin::test_login_nuget_sources_listed_with_backtracking
tests/unit/customizations/ecs/test_executecommand_startsession.py::TestExecuteCommand::test_execute_command_success
tests/unit/customizations/test_sessionmanager.py
tests/unit/test_compat.py::TestIgnoreUserSignals
tests/unit/test_help.py
tests/unit/test_utils.py::TestIgnoreCtrlC::test_ctrl_c_is_ignored
)
EPYTEST_XDIST= epytest "${serial_tests[@]}"
local EPYTEST_DESELECT=(
"${serial_tests[@]}"
# flaky (some ordering?)
tests/functional/s3/test_cp_command.py::TestCPCommand::test_multipart_upload_with_checksum_algorithm_crc32
)
# integration tests require AWS credentials and Internet access
epytest tests/{functional,unit}
}
python_install_all() {
newbashcomp bin/aws_bash_completer aws
newzshcomp bin/aws_zsh_completer.sh _aws
distutils-r1_python_install_all
rm "${ED}"/usr/bin/{aws.cmd,aws_bash_completer,aws_zsh_completer.sh} || die
}

View File

@@ -1 +1,2 @@
DIST posh-debian-0.14.2.tar.bz2 213312 BLAKE2B 92beb662b9a954311f1cf19fda2c5238826969f596f1c5a6d2557a824f90d79b3c310c9be3eed83b98c3c91c8bc6bc8c147f5560d6e4265c213f3e908ebb9f7f SHA512 4a9a66d1a1c666ef13d53db3d6b74337253ebfff3dd50cabbb988437050258d52592f135e1e5bc3a1ddd542b27927b5bc76a320241528bd95a228cb26efdd4be
DIST posh-debian-0.14.3.tar.bz2 213735 BLAKE2B 70bbf21d80d9074ee48841d18d15f30d30c5cc7169c862eac873602f967cea1b43af61005c410b0269b1e8368203bd2afbe2a36e2435733e83f0445edd4be07c SHA512 0746463210c6b0c4ccd78285e05183551f08d9572725ce82bab9e2553c4b221c27635cc369d1bbfd3ff8bf4da04f571f76bee61eeca4250c32391f96fbe3967e

View File

@@ -0,0 +1,29 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools
MY_P=posh-debian-${PV}
DESCRIPTION="Reimplementation of Bourne shell based on pdksh"
HOMEPAGE="https://salsa.debian.org/clint/posh"
SRC_URI="
https://salsa.debian.org/clint/posh/-/archive/debian/${PV}/${MY_P}.tar.bz2"
S=${WORKDIR}/${MY_P}
LICENSE="GPL-2+ BSD public-domain"
SLOT="0"
KEYWORDS="~amd64 ~ppc ~x86"
src_prepare() {
default
eautoreconf
}
src_configure() {
local myconf=(
--exec-prefix="${EPREFIX:-/}"
)
econf "${myconf[@]}"
}

View File

@@ -6,3 +6,4 @@ DIST boto3-1.41.5.gh.tar.gz 1047828 BLAKE2B c4ff68f8851f56539998186d6dab74d015e5
DIST boto3-1.42.0.gh.tar.gz 1051896 BLAKE2B 5bc423d834f4baba83b1e332b67fbfbe76b7dc1dc61e12750ebf3d25bde987d76815039980d3b30b5a0c8904c9fd4045900e03a7d593f99f5ec446e83e491279 SHA512 cd204476d704732077f12fa4be1ffb6ed6c535f5997ffdaae188d9b632604d613b60f0644768ccc4454255afefd2fe762f3590a1bbeada1ab53a2eee98421cb1
DIST boto3-1.42.1.gh.tar.gz 1054688 BLAKE2B 9722ba8fb97df81abfbcc26f5ab5d5c7819a3cd1f265af9938820968ba79232ed453c594db3bc661ac6bed50058638903700e8c8e16613b59c88bc97807ad966 SHA512 961cae734e2e8db1e0511d19f24f5b509b14fbcc9d32327fa39928b21d502516b4dec8a2723c342bdc77649df292086f2b8281b30d54396f9849445b61fff8b7
DIST boto3-1.42.2.gh.tar.gz 1054980 BLAKE2B 5d361d756f41fb2e1df9f4397ba64a842388abb8f8f239b19c450ab062ec999c10c6a46770a52b3f9f664614c54093959fdbb85cff81bd712cb9b431604661a1 SHA512 1c24227ed467c9406c1cb781a46796d7748f44bbc5dddb53ad1153202111a08f33de7c7696f8294ac57df960a67a338cf37620c13df852cddb8d21ed909cbf20
DIST boto3-1.42.3.gh.tar.gz 1055160 BLAKE2B 86399e22d40747aa40d6d61296e9833f86ddbf8921a157a369bed90c538ce6ca43729c1a69c3f1f99d1b8496414397aa0b1a442d33e81d191fbac6991ab1a840 SHA512 c4f36ae4340e809c398ee9e496af1da5da24be08d6ab443dd434f5612bda97c187375480bb62992cb6129f638f8715cfd476d3a1116f94d3de470756d932d0c3

View File

@@ -0,0 +1,53 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{11..14} )
inherit distutils-r1
DESCRIPTION="The AWS SDK for Python"
HOMEPAGE="
https://github.com/boto/boto3/
https://pypi.org/project/boto3/
"
SRC_URI="
https://github.com/boto/boto3/archive/${PV}.tar.gz
-> ${P}.gh.tar.gz
"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
RDEPEND="
>=dev-python/botocore-${PV}[${PYTHON_USEDEP}]
>=dev-python/jmespath-0.7.1[${PYTHON_USEDEP}]
>=dev-python/s3transfer-0.16.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}
}

View File

@@ -6,3 +6,4 @@ DIST botocore-1.41.5.gh.tar.gz 15519699 BLAKE2B 05c9cd0768013d6e3af76ad9daf8b957
DIST botocore-1.41.6.gh.tar.gz 15619213 BLAKE2B 132f1020643f335793393f34545d7f13c0e69394ccaa4ad047694e681832ea340ee76925879e3bcff45145fda387f6b2a81ca9e69d424fe39b8754e04aee541d SHA512 15ecad28923a7ab80c749856ce9e7b02b14eaf9f2346786f0943b3a450bbe94eacd3b2f8275b8b2e6612d6c1faf53aa8788fb790722471e49c6fdf7c3cc2dd81
DIST botocore-1.42.1.gh.tar.gz 15695042 BLAKE2B f0587a7e8112d0fd80cb40fb0da6cf88f3c0ec567a803a062f295624ca3541e0adb4cfc6d039e4bfdbcbf0c4ed07ae0117ce1ce691c6e95914bc4767d57324d4 SHA512 627ae08b65839f48fd24b567951e45363bb5d0c1ff566701a5396f6c6b0e5c58ce66143eb5bab64656d80c0751aad22af04a5d1f048d234a854325139c408846
DIST botocore-1.42.2.gh.tar.gz 15699929 BLAKE2B 9f809924aeb031313806c70207c2063c0a421695b2be1a246f886f3214ca1f7fee1ba25b456b654a93c1d682ed7988e9f5648ac91b1703a0ff534603b4e566f4 SHA512 e23157d1ef297f35cddc73ac43604b46e6274fbd1938b8bcb3a9dc142f4c47e377e8f3675e5045755e1ad70914c56a7a84ad3d39798f5486300a25ff3f4464ca
DIST botocore-1.42.3.gh.tar.gz 15700743 BLAKE2B d288896f8538dcb4e7589e641f8b2b0e78b9b45576a592ea105353ebcd3e03f695fff3e71af56dfdebd8cdf9cc35bc36593a30fabb02a78a7531dcbd000f2774 SHA512 d32b4b775f5a692c3f731b83a1538cff002c215a4a3947eb69fd27ddf638d47a41e037f7b8a6d73ec4acfaeaf5fbc649103051383f56190e25b5748fcd0b9d88

View File

@@ -0,0 +1,67 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{11..14} )
inherit distutils-r1
DESCRIPTION="Low-level, data-driven core of boto 3"
HOMEPAGE="
https://github.com/boto/botocore/
https://pypi.org/project/botocore/
"
SRC_URI="
https://github.com/boto/botocore/archive/${PV}.tar.gz
-> ${P}.gh.tar.gz
"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux"
RDEPEND="
<dev-python/jmespath-2[${PYTHON_USEDEP}]
dev-python/python-dateutil[${PYTHON_USEDEP}]
>=dev-python/urllib3-1.25.4[${PYTHON_USEDEP}]
"
# unbundled packages
RDEPEND+="
dev-python/requests[${PYTHON_USEDEP}]
dev-python/six[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
dev-python/jsonschema[${PYTHON_USEDEP}]
)
"
EPYTEST_PLUGINS=()
EPYTEST_XDIST=1
distutils_enable_tests pytest
src_prepare() {
# unpin deps
sed -i -e "s:>=.*':':" setup.py || die
# unbundle deps
rm -r botocore/vendored || die
find -name '*.py' -exec sed -i \
-e 's:from botocore[.]vendored import:import:' \
-e 's:from botocore[.]vendored[.]:from :' \
{} + || die
distutils-r1_src_prepare
}
python_test() {
local EPYTEST_DESELECT=(
# rely on bundled six
tests/functional/test_six_imports.py::test_no_bare_six_imports
tests/functional/test_six_threading.py::test_six_thread_safety
)
epytest tests/{functional,unit}
}

View File

@@ -1,2 +1,3 @@
DIST cliff-4.11.0.tar.gz 86638 BLAKE2B f4e6e4f7ba1e9dc46c40988ef92f808c4f3c03ad53ce5f8b9017a98ceb619d3d797b8ca4922b2104fbed95205b3378e9577a1c68791b3d49aaf7f44f69295126 SHA512 43f60294bece3e6b5f326ff605f9db0c5920326cc35c3953f21135ce8f68ca6f31f35a77c2d39f12b0fe005d6aac1403ae45935919e7f08631a5cd076f3eb820
DIST cliff-4.12.0.tar.gz 86665 BLAKE2B eaf18a9af695da4ed892c0f962b54de90b5d1df00ccc69fed2d62de79226e9bdc69617bcac04443898983e2543a43d2222249c06c4d23edea0a1b71cf446df05 SHA512 be56ef236b83884c5520d05ce367799c1ca741bf6b0b1393857092a5b8f5554f4e95d03f45998122b76e8a304d88d610088398906befdcf2f5ed0e43ee238fb2
DIST cliff-4.13.0.tar.gz 89337 BLAKE2B 37dd455d79c5a41d76d58d420596f5b4ff9c0a05037cb7ec5eb7e635c09c8e6e087d4cd6fbac1331136383dd58470636ec2edeb1f99acb690a1c5bc907184590 SHA512 c3a64e36a3a1d25c0cf0ac6f2e899d8b4ee21b362dc08354004caddd0850603dd0019f4a7f807268c827ecb76ce1d659642614f737f9f33dbd4f28b374515bbe

View File

@@ -0,0 +1,39 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=pbr
PYTHON_COMPAT=( python3_{11..14} )
inherit distutils-r1 pypi
DESCRIPTION="Command Line Interface Formulation Framework"
HOMEPAGE="
https://opendev.org/openstack/cliff/
https://github.com/openstack/cliff/
https://pypi.org/project/cliff/
"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc64 ~riscv ~s390 ~sparc ~x86"
RDEPEND="
>=dev-python/autopage-0.4.0[${PYTHON_USEDEP}]
>=dev-python/cmd2-0.8.0[${PYTHON_USEDEP}]
dev-python/prettytable[${PYTHON_USEDEP}]
>=dev-python/pyparsing-2.1.0[${PYTHON_USEDEP}]
>=dev-python/pyyaml-3.12.0[${PYTHON_USEDEP}]
>=dev-python/stevedore-5.6.0[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
>=dev-python/fixtures-3.0.0[${PYTHON_USEDEP}]
>=dev-python/sphinx-5.0.0[${PYTHON_USEDEP}]
>=dev-python/testtools-2.2.0[${PYTHON_USEDEP}]
>=dev-python/testscenarios-0.4[${PYTHON_USEDEP}]
)
"
distutils_enable_tests unittest

View File

@@ -1 +1,2 @@
DIST django-polymorphic-4.1.0.gh.tar.gz 104197 BLAKE2B b76ee07790fc1b88e3f75460adb43d78505e2acce0298872aff9bbcb00bab67e78b4fed228b50a2228c17f22f8fba7a3bb4918281b2535daf3c2273437037d20 SHA512 ef6eab91812d8cd0762648f90b2411ee6d748790e6285e6ea8aea8362c67d9a7433d18726a60b155a1d9f75bf929ed36c447504421d800d04d6e4731e73bb7f1
DIST django-polymorphic-4.2.0.gh.tar.gz 222029 BLAKE2B 2a277dd817f24f3282f2bd1a1a302553518d12f217cd026ee95fe5d0f765159499699670f29eda28ff4407ba2e82dae431b9297b8acbd718bc4bd40a0a6f0f23 SHA512 b1be07d0527165baea32dd5b0adc03da23c6027c3ed4094e78be7807e3621addef9d4da047a49f223f186b5f60fd3bc1cea1755ad85c8308e44d0681848df445

View File

@@ -0,0 +1,47 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=hatchling
PYTHON_COMPAT=( python3_{11..14} )
inherit distutils-r1
DESCRIPTION="Seamless Polymorphic Inheritance for Django Models"
HOMEPAGE="
https://github.com/jazzband/django-polymorphic/
https://pypi.org/project/django-polymorphic/
"
SRC_URI="
https://github.com/jazzband/django-polymorphic/archive/v${PV}.tar.gz
-> ${P}.gh.tar.gz
"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
RDEPEND="
>=dev-python/django-4.2[$PYTHON_USEDEP]
"
BDEPEND="
test? (
$(python_gen_impl_dep sqlite)
${RDEPEND}
dev-python/dj-database-url[${PYTHON_USEDEP}]
)
"
EPYTEST_PLUGINS=( pytest-django )
distutils_enable_tests pytest
python_test() {
local EPYTEST_IGNORE=(
# requires playwright
src/polymorphic/tests/test_admin.py
)
rm -f conftest.py || die
epytest -o addopts=
}

View File

@@ -1,2 +1,2 @@
DIST greenlet-3.2.3.tar.gz 185752 BLAKE2B 4e5ea7c83622a954d9cab3da524c88970cc8a22759c3cdfdca1a718c5e630d895d844679292b48a4ebda93bcbbad1da0665c78bbf132cf1215456d742190a3ac SHA512 3153123855b4900387454fa1d4223b321980e3462e1e139b9f90b4eb2d0772102e06375055c6eb612530d7037169ff6e28166f95efe09073ea331db76284d39d
DIST greenlet-3.2.4.tar.gz 188260 BLAKE2B b4ac8d493fe2fa471d61a11d7f5aa8cdec5e94d00f902c44204838d1e049cd289e52ac959dda3967a8b2b1b0d157f42225db0ff1665cd799070e230f834d53c2 SHA512 59a2df6248ba8830d0d92cf26cde97fef87fd6d3b5ebd2661d1a8762e622b98b502ab8531f613830c6645b0249c084f326c38c34824da37b717ff6cfbb105e4c
DIST greenlet-3.3.0.tar.gz 190651 BLAKE2B 32405286c0b8a7b1170936c419a4c40856b7e4605eac95ff733c0603ba54031fe2510cc47cdecfe33ce97e5e6de0995a9c174fb52dfd637bd351c0782d787929 SHA512 633d207f9fe749074760e31302ca6b2f2a6c72f0161d9676c8c1047928a4108106653f3914430cee62b125d99d449f80566282d089a09f9bb6eb3589b43e9817

View File

@@ -1,71 +0,0 @@
From 739cc559ac42f41f6ccbc7d556d730fd424f3be8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Wed, 30 Jul 2025 12:17:47 +0200
Subject: [PATCH] Fix py312+ crash test skips to correctly check for assertions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Fix the skips for `test_trace_events_multiple_greenlets_switching*`
to correctly detect assertions being enabled independently of
`--with-pydebug`. Gentoo builds Python `--without-pydebug` but
`--with-assertions`, in order to benefit from assertion-implied safety
checks without the full cost of PyDEBUG. For the purpose of detecting
it, check for `-DNDEBUG` in optimization flags, as implied by disabling
assertions. Leave the existing code as a fallback for when build flags
are unavailable, e.g. in Windows packages.
Signed-off-by: Michał Górny <mgorny@gentoo.org>
---
src/greenlet/tests/test_tracing.py | 18 +++++++++++++-----
1 file changed, 13 insertions(+), 5 deletions(-)
diff --git a/src/greenlet/tests/test_tracing.py b/src/greenlet/tests/test_tracing.py
index c044d4b6..235fbcd6 100644
--- a/src/greenlet/tests/test_tracing.py
+++ b/src/greenlet/tests/test_tracing.py
@@ -1,5 +1,6 @@
from __future__ import print_function
import sys
+import sysconfig
import greenlet
import unittest
@@ -7,9 +8,16 @@
from . import PY312
# https://discuss.python.org/t/cpython-3-12-greenlet-and-tracing-profiling-how-to-not-crash-and-get-correct-results/33144/2
-DEBUG_BUILD_PY312 = (
- PY312 and hasattr(sys, 'gettotalrefcount'),
- "Broken on debug builds of Python 3.12"
+# When build variables are available, OPT is the best way of detecting
+# the build with assertions enabled. Otherwise, fallback to detecting PyDEBUG
+# build.
+ASSERTION_BUILD_PY312 = (
+ PY312 and (
+ "-DNDEBUG" not in sysconfig.get_config_var("OPT").split()
+ if sysconfig.get_config_var("OPT") is not None
+ else hasattr(sys, 'gettotalrefcount')
+ ),
+ "Broken on assertion-enabled builds of Python 3.12"
)
class SomeError(Exception):
@@ -198,7 +206,7 @@ def run(self):
self._check_trace_events_from_greenlet_sets_profiler(X(), tracer)
- @unittest.skipIf(*DEBUG_BUILD_PY312)
+ @unittest.skipIf(*ASSERTION_BUILD_PY312)
def test_trace_events_multiple_greenlets_switching(self):
tracer = PythonTracer()
@@ -236,7 +244,7 @@ def g2_run():
('c_call', '__exit__'),
])
- @unittest.skipIf(*DEBUG_BUILD_PY312)
+ @unittest.skipIf(*ASSERTION_BUILD_PY312)
def test_trace_events_multiple_greenlets_switching_siblings(self):
# Like the first version, but get both greenlets running first
# as "siblings" and then establish the tracing.

View File

@@ -1,51 +0,0 @@
From cfb846272ab94a79c2f936da13dc3f5213f48912 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
Date: Thu, 31 Jul 2025 18:16:00 +0200
Subject: [PATCH] Skip `TestLeaks` when `GREENLET_SKIP_LEAKCHECKS` is used
When `GREENLET_SKIP_LEAKCHECKS` is used, we do not want to check for
leaks, and therefore it makes no sense to run tests explicitly checking
for leaks. Since the conditional is also true for MANYLINUX builds,
remove the redundant condition.
---
src/greenlet/tests/test_leaks.py | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/greenlet/tests/test_leaks.py b/src/greenlet/tests/test_leaks.py
index 99da4eb..fe60fa2 100644
--- a/src/greenlet/tests/test_leaks.py
+++ b/src/greenlet/tests/test_leaks.py
@@ -10,6 +10,7 @@
import time
import weakref
import threading
+import unittest
import greenlet
@@ -17,7 +18,7 @@
from . import PY314
from .leakcheck import fails_leakcheck
from .leakcheck import ignores_leakcheck
-from .leakcheck import RUNNING_ON_MANYLINUX
+from .leakcheck import SKIP_LEAKCHECKS
# pylint:disable=protected-access
@@ -39,6 +40,7 @@ def reset(cls):
cls.EXTANT_INSTANCES.clear()
+@unittest.skipIf(SKIP_LEAKCHECKS, "Leak checks disabled")
class TestLeaks(TestCase):
def test_arg_refs(self):
@@ -313,8 +315,6 @@ def _only_test_some_versions(self):
assert sys.version_info[0] >= 3
if sys.version_info[:2] < (3, 8):
self.skipTest('Only observed on 3.11')
- if RUNNING_ON_MANYLINUX:
- self.skipTest("Slow and not worth repeating here")
@ignores_leakcheck
# Because we're just trying to track raw memory, not objects, and running

View File

@@ -19,7 +19,7 @@ HOMEPAGE="
LICENSE="MIT PSF-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 -hppa ~m68k ppc64 ~riscv ~s390 ~sparc x86 ~amd64-linux ~x86-linux ~x64-macos"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 -hppa ~m68k ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
IUSE="test"
RESTRICT="!test? ( test )"
@@ -35,13 +35,6 @@ distutils_enable_sphinx docs \
distutils_enable_tests unittest
src_prepare() {
local PATCHES=(
# https://github.com/python-greenlet/greenlet/pull/457
"${FILESDIR}/${P}-py312-assert.patch"
# https://github.com/python-greenlet/greenlet/pull/461
"${FILESDIR}/${P}-skip-leak-tests.patch"
)
distutils-r1_src_prepare
# patch cflag manipulations out

View File

@@ -1,9 +1,5 @@
DIST hypothesis-6.139.2.gh.tar.gz 9623909 BLAKE2B 2b509474e06169191087932a47a0564fc5babf0f1e2acddd4f95d7d411befea444a80c7d7fea9c8582fb6ddc8153388a52a7a29d917f4f5ea8c142c8345e9036 SHA512 ffd797bc2ed6591fd67b2639665c606c1814a7ee2cca1b1f4272ef505a3ad83883988feb2dc32e4a92813c540dd485594d2c332e945ad7f58b9eb276af733869
DIST hypothesis-6.142.5.gh.tar.gz 9625137 BLAKE2B 2a0146541b95710419c5ede4288a3996d1e7688932b7f888d960fed5c69b344b1fb5e9e4509c97033d102137e315b10d3d1d336ed6964db8caaacdd23c160213 SHA512 5d7f21dd449a951ea9974dcb586087a5f0a43a2bc84ff5898ef81d53d9a543a7afdc26e85ffc21be01f300d6582eedb2f99cf086fd5eb9debb457b62f75500ea
DIST hypothesis-6.145.1.gh.tar.gz 9636827 BLAKE2B e39544074d83b33b6e04eb26319d20dd48e4196f216c782149fdf9e2bd869b5f29aa97b3606a5235bcf41dc0a98db05966c6e542a64ab5a63470038f9eca02fd SHA512 3af66ecac9217a11dccba070f16af610e0ca0216d802ae298d9a5ded6c62546b70d260d7fd191785b84f106ff9786af2dbda400e30bd4fb5caa05ef6a0fd65ee
DIST hypothesis-6.147.0.gh.tar.gz 9637937 BLAKE2B ee245790ce248a43dd6a25148b9adc40278bbdcedf169820a1047ef0a12707ab90083b285e952ecde2397e5ec313314b7dcd9b8939bbbefdc113509f27db09d9 SHA512 6c5da0c2ceec1110b1f310f9cb0d13ec9e0397ff2cdc53cc47e9e3d7147b2153cd1fbff870ca63589d08f20bb6f7f30a3a73c402312d202974f0ec08a6612918
DIST hypothesis-6.148.0.gh.tar.gz 9637659 BLAKE2B 49f4a793181e308b5a4c8b134b7b222d42162e1dca0c424ab30a82a061e479028703237e550ea491e3a2ba10610f2c4e248b618527e554b82d95d442f98abced SHA512 169ca9a09c0a3752768cbbd48f8bb444382895f066e0f26c6f64df64dd957e8a5e3a4ef79c33bfc2643908b96159f212661dab7f04e2380a85a82330aaf139e1
DIST hypothesis-6.148.1.gh.tar.gz 9637657 BLAKE2B 4a933b39815f8d003c97848f95ae40b66b1c80457fb87978e431ef8da89a355c7460aba4e443dc8e4261068215503f00cce8ee6d9cf381144fdabd1a0e9e398b SHA512 d5bf5de8a8b015b2704a1e08ea694d33bacd69d2ca91f63ff33df1f8ae2edc2bac10d20926a787a728d518fd4dc2b7b9cffff3d34d7aba856a8ee33b0f3d595c
DIST hypothesis-6.148.2.gh.tar.gz 9643732 BLAKE2B a8804651d2f07c1ac514f74316caed430c964d543d523ab0b4422c72c06e0709b9aa0267d431c4a2a0406020c2d6604f4448e638ea5b66e76cb3b9117c8fed06 SHA512 bbf60e86e1cf44d30dfd5b853a3079e549b52418f21087f6cedb9cba86a95b706ab6e22d7741c503bd63d80e0f6f973c085d21040b083059e29af5fb14aed3f9
DIST hypothesis-6.148.3.gh.tar.gz 9924980 BLAKE2B c65e3316c876187a0065d917f49c2df7455599641fcb35c8f588422e137a38a7ba62365a59ff07d40e4e5c6bed41fc4a678a104b0a352b6cee9575963d8d1527 SHA512 c61fa75f06f88b3a8adeaf0bbfc6ca4c8ad3e770b5a2ed84d4c2e8be5612108b7aefdb4c9c6ed45a3eba27e23c08402056b73ab777a43d2b7b625d0b125b7561
DIST hypothesis-6.148.5.gh.tar.gz 9926203 BLAKE2B 81a95a8bd7dabc004f263e377f1a1a4bb6d4550b86f420afaa65edf2aeb675f6615b44cfbca3aafdbf80c51212e92489cfc5d7b5fc32845017256e9045572e06 SHA512 e5fe49177ca4fe9f59b3185de96bbc6c3e8a0bd8332d1e778547737210831584abc68a8759a1f3c29c7f1dc5aed56917962535efb452275064d7ed6f9c8a8091
DIST hypothesis-6.148.7.gh.tar.gz 9927096 BLAKE2B 4e6f782918394edba79a2c183be923076eec1b12b24cc184561e4ee5900e97d2f9c7e110ec98a51911ccdd5b0f2b3172947067038bba03723472be99b7005873 SHA512 f9fbe91650a99f9db3fa1e3a389c2a3cdac85cbb0a7c6cb694b29e486b29670833fd534022c6d26ebeac7b2f3135940dda854f865fde0a6b62c229fdd5f422e6

View File

@@ -1,125 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
CLI_COMPAT=( python3_{11..13} )
PYTHON_COMPAT=( "${CLI_COMPAT[@]}" pypy3_11 python3_14 python3_{13,14}t )
PYTHON_REQ_USE="threads(+),sqlite"
inherit distutils-r1 optfeature
TAG=hypothesis-python-${PV}
MY_P=hypothesis-${TAG}
DESCRIPTION="A library for property based testing"
HOMEPAGE="
https://github.com/HypothesisWorks/hypothesis/
https://pypi.org/project/hypothesis/
"
SRC_URI="
https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
-> ${P}.gh.tar.gz
"
S="${WORKDIR}/${MY_P}/hypothesis-python"
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
IUSE="cli"
RDEPEND="
>=dev-python/attrs-22.2.0[${PYTHON_USEDEP}]
>=dev-python/sortedcontainers-2.1.0[${PYTHON_USEDEP}]
cli? (
$(python_gen_cond_dep '
dev-python/black[${PYTHON_USEDEP}]
dev-python/click[${PYTHON_USEDEP}]
' "${CLI_COMPAT[@]}")
)
"
BDEPEND="
test? (
dev-python/pexpect[${PYTHON_USEDEP}]
>=dev-python/pytest-8[${PYTHON_USEDEP}]
)
"
PDEPEND="
dev-python/hypothesis-gentoo[${PYTHON_USEDEP}]
"
EPYTEST_PLUGIN_LOAD_VIA_ENV=1
EPYTEST_PLUGINS=( "${PN}" pytest-xdist )
EPYTEST_RERUNS=5
EPYTEST_XDIST=1
distutils_enable_tests pytest
python_test() {
# NB: paths need to be relative to pytest.ini,
# i.e. start with hypothesis-python/
local EPYTEST_DESELECT=()
case ${EPYTHON} in
python3.13t)
EPYTEST_DESELECT+=(
# TODO: missing warning
'hypothesis-python/tests/cover/test_random_module.py::test_passing_referenced_instance_within_function_scope_warns'
)
;;
python3.14*)
EPYTEST_DESELECT+=(
'hypothesis-python/tests/cover/test_compat.py::test_resolve_fwd_refs[Foo-Union]'
'hypothesis-python/tests/cover/test_lookup.py::test_builds_suggests_from_type[Union]'
hypothesis-python/tests/cover/test_attrs_inference.py::test_attrs_inference_builds
hypothesis-python/tests/cover/test_lookup.py::test_bytestring_not_treated_as_generic_sequence
hypothesis-python/tests/cover/test_lookup.py::test_issue_4194_regression
hypothesis-python/tests/cover/test_lookup.py::test_resolves_forwardrefs_to_builtin_types
hypothesis-python/tests/cover/test_lookup.py::test_specialised_collection_types
hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_collection_as_generic
hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_container_as_generic
hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_contextmanager_as_generic
hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_iterable_as_generic
hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_reversible_as_generic
hypothesis-python/tests/cover/test_lookup_py37.py::test_resolving_standard_sequence_as_generic
hypothesis-python/tests/cover/test_random_module.py::test_evil_prng_registration_nonsense
hypothesis-python/tests/cover/test_random_module.py::test_passing_referenced_instance_within_function_scope_warns
hypothesis-python/tests/cover/test_random_module.py::test_register_random_within_nested_function_scope
hypothesis-python/tests/cover/test_random_module.py::test_registering_a_Random_is_idempotent
hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_missing_dot_access_forward_ref
hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_missing_forward_ref
hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_type_checking_only_forward_ref_wrong_type
hypothesis-python/tests/cover/test_type_lookup_forward_ref.py::test_bound_type_cheking_only_forward_ref
)
;;
esac
local -x HYPOTHESIS_NO_PLUGINS=1
epytest -o filterwarnings= tests/{cover,pytest,quality}
}
src_install() {
local HAD_CLI=
distutils-r1_src_install
if [[ ! ${HAD_CLI} ]]; then
rm -r "${ED}/usr/bin" || die
fi
}
python_install() {
distutils-r1_python_install
if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
HAD_CLI=1
else
rm -r "${D}$(python_get_scriptdir)" || die
fi
}
pkg_postinst() {
optfeature "datetime support" dev-python/pytz
optfeature "dateutil support" dev-python/python-dateutil
optfeature "numpy support" dev-python/numpy
optfeature "django support" dev-python/django dev-python/pytz
optfeature "pandas support" dev-python/pandas
optfeature "pytest support" dev-python/pytest
}

View File

@@ -1,91 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
CLI_COMPAT=( python3_{11..13} )
PYTHON_COMPAT=( "${CLI_COMPAT[@]}" pypy3_11 python3_14 python3_{13,14}t )
PYTHON_REQ_USE="threads(+),sqlite"
inherit distutils-r1 optfeature
TAG=hypothesis-python-${PV}
MY_P=hypothesis-${TAG}
DESCRIPTION="A library for property based testing"
HOMEPAGE="
https://github.com/HypothesisWorks/hypothesis/
https://pypi.org/project/hypothesis/
"
SRC_URI="
https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
-> ${P}.gh.tar.gz
"
S="${WORKDIR}/${MY_P}/hypothesis-python"
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="cli"
RDEPEND="
>=dev-python/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
python_test() {
# NB: paths need to be relative to pytest.ini,
# i.e. start with hypothesis-python/
local -x HYPOTHESIS_NO_PLUGINS=1
epytest -o filterwarnings= tests/{cover,pytest,quality}
}
src_install() {
local HAD_CLI=
distutils-r1_src_install
if [[ ! ${HAD_CLI} ]]; then
rm -r "${ED}/usr/bin" || die
fi
}
python_install() {
distutils-r1_python_install
if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
HAD_CLI=1
else
rm -r "${D}$(python_get_scriptdir)" || die
fi
}
pkg_postinst() {
optfeature "datetime support" dev-python/pytz
optfeature "dateutil support" dev-python/python-dateutil
optfeature "numpy support" dev-python/numpy
optfeature "django support" dev-python/django dev-python/pytz
optfeature "pandas support" dev-python/pandas
optfeature "pytest support" dev-python/pytest
}

View File

@@ -1,91 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
CLI_COMPAT=( python3_{11..13} )
PYTHON_COMPAT=( "${CLI_COMPAT[@]}" pypy3_11 python3_14 python3_{13,14}t )
PYTHON_REQ_USE="threads(+),sqlite"
inherit distutils-r1 optfeature
TAG=hypothesis-python-${PV}
MY_P=hypothesis-${TAG}
DESCRIPTION="A library for property based testing"
HOMEPAGE="
https://github.com/HypothesisWorks/hypothesis/
https://pypi.org/project/hypothesis/
"
SRC_URI="
https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
-> ${P}.gh.tar.gz
"
S="${WORKDIR}/${MY_P}/hypothesis-python"
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="cli"
RDEPEND="
>=dev-python/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
python_test() {
# NB: paths need to be relative to pytest.ini,
# i.e. start with hypothesis-python/
local -x HYPOTHESIS_NO_PLUGINS=1
epytest -o filterwarnings= tests/{cover,pytest,quality}
}
src_install() {
local HAD_CLI=
distutils-r1_src_install
if [[ ! ${HAD_CLI} ]]; then
rm -r "${ED}/usr/bin" || die
fi
}
python_install() {
distutils-r1_python_install
if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
HAD_CLI=1
else
rm -r "${D}$(python_get_scriptdir)" || die
fi
}
pkg_postinst() {
optfeature "datetime support" dev-python/pytz
optfeature "dateutil support" dev-python/python-dateutil
optfeature "numpy support" dev-python/numpy
optfeature "django support" dev-python/django dev-python/pytz
optfeature "pandas support" dev-python/pandas
optfeature "pytest support" dev-python/pytest
}

View File

@@ -1,91 +0,0 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
CLI_COMPAT=( python3_{11..13} )
PYTHON_COMPAT=( "${CLI_COMPAT[@]}" pypy3_11 python3_14 python3_{13,14}t )
PYTHON_REQ_USE="threads(+),sqlite"
inherit distutils-r1 optfeature
TAG=hypothesis-python-${PV}
MY_P=hypothesis-${TAG}
DESCRIPTION="A library for property based testing"
HOMEPAGE="
https://github.com/HypothesisWorks/hypothesis/
https://pypi.org/project/hypothesis/
"
SRC_URI="
https://github.com/HypothesisWorks/hypothesis/archive/${TAG}.tar.gz
-> ${P}.gh.tar.gz
"
S="${WORKDIR}/${MY_P}/hypothesis-python"
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
IUSE="cli"
RDEPEND="
>=dev-python/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
python_test() {
# NB: paths need to be relative to pytest.ini,
# i.e. start with hypothesis-python/
local -x HYPOTHESIS_NO_PLUGINS=1
epytest -o filterwarnings= tests/{cover,pytest,quality}
}
src_install() {
local HAD_CLI=
distutils-r1_src_install
if [[ ! ${HAD_CLI} ]]; then
rm -r "${ED}/usr/bin" || die
fi
}
python_install() {
distutils-r1_python_install
if use cli && has "${EPYTHON}" "${CLI_COMPAT[@]/_/.}"; then
HAD_CLI=1
else
rm -r "${D}$(python_get_scriptdir)" || die
fi
}
pkg_postinst() {
optfeature "datetime support" dev-python/pytz
optfeature "dateutil support" dev-python/python-dateutil
optfeature "numpy support" dev-python/numpy
optfeature "django support" dev-python/django dev-python/pytz
optfeature "pandas support" dev-python/pandas
optfeature "pytest support" dev-python/pytest
}

View File

@@ -1,2 +1,2 @@
DIST pyghmi-1.6.6.tar.gz 280557 BLAKE2B da746222d0f281c899e9e7ef4458294e538eefe9036f51f81afd342e12a3b0fe8f650eb14aed5fab13c2ddb7e5a39567f0e72f48c35aae4cd1c4959e8426aa18 SHA512 0d3269e90467315c9767cae158bd1b6f89870337325cf7541e62b755adac2c7c263d9b6cef681f66747ddd80bbfdbb5338b85a16a2157a7ec74dd51ace076464
DIST pyghmi-1.6.7.tar.gz 282464 BLAKE2B 0605b1bb63d1e024e54f67ea3893a2aeac74d4704b8c9bf7a36cfe581eea6be659a1b92133026f75d7ee62f2eacb086f5700f8718d6b44d4a1332caecf11071d SHA512 0727d4b4e98ae3b5d7ee8edbb5756215abb896d1a47762eb41d0067cd73205d5234d8a63d53c272f7635f065aee77b80f7127471686744e2ead2219a2828b020
DIST pyghmi-1.6.8.tar.gz 282988 BLAKE2B 9b243bb061772f5b6edf9956b6117031a7d565504e26508acfb37b9bb0418136fb1afd388a860abaf9cf713c18ad685d6a37afa69d60ee2f6234a04c5617da8a SHA512 335e293c0e139d939c4ace9fc640a363cccf49f4c5ab05ddfd80f0a5d2cee5b845ca729a21a07f68ff61605d0f60dcecdf70e0882e9054ca67b0effcabc8a527

View File

@@ -1,4 +1,3 @@
DIST sphinx-8.2.3.gh.tar.gz 8378376 BLAKE2B ddfa406140bebcaa09299a56fedf1170db6504a9ce3807e20c555f5e088d81acbfd19f2621a824b91199713b301380fd2056cf2282ea81f4a0858dd714eb7e45 SHA512 23066d9e98f3e36ee34ac3bc5af45792762f858e1e670145b7d1db7e98fa9e9654d87a27b9316dd72704aeea75b53f73d07d22f723c915d23a95f59bbd4f6365
DIST sphinx-9.0.0.gh.tar.gz 8603500 BLAKE2B 7d855abd0a32b5474dcec23a880e6b4eeb7b7370320dccd869c1770e4d037575ea71941384c8c3c8764d44c123d481c8aac9d6149a82bb85529b267944f47151 SHA512 6be63da6a23cfd7dda90ff3907a9f5f3527a081e204c07523253d11612f91e9a5dad1772a4ba937306ca5ff1215e037a65782c398435c70c74aea5f22cc6e1a6
DIST sphinx-9.0.1.gh.tar.gz 8758828 BLAKE2B 274b2d67e6570a001d1e9248e1e56cd7340162295976a6889503cbca07a016bcef667a3e1bd8bcd98c949a52b3c685c2bf8e73a634e03a8fe33ead810fdaa49a SHA512 72fb9829c26d970d7434a4ecb429b314da57d98c3a89e55bbfc864947d769e5bad3c8a3621b14db72237edfec8a59aafeba6944e0a79cee668c6672c796c08c3
DIST sphinx-9.0.3.gh.tar.gz 8843780 BLAKE2B 4d3bb39c612f099cd93d99a7f808012a511aca7f885124de2a29aca9ff40e139cbbf340a0895a40c6e7747113839d9b69785ba501b26219b92b61f3c4a5225f9 SHA512 49014e02017d1d70a84c0877d24c13732ee936d456e01b72e53dcaa7009cdf18c9dd5d0c23d25adb718439999d2d82cbcd29ba7e97289c394f3a1cdb456fe8af
DIST sphinx-9.0.4.gh.tar.gz 8843746 BLAKE2B 4cae21fa2b980f529f58444c4cf793ec455f5a0ea43944fa44e9e99a3d03de48f88f170e6c7382dea99cd0bb895729ee0b43cafe2aef1e84a190ea244e4c08da SHA512 8652e6a65060a81609275afa6301bb0eaccda939e2988f86d548796a215a86c923c9240422497abe77652a436479930e81dfdf43fba9722b63a50542d3ac9522

View File

@@ -1,144 +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_{11..14} pypy3_11 )
PYTHON_REQ_USE="threads(+)"
inherit distutils-r1
MY_P=${P/_}
DESCRIPTION="Python documentation generator"
HOMEPAGE="
https://www.sphinx-doc.org/
https://github.com/sphinx-doc/sphinx/
https://pypi.org/project/Sphinx/
"
SRC_URI="
https://github.com/sphinx-doc/sphinx/archive/v${PV/_}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="BSD-2"
SLOT="0"
if [[ ${PV} != *_rc* ]]; then
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
fi
IUSE="doc latex"
RDEPEND="
>=dev-python/alabaster-0.7.14[${PYTHON_USEDEP}]
>=dev-python/babel-2.13[${PYTHON_USEDEP}]
<dev-python/docutils-0.23[${PYTHON_USEDEP}]
>=dev-python/docutils-0.20[${PYTHON_USEDEP}]
>=dev-python/imagesize-1.3[${PYTHON_USEDEP}]
>=dev-python/jinja2-3.1[${PYTHON_USEDEP}]
>=dev-python/packaging-23.0[${PYTHON_USEDEP}]
>=dev-python/pygments-2.14[${PYTHON_USEDEP}]
>=dev-python/requests-2.30.0[${PYTHON_USEDEP}]
>=dev-python/roman-numerals-py-1.0.0[${PYTHON_USEDEP}]
>=dev-python/snowballstemmer-2.2[${PYTHON_USEDEP}]
>=dev-python/sphinxcontrib-applehelp-1.0.7[${PYTHON_USEDEP}]
>=dev-python/sphinxcontrib-devhelp-1.0.6[${PYTHON_USEDEP}]
>=dev-python/sphinxcontrib-htmlhelp-2.0.6[${PYTHON_USEDEP}]
>=dev-python/sphinxcontrib-jsmath-1.0.1[${PYTHON_USEDEP}]
>=dev-python/sphinxcontrib-qthelp-1.0.6[${PYTHON_USEDEP}]
>=dev-python/sphinxcontrib-serializinghtml-1.1.9[${PYTHON_USEDEP}]
latex? (
dev-texlive/texlive-latexextra
dev-texlive/texlive-luatex
app-text/dvipng
)
"
BDEPEND="
>=dev-python/flit-core-3.11
doc? (
dev-python/sphinxcontrib-websupport[${PYTHON_USEDEP}]
media-gfx/graphviz
)
test? (
app-text/dvipng
>=dev-python/cython-3.0.0[${PYTHON_USEDEP}]
>=dev-python/defusedxml-0.7.1[${PYTHON_USEDEP}]
dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
>=dev-python/setuptools-67.0[${PYTHON_USEDEP}]
dev-texlive/texlive-fontsextra
dev-texlive/texlive-latexextra
dev-texlive/texlive-luatex
virtual/imagemagick-tools[jpeg,png,svg]
)
"
PATCHES=(
"${FILESDIR}/sphinx-3.2.1-doc-link.patch"
)
EPYTEST_PLUGINS=()
EPYTEST_RERUNS=5
# EPYTEST_XDIST breaks stuff
distutils_enable_tests pytest
python_prepare_all() {
# roman-numerals-py has been renamed (no -py), but the package can't be pkgmoved "yet".
# For rc1, simply fix pip check by using the old name.
sed -i -e 's:roman-numerals:roman-numerals-py:' pyproject.toml || die
# disable internet access
sed -i -e 's:^intersphinx_mapping:disabled_&:' \
doc/conf.py || die
distutils-r1_python_prepare_all
}
python_compile_all() {
# we can't use distutils_enable_sphinx because it would
# introduce a dep on itself
use doc && build_sphinx doc
}
python_test() {
mkdir -p "${BUILD_DIR}/sphinx_tempdir" || die
local -x SPHINX_TEST_TEMPDIR="${BUILD_DIR}/sphinx_tempdir"
local EPYTEST_DESELECT=()
case ${EPYTHON} in
pypy3.11)
EPYTEST_DESELECT+=(
# TODO
tests/test_util/test_util_inspect.py::test_is_classmethod_descriptor
tests/test_util/test_util_inspect.py::test_is_builtin_classmethod_like
# minor repr() differences
tests/test_util/test_util_typing.py::test_restify
tests/test_util/test_util_typing.py::test_stringify_annotation
tests/test_util/test_util_typing.py::test_stringify_type_union_operator
# from pypy3 era
tests/test_ext_autodoc/test_ext_autodoc.py::test_autodoc_exception
tests/test_ext_autodoc/test_ext_autodoc.py::test_autodoc_ignore_module_all
tests/test_ext_autodoc/test_ext_autodoc.py::test_autodoc_inherited_members_None
tests/test_ext_autodoc/test_ext_autodoc.py::test_autodoc_subclass_of_builtin_class
tests/test_ext_autodoc/test_ext_autodoc.py::test_automethod_for_builtin
tests/test_ext_autodoc/test_ext_autodoc.py::test_cython
tests/test_ext_autodoc/test_ext_autodoc.py::test_partialfunction
tests/test_ext_autodoc/test_ext_autodoc_autoclass.py::test_autodoc_process_bases
tests/test_ext_autodoc/test_ext_autodoc_autoclass.py::test_show_inheritance_for_decendants_of_generic_type
tests/test_ext_autodoc/test_ext_autodoc_autoclass.py::test_show_inheritance_for_subclass_of_generic_type
tests/test_ext_autodoc/test_ext_autodoc_autofunction.py::test_builtin_function
tests/test_ext_autodoc/test_ext_autodoc_autofunction.py::test_methoddescriptor
tests/test_ext_autodoc/test_ext_autodoc_automodule.py::test_automodule_inherited_members
tests/test_ext_autodoc/test_ext_autodoc_preserve_defaults.py::test_preserve_defaults_special_constructs
tests/test_ext_autodoc/test_ext_autodoc_signatures.py::test_format_class_signatures_text_signature
tests/test_ext_autodoc/test_ext_autodoc_signatures.py::test_format_class_signatures_no_text_signature
tests/test_ext_autodoc/test_ext_autodoc_signatures.py::test_format_method_signatures_error_handling
tests/test_ext_autosummary/test_ext_autosummary.py::test_autosummary_generate_content_for_module
tests/test_ext_autosummary/test_ext_autosummary.py::test_autosummary_generate_content_for_module_skipped
tests/test_util/test_util_inspect.py::test_isattributedescriptor
tests/test_util/test_util_inspect.py::test_signature
tests/test_util/test_util_typing.py::test_is_invalid_builtin_class
)
;;
esac
epytest
}

View File

@@ -1,3 +1,4 @@
DIST translate-3.16.3.gh.tar.gz 1182562 BLAKE2B 25ea88b5490891140670cdc384c9c1a318dce0085d6b9c8f6b1a7fbb0892a2e6eb80c26c02fa4890d3ec45c0d9c3958d7c3c4c33dba76d1ee03d977ee0a6863a SHA512 e2e59ca01769a88fd7c6367d0e1e8b96da9f950b600fc62eecae9aed4ad072877b1fd1a6742f0588b2b27d33f6652e98db4c90e63fb4d09481a651019beaee44
DIST translate-3.17.2.gh.tar.gz 1237809 BLAKE2B b7f1ea65990ac2b5380e674cadc47c1df6ff2476afed25d36b8c636b4d0fba32005086015b03425bdea38f4b22ed7c53d1b664ed92a06aa65f80720e34c49072 SHA512 8658101eec4d4da05c34f4e7b4e0fb77bf8f576bf867118bd4f5b39609fb7d67064412dfab514edc448331b93fd12c148e53cff57c6b1fe1155427059ad7821a
DIST translate-3.17.3.gh.tar.gz 1241480 BLAKE2B 2c3e32f1959b37903214005bb360a0efd9c3b8ebbd8c1996be0af80aa753e109512656c896c51cf9a1e0f449fef47116938e5c92a9828c21cd5a3cd6a2bc4315 SHA512 8d5c83b10a706300ba73310469b1e1857338c6dffa5790765fee316c183b832b3f142080759fd6155fcfa716613c6019be17b3ad70ffcf57eeb27e7eb5b62397
DIST translate-3.17.4.gh.tar.gz 1242234 BLAKE2B da13cc36d463c7f50724b1f398d77e817db03abe2ca9bbc19de6900f48de839feff63b7efcbf76e4eb6d252525e56d0abe67403102f2eaf45c5bcc2007f00e55 SHA512 1ee5a3bb82cd7cd57e6ab3cc95469c0c1b00018accb0129fda909317dfd62df77ea69061fddec9838c8e5f0e76fc45c130c93ce99d2e628b508551e573ef9279

View File

@@ -0,0 +1,129 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{11..14} )
PYTHON_REQ_USE="sqlite"
inherit distutils-r1
MY_P=translate-${PV}
DESCRIPTION="Toolkit to convert between many translation formats"
HOMEPAGE="
https://github.com/translate/translate/
https://pypi.org/project/translate-toolkit/
"
SRC_URI="
https://github.com/translate/translate/archive/${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S="${WORKDIR}"/${MY_P}
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~arm64"
IUSE="+html +ical +ini +subtitles +yaml"
RDEPEND="
app-text/iso-codes
>=dev-python/chardet-3.0.4[${PYTHON_USEDEP}]
dev-python/cheroot[${PYTHON_USEDEP}]
>=dev-python/levenshtein-0.12.0[${PYTHON_USEDEP}]
>=dev-python/lxml-5.2.0[${PYTHON_USEDEP}]
>=dev-python/mistletoe-1.1.0[${PYTHON_USEDEP}]
>=dev-python/pyparsing-3[${PYTHON_USEDEP}]
dev-python/ruamel-yaml[${PYTHON_USEDEP}]
dev-python/tomlkit[${PYTHON_USEDEP}]
>=dev-python/unicode-segmentation-rs-0.2.0[${PYTHON_USEDEP}]
>=dev-python/wcwidth-0.2.14[${PYTHON_USEDEP}]
sys-devel/gettext
html? ( dev-python/utidylib[${PYTHON_USEDEP}] )
ical? ( dev-python/vobject[${PYTHON_USEDEP}] )
ini? ( >=dev-python/iniparse-0.5[${PYTHON_USEDEP}] )
subtitles? ( media-video/gaupol[${PYTHON_USEDEP}] )
yaml? ( dev-python/pyyaml[${PYTHON_USEDEP}] )
"
# Technically, the test suite also has undeclared dependency
# on dev-python/snapshottest but all the tests using it are broken
# anyway, so we skip them.
BDEPEND="
test? (
dev-python/phply[${PYTHON_USEDEP}]
)
"
EPYTEST_PLUGINS=()
EPYTEST_XDIST=1
distutils_enable_tests pytest
src_prepare() {
distutils-r1_src_prepare
# strip unnecessary pins
sed -i -e 's:,<[0-9.]*::' pyproject.toml || die
}
src_test() {
# unfortunately, this bad quality package doesn't support XDG_DATA_DIRS
# correctly, so we need to reassemble all data files in a single directory
local -x XDG_DATA_HOME=${T}/share
cp -r translate/share "${T}/" || die
cp -r "${ESYSROOT}"/usr/share/gaupol "${XDG_DATA_HOME}"/ || die
distutils-r1_src_test
}
python_test() {
local EPYTEST_DESELECT=(
# Fails with network-sandbox (and even with it off but w/ softer fail)
'tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff'
'tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff'
# all tests based on snapshottest are broken and I'm too tired
# to figure this out
tests/translate/tools/test_pocount.py::test_{cases,output}
tests/translate/tools/test_junitmsgfmt.py::test_output
)
local EPYTEST_IGNORE=(
# unpackaged fluent.*
tests/translate/storage/test_fluent.py
# changes directory and does not change it back, sigh
tests/odf_xliff/test_odf_xliff.py
)
if ! has_version "dev-python/iniparse[${PYTHON_USEDEP}]"; then
EPYTEST_IGNORE+=(
translate/convert/test_ini2po.py
translate/convert/test_po2ini.py
)
fi
if ! has_version "media-video/gaupol[${PYTHON_USEDEP}]"; then
EPYTEST_IGNORE+=(
translate/storage/test_subtitles.py
)
fi
epytest
}
python_install_all() {
distutils-r1_python_install_all
insinto /usr
doins -r translate/share
if ! use html; then
rm "${ED}"/usr/bin/{html2po,po2html} || die
fi
if ! use ical; then
rm "${ED}"/usr/bin/{ical2po,po2ical} || die
fi
if ! use ini; then
rm "${ED}"/usr/bin/{ini2po,po2ini} || die
fi
if ! use subtitles; then
rm "${ED}"/usr/bin/{sub2po,po2sub} || die
fi
}

View File

@@ -1,2 +1 @@
DIST txaio-25.6.1.tar.gz 58709 BLAKE2B b1dd0801752c16753238d5afa2c5f7f96cc684ff5d5cc1764715f768a589dfd2b488bb3450eac7e7c7228dbb8bebf7770ed2da1303b6bd815edcae9058340767 SHA512 70ebf010c8baf9a374437ef6670215fef29a27f9b15839181031149e712ecb2a9bfeb0554df1a223f1f073d76de38497e01e2e5289622a9249740afc663b4dfb
DIST txaio-25.9.2.tar.gz 50008 BLAKE2B ac43909f92370475d9ef64b8a64a454dbec1f3c28cac13d876ea7877b4f0b92d274867eabbdca7bceae5d32588e2e6befde2399e09a293e5a0548222cb1d1e6e SHA512 6a9ade6b8a7a7a29b96d8bc2a9ee5c2981270000b44736a753ef32aa6aa5f40b0fb0302d0b789795b313379eec236e8e5d02c5bebeefff1832a276994716794d

View File

@@ -1,39 +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_{11..13} )
inherit distutils-r1 optfeature pypi
DESCRIPTION="Compatibility API between asyncio/Twisted/Trollius"
HOMEPAGE="
https://github.com/crossbario/txaio/
https://pypi.org/project/txaio/
"
LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 arm arm64 ~riscv ~sparc x86 ~amd64-linux ~x86-linux"
IUSE="test"
RESTRICT="!test? ( test )"
BDEPEND="
test? (
dev-python/test[${PYTHON_USEDEP}]
)
"
EPYTEST_PLUGINS=()
distutils_enable_tests pytest
EPYTEST_DESELECT=(
# we certainly don't need to test "python setup.py sdist" here
test/test_packaging.py
)
pkg_postinst() {
optfeature "Twisted support" "dev-python/twisted dev-python/zope-interface"
}