Skip to content

Releases: nedbat/coveragepy

7.10.7

21 Sep 20:04
7.10.7
Compare
Choose a tag to compare

Version 7.10.7 — 2025-09-21

  • Performance: with branch coverage in large files, generating HTML, JSON, or LCOV reports could take far too long due to some quadratic behavior when creating the function and class index pages. This is now fixed, closing issue 2048. Thanks to Daniel Diniz for help diagnosing the problem.
  • Most warnings and a few errors now have links to a page in the docs explaining the specific message. Closes issue 1921.

➡️  PyPI page: coverage 7.10.7.
➡️  To install: python3 -m pip install coverage==7.10.7

7.10.6

29 Aug 15:42
7.10.6
Compare
Choose a tag to compare

Version 7.10.6 — 2025-08-29

  • Fix: source directories were not properly communicated to subprocesses that ran in different directories, as reported in issue 1499. This is now fixed.
  • Performance: Alex Gaynor continues fine-tuning the speed of combination, especially with many contexts.

➡️  PyPI page: coverage 7.10.6.
➡️  To install: python3 -m pip install coverage==7.10.6

7.10.5

23 Aug 14:44
7.10.5
Compare
Choose a tag to compare

Version 7.10.5 — 2025-08-23

  • Big speed improvements for coverage combine: it’s now about twice as fast! Huge thanks to Alex Gaynor for pull requests 2032, 2033, and 2034.

➡️  PyPI page: coverage 7.10.5.
➡️  To install: python3 -m pip install coverage==7.10.5

7.10.4

17 Aug 00:27
7.10.4
Compare
Choose a tag to compare

Version 7.10.4 — 2025-08-16

  • Added patch = fork for times when the built-in forking support is insufficient.
  • Fix: patch = execv also inherits the entire coverage configuration now.

➡️  PyPI page: coverage 7.10.4.
➡️  To install: python3 -m pip install coverage==7.10.4

7.10.3

10 Aug 21:29
7.10.3
Compare
Choose a tag to compare

Version 7.10.3 — 2025-08-10

  • Fixes for patch = subprocess:
    • If subprocesses spawned yet more subprocesses simultaneously, some coverage could be missed. This is now fixed, closing issue 2024.
    • If subprocesses were created in other directories, their data files were stranded there and not combined into the totals, as described in issue 2025. This is now fixed.
    • On Windows (or maybe only some Windows?) the patch would fail with a ModuleNotFound error trying to import coverage. This is now fixed, closing issue 2022.
    • Originally only options set in the coverage configuration file would apply to subprocesses. Options set on the coverage run command line (such as --branch) wouldn’t be communicated to the subprocesses. This could lead to combining failures, as described in issue 2021. Now the entire configuration is used in subprocesses, regardless of its origin.
    • Added debug=patch to help diagnose problems.
  • Fix: really close all SQLite databases, even in-memory ones. Closes issue 2017.

➡️  PyPI page: coverage 7.10.3.
➡️  To install: python3 -m pip install coverage==7.10.3

7.10.2

04 Aug 00:35
7.10.2
Compare
Choose a tag to compare

Version 7.10.2 — 2025-08-03

  • Fix: some code with NOP bytecodes could report missing branches that are actually executed. This is now fixed, closing issue 1999. Python 3.9 still shows the problem.

➡️  PyPI page: coverage 7.10.2.
➡️  To install: python3 -m pip install coverage==7.10.2

7.10.1

27 Jul 14:16
7.10.1
Compare
Choose a tag to compare

Version 7.10.1 — 2025-07-27

  • Fix: the exclusion for if TYPE_CHECKING: was wrong: it marked the branch as partial, but it should have been a line exclusion so the entire clause would be excluded. Improves issue 831.
  • Fix: changed where .pth files are written for patch = subprocess, closing issue 2006.

➡️  PyPI page: coverage 7.10.1.
➡️  To install: python3 -m pip install coverage==7.10.1

7.10.0

24 Jul 16:54
7.10.0
Compare
Choose a tag to compare

Version 7.10.0 — 2025-07-24

➡️  PyPI page: coverage 7.10.0.
➡️  To install: python3 -m pip install coverage==7.10.0

7.9.2

03 Jul 10:58
7.9.2
Compare
Choose a tag to compare

Version 7.9.2 — 2025-07-03

  • Fix: complex conditionals within a line might cause a KeyError when using sys.monitoring, as reported in issue 1991. This is now fixed.
  • Fix: we can now measure coverage for code in Python archive (.par) files. Thanks, Itamer Oren.

➡️  PyPI page: coverage 7.9.2.
➡️  To install: python3 -m pip install coverage==7.9.2

7.9.1

13 Jun 13:05
7.9.1
Compare
Choose a tag to compare

Version 7.9.1 — 2025-06-13

  • The “no-ctracer” warning is not issued for Python pre-release versions. Coverage doesn’t ship compiled wheels for those versions, so this was far too noisy.
  • On Python 3.14+, the “sysmon” core is now the default if it’s supported for your configuration. Plugins and dynamic contexts are still not supported with it.

➡️  PyPI page: coverage 7.9.1.
➡️  To install: python3 -m pip install coverage==7.9.1