dev-python/coverage: Bump to 7.8.2

Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
Michał Górny 2025-05-23 17:29:19 +02:00
parent d697349180
commit 623d013380
No known key found for this signature in database
GPG Key ID: 639ADAE2329E240E
2 changed files with 110 additions and 0 deletions

View File

@ -1,2 +1,3 @@
DIST coverage-7.8.0.tar.gz 811872 BLAKE2B e2054d58c31fb772b907220d2d8a768242208eb8ab829b579d3a1b081ae9169d8231bf79488e581ef95f53aa22682807fb74200859d8f49a739a3d9ac9859546 SHA512 ccc502d28a2a14ed9fa0b18a87b73ae0a3bd806948ca0887285c388399fa21aa8433d6fa2734ef6c42c92537edb7221406a91aab52b3cfb78bd8b77e6bea394c
DIST coverage-7.8.1.tar.gz 812193 BLAKE2B 09a3cfb3844395e732985b32a36c11d8aac22b994d77097e3fe37690079ca909e2ae8b0f72ac6f179eb4cbd74aeacb44ddb488ca5186c472ae2280abb7ccf4bc SHA512 208585f522a4c720e31b45b5975ea2e91c30a19d91fa0df88e9f36cc16e173bdcb19b5bc7e15da31769a0b3dd693ca951e45faccc7782fa17e8fb27133bcba7d
DIST coverage-7.8.2.tar.gz 812759 BLAKE2B 2a60c71bcfd4103f1315fb8b12e9553cc789fd83f626f1e141a0333c5373f052f5b94503c00029c809d030d433a5880432f7e3344deea3c774b48f2fcd3f960d SHA512 e36ddf3eacbe0340433e83d6449c8b497647823fdfeba8d06d7d395e2f86a6c8976f86dc71600bb3b5b58662053e13d9cad7db524d6003f477c4fae3753de04c

View File

@ -0,0 +1,109 @@
# 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
PYTHON_COMPAT=( python3_{11..14} pypy3_11 )
PYTHON_REQ_USE="threads(+),sqlite(+)"
inherit distutils-r1 pypi
DESCRIPTION="Code coverage measurement for Python"
HOMEPAGE="
https://coverage.readthedocs.io/en/latest/
https://github.com/nedbat/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/flaky[${PYTHON_USEDEP}]
dev-python/hypothesis[${PYTHON_USEDEP}]
dev-python/pytest-xdist[${PYTHON_USEDEP}]
>=dev-python/unittest-mixins-1.4[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
src_prepare() {
distutils-r1_src_prepare
sed -i -e '/addopts/s:-q -n auto::' pyproject.toml || die
}
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 -p flaky -p hypothesis -p xdist tests
}
python_test() {
local EPYTEST_DESELECT=(
# TODO: fails because of additional "Terminated" print on SIGTERM
tests/test_concurrency.py::SigtermTest::test_sigterm_threading_saves_data
# 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
)
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 -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
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
fi
test_tracer pytrace
case ${EPYTHON} in
python3.1[01]|pypy3|pypy3.11)
;;
*)
# available since Python 3.12
test_tracer sysmon
;;
esac
if [[ -n ${c_ext} ]]; then
rm coverage/*.so || die
fi
}