Skip to main content

Simple coverage Exclusions

This is a simple plugin for Coverage.py. When you enable it, for example in pyproject.toml:

[tool.coverage.run]
plugins = ["coverage_simple_excludes"]

Then, in addition to the default # pragma: no cover, you get several more comments in the format # cover-... that you can use to specify that lines or blocks of code should be excluded from coverage, for example:

if sys.platform != 'win32':  # cover-not-win32
    print("This code is only executed on non-win32 systems")
else:  # cover-only-win32
    print("This code is only executed on win32 systems")

if sys.hexversion < 0x03_0C_00_00:  # cover-req-lt3.12
    print("This code is only executed on a version of Python before 3.12")
else:  # cover-req-ge3.12
    print("This code is only executed on Python 3.12 or later")
  • # cover-req-ltX.Y and # cover-req-geX.Y, where:
    • X and Y are the major and minor Python version, respectively
    • lt means "a Python version less than (<) X.Y is required for this line or block of code to be executed and included in the coverage check"
    • ge means "a Python version greater than or equal to (>=) X.Y is required"
  • # cover-not-Z and # cover-only-Z, where:
    • not means "this code is not executed on this OS / platform / implementation"
    • only means "this code is only executed on this OS / platform / implementation"
    • Z may be any of the following values:

Note the comments are case-sensitive. Any amount of whitespace is allowed between the # and cover, including no space. The comments must always be followed by whitespace or end-of-line. If you put any other comments after these comments, for best forward compatibility it is strongly recommended you use another #, for example: some_code() # cover-only-win32 # only executed on Windows.

Author, Copyright, and License

Copyright (c) 2024-2025 Hauke Dämpfling (haukex@zero-g.net) at the Leibniz Institute of Freshwater Ecology and Inland Fisheries (IGB), Berlin, Germany, https://www.igb-berlin.de/

This library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see https://www.gnu.org/licenses/

Metadata

Release files for coverage-simple-excludes 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for coverage-simple-excludes 1.1.1
File Size Uploaded
coverage_simple_excludes-1.1.1.tar.gz 12.3 kB Details

Release files / coverage_simple_excludes-1.1.1.tar.gz

Download URL coverage_simple_excludes-1.1.1.tar.gz
Size 12.3 kB
Tags Source
SHA-256 checksum
How to use checksums
401e2ab99ba0f1b972262412f06bfe294e63ea2c718f8eb2e5b9f5367d8be4ac
BLAKE2b-256 checksum
How to use checksums
34b77b1460c3e7bb83b36c2b828a4e08c63ae6b3dcebcedf612ec31039b8434d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.10.18

Release history Release notifications | RSS feed

This release

1.1.1 This release

1 release file

1.1.0

1 release file

1.0.0

1 release file

0.9.1

1 release file

0.9.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page