git: 6cb3098804b0 - main - www/py-aiohttp: Update to 3.13.3

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Sat, 31 Jan 2026 14:22:46 UTC
The branch main has been updated by sunpoet:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6cb3098804b01768eaa21dea1362373359223ec5

commit 6cb3098804b01768eaa21dea1362373359223ec5
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2026-01-31 13:36:25 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2026-01-31 14:15:30 +0000

    www/py-aiohttp: Update to 3.13.3
    
    Changes:        https://github.com/aio-libs/aiohttp/releases
                    https://docs.aiohttp.org/en/stable/changes.html
---
 www/py-aiohttp/Makefile                            | 32 ++++++++++++++++------
 www/py-aiohttp/distinfo                            |  6 ++--
 www/py-aiohttp/files/patch-pyproject.toml          | 20 ++++++++++++++
 .../files/patch-tests-test_proxy_functional.py     | 11 --------
 .../files/patch-tests_autobahn_test__autobahn.py   | 11 --------
 5 files changed, 47 insertions(+), 33 deletions(-)

diff --git a/www/py-aiohttp/Makefile b/www/py-aiohttp/Makefile
index 51b85a75fe2d..9b6a44d4d1d1 100644
--- a/www/py-aiohttp/Makefile
+++ b/www/py-aiohttp/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	aiohttp
-PORTVERSION=	3.11.18
+PORTVERSION=	3.13.3
 CATEGORIES=	www python
 MASTER_SITES=	PYPI \
 		https://github.com/aio-libs/aiohttp/releases/download/v${PORTVERSION}/
@@ -13,33 +13,45 @@ WWW=		https://docs.aiohttp.org/en/stable/ \
 LICENSE=	APACHE20
 LICENSE_FILE=	${WRKSRC}/LICENSE.txt
 
-BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=46.4.0:devel/py-setuptools@${PY_FLAVOR} \
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pkgconfig>=0,1:devel/py-pkgconfig@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}setuptools>=61.0:devel/py-setuptools@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
-RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}aiohappyeyeballs>=2.3.0:net/py-aiohappyeyeballs@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}aiosignal>=1.1.2:devel/py-aiosignal@${PY_FLAVOR} \
+LIB_DEPENDS=	libllhttp.so:www/llhttp
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}aiohappyeyeballs>=2.5.0:net/py-aiohappyeyeballs@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}aiosignal>=1.4.0:devel/py-aiosignal@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}attrs>=17.3.0:devel/py-attrs@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}frozenlist>=1.1.1:devel/py-frozenlist@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}multidict>=4.5<7.0:www/py-multidict@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}propcache>=0.2.0:devel/py-propcache@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}yarl>=1.17.0<2.0:www/py-yarl@${PY_FLAVOR}
 TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}aiodns>=3.2.0:dns/py-aiodns@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}brotli>=0:archivers/py-brotli@${PY_FLAVOR} \
+		${PY_BACKPORTS.ZSTD} \
+		${PYTHON_PKGNAMEPREFIX}brotli>=1.2:archivers/py-brotli@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}freezegun>=0:devel/py-freezegun@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}gunicorn>=0:www/py-gunicorn@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}re-assert>=0:devel/py-re-assert@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}isal>=0:devel/py-isal@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}proxy.py>=2.4.4:www/py-proxy.py@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pytest-codspeed>=0:devel/py-pytest-codspeed@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pytest-cov>=0:devel/py-pytest-cov@${PY_FLAVOR} \
 		${PYTHON_PKGNAMEPREFIX}pytest-mock>=0:devel/py-pytest-mock@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}pytest-codspeed>=0:devel/py-pytest-codspeed@${PY_FLAVOR}
+		${PYTHON_PKGNAMEPREFIX}pytest-xdist>=0,1:devel/py-pytest-xdist@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}re-assert>=0:devel/py-re-assert@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}uvloop>=0:devel/py-uvloop@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}zlib-ng>=0:archivers/py-zlib-ng@${PY_FLAVOR}
 
 USES=		cpe python
 USE_PYTHON=	autoplist concurrent cython pep517 pytest
 
+MAKE_ENV=	USE_SYSTEM_DEPS=1
+
 CPE_VENDOR=	aiohttp_project
 
 OPTIONS_DEFINE=	SPEEDUPS
 SPEEDUPS_DESC=	Performance speedups
 
 SPEEDUPS_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}aiodns>=3.2.0:dns/py-aiodns@${PY_FLAVOR} \
