forked from pool/python-coverage
Compare commits
7 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| 8c105e5cc4 | |||
| 1dce80791d | |||
| 4c19dc7d40 | |||
| dd1e48911f | |||
| 2eea3f1bf2 | |||
| c38d47df63 | |||
| 170423b153 |
3
_multibuild
Normal file
3
_multibuild
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<multibuild>
|
||||||
|
<package>test</package>
|
||||||
|
</multibuild>
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:953510dfb7b12ab69d20135a0662397f077c59b1e6379a768e97c59d852ee51d
|
|
||||||
size 798791
|
|
||||||
BIN
coverage-7.7.1.tar.gz
LFS
Normal file
BIN
coverage-7.7.1.tar.gz
LFS
Normal file
Binary file not shown.
@@ -1,3 +1,119 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Aug 19 10:42:47 UTC 2025 - Daniel Garcia <daniel.garcia@suse.com>
|
||||||
|
|
||||||
|
- Add _multibuild for running tests, it's required to call "coverage"
|
||||||
|
command when using libalternatives.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Aug 14 12:33:02 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
- Convert to libalternatives on SLE-16-based and newer systems
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Mar 27 09:44:38 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
- update to 7.7.1
|
||||||
|
* The Coverage object has a new method, .Coverage.branch_stats
|
||||||
|
for getting simple branch information for a module.
|
||||||
|
* The Coverage constructor<.Coverage> now has a plugins parameter
|
||||||
|
for passing in plugin objects directly.
|
||||||
|
* Many constant tests in if statements are now recognized as
|
||||||
|
being optimized away.
|
||||||
|
* The experimental sys.monitoring support now works for branch
|
||||||
|
coverage if you are using Python 3.14.0 alpha 6 or newer.
|
||||||
|
* A few small tweaks to the sys.monitoring support for Python 3.14.
|
||||||
|
Please test!
|
||||||
|
- Add setuptools77.patch to fix tests with setuptools 77
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 2 14:15:50 UTC 2025 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 7.6.10:
|
||||||
|
* Fix: some descriptions of missing branches in HTML and LCOV
|
||||||
|
reports were incorrect when multi-line statements were
|
||||||
|
involved (issue 1874 and issue 1875). These are now fixed.
|
||||||
|
* Fix: Python 3.14 defers evaluation of annotations by moving
|
||||||
|
them into separate code objects. That code is rarely
|
||||||
|
executed, so coverage.py would mark them as missing, as
|
||||||
|
reported in issue 1908. Now they are ignored by coverage
|
||||||
|
automatically.
|
||||||
|
* Fixed an obscure and mysterious problem on PyPy 3.10
|
||||||
|
seemingly involving mocks, imports, and trace functions:
|
||||||
|
issue 1902. To be honest, I don't understand the problem or
|
||||||
|
the solution, but git bisect helped find it, and now it's
|
||||||
|
fixed.
|
||||||
|
* Docs: re-wrote the :ref:`subprocess` page to put
|
||||||
|
multiprocessing first and to highlight the correct use of
|
||||||
|
:class:`multiprocessing.Pool
|
||||||
|
<python:multiprocessing.pool.Pool>`.
|
||||||
|
* Fix: Tomas Uribe fixed a performance problem in the XML
|
||||||
|
report. Large code bases should produce XML reports much
|
||||||
|
faster now.
|
||||||
|
* Fix: the LCOV report code assumed that a branch line that
|
||||||
|
took no branches meant that the entire line was unexecuted.
|
||||||
|
This isn't true in a few cases: the line might always raise
|
||||||
|
an exception, or might have been optimized away. Fixes issue
|
||||||
|
1896.
|
||||||
|
* Fix: similarly, the HTML report will now explain that a line
|
||||||
|
that jumps to none of its expected destinations must have
|
||||||
|
always raised an exception. Previously, it would say
|
||||||
|
something nonsensical like, "line 4 didn't jump to line 5
|
||||||
|
because line 4 was never true, and it didn't jump to line 7
|
||||||
|
because line 4 was always true." This was also shown in
|
||||||
|
issue 1896.
|
||||||
|
* Fix: ugh, the other assert from 7.6.5 can also be encountered
|
||||||
|
in the wild, so it's been restored to a conditional. Sorry
|
||||||
|
for the churn.
|
||||||
|
* One of the new asserts from 7.6.5 caused problems in real
|
||||||
|
projects, as reported in issue 1891. The assert has been
|
||||||
|
removed.
|
||||||
|
* Fix: fine-tuned the exact Python version (3.12.6) when
|
||||||
|
exiting from with statements changed how they traced. This
|
||||||
|
affected whether people saw the fix for `issue 1880`_.
|
||||||
|
* Fix: isolate our code more from mocking in the os module that
|
||||||
|
in rare cases can cause bizarre behavior.
|
||||||
|
* Refactor: some code unreachable code paths in parser.py were
|
||||||
|
changed to asserts. If you encounter any of these, please
|
||||||
|
let me know!
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Oct 22 15:51:19 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 7.6.4:
|
||||||
|
* fix: multi-line with statements could cause contained
|
||||||
|
branches to be incorrectly marked as missing (issue 1880).
|
||||||
|
This is now fixed.
|
||||||
|
* Fix: nested context managers could incorrectly be analyzed to
|
||||||
|
flag a missing branch on the last context manager, as
|
||||||
|
described in issue 1876. This is now fixed.
|
||||||
|
* Fix: the missing branch message about not exiting a module
|
||||||
|
had an extra "didn't," as described in issue 1873. This is
|
||||||
|
now fixed.
|
||||||
|
* Dropped support for Python 3.8 and PyPy 3.8.
|
||||||
|
* Fix: a final wildcard match/case clause assigning to a name
|
||||||
|
(case _ as value) was incorrectly marked as a missing branch.
|
||||||
|
This is now fixed, closing issue 1860.
|
||||||
|
* Fewer things are considered branches now. Lambdas,
|
||||||
|
comprehensions, and generator expressions are no longer
|
||||||
|
marked as missing branches if they don't complete execution.
|
||||||
|
Closes issue 1852.
|
||||||
|
* Fix: the HTML report didn't properly show multi-line
|
||||||
|
f-strings that end with a backslash continuation. This is
|
||||||
|
now fixed, closing issue 1836, thanks to LiuYinCarl and Marco
|
||||||
|
Ricci.
|
||||||
|
* Fix: the LCOV report now has correct line numbers (fixing
|
||||||
|
issue 1846) and better branch descriptions for BRDA records
|
||||||
|
(fixing issue 1850). There are other changes to lcov also,
|
||||||
|
including a new configuration option :ref:`line_checksums
|
||||||
|
<config_lcov_line_checksums>` to control whether line
|
||||||
|
checksums are included in the lcov report. The default is
|
||||||
|
false. To keep checksums set it to true. All this work is
|
||||||
|
thanks to Zack Weinberg (pull 1849 and pull 1851).
|
||||||
|
* Fixed the docs for multi-line regex exclusions, closing issue
|
||||||
|
1863.
|
||||||
|
* Fixed a potential crash in the C tracer, closing issue 1835,
|
||||||
|
thanks to Jan Kühle.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sat Aug 31 13:44:09 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
Sat Aug 31 13:44:09 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package python-coverage
|
# spec file for package python-coverage
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC and contributors
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -16,26 +16,51 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
%if 0%{?suse_version} > 1500
|
||||||
|
%bcond_without libalternatives
|
||||||
|
%else
|
||||||
|
%bcond_with libalternatives
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%global flavor @BUILD_FLAVOR@%{nil}
|
||||||
|
%if "%{flavor}" == "test"
|
||||||
|
%define psuffix -test
|
||||||
|
%bcond_without test
|
||||||
|
%else
|
||||||
|
%define psuffix %{nil}
|
||||||
|
%bcond_with test
|
||||||
|
%endif
|
||||||
|
|
||||||
%{?sle15_python_module_pythons}
|
%{?sle15_python_module_pythons}
|
||||||
Name: python-coverage
|
Name: python-coverage%{psuffix}
|
||||||
Version: 7.6.1
|
Version: 7.7.1
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: Code coverage measurement for Python
|
Summary: Code coverage measurement for Python
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
URL: https://github.com/nedbat/coveragepy
|
URL: https://github.com/nedbat/coveragepy
|
||||||
Source: https://files.pythonhosted.org/packages/source/c/coverage/coverage-%{version}.tar.gz
|
Source: https://files.pythonhosted.org/packages/source/c/coverage/coverage-%{version}.tar.gz
|
||||||
BuildRequires: %{python_module devel >= 3.8}
|
# PATCH-FIX-UPSTREAM https://github.com/nedbat/coveragepy/commit/ba685fb8d06a2052c4916749539ef501b8080804 build: setuptools 77 doesn't like license classifiers.
|
||||||
|
Patch: setuptools77.patch
|
||||||
|
BuildRequires: %{python_module devel >= 3.9}
|
||||||
BuildRequires: %{python_module pip}
|
BuildRequires: %{python_module pip}
|
||||||
BuildRequires: %{python_module setuptools}
|
BuildRequires: %{python_module setuptools}
|
||||||
BuildRequires: %{python_module wheel}
|
BuildRequires: %{python_module wheel}
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: python-rpm-macros
|
BuildRequires: python-rpm-macros
|
||||||
Requires: python
|
Requires: python
|
||||||
Requires(post): update-alternatives
|
|
||||||
Requires(postun): update-alternatives
|
|
||||||
# coverage[toml]
|
# coverage[toml]
|
||||||
Recommends: python-tomli
|
Recommends: python-tomli
|
||||||
|
%if %{with libalternatives}
|
||||||
|
BuildRequires: alts
|
||||||
|
Requires: alts
|
||||||
|
%else
|
||||||
|
Requires(post): update-alternatives
|
||||||
|
Requires(postun): update-alternatives
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with test}
|
||||||
# SECTION test requirements
|
# SECTION test requirements
|
||||||
|
BuildRequires: %{python_module coverage = %{version}}
|
||||||
BuildRequires: %{python_module flaky}
|
BuildRequires: %{python_module flaky}
|
||||||
BuildRequires: %{python_module hypothesis >= 6}
|
BuildRequires: %{python_module hypothesis >= 6}
|
||||||
BuildRequires: %{python_module pytest-xdist}
|
BuildRequires: %{python_module pytest-xdist}
|
||||||
@@ -44,6 +69,7 @@ BuildRequires: %{python_module tomli}
|
|||||||
# for database (sqlite3) support
|
# for database (sqlite3) support
|
||||||
BuildRequires: %{pythons}
|
BuildRequires: %{pythons}
|
||||||
# /SECTION
|
# /SECTION
|
||||||
|
%endif
|
||||||
%python_subpackages
|
%python_subpackages
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@@ -58,15 +84,20 @@ library to determine which lines are executable, and which have been executed.
|
|||||||
sed -i -e '/addopts/d' setup.cfg
|
sed -i -e '/addopts/d' setup.cfg
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
%if %{without test}
|
||||||
%pyproject_wheel
|
%pyproject_wheel
|
||||||
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
|
%if %{without test}
|
||||||
%pyproject_install
|
%pyproject_install
|
||||||
rm -vf %{buildroot}%{_bindir}/coverage{2,3}
|
rm -vf %{buildroot}%{_bindir}/coverage{2,3}
|
||||||
%python_clone -a %{buildroot}%{_bindir}/coverage
|
%python_clone -a %{buildroot}%{_bindir}/coverage
|
||||||
%python_expand %fdupes %{buildroot}%{$python_sitearch}
|
%python_expand %fdupes %{buildroot}%{$python_sitearch}
|
||||||
|
%endif
|
||||||
|
|
||||||
%check
|
%check
|
||||||
|
%if %{with test}
|
||||||
export LANG=en_US.UTF8
|
export LANG=en_US.UTF8
|
||||||
%python_flavored_alternatives
|
%python_flavored_alternatives
|
||||||
%{python_expand # indicate a writeable .pth directory for tests
|
%{python_expand # indicate a writeable .pth directory for tests
|
||||||
@@ -104,6 +135,10 @@ donttest+=" or test_report_wildcard or test_run_omit_vs_report_omit"
|
|||||||
|
|
||||||
%pytest_arch -n auto --no-flaky-report -k "$donttest" -rp ||:
|
%pytest_arch -n auto --no-flaky-report -k "$donttest" -rp ||:
|
||||||
%pytest_arch -n auto --no-flaky-report -k "not ($donttest)"
|
%pytest_arch -n auto --no-flaky-report -k "not ($donttest)"
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%pre
|
||||||
|
%python_libalternatives_reset_alternative coverage
|
||||||
|
|
||||||
%post
|
%post
|
||||||
%python_install_alternative coverage
|
%python_install_alternative coverage
|
||||||
@@ -111,11 +146,13 @@ donttest+=" or test_report_wildcard or test_run_omit_vs_report_omit"
|
|||||||
%postun
|
%postun
|
||||||
%python_uninstall_alternative coverage
|
%python_uninstall_alternative coverage
|
||||||
|
|
||||||
|
%if %{without test}
|
||||||
%files %{python_files}
|
%files %{python_files}
|
||||||
%license LICENSE.txt
|
%license LICENSE.txt
|
||||||
%doc CHANGES.rst CONTRIBUTORS.txt README.rst howto.txt
|
%doc CHANGES.rst CONTRIBUTORS.txt README.rst howto.txt
|
||||||
%python_alternative %{_bindir}/coverage
|
%python_alternative %{_bindir}/coverage
|
||||||
%{python_sitearch}/coverage/
|
%{python_sitearch}/coverage/
|
||||||
%{python_sitearch}/coverage-%{version}.dist-info
|
%{python_sitearch}/coverage-%{version}.dist-info
|
||||||
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
|||||||
21
setuptools77.patch
Normal file
21
setuptools77.patch
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
From ba685fb8d06a2052c4916749539ef501b8080804 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Ned Batchelder <ned@nedbatchelder.com>
|
||||||
|
Date: Sat, 22 Mar 2025 08:59:45 -0400
|
||||||
|
Subject: [PATCH] build: setuptools 77 doesn't like license classifiers. #1939
|
||||||
|
|
||||||
|
---
|
||||||
|
setup.py | 1 -
|
||||||
|
1 file changed, 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/setup.py b/setup.py
|
||||||
|
index 9aa82bf91..8fcec5e2d 100644
|
||||||
|
--- a/setup.py
|
||||||
|
+++ b/setup.py
|
||||||
|
@@ -19,7 +19,6 @@
|
||||||
|
classifiers = """\
|
||||||
|
Environment :: Console
|
||||||
|
Intended Audience :: Developers
|
||||||
|
-License :: OSI Approved :: Apache Software License
|
||||||
|
Operating System :: OS Independent
|
||||||
|
Programming Language :: Python
|
||||||
|
Programming Language :: Python :: 3
|
||||||
Reference in New Issue
Block a user