4.13.0
Added 1
- Added a ttl parameter to the anyio.functools.lru_cache wrapper
Changed 1
- Widened the type annotations of file I/O streams to accept IO[bytes] instead of just BinaryIO
Fixed 7
- Fixed anyio.Path not being compatible with Python 3.15 due to the removal of pathlib.Path.is_reserved() and the addition of pathlib.Path.__vfspath__()
- Fixed the BrokenResourceError raised by the asyncio SocketStream not having the original exception as its cause
- Fixed the TypeError raised when using "func" as a parameter name in pytest.mark.parametrize when using the pytest plugin
- Fixed the pytest plugin not running tests that had the anyio marker added programmatically via pytest_collection_modifyitems
- Fixed cancellation exceptions leaking from a CancelScope on asyncio when they are contained in an exception group alongside non-cancellation exceptions
- Fixed Condition.wait() not passing on a notification when the task is cancelled but already received a notification
- Fixed inverted condition in the process pool shutdown phase which would cause still-running pooled processes not to be terminated
Removed 1
- Dropped support for Python 3.9
- Dropped support for Python 3.9
- Added a
ttlparameter to theanyio.functools.lru_cachewrapper (#1073; PR by @Graeme22) - Widened the type annotations of file I/O streams to accept
IO[bytes]instead of justBinaryIO(#1078) - Fixed
anyio.Pathnot being compatible with Python 3.15 due to the removal ofpathlib.Path.is_reserved()and the addition ofpathlib.Path.__vfspath__()(#1061; PR by @veeceey) - Fixed the
BrokenResourceErrorraised by the asyncioSocketStreamnot having the original exception as its cause (#1055; PR by @veeceey) - Fixed the
TypeErrorraised when using "func" as a parameter name inpytest.mark.parametrizewhen using the pytest plugin (#1068; PR by @JohnnyDeuss) - Fixed the pytest plugin not running tests that had the
anyiomarker added programmatically viapytest_collection_modifyitems(#422; PR by @chbndrhnns) - Fixed cancellation exceptions leaking from a
CancelScopeon asyncio when they are contained in an exception group alongside non-cancellation exceptions (#1091; PR by @gschaffner) - Fixed
Condition.wait()not passing on a notification when the task is cancelled but already received a notification - Fixed inverted condition in the process pool shutdown phase which would cause still-running pooled processes not to be terminated (#1074; PR by @bysiber)