From e1224deaee2d68cc84bddf6c743d5579e55be5433b4838f5f8564efd227ed442 Mon Sep 17 00:00:00 2001 From: Daniel Garcia Date: Mon, 30 Jun 2025 05:44:16 +0000 Subject: [PATCH] Accepting request 1288672 from home:mcalabkova:branches:devel:languages:python - Update to 3.12.13 * Optimized web server performance when access logging is disabled by reducing time syscalls * Improved performance of the WebSocket reader * Disabled TLS in TLS warning (when using HTTPS proxies) for uvloop and newer Python versions * Added a comprehensive HTTP Digest Authentication client middleware (DigestAuthMiddleware) that implements RFC 7616. * Fixed pytest plugin to not use deprecated asyncio policy APIs. * Allow user setting zlib compression backend * Added host parameter to aiohttp_server fixture * Added socket_factory to aiohttp.TCPConnector to allow specifying custom socket options * Upgraded to LLHTTP 9.3.0 * Optimized small HTTP requests/responses by coalescing headers and body into a single TCP packet * Removed non SPDX-license description from setup.cfg * Added support for building against system llhttp library * Fixed compatibility issue with Cython 3.1.1 * Added support for reusable request bodies to enable retries, redirects, and digest authentication * Improved performance of isinstance checks by using collections.abc types instead of typing module equivalents * Added ssl_shutdown_timeout parameter to aiohttp.ClientSession and aiohttp.TCPConnector to control the grace period for SSL shutdown handshake on TLS connections. * Downgraded the logging level for connector close errors from ERROR to DEBUG, as these are expected behavior with TLS 1.3 connections * Fixed cookie parsing to be more lenient when handling cookies with special characters in names or values OBS-URL: https://build.opensuse.org/request/show/1288672 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aiohttp?expand=0&rev=146 --- aiohttp-3.11.16.tar.gz | 3 --- aiohttp-3.12.13.tar.gz | 3 +++ python-aiohttp.changes | 38 ++++++++++++++++++++++++++++++++++++++ python-aiohttp.spec | 25 ++++++++++++------------- 4 files changed, 53 insertions(+), 16 deletions(-) delete mode 100644 aiohttp-3.11.16.tar.gz create mode 100644 aiohttp-3.12.13.tar.gz diff --git a/aiohttp-3.11.16.tar.gz b/aiohttp-3.11.16.tar.gz deleted file mode 100644 index cd5e93c..0000000 --- a/aiohttp-3.11.16.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:16f8a2c9538c14a557b4d309ed4d0a7c60f0253e8ed7b6c9a2859a7582f8b1b8 -size 7676826 diff --git a/aiohttp-3.12.13.tar.gz b/aiohttp-3.12.13.tar.gz new file mode 100644 index 0000000..b7e27d7 --- /dev/null +++ b/aiohttp-3.12.13.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47e2da578528264a12e4e3dd8dd72a7289e5f812758fe086473fab037a10fcce +size 7819160 diff --git a/python-aiohttp.changes b/python-aiohttp.changes index b12bd4f..6babe73 100644 --- a/python-aiohttp.changes +++ b/python-aiohttp.changes @@ -1,3 +1,41 @@ +------------------------------------------------------------------- +Fri Jun 20 05:53:30 UTC 2025 - Markéta Machová + +- Update to 3.12.13 + * Optimized web server performance when access logging is disabled + by reducing time syscalls + * Improved performance of the WebSocket reader + * Disabled TLS in TLS warning (when using HTTPS proxies) for uvloop + and newer Python versions + * Added a comprehensive HTTP Digest Authentication client middleware + (DigestAuthMiddleware) that implements RFC 7616. + * Fixed pytest plugin to not use deprecated asyncio policy APIs. + * Allow user setting zlib compression backend + * Added host parameter to aiohttp_server fixture + * Added socket_factory to aiohttp.TCPConnector to allow specifying + custom socket options + * Upgraded to LLHTTP 9.3.0 + * Optimized small HTTP requests/responses by coalescing headers and + body into a single TCP packet + * Removed non SPDX-license description from setup.cfg + * Added support for building against system llhttp library + * Fixed compatibility issue with Cython 3.1.1 + * Added support for reusable request bodies to enable retries, + redirects, and digest authentication + * Improved performance of isinstance checks by using collections.abc + types instead of typing module equivalents + * Added ssl_shutdown_timeout parameter to aiohttp.ClientSession and + aiohttp.TCPConnector to control the grace period for SSL shutdown + handshake on TLS connections. + * Downgraded the logging level for connector close errors from ERROR + to DEBUG, as these are expected behavior with TLS 1.3 connections + * Fixed cookie parsing to be more lenient when handling cookies with + special characters in names or values + * Improved SSL connection handling by changing the default ssl_shutdown_timeout + from 0.1 to 0 seconds. The ssl_shutdown_timeout parameter is now deprecated + and will be removed in aiohttp 4.0 +- Review tests + ------------------------------------------------------------------- Tue Apr 15 09:18:21 UTC 2025 - John Paul Adrian Glaubitz diff --git a/python-aiohttp.spec b/python-aiohttp.spec index ed260c6..f76e188 100644 --- a/python-aiohttp.spec +++ b/python-aiohttp.spec @@ -19,20 +19,17 @@ %bcond_with docs %{?sle15_python_module_pythons} Name: python-aiohttp -Version: 3.11.16 +Version: 3.12.13 Release: 0 Summary: Asynchronous HTTP client/server framework License: Apache-2.0 URL: https://github.com/aio-libs/aiohttp Source: https://files.pythonhosted.org/packages/source/a/aiohttp/aiohttp-%{version}.tar.gz Patch0: test_no_warnings_fix.patch -Requires: python-aiohappyeyeballs >= 2.3.0 +Requires: python-aiohappyeyeballs >= 2.5.0 Requires: python-aiosignal >= 1.1.2 Requires: python-attrs >= 17.3.0 Requires: python-frozenlist >= 1.1.1 -%if 0%{?python_version_nodots} < 311 -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.17.0 with python-yarl < 2) @@ -50,9 +47,8 @@ BuildRequires: fdupes BuildRequires: python-rpm-macros # /SECTION # SECTION install requirements -BuildRequires: %{python_module aiohappyeyeballs >= 2.3.0} +BuildRequires: %{python_module aiohappyeyeballs >= 2.5.0} BuildRequires: %{python_module aiosignal >= 1.1.2} -BuildRequires: %{python_module async_timeout >= 4.0 with %python-async_timeout < 5} 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} @@ -62,8 +58,10 @@ BuildRequires: %{python_module yarl >= 1.17.0 with %python-yarl < 2} # SECTION test requirements BuildRequires: %{python_module aiodns} BuildRequires: %{python_module Brotli} +BuildRequires: %{python_module blockbuster} BuildRequires: %{python_module freezegun} BuildRequires: %{python_module gunicorn} +BuildRequires: %{python_module isal} BuildRequires: %{python_module pluggy} BuildRequires: %{python_module propcache} BuildRequires: %{python_module pytest >= 6.2.0} @@ -74,6 +72,7 @@ BuildRequires: %{python_module pytest-xdist} BuildRequires: %{python_module re-assert} BuildRequires: %{python_module time-machine} BuildRequires: %{python_module trustme} +BuildRequires: %{python_module zlib-ng} # /SECTION # SECTION docs %if %{with docs} @@ -127,15 +126,13 @@ rm -r %{buildroot}%{$python_sitearch}/aiohttp/.hash %check donttest="test_aiohttp_request_coroutine or test_mark_formdata_as_processed or test_aiohttp_plugin_async or test_secure_https_proxy_absolute_path" -# # no name resolution -# donttest+=" or test_client_session_timeout_zero" # # flaky # donttest+=" or test_https_proxy_unsupported_tls_in_tls" # donttest+=" or test_shutdown_handler_cancellation_suppressed" -# raises not expected "ConnectionResetError" with openssl 3.2 and python < 3.11 -donttest+=" or test_tcp_connector_raise_connector_ssl_error[pyloop]" -# # fails with pytest 8 https://github.com/aio-libs/aiohttp/issues/8234 -# donttest+=" or (test_pytest_plugin and test_aiohttp_plugin)" +# https://github.com/aio-libs/aiohttp/issues/11113 +donttest+=" or test_tcp_connector_ssl_shutdown_timeout" +# most probably https://github.com/cbornet/blockbuster/issues/47 +donttest+=" or (test_cookie_jar and (heap or expire)) or test_treat_as_secure_origin_init" # requires python-on-whales rm -v tests/autobahn/test_autobahn.py @@ -143,6 +140,8 @@ rm -v tests/autobahn/test_autobahn.py rm -v tests/test_proxy_functional.py # Requires python-pytest-codspeed rm -v tests/test_benchmarks_* +# some tests from here hang with pycares 4.9 https://github.com/aio-libs/aiohttp/issues/11244 +rm -v tests/test_leaks.py # randomly fails on xdist splits single_runs="(test_run_app or test_web_runner)"