Should fix the build in Staging:C
- Skip flaky test_keyboardinterrupt_during_test, the timeout increase
doesn't always help.
- Fix build for Leap
- Update to 4.10.0:
+ Added the feed_data() method to the BufferedByteReceiveStream
class, allowing users to inject data directly into the buffer
+ Added various class methods to wrap existing sockets as
listeners or socket streams
+ Added a hierarchy of connectable stream classes for
transparently connecting to various remote or local endpoints
for exchanging bytes or objects
+ Added context manager mix-in classes (anyio.ContextManagerMixin
and anyio.AsyncContextManagerMixin) to help write classes that
embed other context managers, particularly cancel scopes or
task groups
+ Added the ability to specify the thread name in start_blocking
_portal()
+ Added anyio.notify_closing to allow waking anyio.wait_readable
and anyio.wait_writable before closing a socket. Among other
things, this prevents an OSError on the ProactorEventLoop.
+ Incorporated several documentation improvements from the
EuroPython 2025 sprint
+ Added a documentation page explaining why one might want to use
AnyIO's APIs instead of asyncio's
+ Updated the to_interpreters module to use the public
concurrent.interpreters API on Python 3.14 or later
+ Fixed anyio.Path.copy() and anyio.Path.copy_into() failing on
Python 3.14.0a7
+ Fixed return annotation of __aexit__ on async context managers.
OBS-URL: https://build.opensuse.org/request/show/1299192
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=27
Sadly. this still fails with glibc 2.42 on i586 :(
- Update to 4.10.0:
+ Added the feed_data() method to the BufferedByteReceiveStream
class, allowing users to inject data directly into the buffer
+ Added various class methods to wrap existing sockets as
listeners or socket streams
+ Added a hierarchy of connectable stream classes for
transparently connecting to various remote or local endpoints
for exchanging bytes or objects
+ Added context manager mix-in classes (anyio.ContextManagerMixin
and anyio.AsyncContextManagerMixin) to help write classes that
embed other context managers, particularly cancel scopes or
task groups
+ Added the ability to specify the thread name in start_blocking
_portal()
+ Added anyio.notify_closing to allow waking anyio.wait_readable
and anyio.wait_writable before closing a socket. Among other
things, this prevents an OSError on the ProactorEventLoop.
+ Incorporated several documentation improvements from the
EuroPython 2025 sprint
+ Added a documentation page explaining why one might want to use
AnyIO's APIs instead of asyncio's
+ Updated the to_interpreters module to use the public
concurrent.interpreters API on Python 3.14 or later
+ Fixed anyio.Path.copy() and anyio.Path.copy_into() failing on
Python 3.14.0a7
+ Fixed return annotation of __aexit__ on async context managers.
+ Fixed rollover boundary check in SpooledTemporaryFile so that
rollover only occurs when the buffer size exceeds max_size
+ Migrated testing and documentation dependencies from extras to
dependency groups
OBS-URL: https://build.opensuse.org/request/show/1299049
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=56
- Inject multibuild to break a build loop.
- Update to 4.9.0:
* Added async support for temporary file handling (#344; PR by @11kkw)
* Added 4 new fixtures for the AnyIO pytest plugin:
* free_tcp_port_factory: session scoped fixture returning a callable
that generates unused TCP port numbers
* free_udp_port_factory: session scoped fixture returning a callable
that generates unused UDP port numbers
* free_tcp_port: function scoped fixture that invokes the
free_tcp_port_factory fixture to generate a free TCP port number
* free_udp_port: function scoped fixture that invokes the
free_udp_port_factory fixture to generate a free UDP port number
* Added stdin argument to anyio.run_process() akin to what
anyio.open_process(), asyncio.create_subprocess(), trio.run_process(),
and subprocess.run() already accept (PR by @jmehnle)
* Added the info property to anyio.Path on Python 3.14
* Changed anyio.getaddrinfo() to ignore (invalid) IPv6 name resolution
results when IPv6 support is disabled in Python
* Changed EndOfStream raised from MemoryObjectReceiveStream.receive()
to leave out the AttributeError from the exception chain which was
merely an implementation detail and caused some confusion
* Fixed traceback formatting growing quadratically with level of
TaskGroup nesting on asyncio due to exception chaining when raising
ExceptionGroups in TaskGroup.__aexit__ (#863; PR by @tapetersen)
* Fixed anyio.Path.iterdir() making a blocking call in Python 3.13
(#873; PR by @cbornet and @agronholm)
* Fixed connect_tcp() producing cyclic references in tracebacks when
raising exceptions (#809; PR by @graingert)
* Fixed anyio.to_thread.run_sync() needlessly holding on to references
OBS-URL: https://build.opensuse.org/request/show/1294656
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=25
- Update to 4.9.0:
* Added async support for temporary file handling (#344; PR by @11kkw)
* Added 4 new fixtures for the AnyIO pytest plugin:
* free_tcp_port_factory: session scoped fixture returning a callable
that generates unused TCP port numbers
* free_udp_port_factory: session scoped fixture returning a callable
that generates unused UDP port numbers
* free_tcp_port: function scoped fixture that invokes the
free_tcp_port_factory fixture to generate a free TCP port number
* free_udp_port: function scoped fixture that invokes the
free_udp_port_factory fixture to generate a free UDP port number
* Added stdin argument to anyio.run_process() akin to what
anyio.open_process(), asyncio.create_subprocess(), trio.run_process(),
and subprocess.run() already accept (PR by @jmehnle)
* Added the info property to anyio.Path on Python 3.14
* Changed anyio.getaddrinfo() to ignore (invalid) IPv6 name resolution
results when IPv6 support is disabled in Python
* Changed EndOfStream raised from MemoryObjectReceiveStream.receive()
to leave out the AttributeError from the exception chain which was
merely an implementation detail and caused some confusion
* Fixed traceback formatting growing quadratically with level of
TaskGroup nesting on asyncio due to exception chaining when raising
ExceptionGroups in TaskGroup.__aexit__ (#863; PR by @tapetersen)
* Fixed anyio.Path.iterdir() making a blocking call in Python 3.13
(#873; PR by @cbornet and @agronholm)
* Fixed connect_tcp() producing cyclic references in tracebacks when
raising exceptions (#809; PR by @graingert)
* Fixed anyio.to_thread.run_sync() needlessly holding on to references
of the context, function, arguments and others until the next work
item on asyncio (PR by @Wankupi)
OBS-URL: https://build.opensuse.org/request/show/1294357
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=51
- Update to 4.8.0:
* Added experimental support for running functions in
subinterpreters on Python 3.13 and later
* Added support for the copy(), copy_into(), move() and move_into()
methods in anyio.Path, available in Python 3.14
* Changed TaskGroup on asyncio to always spawn tasks non-eagerly,
even if using a task factory created
via asyncio.create_eager_task_factory(), to preserve expected
Trio-like task scheduling semantics (PR by @agronholm and @graingert)
* Configure SO_RCVBUF, SO_SNDBUF and TCP_NODELAY on the selector
thread waker socket pair (this should improve the performance of
wait_readable() and wait_writable() when using the ProactorEventLoop)
(#836; PR by @graingert)
* Fixed AssertionError when using nest-asyncio (#840)
* Fixed return type annotation of various context managers'
__exit__ method (#847; PR by @Enegg)
- from 4.7.0:
* Updated TaskGroup to work with asyncio's eager task factories (#764)
* Added the wait_readable() and wait_writable() functions which will
accept an object with a .fileno() method or an integer handle, and
deprecated their now obsolete versions (wait_socket_readable() and
wait_socket_writable()) (PR by @davidbrochart)
* Changed EventAdapter (an Event with no bound async backend) to allow
set() to work even before an async backend is bound to it (#819)
* Added support for wait_readable() and wait_writable() on
ProactorEventLoop (used on asyncio + Windows by default)
* Fixed a misleading ValueError in the context of DNS failures
(#815; PR by @graingert)
* Fixed the return type annotations of readinto() and readinto1()
methods in the anyio.AsyncFile class (#825)
* Fixed TaskInfo.has_pending_cancellation() on asyncio returning
false positives in cleanup code on Python >= 3.11
(#832; PR by @gschaffner)
* Fixed cancelled cancel scopes on asyncio calling
asyncio.Task.uncancel when propagating a CancelledError on exit
to a cancelled parent scope (#790; PR by @gschaffner)
OBS-URL: https://build.opensuse.org/request/show/1244802
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=24
- Update to 4.8.0:
* Added experimental support for running functions in
subinterpreters on Python 3.13 and later
* Added support for the copy(), copy_into(), move() and move_into()
methods in anyio.Path, available in Python 3.14
* Changed TaskGroup on asyncio to always spawn tasks non-eagerly,
even if using a task factory created
via asyncio.create_eager_task_factory(), to preserve expected
Trio-like task scheduling semantics (PR by @agronholm and @graingert)
* Configure SO_RCVBUF, SO_SNDBUF and TCP_NODELAY on the selector
thread waker socket pair (this should improve the performance of
wait_readable() and wait_writable() when using the ProactorEventLoop)
(#836; PR by @graingert)
* Fixed AssertionError when using nest-asyncio (#840)
* Fixed return type annotation of various context managers'
__exit__ method (#847; PR by @Enegg)
OBS-URL: https://build.opensuse.org/request/show/1244708
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=48
- update to 4.6.0:
* Dropped support for Python 3.8 (as #698 cannot be resolved
without cancel message support)
* Fixed 100% CPU use on asyncio while waiting for an exiting task
group to finish while said task group is within a cancelled
cancel scope (#695)
* Fixed cancel scopes on asyncio not propagating CancelledError
on exit when the enclosing cancel scope has been effectively
cancelled (#698)
* Fixed asyncio task groups not yielding control to the event
loop at exit if there were no child tasks to wait on
* Fixed inconsistent task uncancellation with asyncio cancel
scopes belonging to a task group when said task group has child
tasks running
- update to 4.5.0:
* Improved the performance of anyio.Lock and anyio.Semaphore on
asyncio (even up to 50 %)
* Added the fast_acquire parameter to anyio.Lock and
anyio.Semaphore to further boost performance at the expense of
safety (acquire() will not yield control back if there is no
contention)
* Added support for the from_uri(), full_match(), parser
methods/properties in anyio.Path, newly added in Python 3.13
(#737)
* Added support for more keyword arguments for run_process() and
open_process(): startupinfo, creationflags, pass_fds, user,
group, extra_groups and umask (#742)
* Improved the type annotations and support for PathLike in
run_process() and open_process() to allow for path-like
arguments, just like subprocess.Popen
OBS-URL: https://build.opensuse.org/request/show/1205307
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=44
- update to 4.4.0:
* Added the BlockingPortalProvider class to aid with
constructing synchronous counterparts to asynchronous
interfaces that would otherwise require multiple blocking
portals
* Added __slots__ to AsyncResource so that child classes can
use __slots__
* Added the TaskInfo.has_pending_cancellation() method
* Fixed erroneous RuntimeError: called 'started' twice on the
same task status when cancelling a task in a TaskGroup
created with the start() method before the first checkpoint
is reached after calling task_status.started()
* Fixed two bugs with TaskGroup.start() on asyncio: Fixed
erroneous RuntimeError: called 'started' twice on the same
task status when cancelling a task in a TaskGroup created
with the start() method before the first checkpoint is
reached after calling task_status.started() (#706; PR by
Dominik Schwabe) Fixed the entire task group being cancelled
if a TaskGroup.start() call gets cancelled (#685, #710)
* Fixed erroneous RuntimeError: called 'started' twice on the
same task status when cancelling a task in a TaskGroup
created with the start() method before the first checkpoint
is reached after calling task_status.started()
* Fixed the entire task group being cancelled if a
TaskGroup.start() call gets cancelled
* Fixed a race condition that caused crashes when multiple
event loops of the same backend were running in separate
threads and simultaneously attempted to use AnyIO for their
first time
* Fixed cancellation delivery on asyncio incrementing the wrong
OBS-URL: https://build.opensuse.org/request/show/1193842
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=21
* Added the BlockingPortalProvider class to aid with
constructing synchronous counterparts to asynchronous
interfaces that would otherwise require multiple blocking
portals
* Added __slots__ to AsyncResource so that child classes can
use __slots__
* Added the TaskInfo.has_pending_cancellation() method
* Fixed erroneous RuntimeError: called 'started' twice on the
same task status when cancelling a task in a TaskGroup
created with the start() method before the first checkpoint
is reached after calling task_status.started()
* Fixed two bugs with TaskGroup.start() on asyncio: Fixed
erroneous RuntimeError: called 'started' twice on the same
task status when cancelling a task in a TaskGroup created
with the start() method before the first checkpoint is
reached after calling task_status.started() (#706; PR by
Dominik Schwabe) Fixed the entire task group being cancelled
if a TaskGroup.start() call gets cancelled (#685, #710)
* Fixed erroneous RuntimeError: called 'started' twice on the
same task status when cancelling a task in a TaskGroup
created with the start() method before the first checkpoint
is reached after calling task_status.started()
* Fixed the entire task group being cancelled if a
TaskGroup.start() call gets cancelled
* Fixed a race condition that caused crashes when multiple
event loops of the same backend were running in separate
threads and simultaneously attempted to use AnyIO for their
first time
* Fixed cancellation delivery on asyncio incrementing the wrong
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=42
- Update to 4.3.0:
* Added support for the Python 3.12 ``walk_up`` keyword argument in
``anyio.Path.relative_to()``
* Fixed passing ``total_tokens`` to ``anyio.CapacityLimiter()`` as a
keyword argument not working on the ``trio`` backend
* Fixed ``Process.aclose()`` not performing the minimum level of
necessary cleanup when cancelled
* Fixed ``Process.stdin.aclose()``, ``Process.stdout.aclose()``, and
``Process.stderr.aclose()``
- Add exceptiongroup to {Build,}Requires.
OBS-URL: https://build.opensuse.org/request/show/1157062
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=20
* Added support for the Python 3.12 ``walk_up`` keyword argument in
``anyio.Path.relative_to()``
* Fixed passing ``total_tokens`` to ``anyio.CapacityLimiter()`` as a
keyword argument not working on the ``trio`` backend
* Fixed ``Process.aclose()`` not performing the minimum level of
necessary cleanup when cancelled
* Fixed ``Process.stdin.aclose()``, ``Process.stdout.aclose()``, and
``Process.stderr.aclose()``
- Add exceptiongroup to {Build,}Requires.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=39
- update to 4.2.0:
* Add support for byte-based paths in connect_unix,
create_unix_listeners, create_unix_datagram_socket, and
create_connected_unix_datagram_socket. (PR by Lura Skye)
* Enabled the Event and CapacityLimiter classes to be
instantiated outside an event loop thread
* Broadly improved/fixed the type annotations. Among other
things, many functions and methods that take variadic
positional arguments now make use of PEP 646 TypeVarTuple to
allow the positional arguments to be validated by static type
checkers. These changes affected numerous methods and
functions, including: * anyio.run() * TaskGroup.start_soon()
* anyio.from_thread.run() * anyio.from_thread.run_sync() *
anyio.to_thread.run_sync() * anyio.to_process.run_sync() *
BlockingPortal.call() * BlockingPortal.start_task_soon() *
BlockingPortal.start_task() (also resolves#560)
* Fixed various type annotations of anyio.Path to match
Typeshed: * anyio.Path.__lt__() * anyio.Path.__le__() *
anyio.Path.__gt__() * anyio.Path.__ge__() *
anyio.Path.__truediv__() * anyio.Path.__rtruediv__() *
anyio.Path.hardlink_to() * anyio.Path.samefile() *
anyio.Path.symlink_to() * anyio.Path.with_segments() (PR by
Ganden Schaffner)
* Fixed adjusting the total number of tokens in a
CapacityLimiter on asyncio failing to wake up tasks waiting
to acquire the limiter in certain edge cases (fixed with help
from Egor Blagov)
* Fixed loop_factory and use_uvloop options not being used on
the asyncio backend
* Fixed cancellation propagating on asyncio from a task group
OBS-URL: https://build.opensuse.org/request/show/1136274
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=19
* Add support for byte-based paths in connect_unix,
create_unix_listeners, create_unix_datagram_socket, and
create_connected_unix_datagram_socket. (PR by Lura Skye)
* Enabled the Event and CapacityLimiter classes to be
instantiated outside an event loop thread
* Broadly improved/fixed the type annotations. Among other
things, many functions and methods that take variadic
positional arguments now make use of PEP 646 TypeVarTuple to
allow the positional arguments to be validated by static type
checkers. These changes affected numerous methods and
functions, including: * anyio.run() * TaskGroup.start_soon()
* anyio.from_thread.run() * anyio.from_thread.run_sync() *
anyio.to_thread.run_sync() * anyio.to_process.run_sync() *
BlockingPortal.call() * BlockingPortal.start_task_soon() *
BlockingPortal.start_task() (also resolves#560)
* Fixed various type annotations of anyio.Path to match
Typeshed: * anyio.Path.__lt__() * anyio.Path.__le__() *
anyio.Path.__gt__() * anyio.Path.__ge__() *
anyio.Path.__truediv__() * anyio.Path.__rtruediv__() *
anyio.Path.hardlink_to() * anyio.Path.samefile() *
anyio.Path.symlink_to() * anyio.Path.with_segments() (PR by
Ganden Schaffner)
* Fixed adjusting the total number of tokens in a
CapacityLimiter on asyncio failing to wake up tasks waiting
to acquire the limiter in certain edge cases (fixed with help
from Egor Blagov)
* Fixed loop_factory and use_uvloop options not being used on
the asyncio backend
* Fixed cancellation propagating on asyncio from a task group
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=37
* Adapted to API changes made in Trio v0.23
* Removed a checkpoint when exiting a task group
* Renamed the ``cancellable`` argument in
``anyio.to_thread.run_sync()`` to
* ``abandon_on_cancel`` (and deprecated the old parameter name)
* Added support for voluntary thread cancellation via
* ``anyio.from_thread.check_cancelled()``
* Bumped minimum version of trio to v0.23
* Exposed the ``ResourceGuard`` class in the public API
* Fixed ``RuntimeError: Runner is closed`` when running higher-
scoped async generator fixtures in some cases
* Fixed discrepancy between ``asyncio`` and ``trio`` where
reraising a cancellation exception in an ``except*`` block
would incorrectly bubble out of its cancel scope
* Any exceptions raising out of a task groups are now nested
inside an ``ExceptionGroup`` (or ``BaseExceptionGroup`` if one
or more ``BaseException`` were included)
* Fixed task group not raising a cancellation exception on
asyncio at exit if no child tasks were spawned and an outer
cancellation scope had been cancelled before
* Ensured that exiting a ``TaskGroup`` always hits a yield
point, regardless of whether there are running child tasks to
be waited on
* On asyncio, cancel scopes will defer cancelling tasks that
are scheduled to resume with a finished future
* On asyncio and Python 3.9/3.10, cancel scopes now only
suppress cancellation exceptions if the cancel message matches
the scope
* Task groups on all backends now raise a single cancellation
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=36
- update to 3.7.1:
* Fixed sending large buffers via UNIX stream sockets on
asyncio
* Fixed several minor documentation issues (broken links to
classes, missing classes or attributes)
* 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()``
* 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)
* 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
OBS-URL: https://build.opensuse.org/request/show/1126958
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=18
* Fixed sending large buffers via UNIX stream sockets on
asyncio
* Fixed several minor documentation issues (broken links to
classes, missing classes or attributes)
* 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()``
* 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)
* 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
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=31
- update to 3.6.2:
- Pinned Trio to < 0.22 to avoid incompatibility with AnyIO's ``ExceptionGroup`` class
causing ``AttributeError: 'NonBaseMultiError' object has no attribute '_exceptions'``
(AnyIO 4 is unaffected)
- Fixed exception handler in the asyncio test runner not properly handling a context
that does not contain the ``exception`` key
- Fixed ``TypeError`` in ``get_current_task()`` on asyncio when using a custom ``Task`` factory
- Updated type annotations on ``run_process()`` and ``open_process()``:
* ``command`` now accepts accepts bytes and sequences of bytes
* ``stdin``, ``stdout`` and ``stderr`` now accept file-like objects
- Changed the pytest plugin to run both the setup and teardown phases of asynchronous
generator fixtures within a single task to enable use cases such as cancel scopes and
task groups where a context manager straddles the ``yield``
- drop anyio-pytest7.patch (upstream)
OBS-URL: https://build.opensuse.org/request/show/1037186
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=11
- Pinned Trio to < 0.22 to avoid incompatibility with AnyIO's ``ExceptionGroup`` class
causing ``AttributeError: 'NonBaseMultiError' object has no attribute '_exceptions'``
(AnyIO 4 is unaffected)
- Fixed exception handler in the asyncio test runner not properly handling a context
that does not contain the ``exception`` key
- Fixed ``TypeError`` in ``get_current_task()`` on asyncio when using a custom ``Task`` factory
- Updated type annotations on ``run_process()`` and ``open_process()``:
* ``command`` now accepts accepts bytes and sequences of bytes
* ``stdin``, ``stdout`` and ``stderr`` now accept file-like objects
- Changed the pytest plugin to run both the setup and teardown phases of asynchronous
generator fixtures within a single task to enable use cases such as cancel scopes and
task groups where a context manager straddles the ``yield``
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=16
- update to 3.5.0:
- Added ``start_new_session`` keyword argument to ``run_process()`` and ``open_process()``
- Fixed deadlock in synchronization primitives on asyncio which can happen if a task acquiring a
primitive is hit with a native (not AnyIO) cancellation with just the right timing, leaving the
next acquiring task waiting forever
- Added workaround for bpo-46313_ to enable compatibility with OpenSSL 3.0
OBS-URL: https://build.opensuse.org/request/show/946668
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-anyio?expand=0&rev=8
- Added ``start_new_session`` keyword argument to ``run_process()`` and ``open_process()``
- Fixed deadlock in synchronization primitives on asyncio which can happen if a task acquiring a
primitive is hit with a native (not AnyIO) cancellation with just the right timing, leaving the
next acquiring task waiting forever
- Added workaround for bpo-46313_ to enable compatibility with OpenSSL 3.0
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-anyio?expand=0&rev=11