pytest 8.4.2__tar.gz → 9.0.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 (625) hide show
  1. {pytest-8.4.2 → pytest-9.0.0}/.coveragerc +1 -0
  2. {pytest-8.4.2 → pytest-9.0.0}/.github/workflows/deploy.yml +64 -40
  3. pytest-9.0.0/.github/workflows/doc-check-links.yml +37 -0
  4. {pytest-8.4.2 → pytest-9.0.0}/.github/workflows/prepare-release-pr.yml +3 -3
  5. {pytest-8.4.2 → pytest-9.0.0}/.github/workflows/stale.yml +1 -1
  6. {pytest-8.4.2 → pytest-9.0.0}/.github/workflows/test.yml +61 -89
  7. {pytest-8.4.2 → pytest-9.0.0}/.github/workflows/update-plugin-list.yml +6 -7
  8. {pytest-8.4.2 → pytest-9.0.0}/.pre-commit-config.yaml +10 -10
  9. {pytest-8.4.2 → pytest-9.0.0}/AUTHORS +13 -0
  10. {pytest-8.4.2 → pytest-9.0.0}/CONTRIBUTING.rst +13 -12
  11. {pytest-8.4.2/src/pytest.egg-info → pytest-9.0.0}/PKG-INFO +7 -10
  12. {pytest-8.4.2 → pytest-9.0.0}/README.rst +2 -2
  13. {pytest-8.4.2 → pytest-9.0.0}/RELEASING.rst +2 -3
  14. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/index.rst +1 -0
  15. pytest-9.0.0/doc/en/announce/release-9.0.0.rst +69 -0
  16. {pytest-8.4.2 → pytest-9.0.0}/doc/en/builtin.rst +7 -4
  17. {pytest-8.4.2 → pytest-9.0.0}/doc/en/changelog.rst +301 -0
  18. {pytest-8.4.2 → pytest-9.0.0}/doc/en/conf.py +1 -0
  19. {pytest-8.4.2 → pytest-9.0.0}/doc/en/deprecations.rst +69 -14
  20. pytest-9.0.0/doc/en/example/.ruff.toml +1 -0
  21. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/markers.rst +6 -9
  22. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/multipython.py +1 -1
  23. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/nonpython.rst +2 -2
  24. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/parametrize.rst +6 -8
  25. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/pythoncollection.rst +26 -36
  26. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/simple.rst +7 -6
  27. {pytest-8.4.2 → pytest-9.0.0}/doc/en/explanation/ci.rst +1 -2
  28. {pytest-8.4.2 → pytest-9.0.0}/doc/en/explanation/goodpractices.rst +89 -9
  29. {pytest-8.4.2 → pytest-9.0.0}/doc/en/explanation/pythonpath.rst +4 -4
  30. {pytest-8.4.2 → pytest-9.0.0}/doc/en/getting-started.rst +22 -4
  31. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/assert.rst +28 -1
  32. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/capture-warnings.rst +48 -26
  33. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/doctest.rst +30 -14
  34. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/fixtures.rst +5 -6
  35. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/index.rst +1 -0
  36. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/logging.rst +54 -25
  37. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/mark.rst +37 -22
  38. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/output.rst +39 -11
  39. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/parametrize.rst +19 -4
  40. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/plugins.rst +25 -7
  41. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/skipping.rst +15 -6
  42. pytest-9.0.0/doc/en/how-to/subtests.rst +139 -0
  43. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/unittest.rst +5 -8
  44. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/writing_plugins.rst +6 -6
  45. {pytest-8.4.2 → pytest-9.0.0}/doc/en/index.rst +1 -4
  46. {pytest-8.4.2 → pytest-9.0.0}/doc/en/reference/customize.rst +93 -52
  47. {pytest-8.4.2 → pytest-9.0.0}/doc/en/reference/fixtures.rst +3 -0
  48. {pytest-8.4.2 → pytest-9.0.0}/doc/en/reference/plugin_list.rst +1295 -463
  49. {pytest-8.4.2 → pytest-9.0.0}/doc/en/reference/reference.rst +797 -181
  50. {pytest-8.4.2 → pytest-9.0.0}/doc/en/requirements.txt +2 -1
  51. {pytest-8.4.2 → pytest-9.0.0}/pyproject.toml +18 -17
  52. {pytest-8.4.2 → pytest-9.0.0}/scripts/generate-gh-release-notes.py +1 -1
  53. {pytest-8.4.2 → pytest-9.0.0}/scripts/prepare-release-pr.py +1 -1
  54. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_code/code.py +12 -14
  55. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_code/source.py +4 -4
  56. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_io/terminalwriter.py +19 -15
  57. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_py/path.py +2 -2
  58. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_version.py +2 -2
  59. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/assertion/rewrite.py +69 -83
  60. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/assertion/truncate.py +2 -2
  61. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/assertion/util.py +2 -8
  62. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/cacheprovider.py +22 -1
  63. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/compat.py +14 -34
  64. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/config/__init__.py +366 -229
  65. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/config/argparsing.py +142 -99
  66. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/config/exceptions.py +2 -0
  67. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/config/findpaths.py +140 -29
  68. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/deprecated.py +10 -2
  69. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/doctest.py +2 -20
  70. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/faulthandler.py +17 -3
  71. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/fixtures.py +80 -50
  72. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/helpconfig.py +51 -41
  73. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/hookspec.py +17 -8
  74. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/junitxml.py +5 -2
  75. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/main.py +168 -41
  76. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/mark/__init__.py +5 -5
  77. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/mark/expression.py +67 -45
  78. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/mark/structures.py +13 -11
  79. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/monkeypatch.py +20 -0
  80. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/outcomes.py +43 -52
  81. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/pathlib.py +9 -1
  82. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/pytester.py +26 -10
  83. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/python.py +59 -10
  84. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/python_api.py +22 -11
  85. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/raises.py +9 -11
  86. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/recwarn.py +4 -2
  87. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/reports.py +67 -10
  88. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/runner.py +14 -5
  89. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/skipping.py +13 -8
  90. pytest-9.0.0/src/_pytest/subtests.py +411 -0
  91. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/terminal.py +127 -8
  92. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/timing.py +1 -0
  93. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/unittest.py +115 -25
  94. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/warning_types.py +6 -0
  95. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/warnings.py +1 -2
  96. {pytest-8.4.2 → pytest-9.0.0}/src/pytest/__init__.py +6 -0
  97. {pytest-8.4.2 → pytest-9.0.0/src/pytest.egg-info}/PKG-INFO +7 -10
  98. {pytest-8.4.2 → pytest-9.0.0}/src/pytest.egg-info/SOURCES.txt +6 -0
  99. {pytest-8.4.2 → pytest-9.0.0}/src/pytest.egg-info/requires.txt +2 -2
  100. {pytest-8.4.2 → pytest-9.0.0}/testing/_py/test_local.py +8 -13
  101. {pytest-8.4.2 → pytest-9.0.0}/testing/acceptance_test.py +5 -6
  102. {pytest-8.4.2 → pytest-9.0.0}/testing/code/test_code.py +2 -2
  103. {pytest-8.4.2 → pytest-9.0.0}/testing/code/test_excinfo.py +4 -4
  104. {pytest-8.4.2 → pytest-9.0.0}/testing/code/test_source.py +2 -2
  105. {pytest-8.4.2 → pytest-9.0.0}/testing/conftest.py +1 -1
  106. pytest-9.0.0/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub2/conftest.py +11 -0
  107. {pytest-8.4.2 → pytest-9.0.0}/testing/io/test_terminalwriter.py +1 -0
  108. {pytest-8.4.2 → pytest-9.0.0}/testing/logging/test_reporting.py +2 -1
  109. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/pytest.ini +1 -1
  110. pytest-9.0.0/testing/plugins_integration/requirements.txt +15 -0
  111. {pytest-8.4.2 → pytest-9.0.0}/testing/python/approx.py +29 -4
  112. {pytest-8.4.2 → pytest-9.0.0}/testing/python/collect.py +5 -4
  113. {pytest-8.4.2 → pytest-9.0.0}/testing/python/fixtures.py +301 -4
  114. {pytest-8.4.2 → pytest-9.0.0}/testing/python/integration.py +2 -2
  115. {pytest-8.4.2 → pytest-9.0.0}/testing/python/metafunc.py +2 -2
  116. {pytest-8.4.2 → pytest-9.0.0}/testing/python/raises.py +13 -14
  117. {pytest-8.4.2 → pytest-9.0.0}/testing/python/raises_group.py +61 -52
  118. {pytest-8.4.2 → pytest-9.0.0}/testing/test_assertion.py +16 -0
  119. {pytest-8.4.2 → pytest-9.0.0}/testing/test_assertrewrite.py +21 -7
  120. {pytest-8.4.2 → pytest-9.0.0}/testing/test_capture.py +16 -11
  121. {pytest-8.4.2 → pytest-9.0.0}/testing/test_collection.py +875 -14
  122. {pytest-8.4.2 → pytest-9.0.0}/testing/test_compat.py +1 -1
  123. {pytest-8.4.2 → pytest-9.0.0}/testing/test_config.py +509 -48
  124. {pytest-8.4.2 → pytest-9.0.0}/testing/test_conftest.py +1 -1
  125. {pytest-8.4.2 → pytest-9.0.0}/testing/test_doctest.py +17 -10
  126. {pytest-8.4.2 → pytest-9.0.0}/testing/test_faulthandler.py +45 -1
  127. {pytest-8.4.2 → pytest-9.0.0}/testing/test_findpaths.py +76 -11
  128. {pytest-8.4.2 → pytest-9.0.0}/testing/test_helpconfig.py +19 -11
  129. {pytest-8.4.2 → pytest-9.0.0}/testing/test_junitxml.py +39 -26
  130. {pytest-8.4.2 → pytest-9.0.0}/testing/test_legacypath.py +10 -10
  131. {pytest-8.4.2 → pytest-9.0.0}/testing/test_main.py +75 -20
  132. {pytest-8.4.2 → pytest-9.0.0}/testing/test_mark.py +28 -17
  133. {pytest-8.4.2 → pytest-9.0.0}/testing/test_mark_expression.py +29 -24
  134. {pytest-8.4.2 → pytest-9.0.0}/testing/test_monkeypatch.py +18 -9
  135. {pytest-8.4.2 → pytest-9.0.0}/testing/test_nodes.py +4 -4
  136. {pytest-8.4.2 → pytest-9.0.0}/testing/test_parseopt.py +20 -20
  137. {pytest-8.4.2 → pytest-9.0.0}/testing/test_pathlib.py +1 -1
  138. {pytest-8.4.2 → pytest-9.0.0}/testing/test_pluginmanager.py +1 -1
  139. {pytest-8.4.2 → pytest-9.0.0}/testing/test_pytester.py +23 -1
  140. {pytest-8.4.2 → pytest-9.0.0}/testing/test_python_path.py +2 -2
  141. {pytest-8.4.2 → pytest-9.0.0}/testing/test_reports.py +83 -8
  142. {pytest-8.4.2 → pytest-9.0.0}/testing/test_session.py +1 -1
  143. {pytest-8.4.2 → pytest-9.0.0}/testing/test_skipping.py +15 -24
  144. pytest-9.0.0/testing/test_subtests.py +977 -0
  145. {pytest-8.4.2 → pytest-9.0.0}/testing/test_terminal.py +228 -4
  146. {pytest-8.4.2 → pytest-9.0.0}/testing/test_tmpdir.py +1 -1
  147. {pytest-8.4.2 → pytest-9.0.0}/testing/test_unittest.py +10 -8
  148. {pytest-8.4.2 → pytest-9.0.0}/testing/test_warning_types.py +1 -1
  149. {pytest-8.4.2 → pytest-9.0.0}/testing/test_warnings.py +34 -9
  150. {pytest-8.4.2 → pytest-9.0.0}/testing/typing_checks.py +2 -3
  151. {pytest-8.4.2 → pytest-9.0.0}/testing/typing_raises_group.py +3 -10
  152. {pytest-8.4.2 → pytest-9.0.0}/tox.ini +24 -15
  153. pytest-8.4.2/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub2/conftest.py +0 -9
  154. pytest-8.4.2/testing/plugins_integration/requirements.txt +0 -15
  155. {pytest-8.4.2 → pytest-9.0.0}/.git-blame-ignore-revs +0 -0
  156. {pytest-8.4.2 → pytest-9.0.0}/.gitattributes +0 -0
  157. {pytest-8.4.2 → pytest-9.0.0}/.github/FUNDING.yml +0 -0
  158. {pytest-8.4.2 → pytest-9.0.0}/.github/ISSUE_TEMPLATE/1_bug_report.md +0 -0
  159. {pytest-8.4.2 → pytest-9.0.0}/.github/ISSUE_TEMPLATE/2_feature_request.md +0 -0
  160. {pytest-8.4.2 → pytest-9.0.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  161. {pytest-8.4.2 → pytest-9.0.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  162. {pytest-8.4.2 → pytest-9.0.0}/.github/chronographer.yml +0 -0
  163. {pytest-8.4.2 → pytest-9.0.0}/.github/config.yml +0 -0
  164. {pytest-8.4.2 → pytest-9.0.0}/.github/dependabot.yml +0 -0
  165. {pytest-8.4.2 → pytest-9.0.0}/.github/labels.toml +0 -0
  166. {pytest-8.4.2 → pytest-9.0.0}/.github/patchback.yml +0 -0
  167. {pytest-8.4.2 → pytest-9.0.0}/.gitignore +0 -0
  168. {pytest-8.4.2 → pytest-9.0.0}/.readthedocs.yaml +0 -0
  169. {pytest-8.4.2 → pytest-9.0.0}/CHANGELOG.rst +0 -0
  170. {pytest-8.4.2 → pytest-9.0.0}/CITATION +0 -0
  171. {pytest-8.4.2 → pytest-9.0.0}/CODE_OF_CONDUCT.md +0 -0
  172. {pytest-8.4.2 → pytest-9.0.0}/LICENSE +0 -0
  173. {pytest-8.4.2 → pytest-9.0.0}/OPENCOLLECTIVE.rst +0 -0
  174. {pytest-8.4.2 → pytest-9.0.0}/TIDELIFT.rst +0 -0
  175. {pytest-8.4.2 → pytest-9.0.0}/bench/bench.py +0 -0
  176. {pytest-8.4.2 → pytest-9.0.0}/bench/bench_argcomplete.py +0 -0
  177. {pytest-8.4.2 → pytest-9.0.0}/bench/empty.py +0 -0
  178. {pytest-8.4.2 → pytest-9.0.0}/bench/manyparam.py +0 -0
  179. {pytest-8.4.2 → pytest-9.0.0}/bench/skip.py +0 -0
  180. {pytest-8.4.2 → pytest-9.0.0}/bench/unit_test.py +0 -0
  181. {pytest-8.4.2 → pytest-9.0.0}/bench/xunit.py +0 -0
  182. {pytest-8.4.2 → pytest-9.0.0}/changelog/.gitignore +0 -0
  183. {pytest-8.4.2 → pytest-9.0.0}/changelog/README.rst +0 -0
  184. {pytest-8.4.2 → pytest-9.0.0}/changelog/_template.rst +0 -0
  185. {pytest-8.4.2 → pytest-9.0.0}/codecov.yml +0 -0
  186. {pytest-8.4.2 → pytest-9.0.0}/doc/en/Makefile +0 -0
  187. {pytest-8.4.2 → pytest-9.0.0}/doc/en/_static/pytest-custom.css +0 -0
  188. {pytest-8.4.2 → pytest-9.0.0}/doc/en/_static/pytest1.png +0 -0
  189. {pytest-8.4.2 → pytest-9.0.0}/doc/en/_templates/links.html +0 -0
  190. {pytest-8.4.2 → pytest-9.0.0}/doc/en/adopt.rst +0 -0
  191. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.0.0.rst +0 -0
  192. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.0.1.rst +0 -0
  193. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.0.2.rst +0 -0
  194. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.0.3.rst +0 -0
  195. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.1.0.rst +0 -0
  196. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.1.1.rst +0 -0
  197. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.1.2.rst +0 -0
  198. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.1.3.rst +0 -0
  199. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.2.0.rst +0 -0
  200. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.2.1.rst +0 -0
  201. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.2.2.rst +0 -0
  202. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.2.4.rst +0 -0
  203. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.3.0.rst +0 -0
  204. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.3.1.rst +0 -0
  205. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.3.2.rst +0 -0
  206. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.3.3.rst +0 -0
  207. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.3.4.rst +0 -0
  208. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.3.5.rst +0 -0
  209. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.4.0.rst +0 -0
  210. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.4.1.rst +0 -0
  211. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.4.2.rst +0 -0
  212. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.5.0.rst +0 -0
  213. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.5.1.rst +0 -0
  214. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.5.2.rst +0 -0
  215. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.6.0.rst +0 -0
  216. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.6.1.rst +0 -0
  217. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.6.2.rst +0 -0
  218. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.6.3.rst +0 -0
  219. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.7.0.rst +0 -0
  220. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.7.1.rst +0 -0
  221. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.7.2.rst +0 -0
  222. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.8.2.rst +0 -0
  223. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.8.3.rst +0 -0
  224. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.8.4.rst +0 -0
  225. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.8.5.rst +0 -0
  226. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.8.6.rst +0 -0
  227. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.8.7.rst +0 -0
  228. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.9.0.rst +0 -0
  229. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.9.1.rst +0 -0
  230. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-2.9.2.rst +0 -0
  231. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.0.0.rst +0 -0
  232. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.0.1.rst +0 -0
  233. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.0.2.rst +0 -0
  234. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.0.3.rst +0 -0
  235. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.0.4.rst +0 -0
  236. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.0.5.rst +0 -0
  237. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.0.6.rst +0 -0
  238. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.0.7.rst +0 -0
  239. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.1.0.rst +0 -0
  240. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.1.1.rst +0 -0
  241. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.1.2.rst +0 -0
  242. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.1.3.rst +0 -0
  243. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.10.0.rst +0 -0
  244. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.10.1.rst +0 -0
  245. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.2.0.rst +0 -0
  246. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.2.1.rst +0 -0
  247. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.2.2.rst +0 -0
  248. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.2.3.rst +0 -0
  249. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.2.4.rst +0 -0
  250. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.2.5.rst +0 -0
  251. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.3.0.rst +0 -0
  252. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.3.1.rst +0 -0
  253. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.3.2.rst +0 -0
  254. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.4.0.rst +0 -0
  255. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.4.1.rst +0 -0
  256. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.4.2.rst +0 -0
  257. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.5.0.rst +0 -0
  258. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.5.1.rst +0 -0
  259. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.6.0.rst +0 -0
  260. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.6.1.rst +0 -0
  261. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.6.2.rst +0 -0
  262. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.6.3.rst +0 -0
  263. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.6.4.rst +0 -0
  264. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.7.0.rst +0 -0
  265. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.7.1.rst +0 -0
  266. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.7.2.rst +0 -0
  267. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.7.3.rst +0 -0
  268. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.7.4.rst +0 -0
  269. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.8.0.rst +0 -0
  270. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.8.1.rst +0 -0
  271. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.8.2.rst +0 -0
  272. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.9.0.rst +0 -0
  273. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.9.1.rst +0 -0
  274. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.9.2.rst +0 -0
  275. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-3.9.3.rst +0 -0
  276. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.0.0.rst +0 -0
  277. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.0.1.rst +0 -0
  278. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.0.2.rst +0 -0
  279. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.1.0.rst +0 -0
  280. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.1.1.rst +0 -0
  281. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.2.0.rst +0 -0
  282. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.2.1.rst +0 -0
  283. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.3.0.rst +0 -0
  284. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.3.1.rst +0 -0
  285. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.4.0.rst +0 -0
  286. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.4.1.rst +0 -0
  287. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.4.2.rst +0 -0
  288. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.5.0.rst +0 -0
  289. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.0.rst +0 -0
  290. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.1.rst +0 -0
  291. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.2.rst +0 -0
  292. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.3.rst +0 -0
  293. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.4.rst +0 -0
  294. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.5.rst +0 -0
  295. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.6.rst +0 -0
  296. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.7.rst +0 -0
  297. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.8.rst +0 -0
  298. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-4.6.9.rst +0 -0
  299. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.0.0.rst +0 -0
  300. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.0.1.rst +0 -0
  301. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.1.0.rst +0 -0
  302. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.1.1.rst +0 -0
  303. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.1.2.rst +0 -0
  304. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.1.3.rst +0 -0
  305. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.2.0.rst +0 -0
  306. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.2.1.rst +0 -0
  307. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.2.2.rst +0 -0
  308. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.2.3.rst +0 -0
  309. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.2.4.rst +0 -0
  310. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.3.0.rst +0 -0
  311. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.3.1.rst +0 -0
  312. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.3.2.rst +0 -0
  313. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.3.3.rst +0 -0
  314. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.3.4.rst +0 -0
  315. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.3.5.rst +0 -0
  316. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.4.0.rst +0 -0
  317. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.4.1.rst +0 -0
  318. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.4.2.rst +0 -0
  319. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-5.4.3.rst +0 -0
  320. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.0.0.rst +0 -0
  321. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.0.0rc1.rst +0 -0
  322. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.0.1.rst +0 -0
  323. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.0.2.rst +0 -0
  324. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.1.0.rst +0 -0
  325. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.1.1.rst +0 -0
  326. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.1.2.rst +0 -0
  327. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.2.0.rst +0 -0
  328. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.2.1.rst +0 -0
  329. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.2.2.rst +0 -0
  330. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.2.3.rst +0 -0
  331. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.2.4.rst +0 -0
  332. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-6.2.5.rst +0 -0
  333. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.0.0.rst +0 -0
  334. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.0.0rc1.rst +0 -0
  335. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.0.1.rst +0 -0
  336. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.1.0.rst +0 -0
  337. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.1.1.rst +0 -0
  338. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.1.2.rst +0 -0
  339. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.1.3.rst +0 -0
  340. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.2.0.rst +0 -0
  341. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.2.1.rst +0 -0
  342. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.2.2.rst +0 -0
  343. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.3.0.rst +0 -0
  344. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.3.1.rst +0 -0
  345. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.3.2.rst +0 -0
  346. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.4.0.rst +0 -0
  347. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.4.1.rst +0 -0
  348. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.4.2.rst +0 -0
  349. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.4.3.rst +0 -0
  350. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-7.4.4.rst +0 -0
  351. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.0.0.rst +0 -0
  352. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.0.0rc1.rst +0 -0
  353. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.0.0rc2.rst +0 -0
  354. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.0.1.rst +0 -0
  355. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.0.2.rst +0 -0
  356. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.1.0.rst +0 -0
  357. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.1.1.rst +0 -0
  358. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.1.2.rst +0 -0
  359. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.2.0.rst +0 -0
  360. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.2.1.rst +0 -0
  361. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.2.2.rst +0 -0
  362. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.3.0.rst +0 -0
  363. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.3.1.rst +0 -0
  364. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.3.2.rst +0 -0
  365. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.3.3.rst +0 -0
  366. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.3.4.rst +0 -0
  367. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.3.5.rst +0 -0
  368. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.4.0.rst +0 -0
  369. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.4.1.rst +0 -0
  370. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/release-8.4.2.rst +0 -0
  371. {pytest-8.4.2 → pytest-9.0.0}/doc/en/announce/sprint2016.rst +0 -0
  372. {pytest-8.4.2 → pytest-9.0.0}/doc/en/backwards-compatibility.rst +0 -0
  373. {pytest-8.4.2 → pytest-9.0.0}/doc/en/broken-dep-constraints.txt +0 -0
  374. {pytest-8.4.2 → pytest-9.0.0}/doc/en/conftest.py +0 -0
  375. {pytest-8.4.2 → pytest-9.0.0}/doc/en/contact.rst +0 -0
  376. {pytest-8.4.2 → pytest-9.0.0}/doc/en/contents.rst +0 -0
  377. {pytest-8.4.2 → pytest-9.0.0}/doc/en/contributing.rst +0 -0
  378. {pytest-8.4.2 → pytest-9.0.0}/doc/en/development_guide.rst +0 -0
  379. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/assertion/failure_demo.py +0 -0
  380. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/assertion/global_testmodule_config/conftest.py +0 -0
  381. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/assertion/global_testmodule_config/test_hello_world.py +0 -0
  382. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/assertion/test_failures.py +0 -0
  383. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/assertion/test_setup_flow_example.py +0 -0
  384. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/attic.rst +0 -0
  385. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/conftest.py +0 -0
  386. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/customdirectory/conftest.py +0 -0
  387. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/customdirectory/pytest.ini +0 -0
  388. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/customdirectory/tests/manifest.json +0 -0
  389. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/customdirectory/tests/test_first.py +0 -0
  390. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/customdirectory/tests/test_second.py +0 -0
  391. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/customdirectory/tests/test_third.py +0 -0
  392. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/customdirectory.rst +0 -0
  393. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/fixture_availability.svg +0 -0
  394. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/fixture_availability_plugins.svg +0 -0
  395. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_autouse.py +0 -0
  396. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_autouse.svg +0 -0
  397. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_autouse_flat.svg +0 -0
  398. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_autouse_multiple_scopes.py +0 -0
  399. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_autouse_multiple_scopes.svg +0 -0
  400. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_autouse_temp_effects.py +0 -0
  401. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_autouse_temp_effects.svg +0 -0
  402. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_dependencies.py +0 -0
  403. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_dependencies.svg +0 -0
  404. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_dependencies_flat.svg +0 -0
  405. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_dependencies_unclear.svg +0 -0
  406. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_scope.py +0 -0
  407. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_order_scope.svg +0 -0
  408. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_request_different_scope.py +0 -0
  409. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/fixtures/test_fixtures_request_different_scope.svg +0 -0
  410. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/index.rst +0 -0
  411. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/nonpython/__init__.py +0 -0
  412. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/nonpython/conftest.py +0 -0
  413. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/nonpython/test_simple.yaml +0 -0
  414. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/pythoncollection.py +0 -0
  415. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/reportingdemo.rst +0 -0
  416. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/special.rst +0 -0
  417. {pytest-8.4.2 → pytest-9.0.0}/doc/en/example/xfail_demo.py +0 -0
  418. {pytest-8.4.2 → pytest-9.0.0}/doc/en/explanation/anatomy.rst +0 -0
  419. {pytest-8.4.2 → pytest-9.0.0}/doc/en/explanation/fixtures.rst +0 -0
  420. {pytest-8.4.2 → pytest-9.0.0}/doc/en/explanation/flaky.rst +0 -0
  421. {pytest-8.4.2 → pytest-9.0.0}/doc/en/explanation/index.rst +0 -0
  422. {pytest-8.4.2 → pytest-9.0.0}/doc/en/explanation/types.rst +0 -0
  423. {pytest-8.4.2 → pytest-9.0.0}/doc/en/funcarg_compare.rst +0 -0
  424. {pytest-8.4.2 → pytest-9.0.0}/doc/en/funcargs.rst +0 -0
  425. {pytest-8.4.2 → pytest-9.0.0}/doc/en/historical-notes.rst +0 -0
  426. {pytest-8.4.2 → pytest-9.0.0}/doc/en/history.rst +0 -0
  427. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/bash-completion.rst +0 -0
  428. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/cache.rst +0 -0
  429. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/capture-stdout-stderr.rst +0 -0
  430. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/existingtestsuite.rst +0 -0
  431. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/failures.rst +0 -0
  432. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/monkeypatch.rst +0 -0
  433. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/tmp_path.rst +0 -0
  434. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/usage.rst +0 -0
  435. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/writing_hook_functions.rst +0 -0
  436. {pytest-8.4.2 → pytest-9.0.0}/doc/en/how-to/xunit_setup.rst +0 -0
  437. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/cramer2.png +0 -0
  438. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/favicon.png +0 -0
  439. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/freiburg2.jpg +0 -0
  440. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/gaynor3.png +0 -0
  441. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/keleshev.png +0 -0
  442. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/pullrequest.png +0 -0
  443. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/pylib.png +0 -0
  444. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/pytest_logo_curves.svg +0 -0
  445. {pytest-8.4.2 → pytest-9.0.0}/doc/en/img/theuni.png +0 -0
  446. {pytest-8.4.2 → pytest-9.0.0}/doc/en/license.rst +0 -0
  447. {pytest-8.4.2 → pytest-9.0.0}/doc/en/naming20.rst +0 -0
  448. {pytest-8.4.2 → pytest-9.0.0}/doc/en/proposals/parametrize_with_fixtures.rst +0 -0
  449. {pytest-8.4.2 → pytest-9.0.0}/doc/en/pytest.ini +0 -0
  450. {pytest-8.4.2 → pytest-9.0.0}/doc/en/recwarn.rst +0 -0
  451. {pytest-8.4.2 → pytest-9.0.0}/doc/en/reference/exit-codes.rst +0 -0
  452. {pytest-8.4.2 → pytest-9.0.0}/doc/en/reference/index.rst +0 -0
  453. {pytest-8.4.2 → pytest-9.0.0}/doc/en/sponsor.rst +0 -0
  454. {pytest-8.4.2 → pytest-9.0.0}/doc/en/talks.rst +0 -0
  455. {pytest-8.4.2 → pytest-9.0.0}/doc/en/tidelift.rst +0 -0
  456. {pytest-8.4.2 → pytest-9.0.0}/doc/en/yieldfixture.rst +0 -0
  457. {pytest-8.4.2 → pytest-9.0.0}/extra/get_issues.py +0 -0
  458. {pytest-8.4.2 → pytest-9.0.0}/scripts/.gitignore +0 -0
  459. {pytest-8.4.2 → pytest-9.0.0}/scripts/release.major.rst +0 -0
  460. {pytest-8.4.2 → pytest-9.0.0}/scripts/release.minor.rst +0 -0
  461. {pytest-8.4.2 → pytest-9.0.0}/scripts/release.patch.rst +0 -0
  462. {pytest-8.4.2 → pytest-9.0.0}/scripts/release.pre.rst +0 -0
  463. {pytest-8.4.2 → pytest-9.0.0}/scripts/release.py +0 -0
  464. {pytest-8.4.2 → pytest-9.0.0}/scripts/update-plugin-list.py +0 -0
  465. {pytest-8.4.2 → pytest-9.0.0}/setup.cfg +0 -0
  466. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/__init__.py +0 -0
  467. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_argcomplete.py +0 -0
  468. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_code/__init__.py +0 -0
  469. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_io/__init__.py +0 -0
  470. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_io/pprint.py +0 -0
  471. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_io/saferepr.py +0 -0
  472. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_io/wcwidth.py +0 -0
  473. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_py/__init__.py +0 -0
  474. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/_py/error.py +0 -0
  475. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/assertion/__init__.py +0 -0
  476. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/capture.py +0 -0
  477. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/config/compat.py +0 -0
  478. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/debugging.py +0 -0
  479. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/freeze_support.py +0 -0
  480. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/legacypath.py +0 -0
  481. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/logging.py +0 -0
  482. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/nodes.py +0 -0
  483. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/pastebin.py +0 -0
  484. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/py.typed +0 -0
  485. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/pytester_assertions.py +0 -0
  486. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/scope.py +0 -0
  487. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/setuponly.py +0 -0
  488. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/setupplan.py +0 -0
  489. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/stash.py +0 -0
  490. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/stepwise.py +0 -0
  491. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/threadexception.py +0 -0
  492. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/tmpdir.py +0 -0
  493. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/tracemalloc.py +0 -0
  494. {pytest-8.4.2 → pytest-9.0.0}/src/_pytest/unraisableexception.py +0 -0
  495. {pytest-8.4.2 → pytest-9.0.0}/src/py.py +0 -0
  496. {pytest-8.4.2 → pytest-9.0.0}/src/pytest/__main__.py +0 -0
  497. {pytest-8.4.2 → pytest-9.0.0}/src/pytest/py.typed +0 -0
  498. {pytest-8.4.2 → pytest-9.0.0}/src/pytest.egg-info/dependency_links.txt +0 -0
  499. {pytest-8.4.2 → pytest-9.0.0}/src/pytest.egg-info/entry_points.txt +0 -0
  500. {pytest-8.4.2 → pytest-9.0.0}/src/pytest.egg-info/top_level.txt +0 -0
  501. {pytest-8.4.2 → pytest-9.0.0}/testing/deprecated_test.py +0 -0
  502. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/README.rst +0 -0
  503. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/__init__.py +0 -0
  504. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/acceptance/fixture_mock_integration.py +0 -0
  505. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/collect_init_tests/pytest.ini +0 -0
  506. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/collect_init_tests/tests/__init__.py +0 -0
  507. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/collect_init_tests/tests/test_foo.py +0 -0
  508. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/package_infinite_recursion/__init__.pyi +0 -0
  509. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/package_infinite_recursion/conftest.py +0 -0
  510. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/package_infinite_recursion/tests/__init__.py +0 -0
  511. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/package_infinite_recursion/tests/test_basic.py +0 -0
  512. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/package_init_given_as_arg/pkg/__init__.py +0 -0
  513. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/collect/package_init_given_as_arg/pkg/test_foo.py +0 -0
  514. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/config/collect_pytest_prefix/__init__.pyi +0 -0
  515. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/config/collect_pytest_prefix/conftest.py +0 -0
  516. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/config/collect_pytest_prefix/test_foo.py +0 -0
  517. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/conftest_usageerror/__init__.pyi +0 -0
  518. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/conftest_usageerror/conftest.py +0 -0
  519. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/customdirectory/conftest.py +0 -0
  520. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/customdirectory/pytest.ini +0 -0
  521. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/customdirectory/tests/manifest.json +0 -0
  522. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/customdirectory/tests/test_first.py +0 -0
  523. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/customdirectory/tests/test_second.py +0 -0
  524. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/customdirectory/tests/test_third.py +0 -0
  525. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/dataclasses/test_compare_dataclasses.py +0 -0
  526. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/dataclasses/test_compare_dataclasses_field_comparison_off.py +0 -0
  527. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/dataclasses/test_compare_dataclasses_verbose.py +0 -0
  528. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/dataclasses/test_compare_dataclasses_with_custom_eq.py +0 -0
  529. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/dataclasses/test_compare_initvar.py +0 -0
  530. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/dataclasses/test_compare_recursive_dataclasses.py +0 -0
  531. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/dataclasses/test_compare_two_different_dataclasses.py +0 -0
  532. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/doctest/main_py/__main__.py +0 -0
  533. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/doctest/main_py/test_normal_module.py +0 -0
  534. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/custom_item/__init__.pyi +0 -0
  535. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/custom_item/conftest.py +0 -0
  536. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/custom_item/foo/__init__.py +0 -0
  537. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/custom_item/foo/test_foo.py +0 -0
  538. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub1/__init__.py +0 -0
  539. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub1/conftest.py +0 -0
  540. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub1/test_in_sub1.py +0 -0
  541. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub2/__init__.py +0 -0
  542. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub2/test_in_sub2.py +0 -0
  543. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_detect_recursive_dependency_error.py +0 -0
  544. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/__init__.pyi +0 -0
  545. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/conftest.py +0 -0
  546. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/pkg/__init__.py +0 -0
  547. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/pkg/conftest.py +0 -0
  548. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/pkg/test_spam.py +0 -0
  549. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_module/__init__.pyi +0 -0
  550. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_module/conftest.py +0 -0
  551. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_module/test_extend_fixture_conftest_module.py +0 -0
  552. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_module_class.py +0 -0
  553. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_funcarg_basic.py +0 -0
  554. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_funcarg_lookup_classlevel.py +0 -0
  555. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_funcarg_lookup_modulelevel.py +0 -0
  556. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/fill_fixtures/test_funcarg_lookupfails.py +0 -0
  557. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/test_fixture_named_request.py +0 -0
  558. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/fixtures/test_getfixturevalue_dynamic.py +0 -0
  559. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/issue88_initial_file_multinodes/__init__.pyi +0 -0
  560. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/issue88_initial_file_multinodes/conftest.py +0 -0
  561. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/issue88_initial_file_multinodes/test_hello.py +0 -0
  562. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/issue_519.py +0 -0
  563. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/junit-10.xsd +0 -0
  564. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/marks/marks_considered_keywords/__init__.pyi +0 -0
  565. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/marks/marks_considered_keywords/conftest.py +0 -0
  566. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/marks/marks_considered_keywords/test_marks_as_keywords.py +0 -0
  567. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/perf_examples/collect_stats/.gitignore +0 -0
  568. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/perf_examples/collect_stats/generate_folders.py +0 -0
  569. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/perf_examples/collect_stats/template_test.py +0 -0
  570. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/pytest.ini +0 -0
  571. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/tmpdir/tmp_path_fixture.py +0 -0
  572. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/unittest/test_parametrized_fixture_error_message.py +0 -0
  573. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/unittest/test_setup_skip.py +0 -0
  574. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/unittest/test_setup_skip_class.py +0 -0
  575. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/unittest/test_setup_skip_module.py +0 -0
  576. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/unittest/test_unittest_asyncio.py +0 -0
  577. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/unittest/test_unittest_asynctest.py +0 -0
  578. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/unittest/test_unittest_plain_async.py +0 -0
  579. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/warnings/test_group_warnings_by_message.py +0 -0
  580. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/warnings/test_group_warnings_by_message_summary/test_1.py +0 -0
  581. {pytest-8.4.2 → pytest-9.0.0}/testing/example_scripts/warnings/test_group_warnings_by_message_summary/test_2.py +0 -0
  582. {pytest-8.4.2 → pytest-9.0.0}/testing/examples/test_issue519.py +0 -0
  583. {pytest-8.4.2 → pytest-9.0.0}/testing/freeze/.gitignore +0 -0
  584. {pytest-8.4.2 → pytest-9.0.0}/testing/freeze/create_executable.py +0 -0
  585. {pytest-8.4.2 → pytest-9.0.0}/testing/freeze/runtests_script.py +0 -0
  586. {pytest-8.4.2 → pytest-9.0.0}/testing/freeze/tests/test_doctest.txt +0 -0
  587. {pytest-8.4.2 → pytest-9.0.0}/testing/freeze/tests/test_trivial.py +0 -0
  588. {pytest-8.4.2 → pytest-9.0.0}/testing/freeze/tox_run.py +0 -0
  589. {pytest-8.4.2 → pytest-9.0.0}/testing/io/test_pprint.py +0 -0
  590. {pytest-8.4.2 → pytest-9.0.0}/testing/io/test_saferepr.py +0 -0
  591. {pytest-8.4.2 → pytest-9.0.0}/testing/io/test_wcwidth.py +0 -0
  592. {pytest-8.4.2 → pytest-9.0.0}/testing/logging/test_fixture.py +0 -0
  593. {pytest-8.4.2 → pytest-9.0.0}/testing/logging/test_formatter.py +0 -0
  594. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/.gitignore +0 -0
  595. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/README.rst +0 -0
  596. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/bdd_wallet.feature +0 -0
  597. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/bdd_wallet.py +0 -0
  598. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/django_settings.py +0 -0
  599. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/pytest_anyio_integration.py +0 -0
  600. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/pytest_asyncio_integration.py +0 -0
  601. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/pytest_mock_integration.py +0 -0
  602. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/pytest_rerunfailures_integration.py +0 -0
  603. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/pytest_trio_integration.py +0 -0
  604. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/pytest_twisted_integration.py +0 -0
  605. {pytest-8.4.2 → pytest-9.0.0}/testing/plugins_integration/simple_integration.py +0 -0
  606. {pytest-8.4.2 → pytest-9.0.0}/testing/python/show_fixtures_per_test.py +0 -0
  607. {pytest-8.4.2 → pytest-9.0.0}/testing/test_argcomplete.py +0 -0
  608. {pytest-8.4.2 → pytest-9.0.0}/testing/test_cacheprovider.py +0 -0
  609. {pytest-8.4.2 → pytest-9.0.0}/testing/test_collect_imported_tests.py +0 -0
  610. {pytest-8.4.2 → pytest-9.0.0}/testing/test_debugging.py +0 -0
  611. {pytest-8.4.2 → pytest-9.0.0}/testing/test_entry_points.py +0 -0
  612. {pytest-8.4.2 → pytest-9.0.0}/testing/test_error_diffs.py +0 -0
  613. {pytest-8.4.2 → pytest-9.0.0}/testing/test_link_resolve.py +0 -0
  614. {pytest-8.4.2 → pytest-9.0.0}/testing/test_meta.py +0 -0
  615. {pytest-8.4.2 → pytest-9.0.0}/testing/test_pastebin.py +0 -0
  616. {pytest-8.4.2 → pytest-9.0.0}/testing/test_recwarn.py +0 -0
  617. {pytest-8.4.2 → pytest-9.0.0}/testing/test_runner.py +0 -0
  618. {pytest-8.4.2 → pytest-9.0.0}/testing/test_runner_xunit.py +0 -0
  619. {pytest-8.4.2 → pytest-9.0.0}/testing/test_scope.py +0 -0
  620. {pytest-8.4.2 → pytest-9.0.0}/testing/test_setuponly.py +0 -0
  621. {pytest-8.4.2 → pytest-9.0.0}/testing/test_setupplan.py +0 -0
  622. {pytest-8.4.2 → pytest-9.0.0}/testing/test_stash.py +0 -0
  623. {pytest-8.4.2 → pytest-9.0.0}/testing/test_stepwise.py +0 -0
  624. {pytest-8.4.2 → pytest-9.0.0}/testing/test_threadexception.py +0 -0
  625. {pytest-8.4.2 → pytest-9.0.0}/testing/test_unraisableexception.py +0 -0
@@ -25,6 +25,7 @@ exclude_lines =
25
25
  ^\s*raise NotImplementedError\b
26
26
  ^\s*return NotImplemented\b
27
27
  ^\s*assert False(,|$)
28
+ ^\s*case unreachable:
28
29
  ^\s*assert_never\(
29
30
 
30
31
  ^\s*if TYPE_CHECKING:
@@ -25,41 +25,85 @@ jobs:
25
25
  attestations: write
26
26
 
27
27
  steps:
28
- - uses: actions/checkout@v4
28
+ - uses: actions/checkout@v5
29
29
  with:
30
30
  fetch-depth: 0
31
31
  persist-credentials: false
32
32
 
33
33
  - name: Build and Check Package
34
- uses: hynek/build-and-inspect-python-package@b5076c307dc91924a82ad150cdd1533b444d3310
34
+ uses: hynek/build-and-inspect-python-package@efb823f52190ad02594531168b7a2d5790e66516
35
35
  with:
36
36
  attest-build-provenance-github: 'true'
37
37
 
38
- deploy:
39
- if: github.repository == 'pytest-dev/pytest'
38
+ generate-gh-release-notes:
40
39
  needs: [package]
41
40
  runs-on: ubuntu-latest
42
- environment: deploy
43
41
  timeout-minutes: 30
44
42
  permissions:
45
- id-token: write
46
- contents: write
43
+ contents: read
47
44
  steps:
48
- - uses: actions/checkout@v4
45
+ - uses: actions/checkout@v5
49
46
  with:
50
- persist-credentials: true
47
+ fetch-depth: 0
48
+ persist-credentials: false
49
+
50
+ - name: Set up Python
51
+ uses: actions/setup-python@v6
52
+ with:
53
+ python-version: "3.13"
54
+
55
+ - name: Install tox
56
+ run: |
57
+ python -m pip install --upgrade pip
58
+ pip install --upgrade tox
59
+
60
+ - name: Generate release notes
61
+ env:
62
+ VERSION: ${{ github.event.inputs.version }}
63
+ run: |
64
+ tox -e generate-gh-release-notes -- "$VERSION" gh-release-notes.md
65
+
66
+ - name: Upload release notes
67
+ uses: actions/upload-artifact@v4
68
+ with:
69
+ name: release-notes
70
+ path: gh-release-notes.md
71
+ retention-days: 1
51
72
 
73
+ publish-to-pypi:
74
+ if: github.repository == 'pytest-dev/pytest'
75
+ # Need generate-gh-release-notes only for ordering.
76
+ # Don't want to release to PyPI if generating GitHub release notes fails.
77
+ needs: [package, generate-gh-release-notes]
78
+ runs-on: ubuntu-latest
79
+ environment: deploy
80
+ timeout-minutes: 30
81
+ permissions:
82
+ id-token: write
83
+ steps:
52
84
  - name: Download Package
53
- uses: actions/download-artifact@v4
85
+ uses: actions/download-artifact@v6
54
86
  with:
55
87
  name: Packages
56
88
  path: dist
57
89
 
58
90
  - name: Publish package to PyPI
59
- uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc
91
+ uses: pypa/gh-action-pypi-publish@ed0c53931b1dc9bd32cbe73a98c7f6766f8a527e
60
92
  with:
61
93
  attestations: true
62
94
 
95
+ push-tag:
96
+ needs: [publish-to-pypi]
97
+ runs-on: ubuntu-latest
98
+ timeout-minutes: 10
99
+ permissions:
100
+ contents: write
101
+ steps:
102
+ - uses: actions/checkout@v5
103
+ with:
104
+ fetch-depth: 0
105
+ persist-credentials: true
106
+
63
107
  - name: Push tag
64
108
  env:
65
109
  VERSION: ${{ github.event.inputs.version }}
@@ -69,48 +113,28 @@ jobs:
69
113
  git tag --annotate --message=v"$VERSION" "$VERSION" ${{ github.sha }}
70
114
  git push origin "$VERSION"
71
115
 
72
- release-notes:
73
-
74
- # todo: generate the content in the build job
75
- # the goal being of using a github action script to push the release data
76
- # after success instead of creating a complete python/tox env
77
- needs: [deploy]
116
+ create-github-release:
117
+ needs: [push-tag, generate-gh-release-notes]
78
118
  runs-on: ubuntu-latest
79
- timeout-minutes: 30
119
+ timeout-minutes: 10
80
120
  permissions:
81
121
  contents: write
82
122
  steps:
83
- - uses: actions/checkout@v4
84
- with:
85
- fetch-depth: 0
86
- persist-credentials: false
87
-
88
123
  - name: Download Package
89
- uses: actions/download-artifact@v4
124
+ uses: actions/download-artifact@v6
90
125
  with:
91
126
  name: Packages
92
127
  path: dist
93
128
 
94
- - name: Set up Python
95
- uses: actions/setup-python@v5
129
+ - name: Download release notes
130
+ uses: actions/download-artifact@v6
96
131
  with:
97
- python-version: "3.11"
98
-
99
- - name: Install tox
100
- run: |
101
- python -m pip install --upgrade pip
102
- pip install --upgrade tox
103
-
104
- - name: Generate release notes
105
- env:
106
- VERSION: ${{ github.event.inputs.version }}
107
- run: |
108
- sudo apt-get install pandoc
109
- tox -e generate-gh-release-notes -- "$VERSION" scripts/latest-release-notes.md
132
+ name: release-notes
133
+ path: .
110
134
 
111
135
  - name: Publish GitHub Release
112
136
  env:
113
137
  VERSION: ${{ github.event.inputs.version }}
114
138
  GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
115
139
  run: |
116
- gh release create --notes-file scripts/latest-release-notes.md --verify-tag "$VERSION" dist/*
140
+ gh release create --notes-file gh-release-notes.md --verify-tag "$VERSION" dist/*
@@ -0,0 +1,37 @@
1
+ name: Doc Check Links
2
+
3
+ on:
4
+ schedule:
5
+ # At 00:00 on Sunday.
6
+ # https://crontab.guru
7
+ - cron: '0 0 * * 0'
8
+ workflow_dispatch:
9
+
10
+ # Set permissions at the job level.
11
+ permissions: {}
12
+
13
+ jobs:
14
+ doc-check-links:
15
+ if: github.repository_owner == 'pytest-dev'
16
+ runs-on: ubuntu-latest
17
+
18
+ steps:
19
+ - name: Checkout
20
+ uses: actions/checkout@v5
21
+ with:
22
+ fetch-depth: 0
23
+ persist-credentials: false
24
+
25
+ - name: Setup Python
26
+ uses: actions/setup-python@v6
27
+ with:
28
+ python-version: "3.13"
29
+ cache: pip
30
+
31
+ - name: Install dependencies
32
+ run: |
33
+ python -m pip install --upgrade pip
34
+ pip install tox
35
+
36
+ - name: Run sphinx linkcheck via tox
37
+ run: tox -e docs-checklinks
@@ -27,16 +27,16 @@ jobs:
27
27
  pull-requests: write
28
28
 
29
29
  steps:
30
- - uses: actions/checkout@v4
30
+ - uses: actions/checkout@v5
31
31
  with:
32
32
  fetch-depth: 0
33
33
  # persist-credentials is needed in order for us to push the release branch.
34
34
  persist-credentials: true
35
35
 
36
36
  - name: Set up Python
37
- uses: actions/setup-python@v5
37
+ uses: actions/setup-python@v6
38
38
  with:
39
- python-version: "3.x"
39
+ python-version: "3.13"
40
40
 
41
41
  - name: Install dependencies
42
42
  run: |
@@ -10,7 +10,7 @@ jobs:
10
10
  permissions:
11
11
  issues: write
12
12
  steps:
13
- - uses: actions/stale@v9
13
+ - uses: actions/stale@v10
14
14
  with:
15
15
  debug-only: false
16
16
  days-before-issue-stale: 14
@@ -20,6 +20,8 @@ on:
20
20
  - reopened # default
21
21
  - ready_for_review # used in PRs created from the release workflow
22
22
 
23
+ workflow_dispatch: # allows manual triggering of the workflow
24
+
23
25
  env:
24
26
  PYTEST_ADDOPTS: "--color=yes"
25
27
 
@@ -35,12 +37,12 @@ jobs:
35
37
  package:
36
38
  runs-on: ubuntu-latest
37
39
  steps:
38
- - uses: actions/checkout@v4
40
+ - uses: actions/checkout@v5
39
41
  with:
40
42
  fetch-depth: 0
41
43
  persist-credentials: false
42
44
  - name: Build and Check Package
43
- uses: hynek/build-and-inspect-python-package@b5076c307dc91924a82ad150cdd1533b444d3310
45
+ uses: hynek/build-and-inspect-python-package@efb823f52190ad02594531168b7a2d5790e66516
44
46
 
45
47
  build:
46
48
  needs: [package]
@@ -54,24 +56,22 @@ jobs:
54
56
  fail-fast: false
55
57
  matrix:
56
58
  name: [
57
- "windows-py39-unittest-asynctest",
58
- "windows-py39-unittest-twisted24",
59
- "windows-py39-unittest-twisted25",
60
- "windows-py39-pluggy",
61
- "windows-py39-xdist",
62
- "windows-py310",
59
+ "windows-py310-unittest-asynctest",
60
+ "windows-py310-unittest-twisted24",
61
+ "windows-py310-unittest-twisted25",
62
+ "windows-py310-pluggy",
63
+ "windows-py310-xdist",
63
64
  "windows-py311",
64
65
  "windows-py312",
65
66
  "windows-py313",
66
67
  "windows-py314",
67
68
 
68
- "ubuntu-py39-unittest-asynctest",
69
- "ubuntu-py39-unittest-twisted24",
70
- "ubuntu-py39-unittest-twisted25",
71
- "ubuntu-py39-lsof-numpy-pexpect",
72
- "ubuntu-py39-pluggy",
73
- "ubuntu-py39-freeze",
74
- "ubuntu-py39-xdist",
69
+ "ubuntu-py310-unittest-asynctest",
70
+ "ubuntu-py310-unittest-twisted24",
71
+ "ubuntu-py310-unittest-twisted25",
72
+ "ubuntu-py310-lsof-numpy-pexpect",
73
+ "ubuntu-py310-pluggy",
74
+ "ubuntu-py310-freeze",
75
75
  "ubuntu-py310-xdist",
76
76
  "ubuntu-py311",
77
77
  "ubuntu-py312",
@@ -79,7 +79,6 @@ jobs:
79
79
  "ubuntu-py314",
80
80
  "ubuntu-pypy3-xdist",
81
81
 
82
- "macos-py39",
83
82
  "macos-py310",
84
83
  "macos-py312",
85
84
  "macos-py313",
@@ -91,35 +90,31 @@ jobs:
91
90
 
92
91
  include:
93
92
  # Use separate jobs for different unittest flavors (twisted, asynctest) to ensure proper coverage.
94
- - name: "windows-py39-unittest-asynctest"
95
- python: "3.9"
93
+ - name: "windows-py310-unittest-asynctest"
94
+ python: "3.10"
96
95
  os: windows-latest
97
- tox_env: "py39-asynctest"
96
+ tox_env: "py310-asynctest"
98
97
  use_coverage: true
99
98
 
100
- - name: "windows-py39-unittest-twisted24"
101
- python: "3.9"
99
+ - name: "windows-py310-unittest-twisted24"
100
+ python: "3.10"
102
101
  os: windows-latest
103
- tox_env: "py39-twisted24"
102
+ tox_env: "py310-twisted24"
104
103
  use_coverage: true
105
104
 
106
- - name: "windows-py39-unittest-twisted25"
107
- python: "3.9"
105
+ - name: "windows-py310-unittest-twisted25"
106
+ python: "3.10"
108
107
  os: windows-latest
109
- tox_env: "py39-twisted25"
108
+ tox_env: "py310-twisted25"
110
109
  use_coverage: true
111
110
 
112
- - name: "windows-py39-pluggy"
113
- python: "3.9"
114
- os: windows-latest
115
- tox_env: "py39-pluggymain-pylib-xdist"
116
-
117
- - name: "windows-py39-xdist"
118
- python: "3.9"
111
+ - name: "windows-py310-pluggy"
112
+ python: "3.10"
119
113
  os: windows-latest
120
- tox_env: "py39-xdist"
114
+ tox_env: "py310-pluggymain-pylib-xdist"
115
+ xfail: true
121
116
 
122
- - name: "windows-py310"
117
+ - name: "windows-py310-xdist"
123
118
  python: "3.10"
124
119
  os: windows-latest
125
120
  tox_env: "py310-xdist"
@@ -138,6 +133,7 @@ jobs:
138
133
  python: "3.13"
139
134
  os: windows-latest
140
135
  tox_env: "py313"
136
+ xfail: true
141
137
 
142
138
  - name: "windows-py314"
143
139
  python: "3.14"
@@ -145,44 +141,41 @@ jobs:
145
141
  tox_env: "py314"
146
142
 
147
143
  # Use separate jobs for different unittest flavors (twisted, asynctest) to ensure proper coverage.
148
- - name: "ubuntu-py39-unittest-asynctest"
149
- python: "3.9"
144
+ - name: "ubuntu-py310-unittest-asynctest"
145
+ python: "3.10"
150
146
  os: ubuntu-latest
151
- tox_env: "py39-asynctest"
147
+ tox_env: "py310-asynctest"
152
148
  use_coverage: true
153
149
 
154
- - name: "ubuntu-py39-unittest-twisted24"
155
- python: "3.9"
150
+ - name: "ubuntu-py310-unittest-twisted24"
151
+ python: "3.10"
156
152
  os: ubuntu-latest
157
- tox_env: "py39-twisted24"
153
+ tox_env: "py310-twisted24"
158
154
  use_coverage: true
159
155
 
160
- - name: "ubuntu-py39-unittest-twisted25"
161
- python: "3.9"
156
+ - name: "ubuntu-py310-unittest-twisted25"
157
+ python: "3.10"
162
158
  os: ubuntu-latest
163
- tox_env: "py39-twisted25"
159
+ tox_env: "py310-twisted25"
164
160
  use_coverage: true
165
161
 
166
- - name: "ubuntu-py39-lsof-numpy-pexpect"
167
- python: "3.9"
162
+ - name: "ubuntu-py310-lsof-numpy-pexpect"
163
+ python: "3.10"
168
164
  os: ubuntu-latest
169
- tox_env: "py39-lsof-numpy-pexpect"
165
+ tox_env: "py310-lsof-numpy-pexpect"
170
166
  use_coverage: true
171
167
 
172
- - name: "ubuntu-py39-pluggy"
173
- python: "3.9"
174
- os: ubuntu-latest
175
- tox_env: "py39-pluggymain-pylib-xdist"
176
-
177
- - name: "ubuntu-py39-freeze"
178
- python: "3.9"
168
+ - name: "ubuntu-py310-pluggy"
169
+ python: "3.10"
179
170
  os: ubuntu-latest
180
- tox_env: "py39-freeze"
171
+ tox_env: "py310-pluggymain-pylib-xdist"
172
+ xfail: true
181
173
 
182
- - name: "ubuntu-py39-xdist"
183
- python: "3.9"
174
+ - name: "ubuntu-py310-freeze"
175
+ python: "3.10"
184
176
  os: ubuntu-latest
185
- tox_env: "py39-xdist"
177
+ tox_env: "py310-freeze"
178
+ xfail: true
186
179
 
187
180
  - name: "ubuntu-py310-xdist"
188
181
  python: "3.10"
@@ -206,6 +199,7 @@ jobs:
206
199
  os: ubuntu-latest
207
200
  tox_env: "py313-pexpect"
208
201
  use_coverage: true
202
+ xfail: true
209
203
 
210
204
  - name: "ubuntu-py314"
211
205
  python: "3.14"
@@ -214,21 +208,16 @@ jobs:
214
208
  use_coverage: true
215
209
 
216
210
  - name: "ubuntu-pypy3-xdist"
217
- python: "pypy-3.9"
211
+ python: "pypy-3.10"
218
212
  os: ubuntu-latest
219
213
  tox_env: "pypy3-xdist"
220
214
 
221
215
 
222
- - name: "macos-py39"
223
- python: "3.9"
224
- os: macos-latest
225
- tox_env: "py39-xdist"
226
- use_coverage: true
227
-
228
216
  - name: "macos-py310"
229
217
  python: "3.10"
230
218
  os: macos-latest
231
219
  tox_env: "py310-xdist"
220
+ xfail: true
232
221
 
233
222
  - name: "macos-py312"
234
223
  python: "3.12"
@@ -239,6 +228,7 @@ jobs:
239
228
  python: "3.13"
240
229
  os: macos-latest
241
230
  tox_env: "py313-xdist"
231
+ xfail: true
242
232
 
243
233
  - name: "macos-py314"
244
234
  python: "3.14"
@@ -252,45 +242,27 @@ jobs:
252
242
 
253
243
 
254
244
  - name: "doctesting"
255
- python: "3.9"
245
+ python: "3.10"
256
246
  os: ubuntu-latest
257
247
  tox_env: "doctesting"
258
248
  use_coverage: true
259
249
 
260
- continue-on-error: >-
261
- ${{
262
- contains(
263
- fromJSON(
264
- '[
265
- "windows-py39-pluggy",
266
- "windows-py313",
267
- "ubuntu-py39-pluggy",
268
- "ubuntu-py39-freeze",
269
- "ubuntu-py313",
270
- "macos-py39",
271
- "macos-py313"
272
- ]'
273
- ),
274
- matrix.name
275
- )
276
- && true
277
- || false
278
- }}
250
+ continue-on-error: ${{ matrix.xfail && true || false }}
279
251
 
280
252
  steps:
281
- - uses: actions/checkout@v4
253
+ - uses: actions/checkout@v5
282
254
  with:
283
255
  fetch-depth: 0
284
256
  persist-credentials: false
285
257
 
286
258
  - name: Download Package
287
- uses: actions/download-artifact@v4
259
+ uses: actions/download-artifact@v6
288
260
  with:
289
261
  name: Packages
290
262
  path: dist
291
263
 
292
264
  - name: Set up Python ${{ matrix.python }}
293
- uses: actions/setup-python@v5
265
+ uses: actions/setup-python@v6
294
266
  with:
295
267
  python-version: ${{ matrix.python }}
296
268
  check-latest: true
@@ -317,7 +289,7 @@ jobs:
317
289
 
318
290
  - name: Upload coverage to Codecov
319
291
  if: "matrix.use_coverage"
320
- uses: codecov/codecov-action@18283e04ce6e62d37312384ff67231eb8fd56d24
292
+ uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7
321
293
  with:
322
294
  fail_ci_if_error: false
323
295
  files: ./coverage.xml
@@ -333,6 +305,6 @@ jobs:
333
305
 
334
306
  steps:
335
307
  - name: Decide whether the needed jobs succeeded or failed
336
- uses: re-actors/alls-green@223e4bb7a751b91f43eda76992bcfbf23b8b0302
308
+ uses: re-actors/alls-green@2765efec08f0fd63e83ad900f5fd75646be69ff6
337
309
  with:
338
310
  jobs: ${{ toJSON(needs) }}
@@ -20,16 +20,15 @@ jobs:
20
20
 
21
21
  steps:
22
22
  - name: Checkout
23
- uses: actions/checkout@v4
23
+ uses: actions/checkout@v5
24
24
  with:
25
25
  fetch-depth: 0
26
26
  persist-credentials: false
27
27
 
28
28
  - name: Setup Python
29
- uses: actions/setup-python@v5
29
+ uses: actions/setup-python@v6
30
30
  with:
31
- python-version: "3.11"
32
- cache: pip
31
+ python-version: "3.13"
33
32
 
34
33
  - name: requests-cache
35
34
  uses: actions/cache@v4
@@ -38,13 +37,13 @@ jobs:
38
37
  key: plugins-http-cache-${{ github.run_id }} # Can use time based key as well
39
38
  restore-keys: plugins-http-cache-
40
39
 
41
- - name: Install dependencies
40
+ - name: Install tox
42
41
  run: |
43
42
  python -m pip install --upgrade pip
44
- pip install packaging requests tabulate[widechars] tqdm requests-cache platformdirs
43
+ pip install --upgrade tox
45
44
 
46
45
  - name: Update Plugin List
47
- run: python scripts/update-plugin-list.py
46
+ run: tox -e update-plugin-list
48
47
 
49
48
  - name: Create Pull Request
50
49
  id: pr
@@ -1,22 +1,22 @@
1
1
  repos:
2
2
  - repo: https://github.com/astral-sh/ruff-pre-commit
3
- rev: "v0.11.11"
3
+ rev: "v0.14.3"
4
4
  hooks:
5
- - id: ruff
5
+ - id: ruff-check
6
6
  args: ["--fix"]
7
7
  - id: ruff-format
8
8
  - repo: https://github.com/pre-commit/pre-commit-hooks
9
- rev: v5.0.0
9
+ rev: v6.0.0
10
10
  hooks:
11
11
  - id: trailing-whitespace
12
12
  - id: end-of-file-fixer
13
13
  - id: check-yaml
14
14
  - repo: https://github.com/woodruffw/zizmor-pre-commit
15
- rev: v1.8.0
15
+ rev: v1.16.2
16
16
  hooks:
17
17
  - id: zizmor
18
18
  - repo: https://github.com/adamchainz/blacken-docs
19
- rev: 1.19.1
19
+ rev: 1.20.0
20
20
  hooks:
21
21
  - id: blacken-docs
22
22
  additional_dependencies: [black==24.1.1]
@@ -32,7 +32,7 @@ repos:
32
32
  hooks:
33
33
  - id: python-use-type-annotations
34
34
  - repo: https://github.com/pre-commit/mirrors-mypy
35
- rev: v1.15.0
35
+ rev: v1.18.2
36
36
  hooks:
37
37
  - id: mypy
38
38
  files: ^(src/|testing/|scripts/)
@@ -48,7 +48,7 @@ repos:
48
48
  # on <3.11
49
49
  - exceptiongroup>=1.0.0rc8
50
50
  - repo: https://github.com/RobertCraigie/pyright-python
51
- rev: v1.1.401
51
+ rev: v1.1.407
52
52
  hooks:
53
53
  - id: pyright
54
54
  files: ^(src/|scripts/)
@@ -66,17 +66,17 @@ repos:
66
66
  # Manual because passing pyright is a work in progress.
67
67
  stages: [manual]
68
68
  - repo: https://github.com/tox-dev/pyproject-fmt
69
- rev: "v2.6.0"
69
+ rev: "v2.11.0"
70
70
  hooks:
71
71
  - id: pyproject-fmt
72
72
  # https://pyproject-fmt.readthedocs.io/en/latest/#calculating-max-supported-python-version
73
73
  additional_dependencies: ["tox>=4.9"]
74
74
  - repo: https://github.com/asottile/pyupgrade
75
- rev: v3.20.0
75
+ rev: v3.21.0
76
76
  hooks:
77
77
  - id: pyupgrade
78
78
  args:
79
- - "--py39-plus"
79
+ - "--py310-plus"
80
80
  # Manual because ruff does what pyupgrade does and the two are not out of sync
81
81
  # often enough to make launching pyupgrade everytime worth it
82
82
  stages: [manual]