Merge pull request #7556 from nicoddemus/cherry-pick-release
Merge pull request #7550 from pytest-dev/release-6.0.0
This commit is contained in:
commit
df09a31646
|
@ -6,6 +6,7 @@ Release announcements
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
|
|
||||||
|
|
||||||
|
release-6.0.0
|
||||||
release-6.0.0rc1
|
release-6.0.0rc1
|
||||||
release-5.4.3
|
release-5.4.3
|
||||||
release-5.4.2
|
release-5.4.2
|
||||||
|
|
|
@ -0,0 +1,40 @@
|
||||||
|
pytest-6.0.0
|
||||||
|
=======================================
|
||||||
|
|
||||||
|
The pytest team is proud to announce the 6.0.0 release!
|
||||||
|
|
||||||
|
pytest is a mature Python testing tool with more than 2000 tests
|
||||||
|
against itself, passing on many different interpreters and platforms.
|
||||||
|
|
||||||
|
This release contains a number of bug fixes and improvements, so users are encouraged
|
||||||
|
to take a look at the CHANGELOG:
|
||||||
|
|
||||||
|
https://docs.pytest.org/en/latest/changelog.html
|
||||||
|
|
||||||
|
For complete documentation, please visit:
|
||||||
|
|
||||||
|
https://docs.pytest.org/en/latest/
|
||||||
|
|
||||||
|
As usual, you can upgrade from PyPI via:
|
||||||
|
|
||||||
|
pip install -U pytest
|
||||||
|
|
||||||
|
Thanks to all who contributed to this release, among them:
|
||||||
|
|
||||||
|
* Anthony Sottile
|
||||||
|
* Arvin Firouzi
|
||||||
|
* Bruno Oliveira
|
||||||
|
* Debi Mishra
|
||||||
|
* Garrett Thomas
|
||||||
|
* Hugo van Kemenade
|
||||||
|
* Kelton Bassingthwaite
|
||||||
|
* Kostis Anagnostopoulos
|
||||||
|
* Lewis Cowles
|
||||||
|
* Miro Hrončok
|
||||||
|
* Ran Benita
|
||||||
|
* Simon K
|
||||||
|
* Zac Hatfield-Dodds
|
||||||
|
|
||||||
|
|
||||||
|
Happy testing,
|
||||||
|
The pytest Development Team
|
|
@ -69,11 +69,13 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
||||||
...
|
...
|
||||||
|
|
||||||
record_property
|
record_property
|
||||||
Add an extra properties the calling test.
|
Add extra properties to the calling test.
|
||||||
|
|
||||||
User properties become part of the test report and are available to the
|
User properties become part of the test report and are available to the
|
||||||
configured reporters, like JUnit XML.
|
configured reporters, like JUnit XML.
|
||||||
The fixture is callable with ``(name, value)``, with value being automatically
|
|
||||||
xml-encoded.
|
The fixture is callable with ``name, value``. The value is automatically
|
||||||
|
XML-encoded.
|
||||||
|
|
||||||
Example::
|
Example::
|
||||||
|
|
||||||
|
@ -82,8 +84,9 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
|
||||||
|
|
||||||
record_xml_attribute
|
record_xml_attribute
|
||||||
Add extra xml attributes to the tag for the calling test.
|
Add extra xml attributes to the tag for the calling test.
|
||||||
The fixture is callable with ``(name, value)``, with value being
|
|
||||||
automatically xml-encoded
|
The fixture is callable with ``name, value``. The value is
|
||||||
|
automatically XML-encoded.
|
||||||
|
|
||||||
record_testsuite_property [session scope]
|
record_testsuite_property [session scope]
|
||||||
Records a new ``<property>`` tag as child of the root ``<testsuite>``. This is suitable to
|
Records a new ``<property>`` tag as child of the root ``<testsuite>``. This is suitable to
|
||||||
|
|
|
@ -28,6 +28,93 @@ with advance notice in the **Deprecations** section of releases.
|
||||||
|
|
||||||
.. towncrier release notes start
|
.. towncrier release notes start
|
||||||
|
|
||||||
|
pytest 6.0.0 (2020-07-28)
|
||||||
|
=========================
|
||||||
|
|
||||||
|
(**Please see the full set of changes for this release also in the 6.0.0rc1 notes below**)
|
||||||
|
|
||||||
|
Breaking Changes
|
||||||
|
----------------
|
||||||
|
|
||||||
|
- `#5584 <https://github.com/pytest-dev/pytest/issues/5584>`_: **PytestDeprecationWarning are now errors by default.**
|
||||||
|
|
||||||
|
Following our plan to remove deprecated features with as little disruption as
|
||||||
|
possible, all warnings of type ``PytestDeprecationWarning`` now generate errors
|
||||||
|
instead of warning messages.
|
||||||
|
|
||||||
|
**The affected features will be effectively removed in pytest 6.1**, so please consult the
|
||||||
|
`Deprecations and Removals <https://docs.pytest.org/en/latest/deprecations.html>`__
|
||||||
|
section in the docs for directions on how to update existing code.
|
||||||
|
|
||||||
|
In the pytest ``6.0.X`` series, it is possible to change the errors back into warnings as a
|
||||||
|
stopgap measure by adding this to your ``pytest.ini`` file:
|
||||||
|
|
||||||
|
.. code-block:: ini
|
||||||
|
|
||||||
|
[pytest]
|
||||||
|
filterwarnings =
|
||||||
|
ignore::pytest.PytestDeprecationWarning
|
||||||
|
|
||||||
|
But this will stop working when pytest ``6.1`` is released.
|
||||||
|
|
||||||
|
**If you have concerns** about the removal of a specific feature, please add a
|
||||||
|
comment to `#5584 <https://github.com/pytest-dev/pytest/issues/5584>`__.
|
||||||
|
|
||||||
|
|
||||||
|
- `#7472 <https://github.com/pytest-dev/pytest/issues/7472>`_: The ``exec_()`` and ``is_true()`` methods of ``_pytest._code.Frame`` have been removed.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Features
|
||||||
|
--------
|
||||||
|
|
||||||
|
- `#7464 <https://github.com/pytest-dev/pytest/issues/7464>`_: Added support for :envvar:`NO_COLOR` and :envvar:`FORCE_COLOR` environment variables to control colored output.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Improvements
|
||||||
|
------------
|
||||||
|
|
||||||
|
- `#7467 <https://github.com/pytest-dev/pytest/issues/7467>`_: ``--log-file`` CLI option and ``log_file`` ini marker now create subdirectories if needed.
|
||||||
|
|
||||||
|
|
||||||
|
- `#7489 <https://github.com/pytest-dev/pytest/issues/7489>`_: The :func:`pytest.raises` function has a clearer error message when ``match`` equals the obtained string but is not a regex match. In this case it is suggested to escape the regex.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Bug Fixes
|
||||||
|
---------
|
||||||
|
|
||||||
|
- `#7392 <https://github.com/pytest-dev/pytest/issues/7392>`_: Fix the reported location of tests skipped with ``@pytest.mark.skip`` when ``--runxfail`` is used.
|
||||||
|
|
||||||
|
|
||||||
|
- `#7491 <https://github.com/pytest-dev/pytest/issues/7491>`_: :fixture:`tmpdir` and :fixture:`tmp_path` no longer raise an error if the lock to check for
|
||||||
|
stale temporary directories is not accessible.
|
||||||
|
|
||||||
|
|
||||||
|
- `#7517 <https://github.com/pytest-dev/pytest/issues/7517>`_: Preserve line endings when captured via ``capfd``.
|
||||||
|
|
||||||
|
|
||||||
|
- `#7534 <https://github.com/pytest-dev/pytest/issues/7534>`_: Restored the previous formatting of ``TracebackEntry.__str__`` which was changed by accident.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Improved Documentation
|
||||||
|
----------------------
|
||||||
|
|
||||||
|
- `#7422 <https://github.com/pytest-dev/pytest/issues/7422>`_: Clarified when the ``usefixtures`` mark can apply fixtures to test.
|
||||||
|
|
||||||
|
|
||||||
|
- `#7441 <https://github.com/pytest-dev/pytest/issues/7441>`_: Add a note about ``-q`` option used in getting started guide.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Trivial/Internal Changes
|
||||||
|
------------------------
|
||||||
|
|
||||||
|
- `#7389 <https://github.com/pytest-dev/pytest/issues/7389>`_: Fixture scope ``package`` is no longer considered experimental.
|
||||||
|
|
||||||
|
|
||||||
pytest 6.0.0rc1 (2020-07-08)
|
pytest 6.0.0rc1 (2020-07-08)
|
||||||
============================
|
============================
|
||||||
|
|
||||||
|
|
|
@ -508,10 +508,10 @@ Running it results in some skips if we don't have all the python interpreters in
|
||||||
.. code-block:: pytest
|
.. code-block:: pytest
|
||||||
|
|
||||||
. $ pytest -rs -q multipython.py
|
. $ pytest -rs -q multipython.py
|
||||||
ssssssssssssssssssssssss... [100%]
|
ssssssssssss...ssssssssssss [100%]
|
||||||
========================= short test summary info ==========================
|
========================= short test summary info ==========================
|
||||||
SKIPPED [12] multipython.py:29: 'python3.5' not found
|
SKIPPED [12] multipython.py:29: 'python3.5' not found
|
||||||
SKIPPED [12] multipython.py:29: 'python3.6' not found
|
SKIPPED [12] multipython.py:29: 'python3.7' not found
|
||||||
3 passed, 24 skipped in 0.12s
|
3 passed, 24 skipped in 0.12s
|
||||||
|
|
||||||
Indirect parametrization of optional implementations/imports
|
Indirect parametrization of optional implementations/imports
|
||||||
|
|
|
@ -28,7 +28,7 @@ Install ``pytest``
|
||||||
.. code-block:: bash
|
.. code-block:: bash
|
||||||
|
|
||||||
$ pytest --version
|
$ pytest --version
|
||||||
pytest 6.0.0rc1
|
pytest 6.0.0
|
||||||
|
|
||||||
.. _`simpletest`:
|
.. _`simpletest`:
|
||||||
|
|
||||||
|
|
|
@ -442,13 +442,8 @@ additionally it is possible to copy examples for an example folder before runnin
|
||||||
$REGENDOC_TMPDIR/test_example.py:4: PytestExperimentalApiWarning: testdir.copy_example is an experimental api that may change over time
|
$REGENDOC_TMPDIR/test_example.py:4: PytestExperimentalApiWarning: testdir.copy_example is an experimental api that may change over time
|
||||||
testdir.copy_example("test_example.py")
|
testdir.copy_example("test_example.py")
|
||||||
|
|
||||||
test_example.py::test_plugin
|
|
||||||
$PYTHON_PREFIX/lib/python3.7/site-packages/_pytest/compat.py:340: PytestDeprecationWarning: The TerminalReporter.writer attribute is deprecated, use TerminalReporter._tw instead at your own risk.
|
|
||||||
See https://docs.pytest.org/en/stable/deprecations.html#terminalreporter-writer for more information.
|
|
||||||
return getattr(object, name, default)
|
|
||||||
|
|
||||||
-- Docs: https://docs.pytest.org/en/stable/warnings.html
|
-- Docs: https://docs.pytest.org/en/stable/warnings.html
|
||||||
====================== 2 passed, 2 warnings in 0.12s =======================
|
======================= 2 passed, 1 warning in 0.12s =======================
|
||||||
|
|
||||||
For more information about the result object that ``runpytest()`` returns, and
|
For more information about the result object that ``runpytest()`` returns, and
|
||||||
the methods that it provides please check out the :py:class:`RunResult
|
the methods that it provides please check out the :py:class:`RunResult
|
||||||
|
|
Loading…
Reference in New Issue