Features
-
Added
WebSocketResponse.get_extra_info()
to access a protocol transport's extra info.(#7078)
-
Allow
link
argument to be set to None/empty in HTTP 451 exception.(#7689)
-
Added
shutdown_timeout
parameter toBaseRunner
, while
deprecatingshutdown_timeout
parameter fromBaseSite
. -- by :user:Dreamsorcerer
(#7718)
Bugfixes
-
Fixed keep-alive connections stopping a graceful shutdown. -- by :user:
Dreamsorcerer
(#7718)
-
Fixed
ClientWebSocketResponse.close_code
being erroneously set toNone
when there are concurrent async tasks receiving data and closing the connection.(#7306)
-
Changed
AppKey
warning toweb.NotAppKeyWarning
and stop it being displayed by default. -- by :user:Dreamsorcerer
(#7677)
-
Fix issue with insufficient HTTP method and version validation.
(#7700)
-
Add check to validate that absolute URIs have schemes.
(#7712)
-
Fix unhandled exception when Python HTTP parser encounters unpaired Unicode surrogates.
(#7715)
-
Update parser to disallow invalid characters in header field names and stop accepting LF as a request line separator.
(#7719)
-
Fix py http parser not treating 204/304/1xx as an empty body
(#7755)
-
Ensure empty body response for 1xx/204/304 per RFC 9112 sec 6.3
(#7756)
-
Fixed an issue when a client request is closed before completing a chunked payload -- by :user:
Dreamsorcerer
(#7764)
-
Edge Case Handling for ResponseParser for missing reason value
(#7776)
-
Fixed a rare
RuntimeError: await wasn't used with future
exception -- by :user:stalkerg
(#7785)
Improved Documentation
-
Fix, update, and improve client exceptions documentation.
(#7733)