12 Commits

Author SHA256 Message Date
e30bc12168 Accepting request 1298363 from devel:languages:python
Forwarded request #1298128 from glaubitz

- Update to 3.12.15
    * Fixed :class:`~aiohttp.DigestAuthMiddleware` to preserve the algorithm case
      from the server's challenge in the authorization response. This improves
      compatibility with servers that perform case-sensitive algorithm matching
      (e.g., servers expecting ``algorithm=MD5-sess`` instead of ``algorithm=MD5-SESS``)
    * Remove outdated contents of ``aiohttp-devtools`` and ``aiohttp-swagger``
      from Web_advanced docs.
    * Started including the ``llhttp`` :file:`LICENSE` file in wheels by adding
      ``vendor/llhttp/LICENSE`` to ``license-files`` in :file:`setup.cfg`
    * Updated a regex in `test_aiohttp_request_coroutine` for Python 3.14.

OBS-URL: https://build.opensuse.org/request/show/1298363
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-aiohttp?expand=0&rev=59
2025-08-09 17:59:02 +00:00
71dd584400 - Update to 3.12.15
* Fixed :class:`~aiohttp.DigestAuthMiddleware` to preserve the algorithm case
    from the server's challenge in the authorization response. This improves
    compatibility with servers that perform case-sensitive algorithm matching
    (e.g., servers expecting ``algorithm=MD5-sess`` instead of ``algorithm=MD5-SESS``)
  * Remove outdated contents of ``aiohttp-devtools`` and ``aiohttp-swagger``
    from Web_advanced docs.
  * Started including the ``llhttp`` :file:`LICENSE` file in wheels by adding
    ``vendor/llhttp/LICENSE`` to ``license-files`` in :file:`setup.cfg`
  * Updated a regex in `test_aiohttp_request_coroutine` for Python 3.14.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aiohttp?expand=0&rev=156
2025-08-08 10:49:16 +00:00
73ce512f43 Accepting request 1296098 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1296098
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-aiohttp?expand=0&rev=58
2025-07-30 09:41:08 +00:00
ca8b95c71b - enable test_leaks again, works with limited threads
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aiohttp?expand=0&rev=154
2025-07-28 11:21:56 +00:00
ed56020ac4 - Add remove-zlib-ng-test-dep.patch to remove python-zlib-ng test
dependency

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aiohttp?expand=0&rev=153
2025-07-28 10:39:53 +00:00
dc3754d5a3 Accepting request 1294222 from devel:languages:python
- update to 3.12.14:
  * Fixed file uploads failing with HTTP 422 errors when
    encountering 307/308 redirects, and 301/302 redirects for
    non-POST methods, by preserving the request body when
    appropriate per RFC 9110 -- by :user:`bdraco`. Related issues
    and pull requests on GitHub: :issue:`11270`.
  * Fixed :py:meth:`ClientSession.close()
    <aiohttp.ClientSession.close>` hanging indefinitely when
    using HTTPS requests through HTTP proxies -- by
    :user:`bdraco`. Related issues and pull requests on GitHub:
    :issue:`11273`.
  * Bumped minimum version of aiosignal to 1.4+ to resolve typing
    issues -- by :user:`Dreamsorcerer`. Related issues and pull
    requests on GitHub: :issue:`11280`.
  * Added initial trailer parsing logic to Python HTTP parser --
    by :user:`Dreamsorcerer`. Related issues and pull requests on
    GitHub: :issue:`11269`.
  * Clarified exceptions raised by WebSocketResponse.send_frame
    et al. -- by :user:`DoctorJohn`. Related issues and pull
    requests on GitHub: :issue:`11234`.

OBS-URL: https://build.opensuse.org/request/show/1294222
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-aiohttp?expand=0&rev=57
2025-07-18 13:57:49 +00:00
97682137f7 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aiohttp?expand=0&rev=151 2025-07-17 20:02:17 +00:00
84377d27fe OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aiohttp?expand=0&rev=150 2025-07-16 10:56:57 +00:00
16852995ad - update to 3.12.14:
* Fixed file uploads failing with HTTP 422 errors when
    encountering 307/308 redirects, and 301/302 redirects for
    non-POST methods, by preserving the request body when
    appropriate per RFC 9110 -- by :user:`bdraco`. Related issues
    and pull requests on GitHub: :issue:`11270`.
  * Fixed :py:meth:`ClientSession.close()
    <aiohttp.ClientSession.close>` hanging indefinitely when
    using HTTPS requests through HTTP proxies -- by
    :user:`bdraco`. Related issues and pull requests on GitHub:
    :issue:`11273`.
  * Bumped minimum version of aiosignal to 1.4+ to resolve typing
    issues -- by :user:`Dreamsorcerer`. Related issues and pull
    requests on GitHub: :issue:`11280`.
  * Added initial trailer parsing logic to Python HTTP parser --
    by :user:`Dreamsorcerer`. Related issues and pull requests on
    GitHub: :issue:`11269`.
  * Clarified exceptions raised by WebSocketResponse.send_frame
    et al. -- by :user:`DoctorJohn`. Related issues and pull
    requests on GitHub: :issue:`11234`.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aiohttp?expand=0&rev=149
2025-07-14 15:17:54 +00:00
291339e809 Accepting request 1289166 from devel:languages:python
- Add remove-isal-test-dep.patch to remove python-isal test
  dependency, that's not part of Factory yet.

- 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

OBS-URL: https://build.opensuse.org/request/show/1289166
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-aiohttp?expand=0&rev=56
2025-07-01 09:33:12 +00:00
f76bdb9865 - Add remove-isal-test-dep.patch to remove python-isal test
dependency, that's not part of Factory yet.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-aiohttp?expand=0&rev=147
2025-06-30 06:09:48 +00:00
45126d855a - 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/package/show/devel:languages:python/python-aiohttp?expand=0&rev=146
2025-06-30 05:44:16 +00:00
6 changed files with 159 additions and 21 deletions

BIN
aiohttp-3.11.16.tar.gz (Stored with Git LFS)

Binary file not shown.

3
aiohttp-3.12.15.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4fc61385e9c98d72fcdf47e6dd81833f47b2f77c114c29cd64a361be57a763a2
size 7823716

View File

@@ -1,3 +1,92 @@
-------------------------------------------------------------------
Thu Aug 7 11:36:47 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 3.12.15
* Fixed :class:`~aiohttp.DigestAuthMiddleware` to preserve the algorithm case
from the server's challenge in the authorization response. This improves
compatibility with servers that perform case-sensitive algorithm matching
(e.g., servers expecting ``algorithm=MD5-sess`` instead of ``algorithm=MD5-SESS``)
* Remove outdated contents of ``aiohttp-devtools`` and ``aiohttp-swagger``
from Web_advanced docs.
* Started including the ``llhttp`` :file:`LICENSE` file in wheels by adding
``vendor/llhttp/LICENSE`` to ``license-files`` in :file:`setup.cfg`
* Updated a regex in `test_aiohttp_request_coroutine` for Python 3.14.
-------------------------------------------------------------------
Mon Jul 28 08:16:17 UTC 2025 - Nico Krapp <nico.krapp@suse.com>
- Add remove-zlib-ng-test-dep.patch to remove python-zlib-ng test
dependency
- enable test_leaks again, works with limited threads
-------------------------------------------------------------------
Mon Jul 14 15:17:06 UTC 2025 - Dirk Müller <dmueller@suse.com>
- update to 3.12.14:
* Fixed file uploads failing with HTTP 422 errors when
encountering 307/308 redirects, and 301/302 redirects for
non-POST methods, by preserving the request body when
appropriate per RFC 9110 -- by :user:`bdraco`. Related issues
and pull requests on GitHub: :issue:`11270`.
* Fixed :py:meth:`ClientSession.close()
<aiohttp.ClientSession.close>` hanging indefinitely when
using HTTPS requests through HTTP proxies -- by
:user:`bdraco`. Related issues and pull requests on GitHub:
:issue:`11273`.
* Bumped minimum version of aiosignal to 1.4+ to resolve typing
issues -- by :user:`Dreamsorcerer`. Related issues and pull
requests on GitHub: :issue:`11280`.
* Added initial trailer parsing logic to Python HTTP parser --
by :user:`Dreamsorcerer`. Related issues and pull requests on
GitHub: :issue:`11269`.
* Clarified exceptions raised by WebSocketResponse.send_frame
et al. -- by :user:`DoctorJohn`. Related issues and pull
requests on GitHub: :issue:`11234`.
-------------------------------------------------------------------
Mon Jun 30 06:00:18 UTC 2025 - Daniel Garcia <daniel.garcia@suse.com>
- Add remove-isal-test-dep.patch to remove python-isal test
dependency, that's not part of Factory yet.
-------------------------------------------------------------------
Fri Jun 20 05:53:30 UTC 2025 - Markéta Machová <mmachova@suse.com>
- 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 <adrian.glaubitz@suse.com>

