Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion changelog/14220.bugfix.rst

This file was deleted.

1 change: 0 additions & 1 deletion changelog/14591.bugfix.rst

This file was deleted.

1 change: 0 additions & 1 deletion changelog/14606.bugfix.rst

This file was deleted.

2 changes: 0 additions & 2 deletions changelog/14608.bugfix.rst

This file was deleted.

1 change: 1 addition & 0 deletions doc/en/announce/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ Release announcements
:maxdepth: 2


release-9.1.1
release-9.1.0
release-9.0.3
release-9.0.2
Expand Down
17 changes: 17 additions & 0 deletions doc/en/announce/release-9.1.1.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
pytest-9.1.1
=======================================

pytest 9.1.1 has just been released to PyPI.

This is a bug-fix release, being a drop-in replacement.

The full changelog is available at https://docs.pytest.org/en/stable/changelog.html.

Thanks to all of the contributors to this release:

* Bruno Oliveira
* Ran Benita


Happy testing,
The pytest Development Team
2 changes: 1 addition & 1 deletion doc/en/builtin.rst
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ For information about fixtures, see :ref:`fixtures`. To see a complete list of a
For more details: :ref:`doctest_namespace`.
pytestconfig [session scope] -- .../_pytest/fixtures.py:1563
pytestconfig [session scope] -- .../_pytest/fixtures.py:1564
Session-scoped fixture that returns the session's :class:`pytest.Config`
object.
Expand Down
19 changes: 19 additions & 0 deletions doc/en/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,25 @@ with advance notice in the **Deprecations** section of releases.

.. towncrier release notes start

pytest 9.1.1 (2026-06-19)
=========================

Bug fixes
---------

- `#14220 <https://github.com/pytest-dev/pytest/issues/14220>`_: Fixed a logic bug in :class:`pytest.RaisesGroup` which would might cause it to display incorrect "It matches `FooError()` which was paired with `BarError`" messages.


- `#14591 <https://github.com/pytest-dev/pytest/issues/14591>`_: Fixed a regression in pytest 9.1.0 which caused overriding a parametrized fixture with an indirect `@pytest.mark.parametrize` to fail with "duplicate parametrization of '<fixture name>'".


- `#14606 <https://github.com/pytest-dev/pytest/issues/14606>`_: Fixed ``list-item`` typing errors from mypy in :ref:`@pytest.mark.parametrize <pytest.mark.parametrize ref>` ``argvalues`` parameter.


- `#14608 <https://github.com/pytest-dev/pytest/issues/14608>`_: Fixed a regression in pytest 9.1.0 where ``conftest.py`` files located in ``<invocation dir>/test*`` were no longer loaded as initial conftests when invoked without arguments.
This could cause certain hooks (like :hook:`pytest_addoption`) in these files to not fire.


pytest 9.1.0 (2026-06-13)
=========================

Expand Down
6 changes: 3 additions & 3 deletions doc/en/example/parametrize.rst
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ objects, they are still using the default pytest representation:
rootdir: /home/sweet/project
collected 8 items

<Dir parametrize.rst-214>
<Dir parametrize.rst-215>
<Module test_time.py>
<Function test_timedistance_v0[a0-b0-expected0]>
<Function test_timedistance_v0[a1-b1-expected1]>
Expand Down Expand Up @@ -239,7 +239,7 @@ If you just collect tests you'll also nicely see 'advanced' and 'basic' as varia
rootdir: /home/sweet/project
collected 4 items

<Dir parametrize.rst-214>
<Dir parametrize.rst-215>
<Module test_scenarios.py>
<Class TestSampleWithScenarios>
<Function test_demo1[basic]>
Expand Down Expand Up @@ -318,7 +318,7 @@ Let's first see how it looks like at collection time:
rootdir: /home/sweet/project
collected 2 items

<Dir parametrize.rst-214>
<Dir parametrize.rst-215>
<Module test_backends.py>
<Function test_db_initialized[d1]>
<Function test_db_initialized[d2]>
Expand Down
4 changes: 2 additions & 2 deletions doc/en/example/pythoncollection.rst
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ The test collection would look like this:
configfile: pytest.toml
collected 2 items
<Dir pythoncollection.rst-215>
<Dir pythoncollection.rst-216>
<Module check_myapp.py>
<Class CheckMyApp>
<Function simple_check>
Expand Down Expand Up @@ -205,7 +205,7 @@ You can always peek at the collection tree without running tests like this:
configfile: pytest.toml
collected 3 items
<Dir pythoncollection.rst-215>
<Dir pythoncollection.rst-216>
<Dir CWD>
<Module pythoncollection.py>
<Function test_function>
Expand Down
2 changes: 1 addition & 1 deletion doc/en/example/simple.rst
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ Now we'll get feedback on a bad argument:
$ pytest -q --cmdopt=type3
ERROR: usage: pytest [options] [file_or_dir] [file_or_dir] [...]
pytest: error: argument --cmdopt: invalid choice: 'type3' (choose from type1, type2)
pytest: error: argument --cmdopt: invalid choice: 'type3' (choose from 'type1', 'type2')
inifile: None
rootdir: /home/sweet/project
Expand Down
2 changes: 1 addition & 1 deletion doc/en/getting-started.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Install ``pytest``
.. code-block:: bash
$ pytest --version
pytest 9.1.0
pytest 9.1.1
.. _`simpletest`:

Expand Down
2 changes: 1 addition & 1 deletion doc/en/how-to/fixtures.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1425,7 +1425,7 @@ Running the above tests results in the following test IDs being used:
rootdir: /home/sweet/project
collected 12 items
<Dir fixtures.rst-235>
<Dir fixtures.rst-236>
<Module test_anothersmtp.py>
<Function test_showhelo[smtp.gmail.com]>
<Function test_showhelo[mail.python.org]>
Expand Down
Loading