coverage 7.14.2__tar.gz → 7.14.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/coverage.yml +0 -4
- {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/kit.yml +1 -1
- {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/python-nightly.yml +0 -1
- {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/testsuite.yml +0 -5
- {coverage-7.14.2 → coverage-7.14.3}/CHANGES.rst +23 -4
- {coverage-7.14.2 → coverage-7.14.3}/CONTRIBUTORS.txt +1 -0
- {coverage-7.14.2 → coverage-7.14.3}/PKG-INFO +8 -8
- {coverage-7.14.2 → coverage-7.14.3}/coverage/config.py +1 -1
- {coverage-7.14.2 → coverage-7.14.3}/coverage/env.py +8 -1
- {coverage-7.14.2 → coverage-7.14.3}/coverage/version.py +1 -1
- {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/PKG-INFO +8 -8
- {coverage-7.14.2 → coverage-7.14.3}/doc/conf.py +3 -3
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_coverage.py +30 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_oddball.py +0 -4
- {coverage-7.14.2 → coverage-7.14.3}/tox.ini +2 -3
- {coverage-7.14.2 → coverage-7.14.3}/.editorconfig +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.git-blame-ignore-revs +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/CODE_OF_CONDUCT.md +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/FUNDING.yml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/ISSUE_TEMPLATE/support.md +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/SECURITY.md +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/dependabot.yml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/codeql-analysis.yml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/dependency-review.yml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/publish.yml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/quality.yml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.github/zizmor.yml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.ignore +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.pre-commit-config.yaml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/.readthedocs.yaml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/CITATION.cff +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/LICENSE.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/MANIFEST.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/Makefile +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/NOTICE.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/README.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/__main__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/a1_coverage.pth +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/ci/README.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/ci/comment_on_fixes.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/ci/session.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/ci/trigger_action.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/ci/update_rtfd.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/__main__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/annotate.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/bytecode.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/cmdline.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/collector.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/context.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/control.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/core.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/datastack.c +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/datastack.h +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/filedisp.c +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/filedisp.h +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/module.c +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/stats.h +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/tracer.c +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/tracer.h +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/util.h +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/data.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/debug.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/disposition.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/exceptions.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/execfile.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/files.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/html.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/coverage_html.js +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/favicon_32.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/keybd_closed.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/pyfile.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/style.css +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/style.scss +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/inorout.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/jsonreport.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/lcovreport.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/misc.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/multiproc.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/numbits.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/parser.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/patch.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/phystokens.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/plugin.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/plugin_support.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/pth_file.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/py.typed +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/python.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/pytracer.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/regions.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/report.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/report_core.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/results.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/sqldata.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/sqlitedb.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/sysmon.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/templite.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/tomlconfig.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/tracer.pyi +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/types.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage/xmlreport.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/SOURCES.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/dependency_links.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/entry_points.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/not-zip-safe +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/requires.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/top_level.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/_static/coverage.css +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/api.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/api_coverage.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/api_coveragedata.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/api_exceptions.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/api_module.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/api_plugin.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/branch.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/changes.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/cog_helpers.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_annotate.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_combine.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_debug.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_erase.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_html.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_json.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_lcov.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_report.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_reporting.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_run.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_xml.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/commands/index.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/config.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/contexts.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/contributing.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/dbschema.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/dict.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/excluding.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/faq.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/howitworks.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/index.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/install.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/media/Tidelift_Logos_RGB_Tidelift_Shorthand_On-White.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/media/Tidelift_Logos_RGB_Tidelift_Shorthand_On-White_small.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/media/sleepy-snake-600.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/media/sleepy-snake-circle-150.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/messages.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/migrating.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/other.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/plugins.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/python-coverage.1.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/requirements.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/requirements.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/sample_html/favicon_32_cb_c827f16f.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/sample_html/keybd_closed_cb_900cfef5.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/sleepy.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/source.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/subprocess.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/trouble.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/doc/whatsnew5x.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/howto.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/igor.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/README.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/branches.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/compare_times.sh +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/coverage-04.dtd +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/extract_code.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/goals.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/hack_pyc.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/notes/arcs-to-branches.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/notes/bug1303.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/notes/pypy-738-decorated-functions.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/parse_all.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/parser.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/pick.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/platform_info.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/run_sysmon.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/run_trace.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/select_contexts.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/show_platform.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/show_pyc.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/treetopy.sh +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/warn_executed.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/lab/warn_executed.toml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/metacov.ini +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/pyproject.toml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/dev.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/dev.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/kit.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/kit.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/light-threads.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/light-threads.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/mypy.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/mypy.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/pins.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/pip.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/pip.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/pytest.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/pytest.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/tox.in +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/requirements/tox.pip +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/setup.cfg +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/setup.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/conftest.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/coveragetest.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/covmodzip1.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/README.rst +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/multi.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/z_80084bf2fba02475___init__.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/z_80084bf2fba02475_a.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/z_b039179a8a4ce2c2___init__.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/z_b039179a8a4ce2c2_b.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/encodings/utf8.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/mae/mae.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/a/__init__.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/a/a.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/b/__init__.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/b/b.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/multi.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/white/white.py,cover +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/Makefile +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/a/a_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/a/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/a/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/a/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/b_branch/b_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/b_branch/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/b_branch/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/b_branch/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/bom/bom_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/bom/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/bom/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/bom/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/contexts/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/contexts/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/contexts/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/contexts/two_tests_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/isolatin1/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/isolatin1/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/isolatin1/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/isolatin1/isolatin1_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/multiline/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/multiline/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/multiline/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/multiline/multiline_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/m1_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/m2_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/m3_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/main_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/m2_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/m3_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/main_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/m3_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/main_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/m1_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/m3_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/main_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/m1_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/main_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/blah_blah_other_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/here_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/partial/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/partial/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/partial/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/partial/partial_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/a_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/myextra.css +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/style.css +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/support/coverage_html_cb_dd2e7eb5.js +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/support/favicon_32_cb_c827f16f.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/support/keybd_closed_cb_900cfef5.png +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/support/style_cb_a90a112a.css +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/unicode/class_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/unicode/function_index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/unicode/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/unicode/unicode_py.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/testing/getty/gettysburg.txt +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/testing/xml/output.xml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/xml/x_xml/coverage.xml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/gold/xml/y_xml_branch/coverage.xml +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/goldtest.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/helpers.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/js/index.html +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/js/tests.js +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/mixins.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/afile.odd.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/afile.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/bfile.odd.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/bfile.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/cc/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/cc/cfile.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb.odd/bfile.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/zfile.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/ambiguous/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/ambiguous/pkg1/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/ambiguous/pkg1/ambiguous.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/covmod1.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/namespace_420/sub1/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/__main__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/p1a.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/p1b.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/p1c.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/runmod2.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/sub/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/sub/__main__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/sub/ps1a.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/sub/runmod3.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg2/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg2/p2a.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg2/p2b.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/plugins/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/plugins/a_plugin.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/plugins/another.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/process_test/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/process_test/try_execfile.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/runmod1.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/modules/usepkgs.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/namespace_420/sub2/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/othera.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/otherb.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/sub/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/sub/osa.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/sub/osb.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/osinfo.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/plugin1.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/plugin2.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/plugin_config.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/qunit/jquery.tmpl.min.js +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/select_plugin.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/strategies.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/stress_phystoken.tok +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/stress_phystoken_dos.tok +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_annotate.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_api.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_arcs.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_bytecode.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_cmdline.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_collector.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_concurrency.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_config.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_context.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_core.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_data.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_debug.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_execfile.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_filereporter.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_files.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_goldtest.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_html.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_json.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_lcov.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_misc.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_mixins.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_numbits.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_parser.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_phystokens.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_plugins.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_process.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_python.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_regions.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_report.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_report_common.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_report_core.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_results.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_setup.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_sqlitedb.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_templite.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_testing.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_venv.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_version.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/test_xml.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/testenv.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/zipsrc/zip1/__init__.py +0 -0
- {coverage-7.14.2 → coverage-7.14.3}/tests/zipsrc/zip1/zip1.py +0 -0
|
@@ -92,7 +92,6 @@ jobs:
|
|
|
92
92
|
- "3.11"
|
|
93
93
|
- "3.12"
|
|
94
94
|
- "3.13"
|
|
95
|
-
- "3.13t"
|
|
96
95
|
- "3.14"
|
|
97
96
|
- "3.14t"
|
|
98
97
|
- "3.15"
|
|
@@ -110,9 +109,6 @@ jobs:
|
|
|
110
109
|
# skip them for now.
|
|
111
110
|
- os: windows
|
|
112
111
|
python-version: "pypy-3.10"
|
|
113
|
-
# Windows 3.13t often fails during installation.
|
|
114
|
-
- os: windows
|
|
115
|
-
python-version: "3.13t"
|
|
116
112
|
# If we need to tweak the os version we can do it with an include like
|
|
117
113
|
# this:
|
|
118
114
|
# include:
|
|
@@ -295,7 +295,7 @@ jobs:
|
|
|
295
295
|
files=$(find coverage-* 2>/dev/null | wc -l) && [ "$files" -eq "$EXPECTED" ] || exit 1
|
|
296
296
|
|
|
297
297
|
- name: "Sign artifacts"
|
|
298
|
-
uses: sigstore/gh-action-sigstore-python@
|
|
298
|
+
uses: sigstore/gh-action-sigstore-python@5b79a39c381910c090341a2c9b0bf022c8b387e1 # v3.4.0
|
|
299
299
|
with:
|
|
300
300
|
inputs: coverage-*.*
|
|
301
301
|
|
|
@@ -91,17 +91,12 @@ jobs:
|
|
|
91
91
|
- "3.11"
|
|
92
92
|
- "3.12"
|
|
93
93
|
- "3.13"
|
|
94
|
-
- "3.13t"
|
|
95
94
|
- "3.14"
|
|
96
95
|
- "3.14t"
|
|
97
96
|
- "3.15"
|
|
98
97
|
- "3.15t"
|
|
99
98
|
- "pypy-3.10"
|
|
100
99
|
- "pypy-3.11"
|
|
101
|
-
exclude:
|
|
102
|
-
# Windows 3.13t often fails during installation.
|
|
103
|
-
- os: windows
|
|
104
|
-
python-version: "3.13t"
|
|
105
100
|
|
|
106
101
|
#
|
|
107
102
|
# If we need to exclude any combinations, do it like this:
|
|
@@ -22,6 +22,25 @@ upgrading your version of coverage.py.
|
|
|
22
22
|
|
|
23
23
|
.. start-releases
|
|
24
24
|
|
|
25
|
+
.. _changes_7-14-3:
|
|
26
|
+
|
|
27
|
+
Version 7.14.3 — 2026-06-22
|
|
28
|
+
---------------------------
|
|
29
|
+
|
|
30
|
+
- Fix: the default ``...`` exclusion rule now also matches function bodies
|
|
31
|
+
whose closing return-type bracket is on its own line (for example, after a
|
|
32
|
+
long ``-> dict[ ... ]`` annotation that a formatter has split over multiple
|
|
33
|
+
lines). Closes `issue 2185`_, thanks `Mengjia Shang <pull 2196_>`_.
|
|
34
|
+
|
|
35
|
+
- Fix: On 3.13t, we incorrectly issued ``Couldn't import C tracer`` errors.
|
|
36
|
+
We can't import the C tracer because in 7.14.2 we stopped shipping compiled
|
|
37
|
+
wheels for 3.13t. Thanks, `Hugo van Kemenade <pull 2203_>`_.
|
|
38
|
+
|
|
39
|
+
.. _issue 2185: https://github.com/coveragepy/coveragepy/issues/2185
|
|
40
|
+
.. _pull 2196: https://github.com/coveragepy/coveragepy/pull/2196
|
|
41
|
+
.. _pull 2203: https://github.com/coveragepy/coveragepy/pull/2203
|
|
42
|
+
|
|
43
|
+
|
|
25
44
|
.. _changes_7-14-2:
|
|
26
45
|
|
|
27
46
|
Version 7.14.2 — 2026-06-20
|
|
@@ -36,23 +55,23 @@ Version 7.14.2 — 2026-06-20
|
|
|
36
55
|
with many short-lived threads this leaked one file descriptor per dead
|
|
37
56
|
thread, eventually failing with ``OSError: [Errno 24] Too many open files``.
|
|
38
57
|
Connections belonging to terminated threads are now closed and dropped.
|
|
39
|
-
Fixes `issue 2192`_.
|
|
58
|
+
Fixes `issue 2192`_. Thanks, `Matthew Lloyd <pull 2193_>`_.
|
|
40
59
|
|
|
41
60
|
- Fix: when using sys.monitoring, we were assuming we could use the
|
|
42
61
|
``COVERAGE_ID`` tool id. But other tools might also assume they could use
|
|
43
62
|
that id. Pre-allocated ids don't really make sense, so now we search for a
|
|
44
|
-
usable one instead. Fixes `issue 2187`_.
|
|
45
|
-
<pull 2198_>`_.
|
|
63
|
+
usable one instead. Fixes `issue 2187`_.
|
|
46
64
|
|
|
47
65
|
- Following `the advice of cibuildwheel <no-13t_>`_, we no longer distribute
|
|
48
66
|
wheels for Python 3.13 free-threaded.
|
|
49
67
|
|
|
50
68
|
.. _issue 2187: https://github.com/coveragepy/coveragepy/issues/2187
|
|
51
69
|
.. _issue 2192: https://github.com/coveragepy/coveragepy/issues/2192
|
|
70
|
+
.. _pull 2193: https://github.com/coveragepy/coveragepy/pull/2193
|
|
52
71
|
.. _issue 2197: https://github.com/coveragepy/coveragepy/issues/2197
|
|
53
|
-
.. _pull 2198: https://github.com/coveragepy/coveragepy/pull/2198
|
|
54
72
|
.. _no-13t: https://py-free-threading.github.io/ci/#building-free-threaded-wheels-with-cibuildwheel
|
|
55
73
|
|
|
74
|
+
|
|
56
75
|
.. _changes_7-14-1:
|
|
57
76
|
|
|
58
77
|
Version 7.14.1 — 2026-05-26
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: coverage
|
|
3
|
-
Version: 7.14.
|
|
3
|
+
Version: 7.14.3
|
|
4
4
|
Summary: Code coverage measurement for Python
|
|
5
5
|
Home-page: https://github.com/coveragepy/coveragepy
|
|
6
|
-
Author: Ned Batchelder and
|
|
6
|
+
Author: Ned Batchelder and 257 others
|
|
7
7
|
Author-email: ned@nedbatchelder.com
|
|
8
8
|
License: Apache-2.0
|
|
9
|
-
Project-URL: Documentation, https://coverage.readthedocs.io/en/7.14.
|
|
9
|
+
Project-URL: Documentation, https://coverage.readthedocs.io/en/7.14.3
|
|
10
10
|
Project-URL: Funding, https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=pypi
|
|
11
11
|
Project-URL: Issues, https://github.com/coveragepy/coveragepy/issues
|
|
12
12
|
Project-URL: Mastodon, https://hachyderm.io/@coveragepy
|
|
@@ -83,7 +83,7 @@ Coverage.py runs on these versions of Python:
|
|
|
83
83
|
Documentation is on `Read the Docs`_. Code repository and issue tracker are on
|
|
84
84
|
`GitHub`_.
|
|
85
85
|
|
|
86
|
-
.. _Read the Docs: https://coverage.readthedocs.io/en/7.14.
|
|
86
|
+
.. _Read the Docs: https://coverage.readthedocs.io/en/7.14.3/
|
|
87
87
|
.. _GitHub: https://github.com/coveragepy/coveragepy
|
|
88
88
|
|
|
89
89
|
|
|
@@ -112,7 +112,7 @@ Getting Started
|
|
|
112
112
|
Looking to run ``coverage`` on your test suite? See the `Quick Start section`_
|
|
113
113
|
of the docs.
|
|
114
114
|
|
|
115
|
-
.. _Quick Start section: https://coverage.readthedocs.io/en/7.14.
|
|
115
|
+
.. _Quick Start section: https://coverage.readthedocs.io/en/7.14.3/#quick-start
|
|
116
116
|
|
|
117
117
|
|
|
118
118
|
Change history
|
|
@@ -120,7 +120,7 @@ Change history
|
|
|
120
120
|
|
|
121
121
|
The complete history of changes is on the `change history page`_.
|
|
122
122
|
|
|
123
|
-
.. _change history page: https://coverage.readthedocs.io/en/7.14.
|
|
123
|
+
.. _change history page: https://coverage.readthedocs.io/en/7.14.3/changes.html
|
|
124
124
|
|
|
125
125
|
|
|
126
126
|
Code of Conduct
|
|
@@ -139,7 +139,7 @@ Contributing
|
|
|
139
139
|
Found a bug? Want to help improve the code or documentation? See the
|
|
140
140
|
`Contributing section`_ of the docs.
|
|
141
141
|
|
|
142
|
-
.. _Contributing section: https://coverage.readthedocs.io/en/7.14.
|
|
142
|
+
.. _Contributing section: https://coverage.readthedocs.io/en/7.14.3/contributing.html
|
|
143
143
|
|
|
144
144
|
|
|
145
145
|
Security
|
|
@@ -167,7 +167,7 @@ Licensed under the `Apache 2.0 License`_. For details, see `NOTICE.txt`_.
|
|
|
167
167
|
:target: https://github.com/coveragepy/coveragepy/actions/workflows/quality.yml
|
|
168
168
|
:alt: Quality check status
|
|
169
169
|
.. |docs| image:: https://readthedocs.org/projects/coverage/badge/?version=latest&style=flat
|
|
170
|
-
:target: https://coverage.readthedocs.io/en/7.14.
|
|
170
|
+
:target: https://coverage.readthedocs.io/en/7.14.3/
|
|
171
171
|
:alt: Documentation
|
|
172
172
|
.. |kit| image:: https://img.shields.io/pypi/v/coverage
|
|
173
173
|
:target: https://pypi.org/project/coverage/
|
|
@@ -149,7 +149,7 @@ TConfigParser = HandyConfigParser | TomlConfigParser
|
|
|
149
149
|
# The default line exclusion regexes.
|
|
150
150
|
DEFAULT_EXCLUDE = [
|
|
151
151
|
r"#\s*(pragma|PRAGMA)[:\s]?\s*(no|NO)\s*(cover|COVER)",
|
|
152
|
-
r"^\s*(((async )?def .*?)
|
|
152
|
+
r"^\s*(((async )?def .*?)?[\])]+(\s*->.*?)?:\s*)?\.\.\.\s*(#|$)",
|
|
153
153
|
r"if (typing\.)?TYPE_CHECKING:",
|
|
154
154
|
]
|
|
155
155
|
|
|
@@ -8,6 +8,7 @@ from __future__ import annotations
|
|
|
8
8
|
import os
|
|
9
9
|
import platform
|
|
10
10
|
import sys
|
|
11
|
+
import sysconfig
|
|
11
12
|
from collections.abc import Iterable
|
|
12
13
|
from typing import Any, Final
|
|
13
14
|
|
|
@@ -42,8 +43,14 @@ else:
|
|
|
42
43
|
# Do we have a GIL?
|
|
43
44
|
GIL = getattr(sys, "_is_gil_enabled", lambda: True)()
|
|
44
45
|
|
|
46
|
+
# Is this a free-threaded build of CPython? Checks the build, not runtime GIL
|
|
47
|
+
# state, since the GIL can be re-enabled at runtime on a free-threaded build.
|
|
48
|
+
FREE_THREADED = bool(sysconfig.get_config_var("Py_GIL_DISABLED"))
|
|
49
|
+
|
|
45
50
|
# Do we ship compiled coveragepy wheels for this version?
|
|
46
|
-
SHIPPING_WHEELS =
|
|
51
|
+
SHIPPING_WHEELS = (
|
|
52
|
+
CPYTHON and PYVERSION[:2] <= (3, 14) and not (FREE_THREADED and PYVERSION[:2] == (3, 13))
|
|
53
|
+
)
|
|
47
54
|
|
|
48
55
|
# Should we default to sys.monitoring?
|
|
49
56
|
SYSMON_DEFAULT = CPYTHON and PYVERSION >= (3, 14)
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: coverage
|
|
3
|
-
Version: 7.14.
|
|
3
|
+
Version: 7.14.3
|
|
4
4
|
Summary: Code coverage measurement for Python
|
|
5
5
|
Home-page: https://github.com/coveragepy/coveragepy
|
|
6
|
-
Author: Ned Batchelder and
|
|
6
|
+
Author: Ned Batchelder and 257 others
|
|
7
7
|
Author-email: ned@nedbatchelder.com
|
|
8
8
|
License: Apache-2.0
|
|
9
|
-
Project-URL: Documentation, https://coverage.readthedocs.io/en/7.14.
|
|
9
|
+
Project-URL: Documentation, https://coverage.readthedocs.io/en/7.14.3
|
|
10
10
|
Project-URL: Funding, https://tidelift.com/subscription/pkg/pypi-coverage?utm_source=pypi-coverage&utm_medium=referral&utm_campaign=pypi
|
|
11
11
|
Project-URL: Issues, https://github.com/coveragepy/coveragepy/issues
|
|
12
12
|
Project-URL: Mastodon, https://hachyderm.io/@coveragepy
|
|
@@ -83,7 +83,7 @@ Coverage.py runs on these versions of Python:
|
|
|
83
83
|
Documentation is on `Read the Docs`_. Code repository and issue tracker are on
|
|
84
84
|
`GitHub`_.
|
|
85
85
|
|
|
86
|
-
.. _Read the Docs: https://coverage.readthedocs.io/en/7.14.
|
|
86
|
+
.. _Read the Docs: https://coverage.readthedocs.io/en/7.14.3/
|
|
87
87
|
.. _GitHub: https://github.com/coveragepy/coveragepy
|
|
88
88
|
|
|
89
89
|
|
|
@@ -112,7 +112,7 @@ Getting Started
|
|
|
112
112
|
Looking to run ``coverage`` on your test suite? See the `Quick Start section`_
|
|
113
113
|
of the docs.
|
|
114
114
|
|
|
115
|
-
.. _Quick Start section: https://coverage.readthedocs.io/en/7.14.
|
|
115
|
+
.. _Quick Start section: https://coverage.readthedocs.io/en/7.14.3/#quick-start
|
|
116
116
|
|
|
117
117
|
|
|
118
118
|
Change history
|
|
@@ -120,7 +120,7 @@ Change history
|
|
|
120
120
|
|
|
121
121
|
The complete history of changes is on the `change history page`_.
|
|
122
122
|
|
|
123
|
-
.. _change history page: https://coverage.readthedocs.io/en/7.14.
|
|
123
|
+
.. _change history page: https://coverage.readthedocs.io/en/7.14.3/changes.html
|
|
124
124
|
|
|
125
125
|
|
|
126
126
|
Code of Conduct
|
|
@@ -139,7 +139,7 @@ Contributing
|
|
|
139
139
|
Found a bug? Want to help improve the code or documentation? See the
|
|
140
140
|
`Contributing section`_ of the docs.
|
|
141
141
|
|
|
142
|
-
.. _Contributing section: https://coverage.readthedocs.io/en/7.14.
|
|
142
|
+
.. _Contributing section: https://coverage.readthedocs.io/en/7.14.3/contributing.html
|
|
143
143
|
|
|
144
144
|
|
|
145
145
|
Security
|
|
@@ -167,7 +167,7 @@ Licensed under the `Apache 2.0 License`_. For details, see `NOTICE.txt`_.
|
|
|
167
167
|
:target: https://github.com/coveragepy/coveragepy/actions/workflows/quality.yml
|
|
168
168
|
:alt: Quality check status
|
|
169
169
|
.. |docs| image:: https://readthedocs.org/projects/coverage/badge/?version=latest&style=flat
|
|
170
|
-
:target: https://coverage.readthedocs.io/en/7.14.
|
|
170
|
+
:target: https://coverage.readthedocs.io/en/7.14.3/
|
|
171
171
|
:alt: Documentation
|
|
172
172
|
.. |kit| image:: https://img.shields.io/pypi/v/coverage
|
|
173
173
|
:target: https://pypi.org/project/coverage/
|
|
@@ -69,11 +69,11 @@ project = "Coverage.py"
|
|
|
69
69
|
# @@@ editable
|
|
70
70
|
copyright = "2009–2026, Ned Batchelder" # pylint: disable=redefined-builtin
|
|
71
71
|
# The short X.Y.Z version.
|
|
72
|
-
version = "7.14.
|
|
72
|
+
version = "7.14.3"
|
|
73
73
|
# The full version, including alpha/beta/rc tags.
|
|
74
|
-
release = "7.14.
|
|
74
|
+
release = "7.14.3"
|
|
75
75
|
# The date of release, in "monthname day, year" format.
|
|
76
|
-
release_date = "June
|
|
76
|
+
release_date = "June 22, 2026"
|
|
77
77
|
# @@@ end
|
|
78
78
|
|
|
79
79
|
rst_epilog = f"""
|
|
@@ -1503,6 +1503,36 @@ class ExcludeTest(CoverageTest):
|
|
|
1503
1503
|
lines=[1, 3, 5, 7, 9, 11, 19, 24, 25],
|
|
1504
1504
|
)
|
|
1505
1505
|
|
|
1506
|
+
def test_default_ellipsis_multiline_return_type(self) -> None:
|
|
1507
|
+
# Issue #2185: the default `...` exclusion should still apply when the
|
|
1508
|
+
# return type annotation is split over multiple lines (a common shape
|
|
1509
|
+
# produced by formatters like Ruff when the annotation is long).
|
|
1510
|
+
# The trailing block also pins down what should NOT be excluded by
|
|
1511
|
+
# the widened pattern: a `...`-valued annotated assignment, and a
|
|
1512
|
+
# def whose return type contains `]` but has a real body.
|
|
1513
|
+
self.check_coverage(
|
|
1514
|
+
"""\
|
|
1515
|
+
a = 1
|
|
1516
|
+
def short() -> dict[str, str]: ...
|
|
1517
|
+
def split_return() -> dict[
|
|
1518
|
+
str, str
|
|
1519
|
+
]: ...
|
|
1520
|
+
def split_param_and_return(
|
|
1521
|
+
arg: int,
|
|
1522
|
+
) -> dict[
|
|
1523
|
+
str, str
|
|
1524
|
+
]: ...
|
|
1525
|
+
def split_param_with_inner_ellipsis(arg: tuple[
|
|
1526
|
+
int, ...
|
|
1527
|
+
]) -> int: ...
|
|
1528
|
+
# Not stubs, and so not excluded:
|
|
1529
|
+
x: list[int] = ...
|
|
1530
|
+
def with_body() -> dict[str, str]: return {}
|
|
1531
|
+
z = 17
|
|
1532
|
+
""",
|
|
1533
|
+
lines=[1, 15, 16, 17],
|
|
1534
|
+
)
|
|
1535
|
+
|
|
1506
1536
|
def test_two_excludes(self) -> None:
|
|
1507
1537
|
self.check_coverage(
|
|
1508
1538
|
"""\
|
|
@@ -229,10 +229,6 @@ class MemoryLeakTest(CoverageTest):
|
|
|
229
229
|
# In fact, sysmon explicitly holds onto all code objects,
|
|
230
230
|
# so this will definitely fail with sysmon.
|
|
231
231
|
)
|
|
232
|
-
@pytest.mark.skipif(
|
|
233
|
-
env.PYVERSION[:2] == (3, 13) and not env.GIL,
|
|
234
|
-
reason="3.13t never frees code objects: https://github.com/python/cpython/pull/131989",
|
|
235
|
-
)
|
|
236
232
|
@pytest.mark.parametrize("branch", [False, True])
|
|
237
233
|
def test_eval_codeobject_leak(self, branch: bool) -> None:
|
|
238
234
|
# https://github.com/coveragepy/coveragepy/issues/1924
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
[tox]
|
|
5
5
|
# When changing this list, be sure to check the [gh] list below.
|
|
6
6
|
# PYVERSIONS
|
|
7
|
-
envlist = py3{10-15}, py3{
|
|
7
|
+
envlist = py3{10-15}, py3{14-15}t, pypy3, doc, lint, mypy
|
|
8
8
|
labels =
|
|
9
|
-
py = py3{10-15}, py3{
|
|
9
|
+
py = py3{10-15}, py3{14-15}t, pypy3
|
|
10
10
|
qual = lint, mypy
|
|
11
11
|
skip_missing_interpreters = {env:COVERAGE_SKIP_MISSING_INTERPRETERS:True}
|
|
12
12
|
toxworkdir = {env:TOXWORKDIR:.tox}
|
|
@@ -137,7 +137,6 @@ python =
|
|
|
137
137
|
3.11 = py311
|
|
138
138
|
3.12 = py312
|
|
139
139
|
3.13 = py313
|
|
140
|
-
3.13t = py313t
|
|
141
140
|
3.14 = py314
|
|
142
141
|
3.14t = py314t
|
|
143
142
|
3.15 = py315
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|