coverage 7.14.2__tar.gz → 7.15.0__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.
Files changed (402) hide show
  1. {coverage-7.14.2 → coverage-7.15.0}/.github/workflows/codeql-analysis.yml +1 -1
  2. {coverage-7.14.2 → coverage-7.15.0}/.github/workflows/coverage.yml +3 -7
  3. {coverage-7.14.2 → coverage-7.15.0}/.github/workflows/dependency-review.yml +1 -1
  4. {coverage-7.14.2 → coverage-7.15.0}/.github/workflows/kit.yml +3 -3
  5. {coverage-7.14.2 → coverage-7.15.0}/.github/workflows/python-nightly.yml +1 -2
  6. {coverage-7.14.2 → coverage-7.15.0}/.github/workflows/quality.yml +5 -5
  7. {coverage-7.14.2 → coverage-7.15.0}/.github/workflows/testsuite.yml +2 -7
  8. {coverage-7.14.2 → coverage-7.15.0}/CHANGES.rst +57 -4
  9. {coverage-7.14.2 → coverage-7.15.0}/CONTRIBUTORS.txt +3 -0
  10. {coverage-7.14.2 → coverage-7.15.0}/PKG-INFO +8 -8
  11. {coverage-7.14.2 → coverage-7.15.0}/coverage/cmdline.py +15 -2
  12. {coverage-7.14.2 → coverage-7.15.0}/coverage/config.py +1 -1
  13. {coverage-7.14.2 → coverage-7.15.0}/coverage/env.py +8 -1
  14. {coverage-7.14.2 → coverage-7.15.0}/coverage/execfile.py +13 -4
  15. {coverage-7.14.2 → coverage-7.15.0}/coverage/lcovreport.py +6 -1
  16. {coverage-7.14.2 → coverage-7.15.0}/coverage/version.py +1 -1
  17. {coverage-7.14.2 → coverage-7.15.0}/coverage.egg-info/PKG-INFO +8 -8
  18. {coverage-7.14.2 → coverage-7.15.0}/coverage.egg-info/SOURCES.txt +1 -0
  19. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_annotate.rst +3 -1
  20. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_html.rst +5 -3
  21. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_json.rst +3 -1
  22. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_lcov.rst +3 -1
  23. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_report.rst +3 -1
  24. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_reporting.rst +3 -1
  25. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_xml.rst +3 -1
  26. {coverage-7.14.2 → coverage-7.15.0}/doc/conf.py +3 -3
  27. {coverage-7.14.2 → coverage-7.15.0}/doc/python-coverage.1.txt +29 -5
  28. coverage-7.15.0/tests/modules/checkspec.py +1 -0
  29. {coverage-7.14.2 → coverage-7.15.0}/tests/test_cmdline.py +64 -0
  30. {coverage-7.14.2 → coverage-7.15.0}/tests/test_coverage.py +30 -0
  31. {coverage-7.14.2 → coverage-7.15.0}/tests/test_execfile.py +7 -0
  32. {coverage-7.14.2 → coverage-7.15.0}/tests/test_lcov.py +95 -0
  33. {coverage-7.14.2 → coverage-7.15.0}/tests/test_oddball.py +0 -4
  34. {coverage-7.14.2 → coverage-7.15.0}/tests/test_process.py +6 -0
  35. {coverage-7.14.2 → coverage-7.15.0}/tox.ini +2 -3
  36. {coverage-7.14.2 → coverage-7.15.0}/.editorconfig +0 -0
  37. {coverage-7.14.2 → coverage-7.15.0}/.git-blame-ignore-revs +0 -0
  38. {coverage-7.14.2 → coverage-7.15.0}/.github/CODE_OF_CONDUCT.md +0 -0
  39. {coverage-7.14.2 → coverage-7.15.0}/.github/FUNDING.yml +0 -0
  40. {coverage-7.14.2 → coverage-7.15.0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  41. {coverage-7.14.2 → coverage-7.15.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  42. {coverage-7.14.2 → coverage-7.15.0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  43. {coverage-7.14.2 → coverage-7.15.0}/.github/ISSUE_TEMPLATE/support.md +0 -0
  44. {coverage-7.14.2 → coverage-7.15.0}/.github/SECURITY.md +0 -0
  45. {coverage-7.14.2 → coverage-7.15.0}/.github/dependabot.yml +0 -0
  46. {coverage-7.14.2 → coverage-7.15.0}/.github/workflows/publish.yml +0 -0
  47. {coverage-7.14.2 → coverage-7.15.0}/.github/zizmor.yml +0 -0
  48. {coverage-7.14.2 → coverage-7.15.0}/.ignore +0 -0
  49. {coverage-7.14.2 → coverage-7.15.0}/.pre-commit-config.yaml +0 -0
  50. {coverage-7.14.2 → coverage-7.15.0}/.readthedocs.yaml +0 -0
  51. {coverage-7.14.2 → coverage-7.15.0}/CITATION.cff +0 -0
  52. {coverage-7.14.2 → coverage-7.15.0}/LICENSE.txt +0 -0
  53. {coverage-7.14.2 → coverage-7.15.0}/MANIFEST.in +0 -0
  54. {coverage-7.14.2 → coverage-7.15.0}/Makefile +0 -0
  55. {coverage-7.14.2 → coverage-7.15.0}/NOTICE.txt +0 -0
  56. {coverage-7.14.2 → coverage-7.15.0}/README.rst +0 -0
  57. {coverage-7.14.2 → coverage-7.15.0}/__main__.py +0 -0
  58. {coverage-7.14.2 → coverage-7.15.0}/a1_coverage.pth +0 -0
  59. {coverage-7.14.2 → coverage-7.15.0}/ci/README.txt +0 -0
  60. {coverage-7.14.2 → coverage-7.15.0}/ci/comment_on_fixes.py +0 -0
  61. {coverage-7.14.2 → coverage-7.15.0}/ci/session.py +0 -0
  62. {coverage-7.14.2 → coverage-7.15.0}/ci/trigger_action.py +0 -0
  63. {coverage-7.14.2 → coverage-7.15.0}/ci/update_rtfd.py +0 -0
  64. {coverage-7.14.2 → coverage-7.15.0}/coverage/__init__.py +0 -0
  65. {coverage-7.14.2 → coverage-7.15.0}/coverage/__main__.py +0 -0
  66. {coverage-7.14.2 → coverage-7.15.0}/coverage/annotate.py +0 -0
  67. {coverage-7.14.2 → coverage-7.15.0}/coverage/bytecode.py +0 -0
  68. {coverage-7.14.2 → coverage-7.15.0}/coverage/collector.py +0 -0
  69. {coverage-7.14.2 → coverage-7.15.0}/coverage/context.py +0 -0
  70. {coverage-7.14.2 → coverage-7.15.0}/coverage/control.py +0 -0
  71. {coverage-7.14.2 → coverage-7.15.0}/coverage/core.py +0 -0
  72. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/datastack.c +0 -0
  73. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/datastack.h +0 -0
  74. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/filedisp.c +0 -0
  75. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/filedisp.h +0 -0
  76. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/module.c +0 -0
  77. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/stats.h +0 -0
  78. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/tracer.c +0 -0
  79. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/tracer.h +0 -0
  80. {coverage-7.14.2 → coverage-7.15.0}/coverage/ctracer/util.h +0 -0
  81. {coverage-7.14.2 → coverage-7.15.0}/coverage/data.py +0 -0
  82. {coverage-7.14.2 → coverage-7.15.0}/coverage/debug.py +0 -0
  83. {coverage-7.14.2 → coverage-7.15.0}/coverage/disposition.py +0 -0
  84. {coverage-7.14.2 → coverage-7.15.0}/coverage/exceptions.py +0 -0
  85. {coverage-7.14.2 → coverage-7.15.0}/coverage/files.py +0 -0
  86. {coverage-7.14.2 → coverage-7.15.0}/coverage/html.py +0 -0
  87. {coverage-7.14.2 → coverage-7.15.0}/coverage/htmlfiles/coverage_html.js +0 -0
  88. {coverage-7.14.2 → coverage-7.15.0}/coverage/htmlfiles/favicon_32.png +0 -0
  89. {coverage-7.14.2 → coverage-7.15.0}/coverage/htmlfiles/index.html +0 -0
  90. {coverage-7.14.2 → coverage-7.15.0}/coverage/htmlfiles/keybd_closed.png +0 -0
  91. {coverage-7.14.2 → coverage-7.15.0}/coverage/htmlfiles/pyfile.html +0 -0
  92. {coverage-7.14.2 → coverage-7.15.0}/coverage/htmlfiles/style.css +0 -0
  93. {coverage-7.14.2 → coverage-7.15.0}/coverage/htmlfiles/style.scss +0 -0
  94. {coverage-7.14.2 → coverage-7.15.0}/coverage/inorout.py +0 -0
  95. {coverage-7.14.2 → coverage-7.15.0}/coverage/jsonreport.py +0 -0
  96. {coverage-7.14.2 → coverage-7.15.0}/coverage/misc.py +0 -0
  97. {coverage-7.14.2 → coverage-7.15.0}/coverage/multiproc.py +0 -0
  98. {coverage-7.14.2 → coverage-7.15.0}/coverage/numbits.py +0 -0
  99. {coverage-7.14.2 → coverage-7.15.0}/coverage/parser.py +0 -0
  100. {coverage-7.14.2 → coverage-7.15.0}/coverage/patch.py +0 -0
  101. {coverage-7.14.2 → coverage-7.15.0}/coverage/phystokens.py +0 -0
  102. {coverage-7.14.2 → coverage-7.15.0}/coverage/plugin.py +0 -0
  103. {coverage-7.14.2 → coverage-7.15.0}/coverage/plugin_support.py +0 -0
  104. {coverage-7.14.2 → coverage-7.15.0}/coverage/pth_file.py +0 -0
  105. {coverage-7.14.2 → coverage-7.15.0}/coverage/py.typed +0 -0
  106. {coverage-7.14.2 → coverage-7.15.0}/coverage/python.py +0 -0
  107. {coverage-7.14.2 → coverage-7.15.0}/coverage/pytracer.py +0 -0
  108. {coverage-7.14.2 → coverage-7.15.0}/coverage/regions.py +0 -0
  109. {coverage-7.14.2 → coverage-7.15.0}/coverage/report.py +0 -0
  110. {coverage-7.14.2 → coverage-7.15.0}/coverage/report_core.py +0 -0
  111. {coverage-7.14.2 → coverage-7.15.0}/coverage/results.py +0 -0
  112. {coverage-7.14.2 → coverage-7.15.0}/coverage/sqldata.py +0 -0
  113. {coverage-7.14.2 → coverage-7.15.0}/coverage/sqlitedb.py +0 -0
  114. {coverage-7.14.2 → coverage-7.15.0}/coverage/sysmon.py +0 -0
  115. {coverage-7.14.2 → coverage-7.15.0}/coverage/templite.py +0 -0
  116. {coverage-7.14.2 → coverage-7.15.0}/coverage/tomlconfig.py +0 -0
  117. {coverage-7.14.2 → coverage-7.15.0}/coverage/tracer.pyi +0 -0
  118. {coverage-7.14.2 → coverage-7.15.0}/coverage/types.py +0 -0
  119. {coverage-7.14.2 → coverage-7.15.0}/coverage/xmlreport.py +0 -0
  120. {coverage-7.14.2 → coverage-7.15.0}/coverage.egg-info/dependency_links.txt +0 -0
  121. {coverage-7.14.2 → coverage-7.15.0}/coverage.egg-info/entry_points.txt +0 -0
  122. {coverage-7.14.2 → coverage-7.15.0}/coverage.egg-info/not-zip-safe +0 -0
  123. {coverage-7.14.2 → coverage-7.15.0}/coverage.egg-info/requires.txt +0 -0
  124. {coverage-7.14.2 → coverage-7.15.0}/coverage.egg-info/top_level.txt +0 -0
  125. {coverage-7.14.2 → coverage-7.15.0}/doc/_static/coverage.css +0 -0
  126. {coverage-7.14.2 → coverage-7.15.0}/doc/api.rst +0 -0
  127. {coverage-7.14.2 → coverage-7.15.0}/doc/api_coverage.rst +0 -0
  128. {coverage-7.14.2 → coverage-7.15.0}/doc/api_coveragedata.rst +0 -0
  129. {coverage-7.14.2 → coverage-7.15.0}/doc/api_exceptions.rst +0 -0
  130. {coverage-7.14.2 → coverage-7.15.0}/doc/api_module.rst +0 -0
  131. {coverage-7.14.2 → coverage-7.15.0}/doc/api_plugin.rst +0 -0
  132. {coverage-7.14.2 → coverage-7.15.0}/doc/branch.rst +0 -0
  133. {coverage-7.14.2 → coverage-7.15.0}/doc/changes.rst +0 -0
  134. {coverage-7.14.2 → coverage-7.15.0}/doc/cog_helpers.py +0 -0
  135. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_combine.rst +0 -0
  136. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_debug.rst +0 -0
  137. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_erase.rst +0 -0
  138. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/cmd_run.rst +0 -0
  139. {coverage-7.14.2 → coverage-7.15.0}/doc/commands/index.rst +0 -0
  140. {coverage-7.14.2 → coverage-7.15.0}/doc/config.rst +0 -0
  141. {coverage-7.14.2 → coverage-7.15.0}/doc/contexts.rst +0 -0
  142. {coverage-7.14.2 → coverage-7.15.0}/doc/contributing.rst +0 -0
  143. {coverage-7.14.2 → coverage-7.15.0}/doc/dbschema.rst +0 -0
  144. {coverage-7.14.2 → coverage-7.15.0}/doc/dict.txt +0 -0
  145. {coverage-7.14.2 → coverage-7.15.0}/doc/excluding.rst +0 -0
  146. {coverage-7.14.2 → coverage-7.15.0}/doc/faq.rst +0 -0
  147. {coverage-7.14.2 → coverage-7.15.0}/doc/howitworks.rst +0 -0
  148. {coverage-7.14.2 → coverage-7.15.0}/doc/index.rst +0 -0
  149. {coverage-7.14.2 → coverage-7.15.0}/doc/install.rst +0 -0
  150. {coverage-7.14.2 → coverage-7.15.0}/doc/media/Tidelift_Logos_RGB_Tidelift_Shorthand_On-White.png +0 -0
  151. {coverage-7.14.2 → coverage-7.15.0}/doc/media/Tidelift_Logos_RGB_Tidelift_Shorthand_On-White_small.png +0 -0
  152. {coverage-7.14.2 → coverage-7.15.0}/doc/media/sleepy-snake-600.png +0 -0
  153. {coverage-7.14.2 → coverage-7.15.0}/doc/media/sleepy-snake-circle-150.png +0 -0
  154. {coverage-7.14.2 → coverage-7.15.0}/doc/messages.rst +0 -0
  155. {coverage-7.14.2 → coverage-7.15.0}/doc/migrating.rst +0 -0
  156. {coverage-7.14.2 → coverage-7.15.0}/doc/other.rst +0 -0
  157. {coverage-7.14.2 → coverage-7.15.0}/doc/plugins.rst +0 -0
  158. {coverage-7.14.2 → coverage-7.15.0}/doc/requirements.in +0 -0
  159. {coverage-7.14.2 → coverage-7.15.0}/doc/requirements.pip +0 -0
  160. {coverage-7.14.2 → coverage-7.15.0}/doc/sample_html/favicon_32_cb_c827f16f.png +0 -0
  161. {coverage-7.14.2 → coverage-7.15.0}/doc/sample_html/keybd_closed_cb_900cfef5.png +0 -0
  162. {coverage-7.14.2 → coverage-7.15.0}/doc/sleepy.rst +0 -0
  163. {coverage-7.14.2 → coverage-7.15.0}/doc/source.rst +0 -0
  164. {coverage-7.14.2 → coverage-7.15.0}/doc/subprocess.rst +0 -0
  165. {coverage-7.14.2 → coverage-7.15.0}/doc/trouble.rst +0 -0
  166. {coverage-7.14.2 → coverage-7.15.0}/doc/whatsnew5x.rst +0 -0
  167. {coverage-7.14.2 → coverage-7.15.0}/howto.txt +0 -0
  168. {coverage-7.14.2 → coverage-7.15.0}/igor.py +0 -0
  169. {coverage-7.14.2 → coverage-7.15.0}/lab/README.txt +0 -0
  170. {coverage-7.14.2 → coverage-7.15.0}/lab/branches.py +0 -0
  171. {coverage-7.14.2 → coverage-7.15.0}/lab/compare_times.sh +0 -0
  172. {coverage-7.14.2 → coverage-7.15.0}/lab/coverage-04.dtd +0 -0
  173. {coverage-7.14.2 → coverage-7.15.0}/lab/extract_code.py +0 -0
  174. {coverage-7.14.2 → coverage-7.15.0}/lab/goals.py +0 -0
  175. {coverage-7.14.2 → coverage-7.15.0}/lab/hack_pyc.py +0 -0
  176. {coverage-7.14.2 → coverage-7.15.0}/lab/notes/arcs-to-branches.txt +0 -0
  177. {coverage-7.14.2 → coverage-7.15.0}/lab/notes/bug1303.txt +0 -0
  178. {coverage-7.14.2 → coverage-7.15.0}/lab/notes/pypy-738-decorated-functions.txt +0 -0
  179. {coverage-7.14.2 → coverage-7.15.0}/lab/parse_all.py +0 -0
  180. {coverage-7.14.2 → coverage-7.15.0}/lab/parser.py +0 -0
  181. {coverage-7.14.2 → coverage-7.15.0}/lab/pick.py +0 -0
  182. {coverage-7.14.2 → coverage-7.15.0}/lab/platform_info.py +0 -0
  183. {coverage-7.14.2 → coverage-7.15.0}/lab/run_sysmon.py +0 -0
  184. {coverage-7.14.2 → coverage-7.15.0}/lab/run_trace.py +0 -0
  185. {coverage-7.14.2 → coverage-7.15.0}/lab/select_contexts.py +0 -0
  186. {coverage-7.14.2 → coverage-7.15.0}/lab/show_platform.py +0 -0
  187. {coverage-7.14.2 → coverage-7.15.0}/lab/show_pyc.py +0 -0
  188. {coverage-7.14.2 → coverage-7.15.0}/lab/treetopy.sh +0 -0
  189. {coverage-7.14.2 → coverage-7.15.0}/lab/warn_executed.py +0 -0
  190. {coverage-7.14.2 → coverage-7.15.0}/lab/warn_executed.toml +0 -0
  191. {coverage-7.14.2 → coverage-7.15.0}/metacov.ini +0 -0
  192. {coverage-7.14.2 → coverage-7.15.0}/pyproject.toml +0 -0
  193. {coverage-7.14.2 → coverage-7.15.0}/requirements/dev.in +0 -0
  194. {coverage-7.14.2 → coverage-7.15.0}/requirements/dev.pip +0 -0
  195. {coverage-7.14.2 → coverage-7.15.0}/requirements/kit.in +0 -0
  196. {coverage-7.14.2 → coverage-7.15.0}/requirements/kit.pip +0 -0
  197. {coverage-7.14.2 → coverage-7.15.0}/requirements/light-threads.in +0 -0
  198. {coverage-7.14.2 → coverage-7.15.0}/requirements/light-threads.pip +0 -0
  199. {coverage-7.14.2 → coverage-7.15.0}/requirements/mypy.in +0 -0
  200. {coverage-7.14.2 → coverage-7.15.0}/requirements/mypy.pip +0 -0
  201. {coverage-7.14.2 → coverage-7.15.0}/requirements/pins.pip +0 -0
  202. {coverage-7.14.2 → coverage-7.15.0}/requirements/pip.in +0 -0
  203. {coverage-7.14.2 → coverage-7.15.0}/requirements/pip.pip +0 -0
  204. {coverage-7.14.2 → coverage-7.15.0}/requirements/pytest.in +0 -0
  205. {coverage-7.14.2 → coverage-7.15.0}/requirements/pytest.pip +0 -0
  206. {coverage-7.14.2 → coverage-7.15.0}/requirements/tox.in +0 -0
  207. {coverage-7.14.2 → coverage-7.15.0}/requirements/tox.pip +0 -0
  208. {coverage-7.14.2 → coverage-7.15.0}/setup.cfg +0 -0
  209. {coverage-7.14.2 → coverage-7.15.0}/setup.py +0 -0
  210. {coverage-7.14.2 → coverage-7.15.0}/tests/__init__.py +0 -0
  211. {coverage-7.14.2 → coverage-7.15.0}/tests/conftest.py +0 -0
  212. {coverage-7.14.2 → coverage-7.15.0}/tests/coveragetest.py +0 -0
  213. {coverage-7.14.2 → coverage-7.15.0}/tests/covmodzip1.py +0 -0
  214. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/README.rst +0 -0
  215. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/anno_dir/multi.py,cover +0 -0
  216. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/anno_dir/z_80084bf2fba02475___init__.py,cover +0 -0
  217. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/anno_dir/z_80084bf2fba02475_a.py,cover +0 -0
  218. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/anno_dir/z_b039179a8a4ce2c2___init__.py,cover +0 -0
  219. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/anno_dir/z_b039179a8a4ce2c2_b.py,cover +0 -0
  220. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/encodings/utf8.py,cover +0 -0
  221. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/mae/mae.py,cover +0 -0
  222. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/multi/a/__init__.py,cover +0 -0
  223. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/multi/a/a.py,cover +0 -0
  224. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/multi/b/__init__.py,cover +0 -0
  225. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/multi/b/b.py,cover +0 -0
  226. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/multi/multi.py,cover +0 -0
  227. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/annotate/white/white.py,cover +0 -0
  228. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/Makefile +0 -0
  229. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/a/a_py.html +0 -0
  230. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/a/class_index.html +0 -0
  231. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/a/function_index.html +0 -0
  232. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/a/index.html +0 -0
  233. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/b_branch/b_py.html +0 -0
  234. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/b_branch/class_index.html +0 -0
  235. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/b_branch/function_index.html +0 -0
  236. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/b_branch/index.html +0 -0
  237. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/bom/bom_py.html +0 -0
  238. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/bom/class_index.html +0 -0
  239. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/bom/function_index.html +0 -0
  240. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/bom/index.html +0 -0
  241. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/contexts/class_index.html +0 -0
  242. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/contexts/function_index.html +0 -0
  243. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/contexts/index.html +0 -0
  244. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/contexts/two_tests_py.html +0 -0
  245. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/isolatin1/class_index.html +0 -0
  246. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/isolatin1/function_index.html +0 -0
  247. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/isolatin1/index.html +0 -0
  248. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/isolatin1/isolatin1_py.html +0 -0
  249. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/multiline/class_index.html +0 -0
  250. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/multiline/function_index.html +0 -0
  251. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/multiline/index.html +0 -0
  252. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/multiline/multiline_py.html +0 -0
  253. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_1/class_index.html +0 -0
  254. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_1/function_index.html +0 -0
  255. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_1/index.html +0 -0
  256. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_1/m1_py.html +0 -0
  257. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_1/m2_py.html +0 -0
  258. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_1/m3_py.html +0 -0
  259. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_1/main_py.html +0 -0
  260. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_2/class_index.html +0 -0
  261. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_2/function_index.html +0 -0
  262. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_2/index.html +0 -0
  263. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_2/m2_py.html +0 -0
  264. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_2/m3_py.html +0 -0
  265. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_2/main_py.html +0 -0
  266. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_3/class_index.html +0 -0
  267. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_3/function_index.html +0 -0
  268. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_3/index.html +0 -0
  269. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_3/m3_py.html +0 -0
  270. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_3/main_py.html +0 -0
  271. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_4/class_index.html +0 -0
  272. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_4/function_index.html +0 -0
  273. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_4/index.html +0 -0
  274. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_4/m1_py.html +0 -0
  275. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_4/m3_py.html +0 -0
  276. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_4/main_py.html +0 -0
  277. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_5/class_index.html +0 -0
  278. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_5/function_index.html +0 -0
  279. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_5/index.html +0 -0
  280. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_5/m1_py.html +0 -0
  281. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/omit_5/main_py.html +0 -0
  282. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/other/blah_blah_other_py.html +0 -0
  283. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/other/class_index.html +0 -0
  284. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/other/function_index.html +0 -0
  285. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/other/here_py.html +0 -0
  286. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/other/index.html +0 -0
  287. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/partial/class_index.html +0 -0
  288. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/partial/function_index.html +0 -0
  289. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/partial/index.html +0 -0
  290. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/partial/partial_py.html +0 -0
  291. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/styled/a_py.html +0 -0
  292. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/styled/class_index.html +0 -0
  293. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/styled/function_index.html +0 -0
  294. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/styled/index.html +0 -0
  295. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/styled/myextra.css +0 -0
  296. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/styled/style.css +0 -0
  297. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/support/coverage_html_cb_dd2e7eb5.js +0 -0
  298. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/support/favicon_32_cb_c827f16f.png +0 -0
  299. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/support/keybd_closed_cb_900cfef5.png +0 -0
  300. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/support/style_cb_a90a112a.css +0 -0
  301. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/unicode/class_index.html +0 -0
  302. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/unicode/function_index.html +0 -0
  303. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/unicode/index.html +0 -0
  304. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/html/unicode/unicode_py.html +0 -0
  305. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/testing/getty/gettysburg.txt +0 -0
  306. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/testing/xml/output.xml +0 -0
  307. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/xml/x_xml/coverage.xml +0 -0
  308. {coverage-7.14.2 → coverage-7.15.0}/tests/gold/xml/y_xml_branch/coverage.xml +0 -0
  309. {coverage-7.14.2 → coverage-7.15.0}/tests/goldtest.py +0 -0
  310. {coverage-7.14.2 → coverage-7.15.0}/tests/helpers.py +0 -0
  311. {coverage-7.14.2 → coverage-7.15.0}/tests/js/index.html +0 -0
  312. {coverage-7.14.2 → coverage-7.15.0}/tests/js/tests.js +0 -0
  313. {coverage-7.14.2 → coverage-7.15.0}/tests/mixins.py +0 -0
  314. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/__init__.py +0 -0
  315. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/afile.odd.py +0 -0
  316. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/afile.py +0 -0
  317. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/bb/__init__.py +0 -0
  318. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/bb/bfile.odd.py +0 -0
  319. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/bb/bfile.py +0 -0
  320. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/bb/cc/__init__.py +0 -0
  321. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/bb/cc/cfile.py +0 -0
  322. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/bb.odd/bfile.py +0 -0
  323. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/aa/zfile.py +0 -0
  324. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/ambiguous/__init__.py +0 -0
  325. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/ambiguous/pkg1/__init__.py +0 -0
  326. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/ambiguous/pkg1/ambiguous.py +0 -0
  327. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/covmod1.py +0 -0
  328. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/namespace_420/sub1/__init__.py +0 -0
  329. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/__init__.py +0 -0
  330. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/__main__.py +0 -0
  331. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/p1a.py +0 -0
  332. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/p1b.py +0 -0
  333. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/p1c.py +0 -0
  334. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/runmod2.py +0 -0
  335. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/sub/__init__.py +0 -0
  336. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/sub/__main__.py +0 -0
  337. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/sub/ps1a.py +0 -0
  338. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg1/sub/runmod3.py +0 -0
  339. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg2/__init__.py +0 -0
  340. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg2/p2a.py +0 -0
  341. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/pkg2/p2b.py +0 -0
  342. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/plugins/__init__.py +0 -0
  343. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/plugins/a_plugin.py +0 -0
  344. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/plugins/another.py +0 -0
  345. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/process_test/__init__.py +0 -0
  346. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/process_test/try_execfile.py +0 -0
  347. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/runmod1.py +0 -0
  348. {coverage-7.14.2 → coverage-7.15.0}/tests/modules/usepkgs.py +0 -0
  349. {coverage-7.14.2 → coverage-7.15.0}/tests/moremodules/namespace_420/sub2/__init__.py +0 -0
  350. {coverage-7.14.2 → coverage-7.15.0}/tests/moremodules/othermods/__init__.py +0 -0
  351. {coverage-7.14.2 → coverage-7.15.0}/tests/moremodules/othermods/othera.py +0 -0
  352. {coverage-7.14.2 → coverage-7.15.0}/tests/moremodules/othermods/otherb.py +0 -0
  353. {coverage-7.14.2 → coverage-7.15.0}/tests/moremodules/othermods/sub/__init__.py +0 -0
  354. {coverage-7.14.2 → coverage-7.15.0}/tests/moremodules/othermods/sub/osa.py +0 -0
  355. {coverage-7.14.2 → coverage-7.15.0}/tests/moremodules/othermods/sub/osb.py +0 -0
  356. {coverage-7.14.2 → coverage-7.15.0}/tests/osinfo.py +0 -0
  357. {coverage-7.14.2 → coverage-7.15.0}/tests/plugin1.py +0 -0
  358. {coverage-7.14.2 → coverage-7.15.0}/tests/plugin2.py +0 -0
  359. {coverage-7.14.2 → coverage-7.15.0}/tests/plugin_config.py +0 -0
  360. {coverage-7.14.2 → coverage-7.15.0}/tests/qunit/jquery.tmpl.min.js +0 -0
  361. {coverage-7.14.2 → coverage-7.15.0}/tests/select_plugin.py +0 -0
  362. {coverage-7.14.2 → coverage-7.15.0}/tests/strategies.py +0 -0
  363. {coverage-7.14.2 → coverage-7.15.0}/tests/stress_phystoken.tok +0 -0
  364. {coverage-7.14.2 → coverage-7.15.0}/tests/stress_phystoken_dos.tok +0 -0
  365. {coverage-7.14.2 → coverage-7.15.0}/tests/test_annotate.py +0 -0
  366. {coverage-7.14.2 → coverage-7.15.0}/tests/test_api.py +0 -0
  367. {coverage-7.14.2 → coverage-7.15.0}/tests/test_arcs.py +0 -0
  368. {coverage-7.14.2 → coverage-7.15.0}/tests/test_bytecode.py +0 -0
  369. {coverage-7.14.2 → coverage-7.15.0}/tests/test_collector.py +0 -0
  370. {coverage-7.14.2 → coverage-7.15.0}/tests/test_concurrency.py +0 -0
  371. {coverage-7.14.2 → coverage-7.15.0}/tests/test_config.py +0 -0
  372. {coverage-7.14.2 → coverage-7.15.0}/tests/test_context.py +0 -0
  373. {coverage-7.14.2 → coverage-7.15.0}/tests/test_core.py +0 -0
  374. {coverage-7.14.2 → coverage-7.15.0}/tests/test_data.py +0 -0
  375. {coverage-7.14.2 → coverage-7.15.0}/tests/test_debug.py +0 -0
  376. {coverage-7.14.2 → coverage-7.15.0}/tests/test_filereporter.py +0 -0
  377. {coverage-7.14.2 → coverage-7.15.0}/tests/test_files.py +0 -0
  378. {coverage-7.14.2 → coverage-7.15.0}/tests/test_goldtest.py +0 -0
  379. {coverage-7.14.2 → coverage-7.15.0}/tests/test_html.py +0 -0
  380. {coverage-7.14.2 → coverage-7.15.0}/tests/test_json.py +0 -0
  381. {coverage-7.14.2 → coverage-7.15.0}/tests/test_misc.py +0 -0
  382. {coverage-7.14.2 → coverage-7.15.0}/tests/test_mixins.py +0 -0
  383. {coverage-7.14.2 → coverage-7.15.0}/tests/test_numbits.py +0 -0
  384. {coverage-7.14.2 → coverage-7.15.0}/tests/test_parser.py +0 -0
  385. {coverage-7.14.2 → coverage-7.15.0}/tests/test_phystokens.py +0 -0
  386. {coverage-7.14.2 → coverage-7.15.0}/tests/test_plugins.py +0 -0
  387. {coverage-7.14.2 → coverage-7.15.0}/tests/test_python.py +0 -0
  388. {coverage-7.14.2 → coverage-7.15.0}/tests/test_regions.py +0 -0
  389. {coverage-7.14.2 → coverage-7.15.0}/tests/test_report.py +0 -0
  390. {coverage-7.14.2 → coverage-7.15.0}/tests/test_report_common.py +0 -0
  391. {coverage-7.14.2 → coverage-7.15.0}/tests/test_report_core.py +0 -0
  392. {coverage-7.14.2 → coverage-7.15.0}/tests/test_results.py +0 -0
  393. {coverage-7.14.2 → coverage-7.15.0}/tests/test_setup.py +0 -0
  394. {coverage-7.14.2 → coverage-7.15.0}/tests/test_sqlitedb.py +0 -0
  395. {coverage-7.14.2 → coverage-7.15.0}/tests/test_templite.py +0 -0
  396. {coverage-7.14.2 → coverage-7.15.0}/tests/test_testing.py +0 -0
  397. {coverage-7.14.2 → coverage-7.15.0}/tests/test_venv.py +0 -0
  398. {coverage-7.14.2 → coverage-7.15.0}/tests/test_version.py +0 -0
  399. {coverage-7.14.2 → coverage-7.15.0}/tests/test_xml.py +0 -0
  400. {coverage-7.14.2 → coverage-7.15.0}/tests/testenv.py +0 -0
  401. {coverage-7.14.2 → coverage-7.15.0}/tests/zipsrc/zip1/__init__.py +0 -0
  402. {coverage-7.14.2 → coverage-7.15.0}/tests/zipsrc/zip1/zip1.py +0 -0
@@ -49,7 +49,7 @@ jobs:
49
49
 
50
50
  steps:
51
51
  - name: "Check out the repo"
52
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
52
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
53
53
  with:
54
54
  persist-credentials: false
55
55
 
@@ -40,7 +40,7 @@ jobs:
40
40
  workflow: ${{ steps.filter.outputs.workflow }}
41
41
  steps:
42
42
  - name: "Check out the repo"
43
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
43
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
44
44
  with:
45
45
  persist-credentials: false
46
46
 
@@ -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:
@@ -125,7 +121,7 @@ jobs:
125
121
 
126
122
  steps:
127
123
  - name: "Check out the repo"
128
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
124
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
129
125
  with:
130
126
  persist-credentials: false
131
127
 
@@ -186,7 +182,7 @@ jobs:
186
182
 
187
183
  steps:
188
184
  - name: "Check out the repo"
189
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
185
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
190
186
  with:
191
187
  persist-credentials: false
192
188
 
@@ -29,7 +29,7 @@ jobs:
29
29
  runs-on: ubuntu-latest
30
30
  steps:
31
31
  - name: "Check out the repo"
32
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
32
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
33
33
  with:
34
34
  persist-credentials: false
35
35
 
@@ -172,7 +172,7 @@ jobs:
172
172
 
173
173
  steps:
174
174
  - name: "Check out the repo"
175
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
175
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
176
176
  with:
177
177
  persist-credentials: false
178
178
 
@@ -234,7 +234,7 @@ jobs:
234
234
  runs-on: ubuntu-latest
235
235
  steps:
236
236
  - name: "Check out the repo"
237
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
237
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
238
238
  with:
239
239
  persist-credentials: false
240
240
 
@@ -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@04cffa1d795717b140764e8b640de88853c92acc # v3.3.0
298
+ uses: sigstore/gh-action-sigstore-python@5b79a39c381910c090341a2c9b0bf022c8b387e1 # v3.4.0
299
299
  with:
300
300
  inputs: coverage-*.*
301
301
 
@@ -49,7 +49,6 @@ jobs:
49
49
  # When changing this list, be sure to check the [gh] list in
50
50
  # tox.ini so that tox will run properly. PYVERSIONS
51
51
  - "3.13"
52
- - "3.13t"
53
52
  - "3.14"
54
53
  - "3.14t"
55
54
  - "3.15"
@@ -60,7 +59,7 @@ jobs:
60
59
 
61
60
  steps:
62
61
  - name: "Check out the repo"
63
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
62
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
64
63
  with:
65
64
  persist-credentials: false
66
65
 
@@ -38,7 +38,7 @@ jobs:
38
38
  workflow: ${{ steps.filter.outputs.workflow }}
39
39
  steps:
40
40
  - name: "Check out the repo"
41
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
41
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
42
42
  with:
43
43
  persist-credentials: false
44
44
 
@@ -74,7 +74,7 @@ jobs:
74
74
 
75
75
  steps:
76
76
  - name: "Check out the repo"
77
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
77
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
78
78
  with:
79
79
  persist-credentials: false
80
80
 
@@ -104,7 +104,7 @@ jobs:
104
104
 
105
105
  steps:
106
106
  - name: "Check out the repo"
107
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
107
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
108
108
  with:
109
109
  persist-credentials: false
110
110
 
@@ -134,7 +134,7 @@ jobs:
134
134
 
135
135
  steps:
136
136
  - name: "Check out the repo"
137
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
137
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
138
138
  with:
139
139
  persist-credentials: false
140
140
 
@@ -179,7 +179,7 @@ jobs:
179
179
 
180
180
  steps:
181
181
  - name: "Check out the repo"
182
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
182
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
183
183
  with:
184
184
  persist-credentials: false
185
185
 
@@ -38,7 +38,7 @@ jobs:
38
38
  run_tests: ${{ steps.filter.outputs.run_tests }}
39
39
  steps:
40
40
  - name: "Check out the repo"
41
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
41
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
42
42
  with:
43
43
  persist-credentials: false
44
44
 
@@ -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:
@@ -121,7 +116,7 @@ jobs:
121
116
 
122
117
  steps:
123
118
  - name: "Check out the repo"
124
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
119
+ uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
125
120
  with:
126
121
  persist-credentials: false
127
122
 
@@ -22,6 +22,59 @@ upgrading your version of coverage.py.
22
22
 
23
23
  .. start-releases
24
24
 
25
+ .. _changes_7-15-0:
26
+
27
+ Version 7.15.0 — 2026-07-02
28
+ ---------------------------
29
+
30
+ - Since 7.14.0, reporting commands implicitly combine parallel data files. Now
31
+ those commands have a new option ``--keep-combined`` to retain the data files
32
+ after combining them instead of the default, which is to delete them.
33
+ Finishes `issue 2198`_.
34
+
35
+ - Fix: the LCOV report would incorrectly count excluded functions as uncovered,
36
+ as described in `issue 2205`_. This is now fixed thanks to `Martin Kuntz
37
+ Jacobsen <pull 2206_>`_.
38
+
39
+ - When running your program, coverage now correctly sets
40
+ ``yourmodule.__spec__.loader`` as `strongly recommended <--loader--_>`_,
41
+ avoiding the deprecation warning described in `issue 2208`_. Thanks, `A5rocks
42
+ <pull 2209_>`_.
43
+
44
+ - Fix: with Python 3.10, running with the ``-I`` (isolated mode) option didn't
45
+ correctly omit the current directory from the module search path, as
46
+ described in `issue 2103`_. That is now fixed thanks to `Ilia Sorokin <pull
47
+ 2211_>`_.
48
+
49
+ .. _--loader--: https://docs.python.org/3/reference/datamodel.html#module.__loader__
50
+ .. _issue 2103: https://github.com/coveragepy/coveragepy/issues/2103
51
+ .. _issue 2198: https://github.com/coveragepy/coveragepy/issues/2198
52
+ .. _issue 2205: https://github.com/coveragepy/coveragepy/issues/2205
53
+ .. _pull 2206: https://github.com/coveragepy/coveragepy/pull/2206
54
+ .. _issue 2208: https://github.com/coveragepy/coveragepy/issues/2208
55
+ .. _pull 2209: https://github.com/coveragepy/coveragepy/pull/2209
56
+ .. _pull 2211: https://github.com/coveragepy/coveragepy/pull/2211
57
+
58
+
59
+ .. _changes_7-14-3:
60
+
61
+ Version 7.14.3 — 2026-06-22
62
+ ---------------------------
63
+
64
+ - Fix: the default ``...`` exclusion rule now also matches function bodies
65
+ whose closing return-type bracket is on its own line (for example, after a
66
+ long ``-> dict[ ... ]`` annotation that a formatter has split over multiple
67
+ lines). Closes `issue 2185`_, thanks `Mengjia Shang <pull 2196_>`_.
68
+
69
+ - Fix: On 3.13t, we incorrectly issued ``Couldn't import C tracer`` errors.
70
+ We can't import the C tracer because in 7.14.2 we stopped shipping compiled
71
+ wheels for 3.13t. Thanks, `Hugo van Kemenade <pull 2203_>`_.
72
+
73
+ .. _issue 2185: https://github.com/coveragepy/coveragepy/issues/2185
74
+ .. _pull 2196: https://github.com/coveragepy/coveragepy/pull/2196
75
+ .. _pull 2203: https://github.com/coveragepy/coveragepy/pull/2203
76
+
77
+
25
78
  .. _changes_7-14-2:
26
79
 
27
80
  Version 7.14.2 — 2026-06-20
@@ -36,23 +89,23 @@ Version 7.14.2 — 2026-06-20
36
89
  with many short-lived threads this leaked one file descriptor per dead
37
90
  thread, eventually failing with ``OSError: [Errno 24] Too many open files``.
38
91
  Connections belonging to terminated threads are now closed and dropped.
39
- Fixes `issue 2192`_.
92
+ Fixes `issue 2192`_. Thanks, `Matthew Lloyd <pull 2193_>`_.
40
93
 
41
94
  - Fix: when using sys.monitoring, we were assuming we could use the
42
95
  ``COVERAGE_ID`` tool id. But other tools might also assume they could use
43
96
  that id. Pre-allocated ids don't really make sense, so now we search for a
44
- usable one instead. Fixes `issue 2187`_. Thanks, `Matthew Lloyd
45
- <pull 2198_>`_.
97
+ usable one instead. Fixes `issue 2187`_.
46
98
 
47
99
  - Following `the advice of cibuildwheel <no-13t_>`_, we no longer distribute
48
100
  wheels for Python 3.13 free-threaded.
49
101
 
50
102
  .. _issue 2187: https://github.com/coveragepy/coveragepy/issues/2187
51
103
  .. _issue 2192: https://github.com/coveragepy/coveragepy/issues/2192
104
+ .. _pull 2193: https://github.com/coveragepy/coveragepy/pull/2193
52
105
  .. _issue 2197: https://github.com/coveragepy/coveragepy/issues/2197
53
- .. _pull 2198: https://github.com/coveragepy/coveragepy/pull/2198
54
106
  .. _no-13t: https://py-free-threading.github.io/ci/#building-free-threaded-wheels-with-cibuildwheel
55
107
 
108
+
56
109
  .. _changes_7-14-1:
57
110
 
58
111
  Version 7.14.1 — 2026-05-26
@@ -106,6 +106,7 @@ Holger Krekel
106
106
  Hugo van Kemenade
107
107
  Ian Moore
108
108
  Ilia Meerovich
109
+ Ilia Sorokin
109
110
  Imri Goldberg
110
111
  Ionel Cristian Mărieș
111
112
  Ivan Ciuvalschii
@@ -166,6 +167,7 @@ Mariatta
166
167
  Marius Gedminas
167
168
  Mark van der Wal
168
169
  Martin Fuzzey
170
+ Martin Kuntz Jacobsen
169
171
  Mathieu Kniewallner
170
172
  Matt Bachmann
171
173
  Matthew Boehm
@@ -175,6 +177,7 @@ Matthias Schoettle
175
177
  Matus Valo
176
178
  Max Linke
177
179
  Mayank Singhal
180
+ Mengjia Shang
178
181
  Michael Bell
179
182
  Michael Krebs
180
183
  Michał Bultrowicz
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: coverage
3
- Version: 7.14.2
3
+ Version: 7.15.0
4
4
  Summary: Code coverage measurement for Python
5
5
  Home-page: https://github.com/coveragepy/coveragepy
6
- Author: Ned Batchelder and 256 others
6
+ Author: Ned Batchelder and 259 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.2
9
+ Project-URL: Documentation, https://coverage.readthedocs.io/en/7.15.0
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.2/
86
+ .. _Read the Docs: https://coverage.readthedocs.io/en/7.15.0/
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.2/#quick-start
115
+ .. _Quick Start section: https://coverage.readthedocs.io/en/7.15.0/#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.2/changes.html
123
+ .. _change history page: https://coverage.readthedocs.io/en/7.15.0/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.2/contributing.html
142
+ .. _Contributing section: https://coverage.readthedocs.io/en/7.15.0/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.2/
170
+ :target: https://coverage.readthedocs.io/en/7.15.0/
171
171
  :alt: Documentation
172
172
  .. |kit| image:: https://img.shields.io/pypi/v/coverage
173
173
  :target: https://pypi.org/project/coverage/
@@ -185,6 +185,12 @@ class Opts:
185
185
  action="store_true",
186
186
  help="Keep original coverage files, otherwise they are deleted.",
187
187
  )
188
+ keep_combined = optparse.make_option(
189
+ "",
190
+ "--keep-combined",
191
+ action="store_true",
192
+ help="Keep original coverage files, otherwise they are deleted after combining.",
193
+ )
188
194
  pylib = optparse.make_option(
189
195
  "-L",
190
196
  "--pylib",
@@ -401,6 +407,7 @@ class CoverageOptionParser(optparse.OptionParser):
401
407
  ignore_errors=None,
402
408
  include=None,
403
409
  keep=None,
410
+ keep_combined=None,
404
411
  module=None,
405
412
  omit=None,
406
413
  parallel_mode=None,
@@ -535,6 +542,7 @@ COMMANDS = {
535
542
  Opts.datafile_input,
536
543
  Opts.ignore_errors,
537
544
  Opts.include,
545
+ Opts.keep_combined,
538
546
  Opts.omit,
539
547
  ]
540
548
  + GLOBAL_ARGS,
@@ -607,6 +615,7 @@ COMMANDS = {
607
615
  Opts.fail_under,
608
616
  Opts.ignore_errors,
609
617
  Opts.include,
618
+ Opts.keep_combined,
610
619
  Opts.omit,
611
620
  Opts.precision,
612
621
  Opts.quiet,
@@ -620,7 +629,7 @@ COMMANDS = {
620
629
  usage="[options] [modules]",
621
630
  description=prep_help(
622
631
  """
623
- Create an HTML report of the coverage of the files.
632
+ Create an HTML report of coverage results.
624
633
  Each file gets its own page, with the source decorated to show
625
634
  executed, excluded, and missed lines.
626
635
  """
@@ -634,6 +643,7 @@ COMMANDS = {
634
643
  Opts.fail_under,
635
644
  Opts.ignore_errors,
636
645
  Opts.include,
646
+ Opts.keep_combined,
637
647
  Opts.omit,
638
648
  Opts.output_json,
639
649
  Opts.json_pretty_print,
@@ -651,6 +661,7 @@ COMMANDS = {
651
661
  Opts.fail_under,
652
662
  Opts.ignore_errors,
653
663
  Opts.include,
664
+ Opts.keep_combined,
654
665
  Opts.output_lcov,
655
666
  Opts.omit,
656
667
  Opts.quiet,
@@ -668,6 +679,7 @@ COMMANDS = {
668
679
  Opts.format,
669
680
  Opts.ignore_errors,
670
681
  Opts.include,
682
+ Opts.keep_combined,
671
683
  Opts.omit,
672
684
  Opts.precision,
673
685
  Opts.sort,
@@ -708,6 +720,7 @@ COMMANDS = {
708
720
  Opts.fail_under,
709
721
  Opts.ignore_errors,
710
722
  Opts.include,
723
+ Opts.keep_combined,
711
724
  Opts.omit,
712
725
  Opts.output_xml,
713
726
  Opts.quiet,
@@ -874,7 +887,7 @@ class CoverageScript:
874
887
  sys.path.insert(0, "")
875
888
 
876
889
  self.coverage.load()
877
- self.coverage.combine(strict=False, keep=False)
890
+ self.coverage.combine(strict=False, keep=bool(options.keep_combined))
878
891
 
879
892
  total = None
880
893
  if options.action == "report":
@@ -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 .*?)?\)(\s*->.*?)?:\s*)?\.\.\.\s*(#|$)",
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 = CPYTHON and PYVERSION[:2] <= (3, 14)
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)
@@ -91,7 +91,10 @@ class PyRunner:
91
91
  This needs to happen before any importing, and without importing anything.
92
92
  """
93
93
  path0: str | None
94
- if getattr(sys.flags, "safe_path", False):
94
+ if getattr(sys.flags, "safe_path", False) or getattr(sys.flags, "isolated", False):
95
+ # PYVERSION
96
+ # Python 3.10 isolated mode predates sys.flags.safe_path.
97
+ # Remove the isolated fallback when coverage drops 3.10 support.
95
98
  # See https://docs.python.org/3/using/cmdline.html#cmdoption-P
96
99
  path0 = None
97
100
  elif self.as_module:
@@ -140,6 +143,7 @@ class PyRunner:
140
143
  if self.spec is not None:
141
144
  self.modulename = self.spec.name
142
145
  self.loader = DummyLoader(self.modulename)
146
+ self.spec.loader = self.loader # type: ignore[assignment]
143
147
  assert pathname is not None
144
148
  self.pathname = os.path.abspath(pathname)
145
149
  self.args[0] = self.arg0 = self.pathname
@@ -157,12 +161,17 @@ class PyRunner:
157
161
  else:
158
162
  raise NoSource(f"Can't find '__main__' module in '{self.arg0}'")
159
163
 
160
- # Make a spec. I don't know if this is the right way to do it.
161
164
  try_filename = python_reported_file(try_filename)
162
- self.spec = importlib.machinery.ModuleSpec("__main__", None, origin=try_filename)
163
- self.spec.has_location = True
164
165
  self.package = ""
165
166
  self.loader = DummyLoader("__main__")
167
+
168
+ # Make a spec. I don't know if this is the right way to do it.
169
+ self.spec = importlib.machinery.ModuleSpec(
170
+ "__main__",
171
+ self.loader, # type: ignore[arg-type]
172
+ origin=try_filename,
173
+ )
174
+ self.spec.has_location = True
166
175
  else:
167
176
  self.loader = DummyLoader("__main__")
168
177
 
@@ -84,18 +84,23 @@ def lcov_functions(
84
84
  narrower.add_regions(r.lines for _, _, r in functions)
85
85
 
86
86
  functions.sort()
87
+ functions_found = 0
87
88
  functions_hit = 0
88
89
  for first_line, last_line, region in functions:
89
90
  # A function counts as having been executed if any of it has been
90
91
  # executed.
91
92
  analysis = narrower.narrow(region.lines)
93
+ if analysis.numbers.n_statements == 0:
94
+ continue
95
+
96
+ functions_found += 1
92
97
  hit = int(analysis.numbers.n_executed > 0)
93
98
  functions_hit += hit
94
99
 
95
100
  outfile.write(f"FN:{first_line},{last_line},{region.name}\n")
96
101
  outfile.write(f"FNDA:{hit},{region.name}\n")
97
102
 
98
- outfile.write(f"FNF:{len(functions)}\n")
103
+ outfile.write(f"FNF:{functions_found}\n")
99
104
  outfile.write(f"FNH:{functions_hit}\n")
100
105
 
101
106
 
@@ -8,7 +8,7 @@ from __future__ import annotations
8
8
 
9
9
  # version_info: same semantics as sys.version_info.
10
10
  # _dev: the .devN suffix if any.
11
- version_info = (7, 14, 2, "final", 0)
11
+ version_info = (7, 15, 0, "final", 0)
12
12
  _dev = 0
13
13
 
14
14
 
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: coverage
3
- Version: 7.14.2
3
+ Version: 7.15.0
4
4
  Summary: Code coverage measurement for Python
5
5
  Home-page: https://github.com/coveragepy/coveragepy
6
- Author: Ned Batchelder and 256 others
6
+ Author: Ned Batchelder and 259 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.2
9
+ Project-URL: Documentation, https://coverage.readthedocs.io/en/7.15.0
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.2/
86
+ .. _Read the Docs: https://coverage.readthedocs.io/en/7.15.0/
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.2/#quick-start
115
+ .. _Quick Start section: https://coverage.readthedocs.io/en/7.15.0/#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.2/changes.html
123
+ .. _change history page: https://coverage.readthedocs.io/en/7.15.0/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.2/contributing.html
142
+ .. _Contributing section: https://coverage.readthedocs.io/en/7.15.0/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.2/
170
+ :target: https://coverage.readthedocs.io/en/7.15.0/
171
171
  :alt: Documentation
172
172
  .. |kit| image:: https://img.shields.io/pypi/v/coverage
173
173
  :target: https://pypi.org/project/coverage/
@@ -352,6 +352,7 @@ tests/gold/xml/x_xml/coverage.xml
352
352
  tests/gold/xml/y_xml_branch/coverage.xml
353
353
  tests/js/index.html
354
354
  tests/js/tests.js
355
+ tests/modules/checkspec.py
355
356
  tests/modules/covmod1.py
356
357
  tests/modules/runmod1.py
357
358
  tests/modules/usepkgs.py
@@ -65,6 +65,8 @@ For example::
65
65
  Include only files whose paths match one of these
66
66
  patterns. Accepts shell-style wildcards, which must be
67
67
  quoted.
68
+ --keep-combined Keep original coverage files, otherwise they are
69
+ deleted after combining.
68
70
  --omit=PAT1,PAT2,... Omit files whose paths match one of these patterns.
69
71
  Accepts shell-style wildcards, which must be quoted.
70
72
  --debug=OPTS Debug options, separated by commas. [env:
@@ -73,6 +75,6 @@ For example::
73
75
  --rcfile=RCFILE Specify configuration file. By default '.coveragerc',
74
76
  'setup.cfg', 'tox.ini', and 'pyproject.toml' are
75
77
  tried. [env: COVERAGE_RCFILE]
76
- .. [[[end]]] (sum: /X2PvS3W4k)
78
+ .. [[[end]]] (sum: GEQL3xNhBR)
77
79
 
78
80
  Other common reporting options are described above in :ref:`cmd_reporting`.