diff options
| author | Michał Górny <mgorny@gentoo.org> | 2025-12-09 07:33:21 +0100 |
|---|---|---|
| committer | Michał Górny <mgorny@gentoo.org> | 2025-12-09 07:33:35 +0100 |
| commit | a9acfa0139a97ec11b9581de02921e32cc9c4554 (patch) | |
| tree | eb463bc2ef0b9e6f384c57d70a5adf40eb596f91 /dev-python/coverage | |
| parent | 6e9cbafb21de26ac4825ccccbf877c4a2bb7ac0f (diff) | |
| download | gentoo-a9acfa0139a97ec11b9581de02921e32cc9c4554.tar.gz gentoo-a9acfa0139a97ec11b9581de02921e32cc9c4554.tar.bz2 gentoo-a9acfa0139a97ec11b9581de02921e32cc9c4554.zip | |
dev-python/coverage: Bump to 7.13.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/coverage')
| -rw-r--r-- | dev-python/coverage/Manifest | 2 | ||||
| -rw-r--r-- | dev-python/coverage/coverage-7.13.0.ebuild | 110 |
2 files changed, 112 insertions, 0 deletions
diff --git a/dev-python/coverage/Manifest b/dev-python/coverage/Manifest index f41d83577770..33d1401cf50d 100644 --- a/dev-python/coverage/Manifest +++ b/dev-python/coverage/Manifest @@ -5,3 +5,5 @@ DIST coverage-7.12.0.tar.gz 819341 BLAKE2B 0f3a0a333eedf3ab4af3f3765e94b3f61dbd6 DIST coverage-7.12.0.tar.gz.provenance 9411 BLAKE2B d8d2374aa98f280396f83081d292ec221457c9a5a81edebcb3bb10c685addb9e4484213ac708a570c427bf0b75bd846f5a24140a0cbf99406c7a9514d108aa37 SHA512 1a4b5541597b0c0d6b98cbd45e35d45787c539e1a0e47d36d2ba740746483e12fab1bd6461c6a59e2d45faa139ad38524e8ec89e47a36eeac9f5161acc00eedf DIST coverage-7.12.1b1.tar.gz 819749 BLAKE2B 42fc733a7a2bb63ca67e99b061265308931915e23b76d8aacfe18bf4e044f18962724547603994bf32e7ee0321943cf98372d01648fb24416b08f27278e03da8 SHA512 f350de86ac107e6699420714cca7db6323bfb8f9f9cdee8a9c5815c26bf8722852a56cc824d3df36b404952d8e29575dcd05789c72a4eec437e5174cef1736ff DIST coverage-7.12.1b1.tar.gz.provenance 9309 BLAKE2B e7c5dc9c2aed9b568cbdabbcfe549c907f0b186e30f921db790a26c51bdaef7cb74edd604827b300eb25d050287f939003cd267980c37d232ecb1bd3b3cb1f10 SHA512 26b1a8af0f4e403269c489756d1ea7511fb1eeb37680d794f14722c3190cd62fdc04a7c2ad0252b9d96594872e0342534ad953321eed8075106fd1e108150940 +DIST coverage-7.13.0.tar.gz 820905 BLAKE2B af75e323af131ad63a05701104fef481ac5933ae1dd0f362edd3ff845405208004dc918892fff0bf6d03e8113eb1ea502f8ae55c3e898f5d316aa3e3038954d8 SHA512 81266ccb108674f66acb285c2efa101d523c447727c21006f17c73b7772505f4ea4423ec4db1a48185613392f385d769dcf2d0dc7a6075a559efe6fc1b778a4a +DIST coverage-7.13.0.tar.gz.provenance 9487 BLAKE2B b941746acf4c1d076c4e39cbc020ba3a5e5e85fc555bd52b53e079c26f16c9baf5b56f2e3a606c86802910e9596fb4bde775fb409953d1719edbc75f439b3e5e SHA512 9d90434deed22bfebaf87b7a3e85a184ec4776132135fe9dc4fa81be265bef23b6aa4249330c889362c77c9dbc9209bc24118c0b59f99218262587951db3621a diff --git a/dev-python/coverage/coverage-7.13.0.ebuild b/dev-python/coverage/coverage-7.13.0.ebuild new file mode 100644 index 000000000000..2426c05f2db9 --- /dev/null +++ b/dev-python/coverage/coverage-7.13.0.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_EXT=1 +DISTUTILS_USE_PEP517=setuptools +PYPI_VERIFY_REPO=https://github.com/coveragepy/coveragepy +PYTHON_COMPAT=( python3_{11..14} pypy3_11 ) +PYTHON_REQ_USE="threads(+),sqlite(+)" + +inherit distutils-r1 multiprocessing pypi + +DESCRIPTION="Code coverage measurement for Python" +HOMEPAGE=" + https://coverage.readthedocs.io/en/latest/ + https://github.com/coveragepy/coveragepy/ + https://pypi.org/project/coverage/ +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" +IUSE="+native-extensions" + +BDEPEND=" + test? ( + >=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}] + ) +" + +EPYTEST_PLUGINS=( hypothesis pytest-{rerunfailures,xdist} ) +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +python_compile() { + if ! use native-extensions; then + local -x COVERAGE_DISABLE_EXTENSION=1 + fi + + distutils-r1_python_compile +} + +test_tracer() { + local -x COVERAGE_CORE=${1} + einfo " Testing with the ${COVERAGE_CORE} core ..." + epytest -o addopts= "${@:2}" tests +} + +python_test() { + local EPYTEST_DESELECT=( + # broken because of pytest plugins explicity loaded + tests/test_debug.py::ShortStackTest::test_short_stack{,_skip} + # these expect specific availability of C extension matching + # COVERAGE_CORE (which breaks testing pytracer on CPython) + tests/test_cmdline.py::CmdLineStdoutTest::test_version + tests/test_debug.py::DebugTraceTest::test_debug_sys_ctracer + # mismatch of expected concurrency in error message + # TODO: report upstream? + tests/test_concurrency.py::ConcurrencyTest::test_greenlet + tests/test_concurrency.py::ConcurrencyTest::test_greenlet_simple_code + # packaging tests, fragile to setuptools version + tests/test_setup.py + # looks like a difference in exit status reporting? + # https://github.com/nedbat/coveragepy/issues/2008 + tests/test_process.py::ProcessTest::test_save_signal_usr1 + ) + local EPYTEST_IGNORE=( + # pip these days insists on fetching build deps from Internet + tests/test_venv.py + ) + + "${EPYTHON}" igor.py zip_mods || die + + local -x COVERAGE_TESTING=True + # TODO: figure out why they can't be imported inside test env + local -x COVERAGE_NO_CONTRACTS=1 + + local jobs=${EPYTEST_JOBS:-$(makeopts_jobs)} + local xdist_args=() + if [[ ${jobs} -gt 1 ]]; then + # required upstream to avoid cross-test conflicts + xdist_args+=( --dist=loadgroup ) + fi + + local prev_opt=$(shopt -p nullglob) + shopt -s nullglob + local c_ext=( "${BUILD_DIR}/install$(python_get_sitedir)"/coverage/*.so ) + ${prev_opt} + + if [[ -n ${c_ext} ]]; then + cp "${c_ext}" coverage/ || die + test_tracer ctrace "${xdist_args[@]}" + fi + + test_tracer pytrace "${xdist_args[@]}" + + case ${EPYTHON} in + *3.11) + ;; + *) + # available since Python 3.12 + test_tracer sysmon "${xdist_args[@]}" + ;; + esac + + if [[ -n ${c_ext} ]]; then + rm coverage/*.so || die + fi +} |
