This library adheres to Semantic Versioning 2.0 <http://semver.org/>_.
3.7.0
Dropped support for Python 3.6
Improved type annotations:
Several functions and methods that were previously annotated as accepting
Coroutine[Any, Any, Any] as the return type of the callable have been amended to
accept Awaitable[Any] instead, to allow a slightly broader set of coroutine-like
inputs, like async_generator_asend objects returned from the asend() method
of async generators, and to match the trio annotations:
anyio.run()
anyio.from_thread.run()
TaskGroup.start_soon()
TaskGroup.start()
BlockingPortal.call()
BlockingPortal.start_task_soon()
BlockingPortal.start_task()
Note that this change involved only changing the type annotations; run-time
functionality was not altered.
The TaskStatus class is now a generic protocol, and should be parametrized to
indicate the type of the value passed to task_status.started()
The Listener class is now covariant in its stream type
create_memory_object_stream() now allows passing only item_type
Object receive streams are now covariant and object send streams are correspondingly
contravariant
Changed TLSAttribute.shared_ciphers to match the documented semantics of
SSLSocket.shared_ciphers of always returning None for client-side streams
Fixed CapacityLimiter on the asyncio backend to order waiting tasks in the FIFO
order (instead of LIFO) (PR by Conor Stevenson)
Fixed CancelScope.cancel() not working on asyncio if called before entering the
scope
Fixed open_signal_receiver() inconsistently yielding integers instead of
signal.Signals instances on the trio backend
Fixed to_thread.run_sync() hanging on asyncio if the target callable raises
StopIteration
Fixed start_blocking_portal() raising an unwarranted
RuntimeError: This portal is not running if a task raises an exception that causes
the event loop to be closed
Fixed current_effective_deadline() not returning -inf on asyncio when the
currently active cancel scope has been cancelled (PR by Ganden Schaffner)
Fixed the OP_IGNORE_UNEXPECTED_EOF flag in an SSL context created by default in
TLSStream.wrap() being inadvertently set on Python 3.11.3 and 3.10.11
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps anyio from 3.6.2 to 3.7.0.
Changelog
Sourced from anyio's changelog.
... (truncated)
Commits
f7a880f
Bumped up the version4942cdc
Added the Typing::Typed classifier35758cc
Removed Python 3.12 from the test matrix for now97ae69c
Added Python 3.12 to test matrix and used editable mode when testing79d5cc6
Fixed Sphinx build warningsa1afbdb
Bumped the minimum tox version50e654e
Upgraded pre-commit modules1c9face
Fixed missing jquery error in docs87b56ab
Bumped up the versiona746a63
Fixed error bindingcreate_tcp_listener()
to named link-local interfaces (#...Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)