diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest index ab46c382726b9..27ff5ca97f5a5 100644 --- a/dev-python/hypothesis/Manifest +++ b/dev-python/hypothesis/Manifest @@ -7,3 +7,4 @@ DIST hypothesis-6.138.13.gh.tar.gz 9622656 BLAKE2B a9f834b0be3b003a482aa1a327eef DIST hypothesis-6.138.14.gh.tar.gz 9622789 BLAKE2B b982031224ba8c800a3b17bde04305db7c979d7e80839d3935ee4383f1900ef8b176722a1ed27b2889336e22eb140cb9c21de5b014345274d70093c9c7d6b5b9 SHA512 11a263e950d2bd51feb219e20423be5ac550d6a2c0a81d3f42d3a347ba8b5e569cb1652725c914219050d860c3f6c301226766416e79f0ee37e531f2a8673de3 DIST hypothesis-6.138.15.gh.tar.gz 9622869 BLAKE2B 0192a1eeb3944fd3fd031f80b6cc039ae89916a9197294e27d5ad2684a77652894d27f9cc4c98c6abd20ef811b110d8e37dcd83e45beaf2dba84c8913fc0f7c9 SHA512 5c36c74444828dfc9c10a493959fd58fceceb12a236a4f9e2107eaa5b0413639d970abc3053efbe18f3e030220f1dc0bd0ca327ebfed59069862b969a599a5f5 DIST hypothesis-6.138.16.gh.tar.gz 9622785 BLAKE2B 2092fb0131942f1e28145b92553b692281b3dcb79c68175c1649d2f31c5170acf009662f9ec52a9a288fcbe428af0ec285f13761db2de624fc67b0832c720374 SHA512 fe607d96b216d19753a1cb0c46729f2547d7d790d437e1a02be3b089cb29920a5e819683105523a2b024c6692b1ed7849b705b25458cc1d655b0370451e5c0d9 +DIST hypothesis-6.138.17.gh.tar.gz 9622806 BLAKE2B ab53606527145ef5a33cdcf1771158d1a92acf45737b68f32270eaa3f3bb6a03665877cd3ea5a787481e5fe549f269f00d93d7552832379c52347d334d4c96fe SHA512 f0a7667f27580732b5a1f2c6ed69fbe03e7f0db828d4633b9a32956fff19aa8472776dafdb48a1b65c03d7faf1afa532dd6f24298ddbeb322bcc79a993cbff7b diff --git a/dev-python/hypothesis/hypothesis-6.138.17.ebuild b/dev-python/hypothesis/hypothesis-6.138.17.ebuild new file mode 100644 index 0000000000000..03e757724d854 --- /dev/null +++ b/dev-python/hypothesis/hypothesis-6.138.17.ebuild @@ -0,0 +1,125 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +CLI_COMPAT=( python3_{11..13} ) +PYTHON_COMPAT=( "${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 +}