- 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)