diff --git a/dev-python/hypothesis/Manifest b/dev-python/hypothesis/Manifest index 2a8aedfd31867..ce6674a1c39c5 100644 --- a/dev-python/hypothesis/Manifest +++ b/dev-python/hypothesis/Manifest @@ -13,6 +13,7 @@ DIST hypothesis-6.165.1.gh.tar.gz 9677686 BLAKE2B 89efd4cceac0e13f20651d1624fd7b DIST hypothesis-6.165.2.gh.tar.gz 9690432 BLAKE2B 3060e1bdf0e9d6a4d6cca9a505a3964a15ac2c87aece049f92107cf03c7b19fbc26a96d1cf97517fcbe682577c49296598b8e3e53566ea911bc82f8bc56497ef SHA512 0fc89a80f23a05184443f16050fc81c7a39a33e9787add96b9d56ffca43c9b6e51db1aaaa8a26d89e2d6de21c770b7b787e1580f1863a24b6ac3b2c2f29f9703 DIST hypothesis-6.165.3.gh.tar.gz 9690125 BLAKE2B 2e7e38489dd1cf0986cefb06fc825f22be31fdc2f388c9f76d379290b7a020a61aab864cbf6e6ee78ed81dae6d024e6d400b607f37e8cf79eeb610d28cec0c05 SHA512 50690692c3e230edee1c5d7c65fca50ffb359eba5ba9ed8d048997db8b61164c978e7978b91ffd93da0d786f5d49813ac34a308e225de906e5efa9b791b9db63 DIST hypothesis-6.165.4.gh.tar.gz 9693372 BLAKE2B 6f3786d9f4eca7086dcc305935d80a9f9fefe1703ac7c9299170eb3a8699f8d009744fcd8dbec0dcae2ded6343c91b8515d6b2492d81e8623d7d5deec6d2a70f SHA512 c5051671fa665d7ad7c3871e4d5ee154493c1338bd831a2260102d93fc16b52425d6778db1d6d884a43340015a8b36b9b51e5bd92f3f7b238695ee6cc0a640e1 +DIST hypothesis-6.165.6.gh.tar.gz 9693494 BLAKE2B ced341367cf4d5fc4bbad26ba8df0b06d4d14695def0d8649e0fdbaf77062f1968883c71f32408b196f8980fe6432f96c2792add469124a8d5d329c7428cd7d1 SHA512 465c03263edc5f36b3a956f93ed0e46f71908af2b738e21653a453302b2c11b82e8c1e51e931fe19d70b9f12f7189b04ff22097690b2b43fa63c96d48e64f481 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.165.6.ebuild b/dev-python/hypothesis/hypothesis-6.165.6.ebuild new file mode 100644 index 0000000000000..bc33d435bcd7c --- /dev/null +++ b/dev-python/hypothesis/hypothesis-6.165.6.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=( "${CLI_COMPAT[@]}" python3_{14..15}t ) +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.2 + pyo3-ffi@0.29.2 + pyo3-macros-backend@0.29.2 + pyo3-macros@0.29.2 + pyo3@0.29.2 + 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 +}