chore(deps): update dependency pytest to v7.2.0 #814
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
==7.1.3
->==7.2.0
Release Notes
pytest-dev/pytest
v7.2.0
Compare Source
pytest 7.2.0 (2022-10-23)
Deprecations
#10012: Update
pytest.PytestUnhandledCoroutineWarning
{.interpreted-text role="class"} to a deprecation; it will raise an error in pytest 8.#10396: pytest no longer depends on the
py
library.pytest
provides a vendored copy ofpy.error
andpy.path
modules but will use thepy
library if it is installed. If you need otherpy.*
modules, continue to install the deprecatedpy
library separately, otherwise it can usually be removed as a dependency.#4562: Deprecate configuring hook specs/impls using attributes/marks.
Instead use :py
pytest.hookimpl
{.interpreted-text role="func"} and :pypytest.hookspec
{.interpreted-text role="func"}.For more details, see the
docs <legacy-path-hooks-deprecated>
{.interpreted-text role="ref"}.#9886: The functionality for running tests written for
nose
has been officially deprecated.This includes:
setup
andteardown
functions and methods: this might catch users by surprise, assetup()
andteardown()
are not pytest idioms, but part of thenose
support.For more details, consult the
deprecation docs <nose-deprecation>
{.interpreted-text role="ref"}.Features
testpaths
.Improvements
#10218:
@pytest.mark.parametrize()
(and similar functions) now accepts anySequence[str]
for the argument names,instead of just
list[str]
andtuple[str, ...]
.(Note that
str
, which is itself aSequence[str]
, is still treated as acomma-delimited name list, as before).
#10381: The
--no-showlocals
flag has been added. This can be passed directly to tests to override--showlocals
declared throughaddopts
.#3426: Assertion failures with strings in NFC and NFD forms that normalize to the same string now have a dedicated error message detailing the issue, and their utf-8 representation is expresed instead.
#7337: A warning is now emitted if a test function returns something other than [None]{.title-ref}. This prevents a common mistake among beginners that expect that returning a [bool]{.title-ref} (for example [return foo(a, b) == result]{.title-ref}) would cause a test to pass or fail, instead of using [assert]{.title-ref}.
#8508: Introduce multiline display for warning matching via :py
pytest.warns
{.interpreted-text role="func"} andenhance match comparison for :py
_pytest._code.ExceptionInfo.match
{.interpreted-text role="func"} as returned by :pypytest.raises
{.interpreted-text role="func"}.#8646: Improve :py
pytest.raises
{.interpreted-text role="func"}. Previously passing an empty tuple would give a confusingerror. We now raise immediately with a more helpful message.
#9741: On Python 3.11, use the standard library's
tomllib
{.interpreted-text role="mod"} to parse TOML.tomli
{.interpreted-text role="mod"}` is no longer a dependency on Python 3.11.#9742: Display assertion message without escaped newline characters with
-vv
.#9823: Improved error message that is shown when no collector is found for a given file.
#9873: Some coloring has been added to the short test summary.
#9883: Normalize the help description of all command-line options.
#9920: Display full crash messages in
short test summary info
, when runng in a CI environment.#9987: Added support for hidden configuration file by allowing
.pytest.ini
as an alternative topytest.ini
.Bug Fixes
#10150:
sys.stdin
{.interpreted-text role="data"} now contains all expected methods of a file-like object when capture is enabled.#10382: Do not break into pdb when
raise unittest.SkipTest()
appears top-level in a file.#7792: Marks are now inherited according to the full MRO in test classes. Previously, if a test class inherited from two or more classes, only marks from the first super-class would apply.
When inheriting marks from super-classes, marks from the sub-classes are now ordered before marks from the super-classes, in MRO order. Previously it was the reverse.
When inheriting marks from super-classes, the [pytestmark]{.title-ref} attribute of the sub-class now only contains the marks directly applied to it. Previously, it also contained marks from its super-classes. Please note that this attribute should not normally be accessed directly; use
pytest.Node.iter_markers
{.interpreted-text role="func"} instead.#9159: Showing inner exceptions by forcing native display in
ExceptionGroups
even when using display options other than--tb=native
. A temporary step before full implementation of pytest-native display for inner exceptions inExceptionGroups
.#9877: Ensure
caplog.get_records(when)
returns current/correct data after invokingcaplog.clear()
.Improved Documentation
pyproject.toml
instead ofsetup.py
.pytest.warns
{.interpreted-text role="func"} affectsDeprecationWarning
{.interpreted-text role="class"}.Trivial/Internal Changes
~pytest.PytestReturnNotNoneWarning
{.interpreted-text role="class"} is now a subclass of~pytest.PytestRemovedIn8Warning
{.interpreted-text role="class"}: the plan is to make returning non-None
from tests an error in the future._pytest.doctest.DoctestItem
exportpytest.DoctestItem
fortype check and runtime purposes. Made [_pytest.doctest]{.title-ref} use internal APIs
to avoid circular imports.
_pytest.compat
re-exportimportlib_metadata
in the eyes of type checkers.EncodingWarning
) incacheprovider
torn down.
Add an additional sentence to the docstring explaining when it's not a good
idea to call getfixturevalue.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.