View File

@@ -19,20 +19,22 @@
%bcond_with docs
%{?sle15_python_module_pythons}
Name: python-aiohttp
Version: 3.11.16
Version: 3.12.15
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-aiosignal >= 1.1.2
# PATCH-FIX-OPENSUSE remove-isal-test-dep.patch -- daniel.garcia@suse.com
# Remove python-isal dependency for testing.
Patch1: remove-isal-test-dep.patch
# PATCH-FIX-OPENSUSE remove-zlib-ng-test-dep.patch
Patch2: remove-zlib-ng-test-dep.patch
Requires: python-aiohappyeyeballs >= 2.5.0
Requires: python-aiosignal >= 1.4
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 +52,8 @@ BuildRequires: fdupes
BuildRequires: python-rpm-macros
# /SECTION
# SECTION install requirements
BuildRequires: %{python_module aiohappyeyeballs >= 2.3.0}
BuildRequires: %{python_module aiosignal >= 1.1.2}
BuildRequires: %{python_module async_timeout >= 4.0 with %python-async_timeout < 5}
BuildRequires: %{python_module aiohappyeyeballs >= 2.5.0}
BuildRequires: %{python_module aiosignal >= 1.4}
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}
@@ -60,8 +61,8 @@ BuildRequires: %{python_module multidict >= 4.5 with %python-multidict < 7}
BuildRequires: %{python_module yarl >= 1.17.0 with %python-yarl < 2}
# /SECTION
# 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 pluggy}
@@ -127,15 +128,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
@@ -149,8 +148,7 @@ single_runs="(test_run_app or test_web_runner)"
# breaks without threading
single_runs+=" and not test_shutdown_handler_cancellation_suppressed"
test -d aiohttp && mv aiohttp aiohttp.bkp
%pytest_arch %{?jobs: -n %jobs} tests -k "not ($donttest or ${single_runs})"
%pytest_arch tests -k "${single_runs}"
%pytest_arch tests -n 4 -k "not ($donttest or skip_blockbuster)"
%files %{python_files}
%license LICENSE.txt

View File

@@ -0,0 +1,21 @@
Index: aiohttp-3.12.13/tests/conftest.py
===================================================================
--- aiohttp-3.12.13.orig/tests/conftest.py
+++ aiohttp-3.12.13/tests/conftest.py
@@ -12,7 +12,6 @@ from typing import Any, AsyncIterator, G
from unittest import mock
from uuid import uuid4
-import isal.isal_zlib
import pytest
import zlib_ng.zlib_ng
from blockbuster import blockbuster_ctx
@@ -331,7 +330,7 @@ def unused_port_socket() -> Generator[so
s.close()
-@pytest.fixture(params=[zlib, zlib_ng.zlib_ng, isal.isal_zlib])
+@pytest.fixture(params=[zlib, zlib_ng.zlib_ng])
def parametrize_zlib_backend(
request: pytest.FixtureRequest,
) -> Generator[None, None, None]:

View File

@@ -0,0 +1,30 @@
Index: aiohttp-3.12.14/requirements/test.in
===================================================================
--- aiohttp-3.12.14.orig/requirements/test.in
+++ aiohttp-3.12.14/requirements/test.in
@@ -17,4 +17,3 @@ re-assert
setuptools-git
trustme; platform_machine != "i686" # no 32-bit wheels
wait-for-it
-zlib_ng
Index: aiohttp-3.12.14/tests/conftest.py
===================================================================
--- aiohttp-3.12.14.orig/tests/conftest.py
+++ aiohttp-3.12.14/tests/conftest.py
@@ -13,7 +13,6 @@ from unittest import mock
from uuid import uuid4
import pytest
-import zlib_ng.zlib_ng
from blockbuster import blockbuster_ctx
from aiohttp import payload
@@ -330,7 +329,7 @@ def unused_port_socket() -> Generator[so
s.close()
-@pytest.fixture(params=[zlib, zlib_ng.zlib_ng])
+@pytest.fixture(params=[zlib])
def parametrize_zlib_backend(
request: pytest.FixtureRequest,
) -> Generator[None, None, None]: