| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Upgrade to release 4.9.0:
- Added async support for temporary file handling
- 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()
- 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__
- Fixed anyio.Path.iterdir() making a blocking call in Python 3.13
- Fixed connect_tcp() producing cyclic references in tracebacks when
raising exceptions
- 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
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
|
Upgrade to release 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
- 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)
- Fixed AssertionError when using nest-asyncio
- Fixed return type annotation of various context managers'
__exit__ method
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|