-			${PYTHON_PKGNAMEPREFIX}brotli>=0:archivers/py-brotli@${PY_FLAVOR}
+			${PY_BACKPORTS.ZSTD} \
+			${PYTHON_PKGNAMEPREFIX}brotli>=1.2:archivers/py-brotli@${PY_FLAVOR}
 
 .include <bsd.port.pre.mk>
 
@@ -47,6 +59,10 @@ SPEEDUPS_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}aiodns>=3.2.0:dns/py-aiodns@${PY_FL
 RUN_DEPENDS+=	${PYTHON_PKGNAMEPREFIX}async_timeout>=4.0<6.0:devel/py-async_timeout@${PY_FLAVOR}
 .endif
 
+post-patch:
+# Clean up bundled libraries
+	@${RM} -r ${WRKSRC}/vendor/
+
 post-install:
 	${FIND} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} +
 
diff --git a/www/py-aiohttp/distinfo b/www/py-aiohttp/distinfo
index 65cd2cfaae71..689aeee416ad 100644
--- a/www/py-aiohttp/distinfo
+++ b/www/py-aiohttp/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1745936222
-SHA256 (aiohttp-3.11.18.tar.gz) = ae856e1138612b7e412db63b7708735cff4d38d0399f6a5435d3dac2669f558a
-SIZE (aiohttp-3.11.18.tar.gz) = 7678653
+TIMESTAMP = 1768625759
+SHA256 (aiohttp-3.13.3.tar.gz) = a949eee43d3782f2daae4f4a2819b2cb9b0c5d3b7f7a927067cc84dafdbb9f88
+SIZE (aiohttp-3.13.3.tar.gz) = 7844556
diff --git a/www/py-aiohttp/files/patch-pyproject.toml b/www/py-aiohttp/files/patch-pyproject.toml
new file mode 100644
index 000000000000..fb17201026f0
--- /dev/null
+++ b/www/py-aiohttp/files/patch-pyproject.toml
@@ -0,0 +1,20 @@
+--- pyproject.toml.orig	2026-01-03 16:40:12 UTC
++++ pyproject.toml
+@@ -5,7 +5,7 @@ requires = [
+     # Next step should be >= 77.0 for PEP 639 support
+     # Don't bump too early to give distributors time to update
+     # their setuptools version.
+-    "setuptools >= 67.0",
++    "setuptools >= 61.0",
+ ]
+ build-backend = "setuptools.build_meta"
+ 
+@@ -49,7 +49,7 @@ speedups = [
+ 
+ [project.optional-dependencies]
+ speedups = [
+-  "aiodns >= 3.3.0",
++  "aiodns >= 3.2.0",
+   "Brotli >= 1.2; platform_python_implementation == 'CPython'",
+   "brotlicffi >= 1.2; platform_python_implementation != 'CPython'",
+   "backports.zstd; platform_python_implementation == 'CPython' and python_version < '3.14'",
diff --git a/www/py-aiohttp/files/patch-tests-test_proxy_functional.py b/www/py-aiohttp/files/patch-tests-test_proxy_functional.py
deleted file mode 100644
index b303741596b6..000000000000
--- a/www/py-aiohttp/files/patch-tests-test_proxy_functional.py
+++ /dev/null
@@ -1,11 +0,0 @@
---- tests/test_proxy_functional.py.orig	2022-09-21 13:09:27 UTC
-+++ tests/test_proxy_functional.py
-@@ -7,7 +7,7 @@ from re import match as match_regex
- from unittest import mock
- from uuid import uuid4
- 
--import proxy
-+#import proxy
- import pytest
- from yarl import URL
- 
diff --git a/www/py-aiohttp/files/patch-tests_autobahn_test__autobahn.py b/www/py-aiohttp/files/patch-tests_autobahn_test__autobahn.py
deleted file mode 100644
index 971150f1ccfe..000000000000
--- a/www/py-aiohttp/files/patch-tests_autobahn_test__autobahn.py
+++ /dev/null
@@ -1,11 +0,0 @@
---- tests/autobahn/test_autobahn.py.orig	2025-02-24 15:18:07 UTC
-+++ tests/autobahn/test_autobahn.py
-@@ -5,7 +5,7 @@ import pytest
- from typing import Any, Dict, Generator, List
- 
- import pytest
--import python_on_whales
-+python_on_whales = pytest.importorskip("python_on_whales")
- from pytest import TempPathFactory
- 
-