Skip to content

Conversation

renovate-bot
Copy link
Contributor

@renovate-bot renovate-bot commented May 26, 2025

This PR contains the following updates:

Package Change Age Confidence
pytest-asyncio (changelog) ==0.21.1 -> ==1.2.0 age confidence

Release Notes

pytest-dev/pytest-asyncio (pytest-asyncio)

v1.2.0: pytest-asyncio 1.2.0

Compare Source

1.2.0 - 2025-09-12

Added

  • --asyncio-debug CLI option and asyncio_debug configuration option to enable asyncio debug mode for the default event loop. (#​980)
  • A pytest.UsageError for invalid configuration values of asyncio_default_fixture_loop_scope and asyncio_default_test_loop_scope. (#​1189)
  • Compatibility with the Pyright type checker (#​731)

Fixed

  • RuntimeError: There is no current event loop in thread 'MainThread' when any test unsets the event loop (such as when using asyncio.run and asyncio.Runner). (#​1177)
  • Deprecation warning when decorating an asynchronous fixture with @pytest.fixture in [strict]{.title-ref} mode. The warning message now refers to the correct package. (#​1198)

Notes for Downstream Packagers

  • Bump the minimum required version of tox to v4.28. This change is only relevant if you use the tox.ini file provided by pytest-asyncio to run tests.
  • Extend dependency on typing-extensions>=4.12 from Python<3.10 to Python<3.13.

v1.1.1: pytest-asyncio 1.1.1

Compare Source

v1.1.1 - 2025-09-12

Notes for Downstream Packagers

- Addresses a build problem with setuptoos-scm >= 9 caused by invalid setuptools-scm configuration in pytest-asyncio. (#​1192)

v1.1.0: pytest-asyncio 1.1.0

Compare Source

Added

  • Propagation of ContextVars from async fixtures to other fixtures and tests on Python 3.10 and older (#​127)
  • Cancellation of tasks when the loop_scope ends (#​200)
  • Warning when the current event loop is closed by a test

Fixed

  • Error about missing loop when calling functions requiring a loop in the finally clause of a task (#​878)
  • An error that could cause duplicate warnings to be issued

Notes for Downstream Packagers

v1.0.0: pytest-asyncio 1.0.0

Compare Source

1.0.0 - 2025-05-26

Removed

  • The deprecated event_loop fixture.
    (#​1106)

Added

  • Prelimiary support for Python 3.14
    (#​1025)

Changed

  • Scoped event loops (e.g. module-scoped loops) are created once rather
    than per scope (e.g. per module). This reduces the number of fixtures
    and speeds up collection time, especially for large test suites.
    (#​1107)
  • The loop_scope argument to pytest.mark.asyncio no longer forces
    that a pytest Collector exists at the level of the specified scope.
    For example, a test function marked with
    pytest.mark.asyncio(loop_scope="class") no longer requires a class
    surrounding the test. This is consistent with the behavior of the
    scope argument to pytest_asyncio.fixture.
    (#​1112)

Fixed

  • An error caused when using pytest's [--setup-plan]{.title-ref}
    option.
    (#​630)
  • Unsuppressed import errors with pytest option
    --doctest-ignore-import-errors
    (#​797)
  • A "fixture not found" error in connection with package-scoped loops
    (#​1052)

Notes for Downstream Packagers

  • Removed a test that had an ordering dependency on other tests.
    (#​1114)

v0.26.0: pytest-asyncio 0.26.0

Compare Source

  • Adds configuration option that sets default event loop scope for all tests #​793
  • Improved type annotations for pytest_asyncio.fixture #​1045
  • Added typing-extensions as additional dependency for Python <3.10 #​1045

v0.25.3: pytest-asyncio 0.25.3

Compare Source

  • Avoid errors in cleanup of async generators when event loop is already closed #​1040

v0.25.2: pytest-asyncio 0.25.2

Compare Source

  • Call loop.shutdown_asyncgens() before closing the event loop to ensure async generators are closed in the same manner as asyncio.run does #​1034

v0.25.1: pytest-asyncio 0.25.1

Compare Source

  • Fixes an issue that caused a broken event loop when a function-scoped test was executed in between two tests with wider loop scope #​950
  • Improves test collection speed in auto mode #​1020
  • Corrects the warning that is emitted upon redefining the event_loop fixture

v0.25.0: pytest-asyncio 0.25.0

Compare Source

0.25.0 (2024-12-13)

  • Deprecated: Added warning when asyncio test requests async @pytest.fixture in strict mode. This will become an error in a future version of flake8-asyncio. #​979
  • Updates the error message about pytest.mark.asyncio's scope keyword argument to say loop_scope instead. #​1004
  • Verbose log displays correct parameter name: asyncio_default_fixture_loop_scope #​990
  • Propagates contextvars set in async fixtures to other fixtures and tests on Python 3.11 and above. #​1008

v0.24.0: pytest-asyncio 0.24.0

Compare Source

0.24.0 (2024-08-22)

  • BREAKING: Updated minimum supported pytest version to v8.2.0
  • Adds an optional loop_scope keyword argument to pytest.mark.asyncio. This argument controls which event loop is used to run the marked async test. #​706, #​871
  • Deprecates the optional scope keyword argument to pytest.mark.asyncio for API consistency with pytest_asyncio.fixture. Users are encouraged to use the loop_scope keyword argument, which does exactly the same.
  • Raises an error when passing scope or loop_scope as a positional argument to @pytest.mark.asyncio. #​812
  • Fixes a bug that caused module-scoped async fixtures to fail when reused in other modules #​862 #​668

v0.23.8: pytest-asyncio 0.23.8

Compare Source

0.23.8 (2024-07-17)

  • Fixes a bug that caused duplicate markers in async tests #​813

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.

v0.23.7: pytest-asyncio 0.23.7

Compare Source

0.23.7 (2024-05-19)

  • Silence deprecation warnings about unclosed event loops that occurred with certain CPython patch releases #​817

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.

v0.23.6: pytest-asyncio 0.23.6

Compare Source

0.23.6 (2024-03-19)

  • Fix compatibility with pytest 8.2 #​800

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.

v0.23.5.post1: pytest-asyncio 0.23.5.post1

Compare Source

0.23.5 (2024-02-09)

  • Declare compatibility with pytest 8 #​737
  • Fix typing errors with recent versions of mypy #​769
  • Prevent DeprecationWarning about internal use of asyncio.get_event_loop() from affecting test cases #​757

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.

v0.23.5: pytest-asyncio 0.23.5

Compare Source

0.23.5 (2024-02-09)

  • Declare compatibility with pytest 8 #​737
  • Fix typing errors with recent versions of mypy #​769
  • Prevent DeprecationWarning about internal use of asyncio.get_event_loop() from affecting test cases #​757

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.

v0.23.4: pytest-asyncio 0.23.4

Compare Source

0.23.4 (2024-01-28)

  • pytest-asyncio no longer imports additional, unrelated packages during test collection #​729
  • Addresses further issues that caused an internal pytest error during test collection
  • Declares incompatibility with pytest 8 #​737

v0.23.3: pytest-asyncio 0.23.3

Compare Source

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.

v0.23.2: pytest-asyncio 0.23.2

Compare Source

0.23.2 (2023-12-04)

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

v0.23.1: pytest-asyncio 0.23.1

Compare Source

0.23.1 (2023-12-03)

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

v0.23.0: pytest-asyncio 0.23.0

Compare Source

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

v0.22.0: pytest-asyncio 0.22.0 (yanked)

Compare Source

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

v0.21.2: pytest-asyncio 0.21.2

Compare Source

0.21.2 (2024-04-29)

  • Fix compatibility with pytest 8.2. Backport of #​800 to pytest-asyncio v0.21 for users who are unable to upgrade to a more recent version (see #​706

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 is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate-bot renovate-bot force-pushed the renovate/pytest-asyncio-1.x branch from 3542435 to b8e25ca Compare July 16, 2025 09:41
@renovate-bot renovate-bot force-pushed the renovate/pytest-asyncio-1.x branch from b8e25ca to f693f15 Compare September 13, 2025 16:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant