Bug fixes
-
Fixed WebSocket server heartbeat timeout logic to terminate :py:meth:
~aiohttp.ClientWebSocketResponse.receive
and return :py:class:~aiohttp.ServerTimeoutError
-- by :user:arcivanov
.When a WebSocket pong message was not received, the :py:meth:
~aiohttp.ClientWebSocketResponse.receive
operation did not terminate. This change causes_pong_not_received
to feed thereader
an error message, causing pending :py:meth:~aiohttp.ClientWebSocketResponse.receive
to terminate and return the error message. The error message contains the exception :py:class:~aiohttp.ServerTimeoutError
.Related issues and pull requests on GitHub:
#8540. -
Fixed url dispatcher index not matching when a variable is preceded by a fixed string after a slash -- by :user:
bdraco
.Related issues and pull requests on GitHub:
#8566.
Removals and backward incompatible breaking changes
-
Creating :py:class:
aiohttp.TCPConnector
, :py:class:aiohttp.ClientSession
, :py:class:~aiohttp.resolver.ThreadedResolver
:py:class:aiohttp.web.Server
, or :py:class:aiohttp.CookieJar
instances without a running event loop now raises a :exc:RuntimeError
-- by :user:asvetlov
.Creating these objects without a running event loop was deprecated in #3372 which was released in version 3.5.0.
This change first appeared in version 3.10.0 as #6378.