summaryrefslogtreecommitdiff
path: root/dev-python
diff options
context:
space:
mode:
Diffstat (limited to 'dev-python')
-rw-r--r--dev-python/hypothesis/Manifest1
-rw-r--r--dev-python/hypothesis/hypothesis-6.138.15.ebuild125
2 files changed, 126 insertions, 0 deletions
diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest
index 63d782354fb8..9c95983cade0 100644
--- a/dev-python/hypothesis/Manifest
+++ b/dev-python/hypothesis/Manifest
@@ -5,3 +5,4 @@ DIST hypothesis-6.137.3.gh.tar.gz 9612265 BLAKE2B bc0c98872b08013194a11cad69e076
DIST hypothesis-6.138.11.gh.tar.gz 9621956 BLAKE2B d34c0a090720e4e7dac54a6726d42364ee80e23ada78f75e1fc3e1061a07a03eb16fa2832c850b88b773afcdbe8eea06f9539d5563dd284145cf38219050c340 SHA512 dea6a341d515d3372851d70caa518ceee78a658c58a11a5a830aeacc7c262ecba4ad676d3ce297cdd8dd7463830a17f6aaccd64d704887b2ced426377c316170
DIST hypothesis-6.138.13.gh.tar.gz 9622656 BLAKE2B a9f834b0be3b003a482aa1a327eeff5599236bb765a4c25dfb5408e354062fa5b0c0cedefee527fba439d9c944f3f842f72ca60eb94f596a13a5a8e0bf9f9c8d SHA512 336f4ab84d512efd0341608ffcfae7348b64b38bb88a0a4a7c4aa2756e0013bec188d2b44d1f80e25d4050dd2adbad6aa20ee6c4757a0533888c613d4d59ce8c
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
diff --git a/dev-python/hypothesis/hypothesis-6.138.15.ebuild b/dev-python/hypothesis/hypothesis-6.138.15.ebuild
new file mode 100644
index 000000000000..03e757724d85
--- /dev/null
+++ b/dev-python/hypothesis/hypothesis-6.138.15.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
+}