From 19f09dc6ff79ca85cdfd41fa9a0830d8277148b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= Date: Mon, 21 Jul 2025 04:03:48 +0200 Subject: [PATCH] dev-python/hypothesis: Bump to 6.136.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- dev-python/hypothesis/Manifest | 1 + .../hypothesis/hypothesis-6.136.1.ebuild | 127 ++++++++++++++++++ 2 files changed, 128 insertions(+) create mode 100644 dev-python/hypothesis/hypothesis-6.136.1.ebuild diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest index 754b6925d5c64..55f71cacd458d 100644 --- a/dev-python/hypothesis/Manifest +++ b/dev-python/hypothesis/Manifest @@ -1,2 +1,3 @@ DIST hypothesis-6.135.25.gh.tar.gz 9592222 BLAKE2B 42538cd2fa63968ea75cc42dfa92f998d50fb92e77726c8eee42e10c94ec69ea5a682e070e3c04bfe49b229cbf03e26d4ab04ac7dabe2c34f81e217ad8491f90 SHA512 bb245d38ac9f2b0aced7890cb6c7cba4ce4b98ccb8f843afe02094a63058aad63f6c7c4ad2dcaa4af753f5823544d394875049a0b56ea2d98f84db39351a7668 DIST hypothesis-6.136.0.gh.tar.gz 9596080 BLAKE2B 65acbc8ea75e6fea22d7ee1329f68426a810b8e2fa5d31b37bb191a793a21e085d79b39de304a17979eebf3edc7202e2935e8fc3abef4e05d10aba648ff74ac9 SHA512 fb1cff6f9b6f48975928550c10bf13f9fcd48e32bb9363faf9abb204bf426ff980d6480688d06648ccc0163d0235e40b6c47ff2a1c988182ab35dc87b3434dcf +DIST hypothesis-6.136.1.gh.tar.gz 9596297 BLAKE2B d9131ab81383ca13804ed628b6a0084c63d964d9d12e91d3eaf3d94077498a4ceafac19d8dee75b95a800e134b3189b9577610b0c874dacf7c5a385ddb86f2d0 SHA512 8aef18e5a51f4a40f7dd04dcab1ba61a4dec3a9449891a1869a444cb8274e7cc71940f8412486f258ca822f74adcb3f3bee96f5ded7e464498a0fc4543b03146 diff --git a/dev-python/hypothesis/hypothesis-6.136.1.ebuild b/dev-python/hypothesis/hypothesis-6.136.1.ebuild new file mode 100644 index 0000000000000..4e65831c95993 --- /dev/null +++ b/dev-python/hypothesis/hypothesis-6.136.1.ebuild @@ -0,0 +1,127 @@ +# 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_PLUGINS=( pytest-rerunfailures ) +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 + + # subtests are broken by warnings from random plugins + local -x PYTEST_PLUGINS=xdist.plugin,_hypothesis_pytestplugin + local -x HYPOTHESIS_NO_PLUGINS=1 + + epytest -o filterwarnings= --reruns=5 \ + tests/cover tests/pytest tests/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 +}