Release history¶
pytest-trio 0.8.0 (2022-11-01)¶
Features¶
If a test raises an
ExceptionGroup(or nestedExceptionGroups) with only a single ‘leaf’ exception frompytest.xfail()orpytest.skip(), we now unwrap it to have the desired effect on Pytest.ExceptionGroups with two or more leaf exceptions, even of the same type, are not changed and will be treated as ordinary test failures.See pytest-dev/pytest#9680 for design discussion. This feature is particularly useful if you’ve enabled the new strict_exception_groups=True option. (#104)
Bugfixes¶
Fix an issue where if two fixtures are being set up concurrently, and one crashes and the other hangs, then the test as a whole would hang, rather than being cancelled and unwound after the crash. (#120)
Misc¶
Trio 0.22.0 deprecated
MultiErrorin favor of the standard-library (or backported)ExceptionGrouptype;pytest-trionow usesExceptionGroupexclusively and therefore requires Trio 0.22.0 or later. (#128)Dropped support for end-of-life Python 3.6, and the
async_generatorlibrary necessary to support it, and started testing on Python 3.10 and 3.11. (#129)
pytest-trio 0.7.0 (2020-10-15)¶
Features¶
Support added for alternative Trio run functions via the
trio_runconfiguration variable and@pytest.mark.trio(run=...). Presently supports Trio and QTrio. (#105)
Deprecations and Removals¶
Python 3.5 support removed. (#96)
pytest-trio 0.6.0 (2020-05-20)¶
Features¶
Incompatible change: if you use
yieldinside a Trio fixture, and theyieldgets cancelled (for example, due to a background task crashing), then theyieldwill now raisetrio.Cancelled. See An important note about yield fixtures for details. Also, in this same case, pytest-trio will now reliably mark the test as failed, even if the fixture doesn’t go on to raise an exception. (#75)Updated for compatibility with Trio v0.15.0.
pytest-trio 0.5.2 (2019-02-13)¶
Features¶
pytest-trio now makes the Trio scheduler deterministic while running inside a Hypothesis test. Hopefully you won’t see any change, but if you had scheduler-dependent bugs Hypothesis will be more effective now. (#73)
Updated for compatibility with trio v0.11.0.
pytest-trio 0.5.1 (2018-09-28)¶
Bugfixes¶
The pytest 3.8.1 release broke pytest-trio’s handling of trio tests defined as class methods. We fixed it again. (#64)
pytest-trio 0.5.0 (2018-08-26)¶
This is a major release, including a rewrite of large portions of the internals. We believe it should be backwards compatible with existing projects. Major new features include:
“trio mode”: no more writing
@pytest.mark.trioeverywhere!it’s now safe to use nurseries inside fixtures (#55)
new
@trio_fixturedecorator to explicitly mark a fixture as a trio fixturea number of easy-to-make mistakes are now caught and raise informative errors
the
nurseryfixture is now 87% more magical
For more details, see the manual. Oh right, speaking of which: we finally have a manual! You should read it.
pytest-trio 0.4.2 (2018-06-29)¶
Features¶
pytest-trio now integrates with Hypothesis to support
@givenon async tests using Trio. (#42)
pytest-trio 0.4.1 (2018-04-14)¶
No significant changes.
pytest-trio 0.4.0 (2018-04-14)¶
Fix compatibility with trio 0.4.0 (#25)
pytest-trio 0.3.0 (2018-01-03)¶
Features¶
Add
nurseryfixture and improve teardown handling for yield fixture (#25)
pytest-trio 0.2.0 (2017-12-15)¶
Heavy improvements, add async yield fixture, fix bugs, add tests etc. (#17)
Deprecations and Removals¶
Remove unused_tcp_port{,_factory} fixtures (#15)
pytest-trio 0.1.1 (2017-12-08)¶
Disable intersphinx for trio (cause crash in CI for the moment due to 404 in readthedoc).
pytest-trio 0.1.0 (2017-12-08)¶
Initial release.