pytest 8.0.2__tar.gz → 8.1.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.
- {pytest-8.0.2 → pytest-8.1.0}/.git-blame-ignore-revs +4 -2
- {pytest-8.0.2 → pytest-8.1.0}/.github/workflows/deploy.yml +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/.github/workflows/test.yml +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/.github/workflows/update-plugin-list.yml +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/.pre-commit-config.yaml +8 -7
- {pytest-8.0.2 → pytest-8.1.0}/AUTHORS +7 -0
- {pytest-8.0.2/src/pytest.egg-info → pytest-8.1.0}/PKG-INFO +15 -20
- {pytest-8.0.2 → pytest-8.1.0}/README.rst +3 -3
- {pytest-8.0.2 → pytest-8.1.0}/TIDELIFT.rst +0 -2
- {pytest-8.0.2 → pytest-8.1.0}/bench/bench.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/adopt.rst +1 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/index.rst +1 -0
- pytest-8.1.0/doc/en/announce/release-8.1.0.rst +54 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/builtin.rst +14 -14
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/changelog.rst +94 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/conf.py +0 -1
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/contents.rst +0 -1
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/deprecations.rst +259 -241
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/assertion/failure_demo.py +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/index.rst +0 -1
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/parametrize.rst +3 -3
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/pythoncollection.rst +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/reportingdemo.rst +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/explanation/fixtures.rst +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/explanation/goodpractices.rst +4 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/explanation/pythonpath.rst +72 -18
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/getting-started.rst +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/existingtestsuite.rst +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/fixtures.rst +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/index.rst +0 -1
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/logging.rst +4 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/output.rst +3 -1
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/tmp_path.rst +13 -9
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/writing_plugins.rst +12 -18
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/index.rst +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/reference/customize.rst +9 -4
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/reference/plugin_list.rst +1995 -1587
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/reference/reference.rst +39 -6
- {pytest-8.0.2 → pytest-8.1.0}/pyproject.toml +181 -66
- {pytest-8.0.2 → pytest-8.1.0}/scripts/prepare-release-pr.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/scripts/release.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/scripts/update-plugin-list.py +6 -3
- pytest-8.1.0/setup.cfg +4 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_code/code.py +2 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_code/source.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_io/pprint.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_io/terminalwriter.py +4 -4
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_py/path.py +3 -5
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_version.py +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/assertion/__init__.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/assertion/rewrite.py +2 -2
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/assertion/truncate.py +2 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/assertion/util.py +3 -3
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/cacheprovider.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/capture.py +3 -2
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/compat.py +6 -38
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/config/__init__.py +112 -69
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/config/argparsing.py +10 -35
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/config/findpaths.py +22 -15
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/debugging.py +3 -2
- pytest-8.1.0/src/_pytest/deprecated.py +74 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/doctest.py +17 -25
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/fixtures.py +175 -147
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/helpconfig.py +4 -4
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/hookspec.py +349 -73
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/junitxml.py +3 -3
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/legacypath.py +20 -5
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/logging.py +13 -3
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/main.py +96 -36
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/mark/__init__.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/mark/structures.py +5 -4
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/monkeypatch.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/nodes.py +40 -116
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/outcomes.py +6 -64
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/pastebin.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/pathlib.py +152 -45
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/pytester.py +4 -4
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/python.py +108 -171
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/python_api.py +6 -11
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/recwarn.py +40 -23
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/reports.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/runner.py +26 -25
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/setuponly.py +9 -6
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/skipping.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/terminal.py +22 -10
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/tmpdir.py +3 -3
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/unittest.py +80 -100
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/warning_types.py +0 -6
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/warnings.py +3 -1
- {pytest-8.0.2 → pytest-8.1.0}/src/pytest/__init__.py +0 -14
- {pytest-8.0.2 → pytest-8.1.0/src/pytest.egg-info}/PKG-INFO +15 -20
- {pytest-8.0.2 → pytest-8.1.0}/src/pytest.egg-info/SOURCES.txt +1 -6
- {pytest-8.0.2 → pytest-8.1.0}/src/pytest.egg-info/requires.txt +3 -4
- {pytest-8.0.2 → pytest-8.1.0}/testing/_py/test_local.py +4 -3
- {pytest-8.0.2 → pytest-8.1.0}/testing/acceptance_test.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/code/test_code.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/code/test_excinfo.py +12 -9
- {pytest-8.0.2 → pytest-8.1.0}/testing/code/test_source.py +2 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/conftest.py +1 -0
- pytest-8.1.0/testing/deprecated_test.py +138 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/acceptance/fixture_mock_integration.py +1 -1
- pytest-8.1.0/testing/example_scripts/collect/collect_init_tests/tests/__init__.py +3 -0
- pytest-8.1.0/testing/example_scripts/collect/collect_init_tests/tests/test_foo.py +3 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/collect/package_infinite_recursion/conftest.py +1 -0
- pytest-8.1.0/testing/example_scripts/collect/package_infinite_recursion/tests/test_basic.py +3 -0
- pytest-8.1.0/testing/example_scripts/collect/package_init_given_as_arg/pkg/__init__.py +3 -0
- pytest-8.1.0/testing/example_scripts/collect/package_init_given_as_arg/pkg/test_foo.py +3 -0
- pytest-8.1.0/testing/example_scripts/config/collect_pytest_prefix/test_foo.py +3 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/conftest_usageerror/conftest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/customdirectory/conftest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/customdirectory/tests/test_first.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/customdirectory/tests/test_second.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/customdirectory/tests/test_third.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/dataclasses/test_compare_initvar.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/dataclasses/test_compare_recursive_dataclasses.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/doctest/main_py/__main__.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/doctest/main_py/test_normal_module.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/custom_item/conftest.py +1 -0
- pytest-8.1.0/testing/example_scripts/fixtures/custom_item/foo/test_foo.py +3 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub1/conftest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub1/test_in_sub1.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub2/conftest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub2/test_in_sub2.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_detect_recursive_dependency_error.py +1 -0
- {pytest-8.0.2/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_module → pytest-8.1.0/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest}/conftest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/pkg/conftest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/pkg/test_spam.py +1 -0
- {pytest-8.0.2/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest → pytest-8.1.0/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_module}/conftest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_module/test_extend_fixture_conftest_module.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_module_class.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_funcarg_basic.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_funcarg_lookup_classlevel.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_funcarg_lookup_modulelevel.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_funcarg_lookupfails.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/test_fixture_named_request.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/test_getfixturevalue_dynamic.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/issue88_initial_file_multinodes/conftest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/issue88_initial_file_multinodes/test_hello.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/issue_519.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/marks/marks_considered_keywords/test_marks_as_keywords.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/perf_examples/collect_stats/generate_folders.py +1 -0
- pytest-8.1.0/testing/example_scripts/perf_examples/collect_stats/template_test.py +3 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/tmpdir/tmp_path_fixture.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/unittest/test_parametrized_fixture_error_message.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/unittest/test_setup_skip.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/unittest/test_setup_skip_class.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/unittest/test_setup_skip_module.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/unittest/test_unittest_asyncio.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/unittest/test_unittest_asynctest.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/unittest/test_unittest_plain_async.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/warnings/test_group_warnings_by_message.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/warnings/test_group_warnings_by_message_summary/test_1.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/warnings/test_group_warnings_by_message_summary/test_2.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/freeze/create_executable.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/freeze/tests/test_trivial.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/io/test_saferepr.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/io/test_terminalwriter.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/io/test_wcwidth.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/logging/test_reporting.py +170 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/bdd_wallet.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/pytest_anyio_integration.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/pytest_asyncio_integration.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/pytest_mock_integration.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/pytest_trio_integration.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/pytest_twisted_integration.py +1 -0
- pytest-8.1.0/testing/plugins_integration/requirements.txt +17 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/simple_integration.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/python/approx.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/python/collect.py +2 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/python/fixtures.py +24 -14
- {pytest-8.0.2 → pytest-8.1.0}/testing/python/integration.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/python/metafunc.py +12 -13
- {pytest-8.0.2 → pytest-8.1.0}/testing/python/raises.py +4 -3
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_argcomplete.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_assertion.py +18 -10
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_assertrewrite.py +3 -2
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_cacheprovider.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_capture.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_collection.py +74 -3
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_compat.py +5 -4
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_config.py +137 -46
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_conftest.py +65 -13
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_debugging.py +14 -15
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_doctest.py +29 -5
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_entry_points.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_faulthandler.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_findpaths.py +8 -6
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_helpconfig.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_junitxml.py +8 -2
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_legacypath.py +4 -3
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_link_resolve.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_main.py +62 -22
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_mark.py +2 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_monkeypatch.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_nodes.py +4 -30
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_parseopt.py +1 -3
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_pastebin.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_pathlib.py +515 -63
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_pluginmanager.py +22 -5
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_pytester.py +3 -2
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_python_path.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_recwarn.py +44 -13
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_reports.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_runner.py +6 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_runner_xunit.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_session.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_setuponly.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_skipping.py +2 -49
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_stepwise.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_terminal.py +246 -15
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_tmpdir.py +6 -7
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_unittest.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_warning_types.py +1 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_warnings.py +9 -10
- {pytest-8.0.2 → pytest-8.1.0}/testing/typing_checks.py +1 -1
- {pytest-8.0.2 → pytest-8.1.0}/tox.ini +3 -1
- pytest-8.0.2/doc/en/how-to/nose.rst +0 -99
- pytest-8.0.2/setup.cfg +0 -110
- pytest-8.0.2/src/_pytest/config/compat.py +0 -84
- pytest-8.0.2/src/_pytest/deprecated.py +0 -154
- pytest-8.0.2/src/_pytest/nose.py +0 -51
- pytest-8.0.2/src/pytest.egg-info/not-zip-safe +0 -1
- pytest-8.0.2/testing/deprecated_test.py +0 -397
- pytest-8.0.2/testing/example_scripts/collect/collect_init_tests/tests/__init__.py +0 -2
- pytest-8.0.2/testing/example_scripts/collect/collect_init_tests/tests/test_foo.py +0 -2
- pytest-8.0.2/testing/example_scripts/collect/package_infinite_recursion/tests/test_basic.py +0 -2
- pytest-8.0.2/testing/example_scripts/collect/package_init_given_as_arg/pkg/__init__.py +0 -2
- pytest-8.0.2/testing/example_scripts/collect/package_init_given_as_arg/pkg/test_foo.py +0 -2
- pytest-8.0.2/testing/example_scripts/config/collect_pytest_prefix/test_foo.py +0 -2
- pytest-8.0.2/testing/example_scripts/fixtures/custom_item/foo/test_foo.py +0 -2
- pytest-8.0.2/testing/example_scripts/perf_examples/collect_stats/template_test.py +0 -2
- pytest-8.0.2/testing/plugins_integration/requirements.txt +0 -15
- pytest-8.0.2/testing/test_nose.py +0 -529
- {pytest-8.0.2 → pytest-8.1.0}/.coveragerc +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.gitattributes +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/FUNDING.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/ISSUE_TEMPLATE/1_bug_report.md +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/ISSUE_TEMPLATE/2_feature_request.md +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/config.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/dependabot.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/labels.toml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/workflows/backport.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/workflows/prepare-release-pr.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.github/workflows/stale.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.gitignore +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/.readthedocs.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/CHANGELOG.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/CITATION +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/CODE_OF_CONDUCT.md +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/CONTRIBUTING.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/LICENSE +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/OPENCOLLECTIVE.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/RELEASING.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/bench/bench_argcomplete.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/bench/empty.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/bench/manyparam.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/bench/skip.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/bench/unit_test.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/bench/xunit.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/changelog/README.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/changelog/_template.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/codecov.yml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/Makefile +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/_templates/globaltoc.html +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/_templates/layout.html +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/_templates/links.html +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/_templates/relations.html +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/_templates/sidebarintro.html +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/_templates/slim_searchbox.html +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.0.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.0.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.0.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.0.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.1.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.1.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.1.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.1.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.2.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.2.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.2.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.2.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.3.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.3.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.3.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.3.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.3.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.3.5.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.4.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.4.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.4.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.5.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.5.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.5.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.6.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.6.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.6.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.6.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.7.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.7.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.7.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.8.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.8.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.8.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.8.5.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.8.6.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.8.7.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.9.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.9.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-2.9.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.0.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.0.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.0.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.0.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.0.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.0.5.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.0.6.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.0.7.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.1.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.1.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.1.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.1.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.10.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.10.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.2.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.2.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.2.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.2.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.2.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.2.5.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.3.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.3.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.3.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.4.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.4.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.4.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.5.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.5.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.6.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.6.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.6.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.6.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.6.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.7.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.7.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.7.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.7.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.7.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.8.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.8.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.8.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.9.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.9.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.9.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-3.9.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.0.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.0.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.0.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.1.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.1.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.2.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.2.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.3.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.3.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.4.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.4.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.4.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.5.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.5.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.6.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.7.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.8.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-4.6.9.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.0.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.0.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.1.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.1.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.1.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.1.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.2.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.2.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.2.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.2.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.2.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.3.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.3.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.3.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.3.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.3.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.3.5.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.4.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.4.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.4.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-5.4.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.0.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.0.0rc1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.0.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.0.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.1.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.1.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.1.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.2.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.2.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.2.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.2.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.2.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-6.2.5.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.0.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.0.0rc1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.0.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.1.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.1.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.1.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.1.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.2.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.2.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.2.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.3.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.3.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.3.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.4.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.4.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.4.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.4.3.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-7.4.4.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-8.0.0.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-8.0.0rc1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-8.0.0rc2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-8.0.1.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/release-8.0.2.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/announce/sprint2016.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/backwards-compatibility.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/conftest.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/contact.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/contributing.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/development_guide.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/assertion/global_testmodule_config/conftest.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/assertion/global_testmodule_config/test_hello_world.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/assertion/test_failures.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/assertion/test_setup_flow_example.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/attic.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/conftest.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/customdirectory/conftest.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/customdirectory/pytest.ini +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/customdirectory/tests/manifest.json +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/customdirectory/tests/test_first.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/customdirectory/tests/test_second.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/customdirectory/tests/test_third.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/customdirectory.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/fixture_availability.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/fixture_availability_plugins.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_autouse.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_autouse.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_autouse_flat.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_autouse_multiple_scopes.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_autouse_multiple_scopes.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_autouse_temp_effects.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_autouse_temp_effects.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_dependencies.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_dependencies.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_dependencies_flat.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_dependencies_unclear.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_scope.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_order_scope.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_request_different_scope.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/fixtures/test_fixtures_request_different_scope.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/markers.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/multipython.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/nonpython/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/nonpython/conftest.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/nonpython/test_simple.yaml +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/nonpython.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/pythoncollection.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/simple.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/special.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/example/xfail_demo.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/explanation/anatomy.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/explanation/flaky.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/explanation/index.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/funcarg_compare.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/funcargs.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/historical-notes.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/history.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/assert.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/bash-completion.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/cache.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/capture-stdout-stderr.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/capture-warnings.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/doctest.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/failures.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/mark.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/monkeypatch.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/parametrize.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/plugins.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/skipping.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/unittest.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/usage.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/writing_hook_functions.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/how-to/xunit_setup.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/cramer2.png +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/favicon.png +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/freiburg2.jpg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/gaynor3.png +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/keleshev.png +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/pullrequest.png +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/pylib.png +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/pytest1.png +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/pytest_logo_curves.svg +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/img/theuni.png +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/license.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/naming20.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/proposals/parametrize_with_fixtures.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/pytest.ini +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/recwarn.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/reference/exit-codes.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/reference/fixtures.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/reference/index.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/requirements.txt +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/sponsor.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/talks.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/tidelift.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/doc/en/yieldfixture.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/extra/get_issues.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/scripts/.gitignore +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/scripts/generate-gh-release-notes.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/scripts/release.major.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/scripts/release.minor.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/scripts/release.patch.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/scripts/release.pre.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/scripts/towncrier-draft-to-file.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_argcomplete.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_code/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_io/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_io/saferepr.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_io/wcwidth.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_py/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/_py/error.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/config/exceptions.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/faulthandler.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/freeze_support.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/mark/expression.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/py.typed +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/pytester_assertions.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/python_path.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/scope.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/setupplan.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/stash.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/stepwise.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/threadexception.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/timing.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/_pytest/unraisableexception.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/py.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/pytest/__main__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/pytest/py.typed +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/pytest.egg-info/dependency_links.txt +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/pytest.egg-info/entry_points.txt +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/src/pytest.egg-info/top_level.txt +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/README.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/collect/collect_init_tests/pytest.ini +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/collect/package_infinite_recursion/__init__.pyi +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/collect/package_infinite_recursion/tests/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/config/collect_pytest_prefix/__init__.pyi +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/config/collect_pytest_prefix/conftest.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/conftest_usageerror/__init__.pyi +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/customdirectory/pytest.ini +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/customdirectory/tests/manifest.json +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/dataclasses/test_compare_dataclasses.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/dataclasses/test_compare_dataclasses_field_comparison_off.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/dataclasses/test_compare_dataclasses_verbose.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/dataclasses/test_compare_dataclasses_with_custom_eq.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/dataclasses/test_compare_two_different_dataclasses.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/custom_item/__init__.pyi +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/custom_item/foo/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub1/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_conftest_funcargs_only_available_in_subdir/sub2/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/__init__.pyi +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_conftest/pkg/__init__.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/fixtures/fill_fixtures/test_extend_fixture_conftest_module/__init__.pyi +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/issue88_initial_file_multinodes/__init__.pyi +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/junit-10.xsd +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/marks/marks_considered_keywords/__init__.pyi +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/marks/marks_considered_keywords/conftest.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/perf_examples/collect_stats/.gitignore +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/example_scripts/pytest.ini +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/examples/test_issue519.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/freeze/.gitignore +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/freeze/runtests_script.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/freeze/tests/test_doctest.txt +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/freeze/tox_run.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/io/test_pprint.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/logging/test_fixture.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/logging/test_formatter.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/.gitignore +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/README.rst +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/bdd_wallet.feature +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/django_settings.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/plugins_integration/pytest.ini +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/python/show_fixtures_per_test.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_error_diffs.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_mark_expression.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_meta.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_scope.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_setupplan.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_stash.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_threadexception.py +0 -0
- {pytest-8.0.2 → pytest-8.1.0}/testing/test_unraisableexception.py +0 -0
|
@@ -23,9 +23,11 @@ afc607cfd81458d4e4f3b1f3cf8cc931b933907e
|
|
|
23
23
|
5f95dce95602921a70bfbc7d8de2f7712c5e4505
|
|
24
24
|
# ran pyupgrade-docs again
|
|
25
25
|
75d0b899bbb56d6849e9d69d83a9426ed3f43f8b
|
|
26
|
-
|
|
27
26
|
# move argument parser to own file
|
|
28
27
|
c9df77cbd6a365dcb73c39618e4842711817e871
|
|
29
|
-
|
|
30
28
|
# Replace reorder-python-imports by isort due to black incompatibility (#11896)
|
|
31
29
|
8b54596639f41dfac070030ef20394b9001fe63c
|
|
30
|
+
# Run blacken-docs with black's 2024's style
|
|
31
|
+
4546d5445aaefe6a03957db028c263521dfb5c4b
|
|
32
|
+
# Migration to ruff / ruff format
|
|
33
|
+
4588653b2497ed25976b7aaff225b889fb476756
|
|
@@ -35,7 +35,7 @@ jobs:
|
|
|
35
35
|
fetch-depth: 0
|
|
36
36
|
persist-credentials: false
|
|
37
37
|
- name: Build and Check Package
|
|
38
|
-
uses: hynek/build-and-inspect-python-package@v2.0.
|
|
38
|
+
uses: hynek/build-and-inspect-python-package@v2.0.1
|
|
39
39
|
|
|
40
40
|
build:
|
|
41
41
|
needs: [package]
|
|
@@ -205,7 +205,7 @@ jobs:
|
|
|
205
205
|
|
|
206
206
|
- name: Upload coverage to Codecov
|
|
207
207
|
if: "matrix.use_coverage"
|
|
208
|
-
uses: codecov/codecov-action@
|
|
208
|
+
uses: codecov/codecov-action@v4
|
|
209
209
|
continue-on-error: true
|
|
210
210
|
with:
|
|
211
211
|
fail_ci_if_error: true
|
|
@@ -30,7 +30,7 @@ jobs:
|
|
|
30
30
|
python-version: "3.11"
|
|
31
31
|
cache: pip
|
|
32
32
|
- name: requests-cache
|
|
33
|
-
uses: actions/cache@
|
|
33
|
+
uses: actions/cache@v4
|
|
34
34
|
with:
|
|
35
35
|
path: ~/.cache/pytest-plugin-list/
|
|
36
36
|
key: plugins-http-cache-${{ github.run_id }} # Can use time based key as well
|
|
@@ -46,7 +46,7 @@ jobs:
|
|
|
46
46
|
run: python scripts/update-plugin-list.py
|
|
47
47
|
|
|
48
48
|
- name: Create Pull Request
|
|
49
|
-
uses: peter-evans/create-pull-request@
|
|
49
|
+
uses: peter-evans/create-pull-request@b1ddad2c994a25fbc81a28b3ec0e368bb2021c50
|
|
50
50
|
with:
|
|
51
51
|
commit-message: '[automated] Update plugin list'
|
|
52
52
|
author: 'pytest bot <pytestbot@users.noreply.github.com>'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
repos:
|
|
2
2
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
3
|
-
rev: "v0.
|
|
3
|
+
rev: "v0.2.2"
|
|
4
4
|
hooks:
|
|
5
5
|
- id: ruff
|
|
6
6
|
args: ["--fix"]
|
|
@@ -21,11 +21,6 @@ repos:
|
|
|
21
21
|
hooks:
|
|
22
22
|
- id: blacken-docs
|
|
23
23
|
additional_dependencies: [black==24.1.1]
|
|
24
|
-
- repo: https://github.com/asottile/setup-cfg-fmt
|
|
25
|
-
rev: v2.5.0
|
|
26
|
-
hooks:
|
|
27
|
-
- id: setup-cfg-fmt
|
|
28
|
-
args: ["--max-py-version=3.12", "--include-version-classifiers"]
|
|
29
24
|
- repo: https://github.com/pre-commit/pygrep-hooks
|
|
30
25
|
rev: v1.10.0
|
|
31
26
|
hooks:
|
|
@@ -39,7 +34,7 @@ repos:
|
|
|
39
34
|
additional_dependencies:
|
|
40
35
|
- iniconfig>=1.1.0
|
|
41
36
|
- attrs>=19.2.0
|
|
42
|
-
- pluggy
|
|
37
|
+
- pluggy>=1.4.0
|
|
43
38
|
- packaging
|
|
44
39
|
- tomli
|
|
45
40
|
- types-pkg_resources
|
|
@@ -47,6 +42,12 @@ repos:
|
|
|
47
42
|
# for mypy running on python>=3.11 since exceptiongroup is only a dependency
|
|
48
43
|
# on <3.11
|
|
49
44
|
- exceptiongroup>=1.0.0rc8
|
|
45
|
+
- repo: https://github.com/tox-dev/pyproject-fmt
|
|
46
|
+
rev: "1.7.0"
|
|
47
|
+
hooks:
|
|
48
|
+
- id: pyproject-fmt
|
|
49
|
+
# https://pyproject-fmt.readthedocs.io/en/latest/#calculating-max-supported-python-version
|
|
50
|
+
additional_dependencies: ["tox>=4.9"]
|
|
50
51
|
- repo: local
|
|
51
52
|
hooks:
|
|
52
53
|
- id: rst
|
|
@@ -56,6 +56,7 @@ Babak Keyvani
|
|
|
56
56
|
Barney Gale
|
|
57
57
|
Ben Brown
|
|
58
58
|
Ben Gartner
|
|
59
|
+
Ben Leith
|
|
59
60
|
Ben Webb
|
|
60
61
|
Benjamin Peterson
|
|
61
62
|
Benjamin Schubert
|
|
@@ -127,6 +128,8 @@ Edison Gustavo Muenz
|
|
|
127
128
|
Edoardo Batini
|
|
128
129
|
Edson Tadeu M. Manoel
|
|
129
130
|
Eduardo Schettino
|
|
131
|
+
Edward Haigh
|
|
132
|
+
Eero Vaher
|
|
130
133
|
Eli Boyarski
|
|
131
134
|
Elizaveta Shashkova
|
|
132
135
|
Éloi Rivard
|
|
@@ -142,6 +145,7 @@ Evgeny Seliverstov
|
|
|
142
145
|
Fabian Sturm
|
|
143
146
|
Fabien Zarifian
|
|
144
147
|
Fabio Zadrozny
|
|
148
|
+
faph
|
|
145
149
|
Felix Hofstätter
|
|
146
150
|
Felix Nieuwenhuizen
|
|
147
151
|
Feng Ma
|
|
@@ -245,6 +249,7 @@ Marc Mueller
|
|
|
245
249
|
Marc Schlaich
|
|
246
250
|
Marcelo Duarte Trevisani
|
|
247
251
|
Marcin Bachry
|
|
252
|
+
Marc Bresson
|
|
248
253
|
Marco Gorelli
|
|
249
254
|
Mark Abramowitz
|
|
250
255
|
Mark Dickinson
|
|
@@ -278,6 +283,7 @@ Mike Hoyle (hoylemd)
|
|
|
278
283
|
Mike Lundy
|
|
279
284
|
Milan Lesnek
|
|
280
285
|
Miro Hrončok
|
|
286
|
+
mrbean-bremen
|
|
281
287
|
Nathaniel Compton
|
|
282
288
|
Nathaniel Waisbrot
|
|
283
289
|
Ned Batchelder
|
|
@@ -414,6 +420,7 @@ Vivaan Verma
|
|
|
414
420
|
Vlad Dragos
|
|
415
421
|
Vlad Radziuk
|
|
416
422
|
Vladyslav Rachek
|
|
423
|
+
Volodymyr Kochetkov
|
|
417
424
|
Volodymyr Piskun
|
|
418
425
|
Wei Lin
|
|
419
426
|
Wil Cooley
|
|
@@ -1,27 +1,22 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: pytest
|
|
3
|
-
Version: 8.0
|
|
3
|
+
Version: 8.1.0
|
|
4
4
|
Summary: pytest: simple powerful testing with Python
|
|
5
|
-
|
|
6
|
-
Author: Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin and others
|
|
5
|
+
Author: Holger Krekel, Bruno Oliveira, Ronny Pfannschmidt, Floris Bruynooghe, Brianna Laugher, Florian Bruhin, Others (See AUTHORS)
|
|
7
6
|
License: MIT
|
|
8
7
|
Project-URL: Changelog, https://docs.pytest.org/en/stable/changelog.html
|
|
9
|
-
Project-URL:
|
|
8
|
+
Project-URL: Homepage, https://docs.pytest.org/en/latest/
|
|
10
9
|
Project-URL: Source, https://github.com/pytest-dev/pytest
|
|
11
10
|
Project-URL: Tracker, https://github.com/pytest-dev/pytest/issues
|
|
11
|
+
Project-URL: Twitter, https://twitter.com/pytestdotorg
|
|
12
12
|
Keywords: test,unittest
|
|
13
|
-
Platform: unix
|
|
14
|
-
Platform: linux
|
|
15
|
-
Platform: osx
|
|
16
|
-
Platform: cygwin
|
|
17
|
-
Platform: win32
|
|
18
13
|
Classifier: Development Status :: 6 - Mature
|
|
19
14
|
Classifier: Intended Audience :: Developers
|
|
20
15
|
Classifier: License :: OSI Approved :: MIT License
|
|
21
|
-
Classifier: Operating System :: MacOS
|
|
16
|
+
Classifier: Operating System :: MacOS
|
|
22
17
|
Classifier: Operating System :: Microsoft :: Windows
|
|
23
18
|
Classifier: Operating System :: POSIX
|
|
24
|
-
Classifier:
|
|
19
|
+
Classifier: Operating System :: Unix
|
|
25
20
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
26
21
|
Classifier: Programming Language :: Python :: 3.8
|
|
27
22
|
Classifier: Programming Language :: Python :: 3.9
|
|
@@ -34,18 +29,18 @@ Classifier: Topic :: Utilities
|
|
|
34
29
|
Requires-Python: >=3.8
|
|
35
30
|
Description-Content-Type: text/x-rst
|
|
36
31
|
License-File: LICENSE
|
|
37
|
-
|
|
38
|
-
Requires-Dist: packaging
|
|
39
|
-
Requires-Dist: pluggy<2.0,>=1.3.0
|
|
32
|
+
License-File: AUTHORS
|
|
40
33
|
Requires-Dist: colorama; sys_platform == "win32"
|
|
41
34
|
Requires-Dist: exceptiongroup>=1.0.0rc8; python_version < "3.11"
|
|
42
|
-
Requires-Dist:
|
|
35
|
+
Requires-Dist: iniconfig
|
|
36
|
+
Requires-Dist: packaging
|
|
37
|
+
Requires-Dist: pluggy<2.0,>=1.4
|
|
38
|
+
Requires-Dist: tomli>=1; python_version < "3.11"
|
|
43
39
|
Provides-Extra: testing
|
|
44
40
|
Requires-Dist: argcomplete; extra == "testing"
|
|
45
|
-
Requires-Dist: attrs>=19.2
|
|
41
|
+
Requires-Dist: attrs>=19.2; extra == "testing"
|
|
46
42
|
Requires-Dist: hypothesis>=3.56; extra == "testing"
|
|
47
43
|
Requires-Dist: mock; extra == "testing"
|
|
48
|
-
Requires-Dist: nose; extra == "testing"
|
|
49
44
|
Requires-Dist: pygments>=2.7.2; extra == "testing"
|
|
50
45
|
Requires-Dist: requests; extra == "testing"
|
|
51
46
|
Requires-Dist: setuptools; extra == "testing"
|
|
@@ -147,12 +142,12 @@ Features
|
|
|
147
142
|
- `Modular fixtures <https://docs.pytest.org/en/stable/explanation/fixtures.html>`_ for
|
|
148
143
|
managing small or parametrized long-lived test resources
|
|
149
144
|
|
|
150
|
-
- Can run `unittest <https://docs.pytest.org/en/stable/how-to/unittest.html>`_ (or trial)
|
|
151
|
-
|
|
145
|
+
- Can run `unittest <https://docs.pytest.org/en/stable/how-to/unittest.html>`_ (or trial)
|
|
146
|
+
test suites out of the box
|
|
152
147
|
|
|
153
148
|
- Python 3.8+ or PyPy3
|
|
154
149
|
|
|
155
|
-
- Rich plugin architecture, with over
|
|
150
|
+
- Rich plugin architecture, with over 1300+ `external plugins <https://docs.pytest.org/en/latest/reference/plugin_list.html>`_ and thriving community
|
|
156
151
|
|
|
157
152
|
|
|
158
153
|
Documentation
|
|
@@ -94,12 +94,12 @@ Features
|
|
|
94
94
|
- `Modular fixtures <https://docs.pytest.org/en/stable/explanation/fixtures.html>`_ for
|
|
95
95
|
managing small or parametrized long-lived test resources
|
|
96
96
|
|
|
97
|
-
- Can run `unittest <https://docs.pytest.org/en/stable/how-to/unittest.html>`_ (or trial)
|
|
98
|
-
|
|
97
|
+
- Can run `unittest <https://docs.pytest.org/en/stable/how-to/unittest.html>`_ (or trial)
|
|
98
|
+
test suites out of the box
|
|
99
99
|
|
|
100
100
|
- Python 3.8+ or PyPy3
|
|
101
101
|
|
|
102
|
-
- Rich plugin architecture, with over
|
|
102
|
+
- Rich plugin architecture, with over 1300+ `external plugins <https://docs.pytest.org/en/latest/reference/plugin_list.html>`_ and thriving community
|
|
103
103
|
|
|
104
104
|
|
|
105
105
|
Documentation
|
|
@@ -23,7 +23,6 @@ members of the `contributors team`_ interested in receiving funding.
|
|
|
23
23
|
|
|
24
24
|
The current list of contributors receiving funding are:
|
|
25
25
|
|
|
26
|
-
* `@asottile`_
|
|
27
26
|
* `@nicoddemus`_
|
|
28
27
|
* `@The-Compiler`_
|
|
29
28
|
|
|
@@ -55,6 +54,5 @@ funds. Just drop a line to one of the `@pytest-dev/tidelift-admins`_ or use the
|
|
|
55
54
|
.. _`@pytest-dev/tidelift-admins`: https://github.com/orgs/pytest-dev/teams/tidelift-admins/members
|
|
56
55
|
.. _`agreement`: https://tidelift.com/docs/lifting/agreement
|
|
57
56
|
|
|
58
|
-
.. _`@asottile`: https://github.com/asottile
|
|
59
57
|
.. _`@nicoddemus`: https://github.com/nicoddemus
|
|
60
58
|
.. _`@The-Compiler`: https://github.com/The-Compiler
|
|
@@ -44,7 +44,7 @@ Partner projects, sign up here! (by 22 March)
|
|
|
44
44
|
What does it mean to "adopt pytest"?
|
|
45
45
|
-----------------------------------------
|
|
46
46
|
|
|
47
|
-
There can be many different definitions of "success". Pytest can run many
|
|
47
|
+
There can be many different definitions of "success". Pytest can run many unittest_ tests by default, so using pytest as your testrunner may be possible from day 1. Job done, right?
|
|
48
48
|
|
|
49
49
|
Progressive success might look like:
|
|
50
50
|
|
|
@@ -62,7 +62,6 @@ Progressive success might look like:
|
|
|
62
62
|
|
|
63
63
|
It may be after the month is up, the partner project decides that pytest is not right for it. That's okay - hopefully the pytest team will also learn something about its weaknesses or deficiencies.
|
|
64
64
|
|
|
65
|
-
.. _nose: nose.html
|
|
66
65
|
.. _unittest: unittest.html
|
|
67
66
|
.. _assert: assert.html
|
|
68
67
|
.. _pycmd: https://bitbucket.org/hpk42/pycmd/overview
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
pytest-8.1.0
|
|
2
|
+
=======================================
|
|
3
|
+
|
|
4
|
+
The pytest team is proud to announce the 8.1.0 release!
|
|
5
|
+
|
|
6
|
+
This release contains new features, improvements, and bug fixes,
|
|
7
|
+
the full list of changes is available in the changelog:
|
|
8
|
+
|
|
9
|
+
https://docs.pytest.org/en/stable/changelog.html
|
|
10
|
+
|
|
11
|
+
For complete documentation, please visit:
|
|
12
|
+
|
|
13
|
+
https://docs.pytest.org/en/stable/
|
|
14
|
+
|
|
15
|
+
As usual, you can upgrade from PyPI via:
|
|
16
|
+
|
|
17
|
+
pip install -U pytest
|
|
18
|
+
|
|
19
|
+
Thanks to all of the contributors to this release:
|
|
20
|
+
|
|
21
|
+
* Ben Brown
|
|
22
|
+
* Ben Leith
|
|
23
|
+
* Bruno Oliveira
|
|
24
|
+
* Clément Robert
|
|
25
|
+
* Dave Hall
|
|
26
|
+
* Dương Quốc Khánh
|
|
27
|
+
* Eero Vaher
|
|
28
|
+
* Eric Larson
|
|
29
|
+
* Fabian Sturm
|
|
30
|
+
* Faisal Fawad
|
|
31
|
+
* Florian Bruhin
|
|
32
|
+
* Franck Charras
|
|
33
|
+
* Joachim B Haga
|
|
34
|
+
* John Litborn
|
|
35
|
+
* Loïc Estève
|
|
36
|
+
* Marc Bresson
|
|
37
|
+
* Patrick Lannigan
|
|
38
|
+
* Pierre Sassoulas
|
|
39
|
+
* Ran Benita
|
|
40
|
+
* Reagan Lee
|
|
41
|
+
* Ronny Pfannschmidt
|
|
42
|
+
* Russell Martin
|
|
43
|
+
* clee2000
|
|
44
|
+
* donghui
|
|
45
|
+
* faph
|
|
46
|
+
* jakkdl
|
|
47
|
+
* mrbean-bremen
|
|
48
|
+
* robotherapist
|
|
49
|
+
* whysage
|
|
50
|
+
* woutdenolf
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
Happy testing,
|
|
54
|
+
The pytest Development Team
|
|
@@ -33,7 +33,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
33
33
|
|
|
34
34
|
Values can be any object handled by the json stdlib module.
|
|
35
35
|
|
|
36
|
-
capsysbinary -- .../_pytest/capture.py:
|
|
36
|
+
capsysbinary -- .../_pytest/capture.py:1008
|
|
37
37
|
Enable bytes capturing of writes to ``sys.stdout`` and ``sys.stderr``.
|
|
38
38
|
|
|
39
39
|
The captured output is made available via ``capsysbinary.readouterr()``
|
|
@@ -50,7 +50,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
50
50
|
captured = capsysbinary.readouterr()
|
|
51
51
|
assert captured.out == b"hello\n"
|
|
52
52
|
|
|
53
|
-
capfd -- .../_pytest/capture.py:
|
|
53
|
+
capfd -- .../_pytest/capture.py:1035
|
|
54
54
|
Enable text capturing of writes to file descriptors ``1`` and ``2``.
|
|
55
55
|
|
|
56
56
|
The captured output is made available via ``capfd.readouterr()`` method
|
|
@@ -67,7 +67,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
67
67
|
captured = capfd.readouterr()
|
|
68
68
|
assert captured.out == "hello\n"
|
|
69
69
|
|
|
70
|
-
capfdbinary -- .../_pytest/capture.py:
|
|
70
|
+
capfdbinary -- .../_pytest/capture.py:1062
|
|
71
71
|
Enable bytes capturing of writes to file descriptors ``1`` and ``2``.
|
|
72
72
|
|
|
73
73
|
The captured output is made available via ``capfd.readouterr()`` method
|
|
@@ -84,7 +84,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
84
84
|
captured = capfdbinary.readouterr()
|
|
85
85
|
assert captured.out == b"hello\n"
|
|
86
86
|
|
|
87
|
-
capsys -- .../_pytest/capture.py:
|
|
87
|
+
capsys -- .../_pytest/capture.py:981
|
|
88
88
|
Enable text capturing of writes to ``sys.stdout`` and ``sys.stderr``.
|
|
89
89
|
|
|
90
90
|
The captured output is made available via ``capsys.readouterr()`` method
|
|
@@ -101,7 +101,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
101
101
|
captured = capsys.readouterr()
|
|
102
102
|
assert captured.out == "hello\n"
|
|
103
103
|
|
|
104
|
-
doctest_namespace [session scope] -- .../_pytest/doctest.py:
|
|
104
|
+
doctest_namespace [session scope] -- .../_pytest/doctest.py:737
|
|
105
105
|
Fixture that returns a :py:class:`dict` that will be injected into the
|
|
106
106
|
namespace of doctests.
|
|
107
107
|
|
|
@@ -115,7 +115,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
115
115
|
|
|
116
116
|
For more details: :ref:`doctest_namespace`.
|
|
117
117
|
|
|
118
|
-
pytestconfig [session scope] -- .../_pytest/fixtures.py:
|
|
118
|
+
pytestconfig [session scope] -- .../_pytest/fixtures.py:1346
|
|
119
119
|
Session-scoped fixture that returns the session's :class:`pytest.Config`
|
|
120
120
|
object.
|
|
121
121
|
|
|
@@ -170,18 +170,18 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
170
170
|
`pytest-xdist <https://github.com/pytest-dev/pytest-xdist>`__ plugin. See
|
|
171
171
|
:issue:`7767` for details.
|
|
172
172
|
|
|
173
|
-
tmpdir_factory [session scope] -- .../_pytest/legacypath.py:
|
|
173
|
+
tmpdir_factory [session scope] -- .../_pytest/legacypath.py:317
|
|
174
174
|
Return a :class:`pytest.TempdirFactory` instance for the test session.
|
|
175
175
|
|
|
176
|
-
tmpdir -- .../_pytest/legacypath.py:
|
|
176
|
+
tmpdir -- .../_pytest/legacypath.py:324
|
|
177
177
|
Return a temporary directory path object which is unique to each test
|
|
178
178
|
function invocation, created as a sub directory of the base temporary
|
|
179
179
|
directory.
|
|
180
180
|
|
|
181
181
|
By default, a new base temporary directory is created each test session,
|
|
182
182
|
and old bases are removed after 3 sessions, to aid in debugging. If
|
|
183
|
-
``--basetemp`` is used then it is cleared each session. See
|
|
184
|
-
temporary directory`.
|
|
183
|
+
``--basetemp`` is used then it is cleared each session. See
|
|
184
|
+
:ref:`temporary directory location and retention`.
|
|
185
185
|
|
|
186
186
|
The returned object is a `legacy_path`_ object.
|
|
187
187
|
|
|
@@ -192,7 +192,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
192
192
|
|
|
193
193
|
.. _legacy_path: https://py.readthedocs.io/en/latest/path.html
|
|
194
194
|
|
|
195
|
-
caplog -- .../_pytest/logging.py:
|
|
195
|
+
caplog -- .../_pytest/logging.py:601
|
|
196
196
|
Access and control log capturing.
|
|
197
197
|
|
|
198
198
|
Captured logs are available through the following properties/methods::
|
|
@@ -227,7 +227,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
227
227
|
To undo modifications done by the fixture in a contained scope,
|
|
228
228
|
use :meth:`context() <pytest.MonkeyPatch.context>`.
|
|
229
229
|
|
|
230
|
-
recwarn -- .../_pytest/recwarn.py:
|
|
230
|
+
recwarn -- .../_pytest/recwarn.py:31
|
|
231
231
|
Return a :class:`WarningsRecorder` instance that records all warnings emitted by test functions.
|
|
232
232
|
|
|
233
233
|
See https://docs.pytest.org/en/latest/how-to/capture-warnings.html for information
|
|
@@ -245,8 +245,8 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
|
|
245
245
|
and old bases are removed after 3 sessions, to aid in debugging.
|
|
246
246
|
This behavior can be configured with :confval:`tmp_path_retention_count` and
|
|
247
247
|
:confval:`tmp_path_retention_policy`.
|
|
248
|
-
If ``--basetemp`` is used then it is cleared each session. See
|
|
249
|
-
temporary directory`.
|
|
248
|
+
If ``--basetemp`` is used then it is cleared each session. See
|
|
249
|
+
:ref:`temporary directory location and retention`.
|
|
250
250
|
|
|
251
251
|
The returned object is a :class:`pathlib.Path` object.
|
|
252
252
|
|
|
@@ -28,6 +28,98 @@ with advance notice in the **Deprecations** section of releases.
|
|
|
28
28
|
|
|
29
29
|
.. towncrier release notes start
|
|
30
30
|
|
|
31
|
+
pytest 8.1.0 (2024-03-03)
|
|
32
|
+
=========================
|
|
33
|
+
|
|
34
|
+
Features
|
|
35
|
+
--------
|
|
36
|
+
|
|
37
|
+
- `#11475 <https://github.com/pytest-dev/pytest/issues/11475>`_: Added the new :confval:`consider_namespace_packages` configuration option, defaulting to ``False``.
|
|
38
|
+
|
|
39
|
+
If set to ``True``, pytest will attempt to identify modules that are part of `namespace packages <https://packaging.python.org/en/latest/guides/packaging-namespace-packages>`__ when importing modules.
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
- `#11653 <https://github.com/pytest-dev/pytest/issues/11653>`_: Added the new :confval:`verbosity_test_cases` configuration option for fine-grained control of test execution verbosity.
|
|
43
|
+
See :ref:`Fine-grained verbosity <pytest.fine_grained_verbosity>` for more details.
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
Improvements
|
|
48
|
+
------------
|
|
49
|
+
|
|
50
|
+
- `#10865 <https://github.com/pytest-dev/pytest/issues/10865>`_: :func:`pytest.warns` now validates that :func:`warnings.warn` was called with a `str` or a `Warning`.
|
|
51
|
+
Currently in Python it is possible to use other types, however this causes an exception when :func:`warnings.filterwarnings` is used to filter those warnings (see `CPython #103577 <https://github.com/python/cpython/issues/103577>`__ for a discussion).
|
|
52
|
+
While this can be considered a bug in CPython, we decided to put guards in pytest as the error message produced without this check in place is confusing.
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
- `#11311 <https://github.com/pytest-dev/pytest/issues/11311>`_: When using ``--override-ini`` for paths in invocations without a configuration file defined, the current working directory is used
|
|
56
|
+
as the relative directory.
|
|
57
|
+
|
|
58
|
+
Previoulsy this would raise an :class:`AssertionError`.
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
- `#11475 <https://github.com/pytest-dev/pytest/issues/11475>`_: :ref:`--import-mode=importlib <import-mode-importlib>` now tries to import modules using the standard import mechanism (but still without changing :py:data:`sys.path`), falling back to importing modules directly only if that fails.
|
|
62
|
+
|
|
63
|
+
This means that installed packages will be imported under their canonical name if possible first, for example ``app.core.models``, instead of having the module name always be derived from their path (for example ``.env310.lib.site_packages.app.core.models``).
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
- `#11801 <https://github.com/pytest-dev/pytest/issues/11801>`_: Added the :func:`iter_parents() <_pytest.nodes.Node.iter_parents>` helper method on nodes.
|
|
67
|
+
It is similar to :func:`listchain <_pytest.nodes.Node.listchain>`, but goes from bottom to top, and returns an iterator, not a list.
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
- `#11850 <https://github.com/pytest-dev/pytest/issues/11850>`_: Added support for :data:`sys.last_exc` for post-mortem debugging on Python>=3.12.
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
- `#11962 <https://github.com/pytest-dev/pytest/issues/11962>`_: In case no other suitable candidates for configuration file are found, a ``pyproject.toml`` (even without a ``[tool.pytest.ini_options]`` table) will be considered as the configuration file and define the ``rootdir``.
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
- `#11978 <https://github.com/pytest-dev/pytest/issues/11978>`_: Add ``--log-file-mode`` option to the logging plugin, enabling appending to log-files. This option accepts either ``"w"`` or ``"a"`` and defaults to ``"w"``.
|
|
77
|
+
|
|
78
|
+
Previously, the mode was hard-coded to be ``"w"`` which truncates the file before logging.
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
- `#12047 <https://github.com/pytest-dev/pytest/issues/12047>`_: When multiple finalizers of a fixture raise an exception, now all exceptions are reported as an exception group.
|
|
82
|
+
Previously, only the first exception was reported.
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
|
|
86
|
+
Bug Fixes
|
|
87
|
+
---------
|
|
88
|
+
|
|
89
|
+
- `#11904 <https://github.com/pytest-dev/pytest/issues/11904>`_: Fixed a regression in pytest 8.0.0 that would cause test collection to fail due to permission errors when using ``--pyargs``.
|
|
90
|
+
|
|
91
|
+
This change improves the collection tree for tests specified using ``--pyargs``, see :pull:`12043` for a comparison with pytest 8.0 and <8.
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
- `#12011 <https://github.com/pytest-dev/pytest/issues/12011>`_: Fixed a regression in 8.0.1 whereby ``setup_module`` xunit-style fixtures are not executed when ``--doctest-modules`` is passed.
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
- `#12014 <https://github.com/pytest-dev/pytest/issues/12014>`_: Fix the ``stacklevel`` used when warning about marks used on fixtures.
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
- `#12039 <https://github.com/pytest-dev/pytest/issues/12039>`_: Fixed a regression in ``8.0.2`` where tests created using :fixture:`tmp_path` have been collected multiple times in CI under Windows.
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
Improved Documentation
|
|
105
|
+
----------------------
|
|
106
|
+
|
|
107
|
+
- `#11790 <https://github.com/pytest-dev/pytest/issues/11790>`_: Documented the retention of temporary directories created using the ``tmp_path`` fixture in more detail.
|
|
108
|
+
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
Trivial/Internal Changes
|
|
112
|
+
------------------------
|
|
113
|
+
|
|
114
|
+
- `#11785 <https://github.com/pytest-dev/pytest/issues/11785>`_: Some changes were made to private functions which may affect plugins which access them:
|
|
115
|
+
|
|
116
|
+
- ``FixtureManager._getautousenames()`` now takes a ``Node`` itself instead of the nodeid.
|
|
117
|
+
- ``FixtureManager.getfixturedefs()`` now takes the ``Node`` itself instead of the nodeid.
|
|
118
|
+
- The ``_pytest.nodes.iterparentnodeids()`` function is removed without replacement.
|
|
119
|
+
Prefer to traverse the node hierarchy itself instead.
|
|
120
|
+
If you really need to, copy the function from the previous pytest release.
|
|
121
|
+
|
|
122
|
+
|
|
31
123
|
pytest 8.0.2 (2024-02-24)
|
|
32
124
|
=========================
|
|
33
125
|
|
|
@@ -315,7 +407,7 @@ These are breaking changes where deprecation was not possible.
|
|
|
315
407
|
Deprecations
|
|
316
408
|
------------
|
|
317
409
|
|
|
318
|
-
- `#10465 <https://github.com/pytest-dev/pytest/issues/10465>`_: Test functions returning a value other than ``None`` will now issue a :class:`pytest.PytestWarning` instead of
|
|
410
|
+
- `#10465 <https://github.com/pytest-dev/pytest/issues/10465>`_: Test functions returning a value other than ``None`` will now issue a :class:`pytest.PytestWarning` instead of ``pytest.PytestRemovedIn8Warning``, meaning this will stay a warning instead of becoming an error in the future.
|
|
319
411
|
|
|
320
412
|
|
|
321
413
|
- `#3664 <https://github.com/pytest-dev/pytest/issues/3664>`_: Applying a mark to a fixture function now issues a warning: marks in fixtures never had any effect, but it is a common user error to apply a mark to a fixture (for example ``usefixtures``) and expect it to work.
|
|
@@ -1345,7 +1437,7 @@ Deprecations
|
|
|
1345
1437
|
See :ref:`the deprecation note <diamond-inheritance-deprecated>` for full details.
|
|
1346
1438
|
|
|
1347
1439
|
|
|
1348
|
-
- `#8592 <https://github.com/pytest-dev/pytest/issues/8592>`_:
|
|
1440
|
+
- `#8592 <https://github.com/pytest-dev/pytest/issues/8592>`_: ``pytest_cmdline_preparse`` has been officially deprecated. It will be removed in a future release. Use :hook:`pytest_load_initial_conftests` instead.
|
|
1349
1441
|
|
|
1350
1442
|
See :ref:`the deprecation note <cmdline-preparse-deprecated>` for full details.
|
|
1351
1443
|
|
|
@@ -200,7 +200,6 @@ nitpick_ignore = [
|
|
|
200
200
|
("py:class", "_tracing.TagTracerSub"),
|
|
201
201
|
("py:class", "warnings.WarningMessage"),
|
|
202
202
|
# Undocumented type aliases
|
|
203
|
-
("py:class", "LEGACY_PATH"),
|
|
204
203
|
("py:class", "_PluggyPlugin"),
|
|
205
204
|
# TypeVars
|
|
206
205
|
("py:class", "_pytest._code.code.E"),
|