Skip to content

Releases: pytest-dev/pytest-asyncio

pytest-asyncio 0.23.3

01 Jan 14:04
v0.23.3
Compare
Choose a tag to compare

0.23.3 (2024-01-01)

  • Fixes a bug that caused event loops to be closed prematurely when using async generator fixtures with class scope or wider in a function-scoped test #706
  • Fixes various bugs that caused an internal pytest error during test collection #711 #713 #719

Known issues

As of v0.23, pytest-asyncio attaches an asyncio event loop to each item of the test suite (i.e. session, packages, modules, classes, functions) and allows tests to be run in those loops when marked accordingly. Pytest-asyncio currently assumes that async fixture scope is correlated with the new event loop scope. This prevents fixtures from being evaluated independently from the event loop scope and breaks some existing test suites (see #706). For example, a test suite may require all fixtures and tests to run in the same event loop, but have async fixtures that are set up and torn down for each module. If you're affected by this issue, please continue using the v0.21 release, until it is resolved.

pytest-asyncio 0.23.3a0

09 Dec 13:18
v0.23.3a0
Compare
Choose a tag to compare
Pre-release

0.23.3 (UNRELEASED)

  • Fixes a bug that caused event loops to be closed prematurely when using async generator fixtures with class scope or wider in a function-scoped test #708
  • Fixes a bug that caused an internal pytest error when using unittest.SkipTest in a module #711

pytest-asyncio 0.23.2

04 Dec 07:20
v0.23.2
Compare
Choose a tag to compare

0.23.2 (2023-12-04)

  • Fixes a bug that caused an internal pytest error when collecting .txt files #703

pytest-asyncio 0.23.1

03 Dec 19:26
v0.23.1
Compare
Choose a tag to compare

0.23.1 (2023-12-03)

  • Fixes a bug that caused an internal pytest error when using module-level skips #701

pytest-asyncio 0.23.0

03 Dec 09:45
v0.23.0
Compare
Choose a tag to compare

This release is backwards-compatible with v0.21. Changes are
non-breaking, unless you upgrade from v0.22.

  • BREAKING: The asyncio_event_loop mark has been removed. Event
    loops with class, module, package, and session scopes can be
    requested via the scope keyword argument to the asyncio
    mark.
  • Introduces the event_loop_policy fixture which allows testing with
    non-default or multiple event loops #662
  • Introduces pytest_asyncio.is_async_test which returns whether a
    test item is managed by pytest-asyncio #376
  • Removes and pytest-trio, mypy, and flaky from the test
    dependencies #620, #674, #678

pytest-asyncio 0.23.0b0

27 Nov 06:49
v0.23.0b0
Compare
Choose a tag to compare
Pre-release

0.23.0 (UNRELEASED)

This release is backwards-compatible with v0.21.
Changes are non-breaking, unless you upgrade from v0.22.

  • BREAKING: The asyncio_event_loop mark has been removed. Event loops with class, module, package, and session scopes can be requested via the scope keyword argument to the asyncio mark.
  • Introduces the event_loop_policy fixture which allows testing with non-default or multiple event loops #662
  • Removes pytest-trio from the test dependencies #620

pytest-asyncio 0.23.0a1

16 Nov 12:52
v0.23.0a1
Compare
Choose a tag to compare
Pre-release

0.23.0 (UNRELEASED)

This release is backwards-compatible with v0.21.
Changes are non-breaking, unless you upgrade from v0.22.

  • BREAKING: The asyncio_event_loop mark has been removed. Event loops with class, module, package, and session scopes can be requested via the scope keyword argument to the asyncio mark.
  • Introduces the event_loop_policy fixture which allows testing with non-default or multiple event loops #662
  • Removes pytest-trio from the test dependencies #620

pytest-asyncio 0.23.0a0

12 Nov 10:11
v0.23.0a0
Compare
Choose a tag to compare
Pre-release

0.23.0 (UNRELEASED)

This release is backwards-compatible with v0.21.
Changes are non-breaking, unless you upgrade from v0.22.

  • BREAKING: The asyncio_event_loop mark has been removed. Event loops with class, module, package, and session scopes can be requested via the scope keyword argument to the asyncio mark.
  • Introduces the event_loop_policy fixture which allows testing with non-default or multiple event loops #662
  • Removes pytest-trio from the test dependencies #620

pytest-asyncio 0.22.0 (yanked)

31 Oct 07:26
v0.22.0
Compare
Choose a tag to compare

This release deprecated event loop overrides, but didn't provide adequate replacement functionality for all relevant use cases. As such, the release was yanked from PyPI.

0.22.0 (2023-10-31)

  • Class-scoped and module-scoped event loops can be requested
    via the asyncio_event_loop mark. #620
  • Deprecate redefinition of the event_loop fixture. #587
    Users requiring a class-scoped or module-scoped asyncio event loop for their tests
    should mark the corresponding class or module with asyncio_event_loop.
  • Test items based on asynchronous generators always exit with xfail status and emit a warning during the collection phase. This behavior is consistent with synchronous yield tests. #642
  • Remove support for Python 3.7
  • Declare support for Python 3.12

pytest-asyncio 0.21.1

12 Jul 10:20
v0.21.1
Compare
Choose a tag to compare

0.21.1 (2023-07-12)

  • Output a proper error message when an invalid asyncio_mode is selected.
  • Extend warning message about unclosed event loops with additional possible cause.
    #531
  • Previously, some tests reported "skipped" or "xfailed" as a result. Now all tests report a "success" result.