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.
Files changed (401) hide show
  1. {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/coverage.yml +0 -4
  2. {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/kit.yml +1 -1
  3. {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/python-nightly.yml +0 -1
  4. {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/testsuite.yml +0 -5
  5. {coverage-7.14.2 → coverage-7.14.3}/CHANGES.rst +23 -4
  6. {coverage-7.14.2 → coverage-7.14.3}/CONTRIBUTORS.txt +1 -0
  7. {coverage-7.14.2 → coverage-7.14.3}/PKG-INFO +8 -8
  8. {coverage-7.14.2 → coverage-7.14.3}/coverage/config.py +1 -1
  9. {coverage-7.14.2 → coverage-7.14.3}/coverage/env.py +8 -1
  10. {coverage-7.14.2 → coverage-7.14.3}/coverage/version.py +1 -1
  11. {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/PKG-INFO +8 -8
  12. {coverage-7.14.2 → coverage-7.14.3}/doc/conf.py +3 -3
  13. {coverage-7.14.2 → coverage-7.14.3}/tests/test_coverage.py +30 -0
  14. {coverage-7.14.2 → coverage-7.14.3}/tests/test_oddball.py +0 -4
  15. {coverage-7.14.2 → coverage-7.14.3}/tox.ini +2 -3
  16. {coverage-7.14.2 → coverage-7.14.3}/.editorconfig +0 -0
  17. {coverage-7.14.2 → coverage-7.14.3}/.git-blame-ignore-revs +0 -0
  18. {coverage-7.14.2 → coverage-7.14.3}/.github/CODE_OF_CONDUCT.md +0 -0
  19. {coverage-7.14.2 → coverage-7.14.3}/.github/FUNDING.yml +0 -0
  20. {coverage-7.14.2 → coverage-7.14.3}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
  21. {coverage-7.14.2 → coverage-7.14.3}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  22. {coverage-7.14.2 → coverage-7.14.3}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
  23. {coverage-7.14.2 → coverage-7.14.3}/.github/ISSUE_TEMPLATE/support.md +0 -0
  24. {coverage-7.14.2 → coverage-7.14.3}/.github/SECURITY.md +0 -0
  25. {coverage-7.14.2 → coverage-7.14.3}/.github/dependabot.yml +0 -0
  26. {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/codeql-analysis.yml +0 -0
  27. {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/dependency-review.yml +0 -0
  28. {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/publish.yml +0 -0
  29. {coverage-7.14.2 → coverage-7.14.3}/.github/workflows/quality.yml +0 -0
  30. {coverage-7.14.2 → coverage-7.14.3}/.github/zizmor.yml +0 -0
  31. {coverage-7.14.2 → coverage-7.14.3}/.ignore +0 -0
  32. {coverage-7.14.2 → coverage-7.14.3}/.pre-commit-config.yaml +0 -0
  33. {coverage-7.14.2 → coverage-7.14.3}/.readthedocs.yaml +0 -0
  34. {coverage-7.14.2 → coverage-7.14.3}/CITATION.cff +0 -0
  35. {coverage-7.14.2 → coverage-7.14.3}/LICENSE.txt +0 -0
  36. {coverage-7.14.2 → coverage-7.14.3}/MANIFEST.in +0 -0
  37. {coverage-7.14.2 → coverage-7.14.3}/Makefile +0 -0
  38. {coverage-7.14.2 → coverage-7.14.3}/NOTICE.txt +0 -0
  39. {coverage-7.14.2 → coverage-7.14.3}/README.rst +0 -0
  40. {coverage-7.14.2 → coverage-7.14.3}/__main__.py +0 -0
  41. {coverage-7.14.2 → coverage-7.14.3}/a1_coverage.pth +0 -0
  42. {coverage-7.14.2 → coverage-7.14.3}/ci/README.txt +0 -0
  43. {coverage-7.14.2 → coverage-7.14.3}/ci/comment_on_fixes.py +0 -0
  44. {coverage-7.14.2 → coverage-7.14.3}/ci/session.py +0 -0
  45. {coverage-7.14.2 → coverage-7.14.3}/ci/trigger_action.py +0 -0
  46. {coverage-7.14.2 → coverage-7.14.3}/ci/update_rtfd.py +0 -0
  47. {coverage-7.14.2 → coverage-7.14.3}/coverage/__init__.py +0 -0
  48. {coverage-7.14.2 → coverage-7.14.3}/coverage/__main__.py +0 -0
  49. {coverage-7.14.2 → coverage-7.14.3}/coverage/annotate.py +0 -0
  50. {coverage-7.14.2 → coverage-7.14.3}/coverage/bytecode.py +0 -0
  51. {coverage-7.14.2 → coverage-7.14.3}/coverage/cmdline.py +0 -0
  52. {coverage-7.14.2 → coverage-7.14.3}/coverage/collector.py +0 -0
  53. {coverage-7.14.2 → coverage-7.14.3}/coverage/context.py +0 -0
  54. {coverage-7.14.2 → coverage-7.14.3}/coverage/control.py +0 -0
  55. {coverage-7.14.2 → coverage-7.14.3}/coverage/core.py +0 -0
  56. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/datastack.c +0 -0
  57. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/datastack.h +0 -0
  58. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/filedisp.c +0 -0
  59. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/filedisp.h +0 -0
  60. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/module.c +0 -0
  61. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/stats.h +0 -0
  62. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/tracer.c +0 -0
  63. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/tracer.h +0 -0
  64. {coverage-7.14.2 → coverage-7.14.3}/coverage/ctracer/util.h +0 -0
  65. {coverage-7.14.2 → coverage-7.14.3}/coverage/data.py +0 -0
  66. {coverage-7.14.2 → coverage-7.14.3}/coverage/debug.py +0 -0
  67. {coverage-7.14.2 → coverage-7.14.3}/coverage/disposition.py +0 -0
  68. {coverage-7.14.2 → coverage-7.14.3}/coverage/exceptions.py +0 -0
  69. {coverage-7.14.2 → coverage-7.14.3}/coverage/execfile.py +0 -0
  70. {coverage-7.14.2 → coverage-7.14.3}/coverage/files.py +0 -0
  71. {coverage-7.14.2 → coverage-7.14.3}/coverage/html.py +0 -0
  72. {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/coverage_html.js +0 -0
  73. {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/favicon_32.png +0 -0
  74. {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/index.html +0 -0
  75. {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/keybd_closed.png +0 -0
  76. {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/pyfile.html +0 -0
  77. {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/style.css +0 -0
  78. {coverage-7.14.2 → coverage-7.14.3}/coverage/htmlfiles/style.scss +0 -0
  79. {coverage-7.14.2 → coverage-7.14.3}/coverage/inorout.py +0 -0
  80. {coverage-7.14.2 → coverage-7.14.3}/coverage/jsonreport.py +0 -0
  81. {coverage-7.14.2 → coverage-7.14.3}/coverage/lcovreport.py +0 -0
  82. {coverage-7.14.2 → coverage-7.14.3}/coverage/misc.py +0 -0
  83. {coverage-7.14.2 → coverage-7.14.3}/coverage/multiproc.py +0 -0
  84. {coverage-7.14.2 → coverage-7.14.3}/coverage/numbits.py +0 -0
  85. {coverage-7.14.2 → coverage-7.14.3}/coverage/parser.py +0 -0
  86. {coverage-7.14.2 → coverage-7.14.3}/coverage/patch.py +0 -0
  87. {coverage-7.14.2 → coverage-7.14.3}/coverage/phystokens.py +0 -0
  88. {coverage-7.14.2 → coverage-7.14.3}/coverage/plugin.py +0 -0
  89. {coverage-7.14.2 → coverage-7.14.3}/coverage/plugin_support.py +0 -0
  90. {coverage-7.14.2 → coverage-7.14.3}/coverage/pth_file.py +0 -0
  91. {coverage-7.14.2 → coverage-7.14.3}/coverage/py.typed +0 -0
  92. {coverage-7.14.2 → coverage-7.14.3}/coverage/python.py +0 -0
  93. {coverage-7.14.2 → coverage-7.14.3}/coverage/pytracer.py +0 -0
  94. {coverage-7.14.2 → coverage-7.14.3}/coverage/regions.py +0 -0
  95. {coverage-7.14.2 → coverage-7.14.3}/coverage/report.py +0 -0
  96. {coverage-7.14.2 → coverage-7.14.3}/coverage/report_core.py +0 -0
  97. {coverage-7.14.2 → coverage-7.14.3}/coverage/results.py +0 -0
  98. {coverage-7.14.2 → coverage-7.14.3}/coverage/sqldata.py +0 -0
  99. {coverage-7.14.2 → coverage-7.14.3}/coverage/sqlitedb.py +0 -0
  100. {coverage-7.14.2 → coverage-7.14.3}/coverage/sysmon.py +0 -0
  101. {coverage-7.14.2 → coverage-7.14.3}/coverage/templite.py +0 -0
  102. {coverage-7.14.2 → coverage-7.14.3}/coverage/tomlconfig.py +0 -0
  103. {coverage-7.14.2 → coverage-7.14.3}/coverage/tracer.pyi +0 -0
  104. {coverage-7.14.2 → coverage-7.14.3}/coverage/types.py +0 -0
  105. {coverage-7.14.2 → coverage-7.14.3}/coverage/xmlreport.py +0 -0
  106. {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/SOURCES.txt +0 -0
  107. {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/dependency_links.txt +0 -0
  108. {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/entry_points.txt +0 -0
  109. {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/not-zip-safe +0 -0
  110. {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/requires.txt +0 -0
  111. {coverage-7.14.2 → coverage-7.14.3}/coverage.egg-info/top_level.txt +0 -0
  112. {coverage-7.14.2 → coverage-7.14.3}/doc/_static/coverage.css +0 -0
  113. {coverage-7.14.2 → coverage-7.14.3}/doc/api.rst +0 -0
  114. {coverage-7.14.2 → coverage-7.14.3}/doc/api_coverage.rst +0 -0
  115. {coverage-7.14.2 → coverage-7.14.3}/doc/api_coveragedata.rst +0 -0
  116. {coverage-7.14.2 → coverage-7.14.3}/doc/api_exceptions.rst +0 -0
  117. {coverage-7.14.2 → coverage-7.14.3}/doc/api_module.rst +0 -0
  118. {coverage-7.14.2 → coverage-7.14.3}/doc/api_plugin.rst +0 -0
  119. {coverage-7.14.2 → coverage-7.14.3}/doc/branch.rst +0 -0
  120. {coverage-7.14.2 → coverage-7.14.3}/doc/changes.rst +0 -0
  121. {coverage-7.14.2 → coverage-7.14.3}/doc/cog_helpers.py +0 -0
  122. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_annotate.rst +0 -0
  123. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_combine.rst +0 -0
  124. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_debug.rst +0 -0
  125. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_erase.rst +0 -0
  126. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_html.rst +0 -0
  127. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_json.rst +0 -0
  128. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_lcov.rst +0 -0
  129. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_report.rst +0 -0
  130. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_reporting.rst +0 -0
  131. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_run.rst +0 -0
  132. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/cmd_xml.rst +0 -0
  133. {coverage-7.14.2 → coverage-7.14.3}/doc/commands/index.rst +0 -0
  134. {coverage-7.14.2 → coverage-7.14.3}/doc/config.rst +0 -0
  135. {coverage-7.14.2 → coverage-7.14.3}/doc/contexts.rst +0 -0
  136. {coverage-7.14.2 → coverage-7.14.3}/doc/contributing.rst +0 -0
  137. {coverage-7.14.2 → coverage-7.14.3}/doc/dbschema.rst +0 -0
  138. {coverage-7.14.2 → coverage-7.14.3}/doc/dict.txt +0 -0
  139. {coverage-7.14.2 → coverage-7.14.3}/doc/excluding.rst +0 -0
  140. {coverage-7.14.2 → coverage-7.14.3}/doc/faq.rst +0 -0
  141. {coverage-7.14.2 → coverage-7.14.3}/doc/howitworks.rst +0 -0
  142. {coverage-7.14.2 → coverage-7.14.3}/doc/index.rst +0 -0
  143. {coverage-7.14.2 → coverage-7.14.3}/doc/install.rst +0 -0
  144. {coverage-7.14.2 → coverage-7.14.3}/doc/media/Tidelift_Logos_RGB_Tidelift_Shorthand_On-White.png +0 -0
  145. {coverage-7.14.2 → coverage-7.14.3}/doc/media/Tidelift_Logos_RGB_Tidelift_Shorthand_On-White_small.png +0 -0
  146. {coverage-7.14.2 → coverage-7.14.3}/doc/media/sleepy-snake-600.png +0 -0
  147. {coverage-7.14.2 → coverage-7.14.3}/doc/media/sleepy-snake-circle-150.png +0 -0
  148. {coverage-7.14.2 → coverage-7.14.3}/doc/messages.rst +0 -0
  149. {coverage-7.14.2 → coverage-7.14.3}/doc/migrating.rst +0 -0
  150. {coverage-7.14.2 → coverage-7.14.3}/doc/other.rst +0 -0
  151. {coverage-7.14.2 → coverage-7.14.3}/doc/plugins.rst +0 -0
  152. {coverage-7.14.2 → coverage-7.14.3}/doc/python-coverage.1.txt +0 -0
  153. {coverage-7.14.2 → coverage-7.14.3}/doc/requirements.in +0 -0
  154. {coverage-7.14.2 → coverage-7.14.3}/doc/requirements.pip +0 -0
  155. {coverage-7.14.2 → coverage-7.14.3}/doc/sample_html/favicon_32_cb_c827f16f.png +0 -0
  156. {coverage-7.14.2 → coverage-7.14.3}/doc/sample_html/keybd_closed_cb_900cfef5.png +0 -0
  157. {coverage-7.14.2 → coverage-7.14.3}/doc/sleepy.rst +0 -0
  158. {coverage-7.14.2 → coverage-7.14.3}/doc/source.rst +0 -0
  159. {coverage-7.14.2 → coverage-7.14.3}/doc/subprocess.rst +0 -0
  160. {coverage-7.14.2 → coverage-7.14.3}/doc/trouble.rst +0 -0
  161. {coverage-7.14.2 → coverage-7.14.3}/doc/whatsnew5x.rst +0 -0
  162. {coverage-7.14.2 → coverage-7.14.3}/howto.txt +0 -0
  163. {coverage-7.14.2 → coverage-7.14.3}/igor.py +0 -0
  164. {coverage-7.14.2 → coverage-7.14.3}/lab/README.txt +0 -0
  165. {coverage-7.14.2 → coverage-7.14.3}/lab/branches.py +0 -0
  166. {coverage-7.14.2 → coverage-7.14.3}/lab/compare_times.sh +0 -0
  167. {coverage-7.14.2 → coverage-7.14.3}/lab/coverage-04.dtd +0 -0
  168. {coverage-7.14.2 → coverage-7.14.3}/lab/extract_code.py +0 -0
  169. {coverage-7.14.2 → coverage-7.14.3}/lab/goals.py +0 -0
  170. {coverage-7.14.2 → coverage-7.14.3}/lab/hack_pyc.py +0 -0
  171. {coverage-7.14.2 → coverage-7.14.3}/lab/notes/arcs-to-branches.txt +0 -0
  172. {coverage-7.14.2 → coverage-7.14.3}/lab/notes/bug1303.txt +0 -0
  173. {coverage-7.14.2 → coverage-7.14.3}/lab/notes/pypy-738-decorated-functions.txt +0 -0
  174. {coverage-7.14.2 → coverage-7.14.3}/lab/parse_all.py +0 -0
  175. {coverage-7.14.2 → coverage-7.14.3}/lab/parser.py +0 -0
  176. {coverage-7.14.2 → coverage-7.14.3}/lab/pick.py +0 -0
  177. {coverage-7.14.2 → coverage-7.14.3}/lab/platform_info.py +0 -0
  178. {coverage-7.14.2 → coverage-7.14.3}/lab/run_sysmon.py +0 -0
  179. {coverage-7.14.2 → coverage-7.14.3}/lab/run_trace.py +0 -0
  180. {coverage-7.14.2 → coverage-7.14.3}/lab/select_contexts.py +0 -0
  181. {coverage-7.14.2 → coverage-7.14.3}/lab/show_platform.py +0 -0
  182. {coverage-7.14.2 → coverage-7.14.3}/lab/show_pyc.py +0 -0
  183. {coverage-7.14.2 → coverage-7.14.3}/lab/treetopy.sh +0 -0
  184. {coverage-7.14.2 → coverage-7.14.3}/lab/warn_executed.py +0 -0
  185. {coverage-7.14.2 → coverage-7.14.3}/lab/warn_executed.toml +0 -0
  186. {coverage-7.14.2 → coverage-7.14.3}/metacov.ini +0 -0
  187. {coverage-7.14.2 → coverage-7.14.3}/pyproject.toml +0 -0
  188. {coverage-7.14.2 → coverage-7.14.3}/requirements/dev.in +0 -0
  189. {coverage-7.14.2 → coverage-7.14.3}/requirements/dev.pip +0 -0
  190. {coverage-7.14.2 → coverage-7.14.3}/requirements/kit.in +0 -0
  191. {coverage-7.14.2 → coverage-7.14.3}/requirements/kit.pip +0 -0
  192. {coverage-7.14.2 → coverage-7.14.3}/requirements/light-threads.in +0 -0
  193. {coverage-7.14.2 → coverage-7.14.3}/requirements/light-threads.pip +0 -0
  194. {coverage-7.14.2 → coverage-7.14.3}/requirements/mypy.in +0 -0
  195. {coverage-7.14.2 → coverage-7.14.3}/requirements/mypy.pip +0 -0
  196. {coverage-7.14.2 → coverage-7.14.3}/requirements/pins.pip +0 -0
  197. {coverage-7.14.2 → coverage-7.14.3}/requirements/pip.in +0 -0
  198. {coverage-7.14.2 → coverage-7.14.3}/requirements/pip.pip +0 -0
  199. {coverage-7.14.2 → coverage-7.14.3}/requirements/pytest.in +0 -0
  200. {coverage-7.14.2 → coverage-7.14.3}/requirements/pytest.pip +0 -0
  201. {coverage-7.14.2 → coverage-7.14.3}/requirements/tox.in +0 -0
  202. {coverage-7.14.2 → coverage-7.14.3}/requirements/tox.pip +0 -0
  203. {coverage-7.14.2 → coverage-7.14.3}/setup.cfg +0 -0
  204. {coverage-7.14.2 → coverage-7.14.3}/setup.py +0 -0
  205. {coverage-7.14.2 → coverage-7.14.3}/tests/__init__.py +0 -0
  206. {coverage-7.14.2 → coverage-7.14.3}/tests/conftest.py +0 -0
  207. {coverage-7.14.2 → coverage-7.14.3}/tests/coveragetest.py +0 -0
  208. {coverage-7.14.2 → coverage-7.14.3}/tests/covmodzip1.py +0 -0
  209. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/README.rst +0 -0
  210. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/multi.py,cover +0 -0
  211. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/z_80084bf2fba02475___init__.py,cover +0 -0
  212. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/z_80084bf2fba02475_a.py,cover +0 -0
  213. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/z_b039179a8a4ce2c2___init__.py,cover +0 -0
  214. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/anno_dir/z_b039179a8a4ce2c2_b.py,cover +0 -0
  215. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/encodings/utf8.py,cover +0 -0
  216. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/mae/mae.py,cover +0 -0
  217. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/a/__init__.py,cover +0 -0
  218. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/a/a.py,cover +0 -0
  219. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/b/__init__.py,cover +0 -0
  220. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/b/b.py,cover +0 -0
  221. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/multi/multi.py,cover +0 -0
  222. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/annotate/white/white.py,cover +0 -0
  223. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/Makefile +0 -0
  224. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/a/a_py.html +0 -0
  225. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/a/class_index.html +0 -0
  226. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/a/function_index.html +0 -0
  227. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/a/index.html +0 -0
  228. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/b_branch/b_py.html +0 -0
  229. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/b_branch/class_index.html +0 -0
  230. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/b_branch/function_index.html +0 -0
  231. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/b_branch/index.html +0 -0
  232. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/bom/bom_py.html +0 -0
  233. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/bom/class_index.html +0 -0
  234. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/bom/function_index.html +0 -0
  235. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/bom/index.html +0 -0
  236. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/contexts/class_index.html +0 -0
  237. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/contexts/function_index.html +0 -0
  238. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/contexts/index.html +0 -0
  239. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/contexts/two_tests_py.html +0 -0
  240. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/isolatin1/class_index.html +0 -0
  241. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/isolatin1/function_index.html +0 -0
  242. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/isolatin1/index.html +0 -0
  243. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/isolatin1/isolatin1_py.html +0 -0
  244. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/multiline/class_index.html +0 -0
  245. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/multiline/function_index.html +0 -0
  246. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/multiline/index.html +0 -0
  247. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/multiline/multiline_py.html +0 -0
  248. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/class_index.html +0 -0
  249. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/function_index.html +0 -0
  250. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/index.html +0 -0
  251. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/m1_py.html +0 -0
  252. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/m2_py.html +0 -0
  253. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/m3_py.html +0 -0
  254. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_1/main_py.html +0 -0
  255. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/class_index.html +0 -0
  256. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/function_index.html +0 -0
  257. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/index.html +0 -0
  258. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/m2_py.html +0 -0
  259. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/m3_py.html +0 -0
  260. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_2/main_py.html +0 -0
  261. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/class_index.html +0 -0
  262. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/function_index.html +0 -0
  263. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/index.html +0 -0
  264. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/m3_py.html +0 -0
  265. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_3/main_py.html +0 -0
  266. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/class_index.html +0 -0
  267. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/function_index.html +0 -0
  268. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/index.html +0 -0
  269. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/m1_py.html +0 -0
  270. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/m3_py.html +0 -0
  271. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_4/main_py.html +0 -0
  272. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/class_index.html +0 -0
  273. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/function_index.html +0 -0
  274. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/index.html +0 -0
  275. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/m1_py.html +0 -0
  276. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/omit_5/main_py.html +0 -0
  277. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/blah_blah_other_py.html +0 -0
  278. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/class_index.html +0 -0
  279. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/function_index.html +0 -0
  280. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/here_py.html +0 -0
  281. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/other/index.html +0 -0
  282. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/partial/class_index.html +0 -0
  283. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/partial/function_index.html +0 -0
  284. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/partial/index.html +0 -0
  285. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/partial/partial_py.html +0 -0
  286. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/a_py.html +0 -0
  287. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/class_index.html +0 -0
  288. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/function_index.html +0 -0
  289. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/index.html +0 -0
  290. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/myextra.css +0 -0
  291. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/styled/style.css +0 -0
  292. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/support/coverage_html_cb_dd2e7eb5.js +0 -0
  293. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/support/favicon_32_cb_c827f16f.png +0 -0
  294. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/support/keybd_closed_cb_900cfef5.png +0 -0
  295. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/support/style_cb_a90a112a.css +0 -0
  296. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/unicode/class_index.html +0 -0
  297. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/unicode/function_index.html +0 -0
  298. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/unicode/index.html +0 -0
  299. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/html/unicode/unicode_py.html +0 -0
  300. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/testing/getty/gettysburg.txt +0 -0
  301. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/testing/xml/output.xml +0 -0
  302. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/xml/x_xml/coverage.xml +0 -0
  303. {coverage-7.14.2 → coverage-7.14.3}/tests/gold/xml/y_xml_branch/coverage.xml +0 -0
  304. {coverage-7.14.2 → coverage-7.14.3}/tests/goldtest.py +0 -0
  305. {coverage-7.14.2 → coverage-7.14.3}/tests/helpers.py +0 -0
  306. {coverage-7.14.2 → coverage-7.14.3}/tests/js/index.html +0 -0
  307. {coverage-7.14.2 → coverage-7.14.3}/tests/js/tests.js +0 -0
  308. {coverage-7.14.2 → coverage-7.14.3}/tests/mixins.py +0 -0
  309. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/__init__.py +0 -0
  310. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/afile.odd.py +0 -0
  311. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/afile.py +0 -0
  312. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/__init__.py +0 -0
  313. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/bfile.odd.py +0 -0
  314. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/bfile.py +0 -0
  315. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/cc/__init__.py +0 -0
  316. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb/cc/cfile.py +0 -0
  317. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/bb.odd/bfile.py +0 -0
  318. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/aa/zfile.py +0 -0
  319. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/ambiguous/__init__.py +0 -0
  320. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/ambiguous/pkg1/__init__.py +0 -0
  321. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/ambiguous/pkg1/ambiguous.py +0 -0
  322. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/covmod1.py +0 -0
  323. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/namespace_420/sub1/__init__.py +0 -0
  324. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/__init__.py +0 -0
  325. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/__main__.py +0 -0
  326. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/p1a.py +0 -0
  327. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/p1b.py +0 -0
  328. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/p1c.py +0 -0
  329. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/runmod2.py +0 -0
  330. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/sub/__init__.py +0 -0
  331. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/sub/__main__.py +0 -0
  332. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/sub/ps1a.py +0 -0
  333. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg1/sub/runmod3.py +0 -0
  334. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg2/__init__.py +0 -0
  335. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg2/p2a.py +0 -0
  336. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/pkg2/p2b.py +0 -0
  337. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/plugins/__init__.py +0 -0
  338. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/plugins/a_plugin.py +0 -0
  339. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/plugins/another.py +0 -0
  340. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/process_test/__init__.py +0 -0
  341. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/process_test/try_execfile.py +0 -0
  342. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/runmod1.py +0 -0
  343. {coverage-7.14.2 → coverage-7.14.3}/tests/modules/usepkgs.py +0 -0
  344. {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/namespace_420/sub2/__init__.py +0 -0
  345. {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/__init__.py +0 -0
  346. {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/othera.py +0 -0
  347. {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/otherb.py +0 -0
  348. {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/sub/__init__.py +0 -0
  349. {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/sub/osa.py +0 -0
  350. {coverage-7.14.2 → coverage-7.14.3}/tests/moremodules/othermods/sub/osb.py +0 -0
  351. {coverage-7.14.2 → coverage-7.14.3}/tests/osinfo.py +0 -0
  352. {coverage-7.14.2 → coverage-7.14.3}/tests/plugin1.py +0 -0
  353. {coverage-7.14.2 → coverage-7.14.3}/tests/plugin2.py +0 -0
  354. {coverage-7.14.2 → coverage-7.14.3}/tests/plugin_config.py +0 -0
  355. {coverage-7.14.2 → coverage-7.14.3}/tests/qunit/jquery.tmpl.min.js +0 -0
  356. {coverage-7.14.2 → coverage-7.14.3}/tests/select_plugin.py +0 -0
  357. {coverage-7.14.2 → coverage-7.14.3}/tests/strategies.py +0 -0
  358. {coverage-7.14.2 → coverage-7.14.3}/tests/stress_phystoken.tok +0 -0
  359. {coverage-7.14.2 → coverage-7.14.3}/tests/stress_phystoken_dos.tok +0 -0
  360. {coverage-7.14.2 → coverage-7.14.3}/tests/test_annotate.py +0 -0
  361. {coverage-7.14.2 → coverage-7.14.3}/tests/test_api.py +0 -0
  362. {coverage-7.14.2 → coverage-7.14.3}/tests/test_arcs.py +0 -0
  363. {coverage-7.14.2 → coverage-7.14.3}/tests/test_bytecode.py +0 -0
  364. {coverage-7.14.2 → coverage-7.14.3}/tests/test_cmdline.py +0 -0
  365. {coverage-7.14.2 → coverage-7.14.3}/tests/test_collector.py +0 -0
  366. {coverage-7.14.2 → coverage-7.14.3}/tests/test_concurrency.py +0 -0
  367. {coverage-7.14.2 → coverage-7.14.3}/tests/test_config.py +0 -0
  368. {coverage-7.14.2 → coverage-7.14.3}/tests/test_context.py +0 -0
  369. {coverage-7.14.2 → coverage-7.14.3}/tests/test_core.py +0 -0
  370. {coverage-7.14.2 → coverage-7.14.3}/tests/test_data.py +0 -0
  371. {coverage-7.14.2 → coverage-7.14.3}/tests/test_debug.py +0 -0
  372. {coverage-7.14.2 → coverage-7.14.3}/tests/test_execfile.py +0 -0
  373. {coverage-7.14.2 → coverage-7.14.3}/tests/test_filereporter.py +0 -0
  374. {coverage-7.14.2 → coverage-7.14.3}/tests/test_files.py +0 -0
  375. {coverage-7.14.2 → coverage-7.14.3}/tests/test_goldtest.py +0 -0
  376. {coverage-7.14.2 → coverage-7.14.3}/tests/test_html.py +0 -0
  377. {coverage-7.14.2 → coverage-7.14.3}/tests/test_json.py +0 -0
  378. {coverage-7.14.2 → coverage-7.14.3}/tests/test_lcov.py +0 -0
  379. {coverage-7.14.2 → coverage-7.14.3}/tests/test_misc.py +0 -0
  380. {coverage-7.14.2 → coverage-7.14.3}/tests/test_mixins.py +0 -0
  381. {coverage-7.14.2 → coverage-7.14.3}/tests/test_numbits.py +0 -0
  382. {coverage-7.14.2 → coverage-7.14.3}/tests/test_parser.py +0 -0
  383. {coverage-7.14.2 → coverage-7.14.3}/tests/test_phystokens.py +0 -0
  384. {coverage-7.14.2 → coverage-7.14.3}/tests/test_plugins.py +0 -0
  385. {coverage-7.14.2 → coverage-7.14.3}/tests/test_process.py +0 -0
  386. {coverage-7.14.2 → coverage-7.14.3}/tests/test_python.py +0 -0
  387. {coverage-7.14.2 → coverage-7.14.3}/tests/test_regions.py +0 -0
  388. {coverage-7.14.2 → coverage-7.14.3}/tests/test_report.py +0 -0
  389. {coverage-7.14.2 → coverage-7.14.3}/tests/test_report_common.py +0 -0
  390. {coverage-7.14.2 → coverage-7.14.3}/tests/test_report_core.py +0 -0
  391. {coverage-7.14.2 → coverage-7.14.3}/tests/test_results.py +0 -0
  392. {coverage-7.14.2 → coverage-7.14.3}/tests/test_setup.py +0 -0
  393. {coverage-7.14.2 → coverage-7.14.3}/tests/test_sqlitedb.py +0 -0
  394. {coverage-7.14.2 → coverage-7.14.3}/tests/test_templite.py +0 -0
  395. {coverage-7.14.2 → coverage-7.14.3}/tests/test_testing.py +0 -0
  396. {coverage-7.14.2 → coverage-7.14.3}/tests/test_venv.py +0 -0
  397. {coverage-7.14.2 → coverage-7.14.3}/tests/test_version.py +0 -0
  398. {coverage-7.14.2 → coverage-7.14.3}/tests/test_xml.py +0 -0
  399. {coverage-7.14.2 → coverage-7.14.3}/tests/testenv.py +0 -0
  400. {coverage-7.14.2 → coverage-7.14.3}/tests/zipsrc/zip1/__init__.py +0 -0
  401. {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@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"
@@ -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`_. Thanks, `Matthew Lloyd
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
@@ -175,6 +175,7 @@ Matthias Schoettle
175
175
  Matus Valo
176
176
  Max Linke
177
177
  Mayank Singhal
178
+ Mengjia Shang
178
179
  Michael Bell
179
180
  Michael Krebs
180
181
  Michał Bultrowicz
@@ -1,12 +1,12 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: coverage
3
- Version: 7.14.2
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 256 others
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.2
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.2/
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.2/#quick-start
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.2/changes.html
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.2/contributing.html
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.2/
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 .*?)?\)(\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)
@@ -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, 14, 3, "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.14.3
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 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.2
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.2/
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.2/#quick-start
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.2/changes.html
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.2/contributing.html
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.2/
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.2"
72
+ version = "7.14.3"
73
73
  # The full version, including alpha/beta/rc tags.
74
- release = "7.14.2"
74
+ release = "7.14.3"
75
75
  # The date of release, in "monthname day, year" format.
76
- release_date = "June 20, 2026"
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{13-15}t, pypy3, doc, lint, mypy
7
+ envlist = py3{10-15}, py3{14-15}t, pypy3, doc, lint, mypy
8
8
  labels =
9
- py = py3{10-15}, py3{13-15}t, pypy3
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