diff --git a/aiohttp-3.10.10.tar.gz b/aiohttp-3.10.10.tar.gz deleted file mode 100644 index ea8d180..0000000 --- a/aiohttp-3.10.10.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:0631dd7c9f0822cc61c88586ca76d5b5ada26538097d0f1df510b082bad3411a -size 7542993 diff --git a/aiohttp-3.11.9.tar.gz b/aiohttp-3.11.9.tar.gz new file mode 100644 index 0000000..2564dd3 --- /dev/null +++ b/aiohttp-3.11.9.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9266644064779840feec0e34f10a89b3ff1d2d6b751fe90017abcad1864fa7c +size 7668012 diff --git a/python-aiohttp.changes b/python-aiohttp.changes index 8cf5c57..4001ca0 100644 --- a/python-aiohttp.changes +++ b/python-aiohttp.changes @@ -1,3 +1,252 @@ +------------------------------------------------------------------- +Thu Dec 5 11:02:09 UTC 2024 - Daniel Garcia + +- Update to 3.11.9: + * Fixed invalid method logging unexpected being logged at exception + level on subsequent connections -- by :user:`bdraco`. + * Improved performance of parsing headers when using the C parser -- + by :user:`bdraco`. +- 3.11.8: + * Improved performance of creating :class:`aiohttp.ClientResponse` + objects when there are no cookies -- by :user:`bdraco`. + * Improved performance of creating :class:`aiohttp.ClientResponse` + objects -- by :user:`bdraco`. + * Improved performances of creating objects during the HTTP request + lifecycle -- by :user:`bdraco`. + * Improved performance of constructing :class:`aiohttp.web.Response` + with headers -- by :user:`bdraco`. + * Improved performance of making requests when there are no auto + headers to skip -- by :user:`bdraco`. + * Downgraded logging of invalid HTTP method exceptions on the first + request to debug level -- by :user:`bdraco`. + +------------------------------------------------------------------- +Fri Nov 22 11:58:54 UTC 2024 - Dirk Müller + +- update to 3.11.7: + * Fixed the HTTP client not considering the connector's + force_close value when setting the Connection header -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`10003`. + * Improved performance of serializing HTTP headers -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`10014`. + * Restored the force_close method to the ResponseHandler -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`9997`. + * Fixed the ANY method not appearing in + :meth:`~aiohttp.web.UrlDispatcher.routes` -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`9899`, :issue:`9987`. + * Fixed StaticResource not allowing the OPTIONS method after + calling set_options_route -- by :user:`bdraco`. Related + issues and pull requests on GitHub: :issue:`9972`, + :issue:`9975`, :issue:`9976`. + * Improved performance of creating web responses when there are + no cookies -- by :user:`bdraco`. Related issues and pull + requests on GitHub: :issue:`9895`. + * Removed non-existing __author__ from dir(aiohttp) -- by + :user:`Dreamsorcerer`. Related issues and pull requests on + GitHub: :issue:`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: :issue:`9963`. + * Improved performance of resolving resources when multiple + methods are registered for the same route -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`9899`. + * Fixed improperly closed WebSocket connections generating an + unhandled exception -- by :user:`bdraco`. Related issues and + pull requests on GitHub: :issue:`9883`. + * Added a backward compatibility layer to + :class:`aiohttp.RequestInfo` to allow creating these objects + without a real_url -- by :user:`bdraco`. Related issues and + pull requests on GitHub: :issue:`9873`. + * Raise :exc:`aiohttp.ServerFingerprintMismatch` exception on + client-side if request through http proxy with mismatching + server fingerprint digest: + aiohttp.ClientSession(headers=headers, connector=TCPConnector + (ssl=aiohttp.Fingerprint(mismatch_digest), + trust_env=True).request(...) -- by :user:`gangj`. Related + issues and pull requests on GitHub: :issue:`6652`. + * Modified websocket + :meth:`aiohttp.ClientWebSocketResponse.receive_str`, + :py:meth:`aiohttp.ClientWebSocketResponse.receive_bytes`, + :py:meth:`aiohttp.web.WebSocketResponse.receive_str` & + :py:meth:`aiohttp.web.WebSocketResponse.receive_bytes` + methods to raise new :py:exc:`aiohttp.WSMessageTypeError` + exception, instead of generic :py:exc:`TypeError`, when + websocket messages of incorrect types are received -- by + :user:`ara-25`. Related issues and pull requests on GitHub: + :issue:`6800`. + * Made TestClient.app a Generic so type checkers will know the + correct type (avoiding unneeded client.app is not None + checks) -- by :user:`Dreamsorcerer`. Related issues and pull + requests on GitHub: :issue:`8977`. + * Fixed the keep-alive connection pool to be FIFO instead of + LIFO -- by :user:`bdraco`. Keep-alive connections are more + likely to be reused before they disconnect. Related issues + and pull requests on GitHub: :issue:`9672`. + * Added strategy parameter to + :meth:`aiohttp.web.StreamResponse.enable_compression` The + value of this parameter is passed to the + :func:`zlib.compressobj` function, allowing people to use a + more sufficient compression algorithm for their data served + by :mod:`aiohttp.web` -- by :user:`shootkin` Related issues + and pull requests on GitHub: :issue:`6257`. + * Added server_hostname parameter to ws_connect. Related issues + and pull requests on GitHub: :issue:`7941`. + * Exported :py:class:`~aiohttp.ClientWSTimeout` to top-level + namespace -- by :user:`Dreamsorcerer`. Related issues and + pull requests on GitHub: :issue:`8612`. + * Added secure/httponly/samesite parameters to .del_cookie() -- + by :user:`Dreamsorcerer`. Related issues and pull requests on + GitHub: :issue:`8956`. + * Updated :py:class:`~aiohttp.ClientSession`'s auth logic to + include default auth only if the request URL's origin matches + _base_url; otherwise, the auth will not be included -- by + :user:`MaximZemskov` Related issues and pull requests on + GitHub: :issue:`8966`, :issue:`9466`. + * Added proxy and proxy_auth parameters to + :py:class:`~aiohttp.ClientSession` -- by :user:`meshya`. + Related issues and pull requests on GitHub: :issue:`9207`. + * Added default_to_multipart parameter to FormData. Related + issues and pull requests on GitHub: :issue:`9335`. + * Added :py:meth:`~aiohttp.ClientWebSocketResponse.send_frame` + and :py:meth:`~aiohttp.web.WebSocketResponse.send_frame` for + WebSockets -- by :user:`bdraco`. Related issues and pull + requests on GitHub: :issue:`9348`. + * Updated :py:class:`~aiohttp.ClientSession` to support paths + in base_url parameter. base_url paths must end with a / -- + by :user:`Cycloctane`. Related issues and pull requests on + GitHub: :issue:`9530`. + * Improved performance of reading WebSocket messages with a + Cython implementation -- by :user:`bdraco`. Related issues + and pull requests on GitHub: :issue:`9543`, :issue:`9554`, + :issue:`9556`, :issue:`9558`, :issue:`9636`, :issue:`9649`, + :issue:`9781`. + * Added writer_limit to the + :py:class:`~aiohttp.web.WebSocketResponse` to be able to + adjust the limit before the writer forces the buffer to be + drained -- by :user:`bdraco`. Related issues and pull + requests on GitHub: :issue:`9572`. + * Added an :attr:`~aiohttp.abc.AbstractAccessLogger.enabled` + property to :class:`aiohttp.abc.AbstractAccessLogger` to + dynamically check if logging is enabled -- by :user:`bdraco`. + Related issues and pull requests on GitHub: :issue:`9822`. + * Deprecate obsolete timeout: float and receive_timeout: + Optional[float] in + :py:meth:`~aiohttp.ClientSession.ws_connect`. Change default + websocket receive timeout from None to 10.0. Related issues + and pull requests on GitHub: :issue:`3945`. + * Dropped support for Python 3.8 -- by :user:`Dreamsorcerer`. + Related issues and pull requests on GitHub: :issue:`8797`. + * Increased minimum yarl version to 1.17.0 -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`8909`, :issue:`9079`, :issue:`9305`, :issue:`9574`. + * Removed the is_ipv6_address and is_ip4_address helpers are + they are no longer used -- by :user:`bdraco`. Related issues + and pull requests on GitHub: :issue:`9344`. + * Changed ClientRequest.connection_key to be a NamedTuple to + improve client performance -- by :user:`bdraco`. Related + issues and pull requests on GitHub: :issue:`9365`. + * FlowControlDataQueue has been replaced with the + WebSocketDataQueue -- by :user:`bdraco`. Related issues and + pull requests on GitHub: :issue:`9685`. + * Changed ClientRequest.request_info to be a NamedTuple to + improve client performance -- by :user:`bdraco`. Related + issues and pull requests on GitHub: :issue:`9692`. + * Switched to using the :mod:`propcache ` + package for property caching -- by :user:`bdraco`. The + :mod:`propcache ` package is derived from the + property caching code in :mod:`yarl` and has been broken out + to avoid maintaining it for multiple projects. Related issues + and pull requests on GitHub: :issue:`9394`. + * Separated aiohttp.http_websocket into multiple files to make + it easier to maintain -- by :user:`bdraco`. Related issues + and pull requests on GitHub: :issue:`9542`, :issue:`9552`. + * Changed diagram images generator from blockdiag to GraphViz. + Generating documentation now requires the GraphViz executable + to be included in $PATH or sphinx build configuration. + Related issues and pull requests on GitHub: :issue:`9359`. + * Added flake8 settings to avoid some forms of implicit + concatenation. -- by :user:`booniepepper`. Related issues and + pull requests on GitHub: :issue:`7731`. + * Enabled keep-alive support on proxies (which was originally + disabled several years ago) -- by :user:`Dreamsorcerer`. + Related issues and pull requests on GitHub: :issue:`8920`. + * Changed web entry point to not listen on TCP when only a Unix + path is passed -- by :user:`Dreamsorcerer`. Related issues + and pull requests on GitHub: :issue:`9033`. + * Disabled automatic retries of failed requests in + :class:`aiohttp.test_utils.TestClient`'s client session + (which could potentially hide errors in tests) -- by + :user:`ShubhAgarwal-dev`. Related issues and pull requests on + GitHub: :issue:`9141`. + * Changed web keepalive_timeout default to around an hour in + order to reduce race conditions on reverse proxies -- by + :user:`Dreamsorcerer`. Related issues and pull requests on + GitHub: :issue:`9285`. + * Reduced memory required for stream objects created during the + client request lifecycle -- by :user:`bdraco`. Related issues + and pull requests on GitHub: :issue:`9407`. + * Improved performance of the internal DataQueue -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`9659`. + * Improved performance of calling receive for WebSockets for + the most common message types -- by :user:`bdraco`. Related + issues and pull requests on GitHub: :issue:`9679`. + * Replace internal helper methods method_must_be_empty_body and + status_code_must_be_empty_body with simple set lookups -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`9722`. + * Improved performance of :py:class:`aiohttp.BaseConnector` + when there is no limit_per_host -- by :user:`bdraco`. Related + issues and pull requests on GitHub: :issue:`9756`. + * Improved performance of sending HTTP requests when there is + no body -- by :user:`bdraco`. Related issues and pull + requests on GitHub: :issue:`9757`. + * Improved performance of the WebsocketWriter when the protocol + is not paused -- by :user:`bdraco`. Related issues and pull + requests on GitHub: :issue:`9796`. + * Implemented zero copy writes for StreamWriter -- by + :user:`bdraco`. Related issues and pull requests on GitHub: + :issue:`9839`. + +------------------------------------------------------------------- +Tue Nov 19 08:50:53 UTC 2024 - Daniel Garcia + +- update to 3.10.11: + (bsc#1233446, CVE-2024-52303, bsc#1233447, CVE-2024-52304) + - Authentication provided by a redirect now takes precedence over + provided auth when making requests with the client -- by + :user:`PLPeeters`. + - Fixed :py:meth:`WebSocketResponse.close() + ` to discard non-close + messages within its timeout window after sending close -- by + :user:`lenard-mosys`. + - Fixed a deadlock that could occur while attempting to get a new + connection slot after a timeout -- by :user:`bdraco`. + - Fixed the WebSocket flow control calculation undercounting with + multi-byte data -- by :user:`bdraco`. + - Fixed incorrect parsing of chunk extensions with the pure Python + parser -- by :user:`bdraco`. + - Fixed system routes polluting the middleware cache -- by + :user:`bdraco`. + - Improved performance of the connector when a connection can be + reused -- by :user:`bdraco`. + - Improved performance of the client request lifecycle when there + are no cookies -- by :user:`bdraco`. + - Improved performance of sending client requests when the writer + can finish synchronously -- by :user:`bdraco`. + - Improved performance of serializing HTTP headers -- by + :user:`bdraco`. + - Passing enable_cleanup_closed to :py:class:`aiohttp.TCPConnector` + is now ignored on Python 3.12.7+ and 3.13.1+ since the underlying + bug that caused asyncio to leak SSL connections has been fixed + upstream -- by :user:`bdraco`. + ------------------------------------------------------------------- Tue Oct 22 13:14:05 UTC 2024 - Dirk Müller diff --git a/python-aiohttp.spec b/python-aiohttp.spec index 8d4ef20..ae2738c 100644 --- a/python-aiohttp.spec +++ b/python-aiohttp.spec @@ -19,7 +19,7 @@ %bcond_with docs %{?sle15_python_module_pythons} Name: python-aiohttp -Version: 3.10.10 +Version: 3.11.9 Release: 0 Summary: Asynchronous HTTP client/server framework License: Apache-2.0 @@ -36,7 +36,7 @@ Requires: (python-async_timeout >= 4.0 with python-async_timeout < 5) %endif Requires: (python-charset-normalizer >= 2.0 with python-charset-normalizer < 4) Requires: (python-multidict >= 4.5 with python-multidict < 7) -Requires: (python-yarl >= 1.13.0 with python-yarl < 2) +Requires: (python-yarl >= 1.17.0 with python-yarl < 2) Recommends: python-Brotli Recommends: python-aiodns Recommends: python-cChardet @@ -58,7 +58,7 @@ BuildRequires: %{python_module attrs >= 17.3.0} BuildRequires: %{python_module charset-normalizer >= 2.0 with %python-charset-normalizer < 4} BuildRequires: %{python_module frozenlist >= 1.1.1} BuildRequires: %{python_module multidict >= 4.5 with %python-multidict < 7} -BuildRequires: %{python_module yarl >= 1.13.0 with %python-yarl < 2} +BuildRequires: %{python_module yarl >= 1.17.0 with %python-yarl < 2} # /SECTION # SECTION test requirements BuildRequires: %{python_module aiodns} @@ -68,6 +68,7 @@ BuildRequires: %{python_module gunicorn} BuildRequires: %{python_module pluggy} BuildRequires: %{python_module propcache} BuildRequires: %{python_module pytest >= 6.2.0} +BuildRequires: %{python_module pytest-cov} BuildRequires: %{python_module pytest-mock} BuildRequires: %{python_module pytest-timeout} BuildRequires: %{python_module pytest-xdist} @@ -141,6 +142,9 @@ donttest+=" or (test_pytest_plugin and test_aiohttp_plugin)" rm -v tests/autobahn/test_autobahn.py # uses proxy.py which is not maintained anymore rm -v tests/test_proxy_functional.py +# Requires python-pytest-codspeed +rm -v tests/test_benchmarks_* + # randomly fails on xdist splits single_runs="(test_run_app or test_web_runner)" # breaks without threading diff --git a/test_relax_import_time.patch b/test_relax_import_time.patch index 19218ca..cfc612b 100644 --- a/test_relax_import_time.patch +++ b/test_relax_import_time.patch @@ -1,16 +1,20 @@ -diff -Nru aiohttp-3.10.9.orig/tests/test_imports.py aiohttp-3.10.9/tests/test_imports.py ---- aiohttp-3.10.9.orig/tests/test_imports.py 2024-10-04 18:47:06.000000000 +0200 -+++ aiohttp-3.10.9/tests/test_imports.py 2024-10-09 09:57:53.705087969 +0200 -@@ -29,7 +29,7 @@ - - - _TARGET_TIMINGS_BY_PYTHON_VERSION = { -- "3.12": 250, # 3.12 is expected to be a bit slower due to performance trade-offs -+ "3.12": 500, # 3.12 is expected to be a bit slower due to performance trade-offs +Index: aiohttp-3.10.11/tests/test_imports.py +=================================================================== +--- aiohttp-3.10.11.orig/tests/test_imports.py ++++ aiohttp-3.10.11/tests/test_imports.py +@@ -36,9 +36,9 @@ _TARGET_TIMINGS_BY_PYTHON_VERSION = { + "3.12": ( + # 3.12+ is expected to be a bit slower due to performance trade-offs, + # and even slower under pytest-xdist, especially in CI +- _XDIST_WORKER_COUNT * 100 * (1 if _IS_CI_ENV else 1.53) ++ _XDIST_WORKER_COUNT * 250 * (1 if _IS_CI_ENV else 1.53) + if _IS_XDIST_RUN +- else 265 ++ else 500 + ), } - - -@@ -66,6 +66,6 @@ + _TARGET_TIMINGS_BY_PYTHON_VERSION["3.13"] = _TARGET_TIMINGS_BY_PYTHON_VERSION["3.12"] +@@ -78,6 +78,6 @@ def test_import_time(pytester: pytest.Py os.environ["PYTHONPATH"] = old_path expected_time = _TARGET_TIMINGS_BY_PYTHON_VERSION.get(