Releases: aio-libs/aiohttp
3.11.12
Bug fixes
-
MultipartForm.decode()
now follows RFC1341 7.2.1 with aCRLF
after the boundary
-- by :user:imnotjames
.Related issues and pull requests on GitHub:
#10270. -
Restored the missing
total_bytes
attribute toEmptyStreamReader
-- by :user:bdraco
.Related issues and pull requests on GitHub:
#10387.
Features
-
Updated :py:func:
~aiohttp.request
to make it accept_RequestOptions
kwargs.
-- by :user:Cycloctane
.Related issues and pull requests on GitHub:
#10300. -
Improved logging of HTTP protocol errors to include the remote address -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#10332.
Improved documentation
-
Added
aiohttp-openmetrics
to list of third-party libraries -- by :user:jelmer
.Related issues and pull requests on GitHub:
#10304.
Packaging updates and notes for downstreams
-
Added missing files to the source distribution to fix
Makefile
targets.
Added acythonize-nodeps
target to run Cython without invoking pip to install dependencies.Related issues and pull requests on GitHub:
#10366. -
Started building armv7l musllinux wheels -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#10404.
Contributor-facing changes
-
The CI/CD workflow has been updated to use
upload-artifact
v4 anddownload-artifact
v4 GitHub Actions -- by :user:silamon
.Related issues and pull requests on GitHub:
#10281.
Miscellaneous internal changes
-
Restored support for zero copy writes when using Python 3.12 versions 3.12.9 and later or Python 3.13.2+ -- by :user:
bdraco
.Zero copy writes were previously disabled due to :cve:
2024-12254
which is resolved in these Python versions.Related issues and pull requests on GitHub:
#10137.
3.11.11
Bug fixes
-
Updated :py:meth:
~aiohttp.ClientSession.request
to reuse thequote_cookie
setting fromClientSession._cookie_jar
when processing cookies parameter.
-- by :user:Cycloctane
.Related issues and pull requests on GitHub:
#10093. -
Fixed type of
SSLContext
for some static type checkers (e.g. pyright).Related issues and pull requests on GitHub:
#10099. -
Updated :meth:
aiohttp.web.StreamResponse.write
annotation to also allow :class:bytearray
and :class:memoryview
as inputs -- by :user:cdce8p
.Related issues and pull requests on GitHub:
#10154. -
Fixed a hang where a connection previously used for a streaming
download could be returned to the pool in a paused state.
-- by :user:javitonino
.Related issues and pull requests on GitHub:
#10169.
Features
-
Enabled ALPN on default SSL contexts. This improves compatibility with some
proxies which don't work without this extension.
-- by :user:Cycloctane
.Related issues and pull requests on GitHub:
#10156.
Miscellaneous internal changes
-
Fixed an infinite loop that can occur when using aiohttp in combination
withasync-solipsism
_ -- by :user:bmerry
... _async-solipsism: https://github.com/bmerry/async-solipsism
Related issues and pull requests on GitHub:
#10149.
3.11.10
Bug fixes
-
Fixed race condition in :class:
aiohttp.web.FileResponse
that could have resulted in an incorrect response if the file was replaced on the file system duringprepare
-- by :user:bdraco
. -
Replaced deprecated call to :func:
mimetypes.guess_type
with :func:mimetypes.guess_file_type
when using Python 3.13+ -- by :user:bdraco
.Related issues and pull requests on GitHub:
#10102. -
Disabled zero copy writes in the
StreamWriter
-- by :user:bdraco
.Related issues and pull requests on GitHub:
#10125.
3.11.9
Bug fixes
-
Fixed invalid method logging unexpected being logged at exception level on subsequent connections -- by :user:
bdraco
.
Miscellaneous internal changes
-
Improved performance of parsing headers when using the C parser -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#10073.
3.11.8
Miscellaneous internal changes
-
Improved performance of creating :class:
aiohttp.ClientResponse
objects when there are no cookies -- by :user:bdraco
.Related issues and pull requests on GitHub:
#10029. -
Improved performance of creating :class:
aiohttp.ClientResponse
objects -- by :user:bdraco
.Related issues and pull requests on GitHub:
#10030. -
Improved performances of creating objects during the HTTP request lifecycle -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#10037. -
Improved performance of constructing :class:
aiohttp.web.Response
with headers -- by :user:bdraco
.Related issues and pull requests on GitHub:
#10043. -
Improved performance of making requests when there are no auto headers to skip -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#10049. -
Downgraded logging of invalid HTTP method exceptions on the first request to debug level -- by :user:
bdraco
.HTTP requests starting with an invalid method are relatively common, especially when connected to the public internet, because browsers or other clients may try to speak SSL to a plain-text server or vice-versa. These exceptions can quickly fill the log with noise when nothing is wrong.
Related issues and pull requests on GitHub:
#10055.
3.11.7
Bug fixes
-
Fixed the HTTP client not considering the connector's
force_close
value when setting theConnection
header -- by :user:bdraco
.Related issues and pull requests on GitHub:
#10003.
Miscellaneous internal changes
-
Improved performance of serializing HTTP headers -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#10014.
3.11.6
3.11.5
3.11.4
Bug fixes
-
Fixed
StaticResource
not allowing theOPTIONS
method after callingset_options_route
-- by :user:bdraco
.Related issues and pull requests on GitHub:
#9972, #9975, #9976.
Miscellaneous internal changes
-
Improved performance of creating web responses when there are no cookies -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#9895.
3.11.3
Bug fixes
-
Removed non-existing
__author__
fromdir(aiohttp)
-- by :user:Dreamsorcerer
.Related issues and pull requests on GitHub:
#9918. -
Restored the
FlowControlDataQueue
class -- by :user:bdraco
.This class is no longer used internally, and will be permanently removed in the next major version.
Related issues and pull requests on GitHub:
#9963.
Miscellaneous internal changes
-
Improved performance of resolving resources when multiple methods are registered for the same route -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#9899.