diff --git a/CHANGES.rst b/CHANGES.rst index 0150c95494c..43ca69235e3 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -10,6 +10,74 @@ .. towncrier release notes start +3.10.3 (2024-08-10) +======================== + +Bug fixes +--------- + +- Fixed multipart reading when stream buffer splits the boundary over several read() calls -- by :user:`Dreamsorcerer`. + + + *Related issues and pull requests on GitHub:* + :issue:`8653`. + + + +- Fixed :py:class:`aiohttp.TCPConnector` doing blocking I/O in the event loop to create the ``SSLContext`` -- by :user:`bdraco`. + + The blocking I/O would only happen once per verify mode. However, it could cause the event loop to block for a long time if the ``SSLContext`` creation is slow, which is more likely during startup when the disk cache is not yet present. + + + *Related issues and pull requests on GitHub:* + :issue:`8672`. + + + + +Miscellaneous internal changes +------------------------------ + +- Improved performance of :py:meth:`~aiohttp.ClientWebSocketResponse.receive` and :py:meth:`~aiohttp.web.WebSocketResponse.receive` when there is no timeout. -- by :user:`bdraco`. + + The timeout context manager is now avoided when there is no timeout as it accounted for up to 50% of the time spent in the :py:meth:`~aiohttp.ClientWebSocketResponse.receive` and :py:meth:`~aiohttp.web.WebSocketResponse.receive` methods. + + + *Related issues and pull requests on GitHub:* + :issue:`8660`. + + + +- Improved performance of starting request handlers with Python 3.12+ -- by :user:`bdraco`. + + + *Related issues and pull requests on GitHub:* + :issue:`8661`. + + + +- Improved performance of HTTP keep-alive checks -- by :user:`bdraco`. + + Previously, when processing a request for a keep-alive connection, the keep-alive check would happen every second; the check is now rescheduled if it fires too early instead. + + + *Related issues and pull requests on GitHub:* + :issue:`8662`. + + + +- Improved performance of generating random WebSocket mask -- by :user:`bdraco`. + + + *Related issues and pull requests on GitHub:* + :issue:`8667`. + + + + +---- + + 3.10.2 (2024-08-08) =================== diff --git a/CHANGES/8653.bugfix.rst b/CHANGES/8653.bugfix.rst deleted file mode 100644 index 5c4d66c181f..00000000000 --- a/CHANGES/8653.bugfix.rst +++ /dev/null @@ -1 +0,0 @@ -Fixed multipart reading when stream buffer splits the boundary over several read() calls -- by :user:`Dreamsorcerer`. diff --git a/CHANGES/8660.misc.rst b/CHANGES/8660.misc.rst deleted file mode 100644 index 8710063329e..00000000000 --- a/CHANGES/8660.misc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improved performance of :py:meth:`~aiohttp.ClientWebSocketResponse.receive` and :py:meth:`~aiohttp.web.WebSocketResponse.receive` when there is no timeout. -- by :user:`bdraco`. - -The timeout context manager is now avoided when there is no timeout as it accounted for up to 50% of the time spent in the :py:meth:`~aiohttp.ClientWebSocketResponse.receive` and :py:meth:`~aiohttp.web.WebSocketResponse.receive` methods. diff --git a/CHANGES/8661.misc.rst b/CHANGES/8661.misc.rst deleted file mode 100644 index c0a6fdadb37..00000000000 --- a/CHANGES/8661.misc.rst +++ /dev/null @@ -1 +0,0 @@ -Improved performance of starting request handlers with Python 3.12+ -- by :user:`bdraco`. diff --git a/CHANGES/8662.misc.rst b/CHANGES/8662.misc.rst deleted file mode 100644 index efe30a60cb2..00000000000 --- a/CHANGES/8662.misc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Improved performance of HTTP keep-alive checks -- by :user:`bdraco`. - -Previously, when processing a request for a keep-alive connection, the keep-alive check would happen every second; the check is now rescheduled if it fires too early instead. diff --git a/CHANGES/8667.misc.rst b/CHANGES/8667.misc.rst deleted file mode 100644 index 1c43b6e069a..00000000000 --- a/CHANGES/8667.misc.rst +++ /dev/null @@ -1 +0,0 @@ -Improved performance of generating random WebSocket mask -- by :user:`bdraco`. diff --git a/CHANGES/8672.bugfix.rst b/CHANGES/8672.bugfix.rst deleted file mode 100644 index a57ed16d5d2..00000000000 --- a/CHANGES/8672.bugfix.rst +++ /dev/null @@ -1,3 +0,0 @@ -Fixed :py:class:`aiohttp.TCPConnector` doing blocking I/O in the event loop to create the ``SSLContext`` -- by :user:`bdraco`. - -The blocking I/O would only happen once per verify mode. However, it could cause the event loop to block for a long time if the ``SSLContext`` creation is slow, which is more likely during startup when the disk cache is not yet present. diff --git a/aiohttp/__init__.py b/aiohttp/__init__.py index f050229f008..de896a56398 100644 --- a/aiohttp/__init__.py +++ b/aiohttp/__init__.py @@ -1,4 +1,4 @@ -__version__ = "3.10.2" +__version__ = "3.10.3" from typing import TYPE_CHECKING, Tuple