From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id C7FFB1584AD for ; Wed, 16 Apr 2025 07:28:05 +0000 (UTC) Received: from lists.gentoo.org (bobolink.gentoo.org [140.211.166.189]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: relay-lists.gentoo.org@gentoo.org) by smtp.gentoo.org (Postfix) with ESMTPSA id B4088343105 for ; Wed, 16 Apr 2025 07:28:05 +0000 (UTC) Received: from bobolink.gentoo.org (localhost [127.0.0.1]) by bobolink.gentoo.org (Postfix) with ESMTP id B3E4D110494; Wed, 16 Apr 2025 07:28:04 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by bobolink.gentoo.org (Postfix) with ESMTPS id A8E67110494 for ; Wed, 16 Apr 2025 07:28:04 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 2C41034307D for ; Wed, 16 Apr 2025 07:28:04 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 7E1201758 for ; Wed, 16 Apr 2025 07:28:02 +0000 (UTC) From: "Arthur Zamarin" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Arthur Zamarin" Message-ID: <1744788467.f3ee1efae2374a90b8b4237927316853c79b3e1b.arthurzam@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/aiohttp/files/, dev-python/aiohttp/ X-VCS-Repository: repo/gentoo X-VCS-Files: dev-python/aiohttp/aiohttp-3.11.16-r1.ebuild dev-python/aiohttp/aiohttp-3.11.16.ebuild dev-python/aiohttp/files/aiohttp-3.11.16-devendor-llhttp.patch X-VCS-Directories: dev-python/aiohttp/ dev-python/aiohttp/files/ X-VCS-Committer: arthurzam X-VCS-Committer-Name: Arthur Zamarin X-VCS-Revision: f3ee1efae2374a90b8b4237927316853c79b3e1b X-VCS-Branch: master Date: Wed, 16 Apr 2025 07:28:02 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: a9f555a9-f5ab-4303-ae6f-956ea7c534cc X-Archives-Hash: 926cd9b00b4ddd74e0405a1f3edf7aad commit: f3ee1efae2374a90b8b4237927316853c79b3e1b Author: Arthur Zamarin gentoo org> AuthorDate: Wed Apr 16 07:27:26 2025 +0000 Commit: Arthur Zamarin gentoo org> CommitDate: Wed Apr 16 07:27:47 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f3ee1efa dev-python/aiohttp: devendor llhttp Closes: https://bugs.gentoo.org/953899 Signed-off-by: Arthur Zamarin gentoo.org> ...tp-3.11.16.ebuild => aiohttp-3.11.16-r1.ebuild} | 15 +++++- .../files/aiohttp-3.11.16-devendor-llhttp.patch | 54 ++++++++++++++++++++++ 2 files changed, 67 insertions(+), 2 deletions(-) diff --git a/dev-python/aiohttp/aiohttp-3.11.16.ebuild b/dev-python/aiohttp/aiohttp-3.11.16-r1.ebuild similarity index 91% rename from dev-python/aiohttp/aiohttp-3.11.16.ebuild rename to dev-python/aiohttp/aiohttp-3.11.16-r1.ebuild index 2c0d281aa753..dc9100ad7365 100644 --- a/dev-python/aiohttp/aiohttp-3.11.16.ebuild +++ b/dev-python/aiohttp/aiohttp-3.11.16-r1.ebuild @@ -17,10 +17,15 @@ HOMEPAGE=" LICENSE="Apache-2.0" SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" IUSE="+native-extensions test-rust" -RDEPEND=" +DEPEND=" + $(python_gen_cond_dep ' + native-extensions? ( net-libs/llhttp:= ) + ' 'python3*') +" +RDEPEND="${DEPEND} >=dev-python/aiodns-3.2.0[${PYTHON_USEDEP}] >=dev-python/aiohappyeyeballs-2.3.0[${PYTHON_USEDEP}] >=dev-python/aiosignal-1.1.2[${PYTHON_USEDEP}] @@ -57,6 +62,10 @@ BDEPEND=" DOCS=( CHANGES.rst CONTRIBUTORS.txt README.rst ) +PATCHES=( + "${FILESDIR}"/${PN}-3.11.16-devendor-llhttp.patch +) + EPYTEST_XDIST=1 distutils_enable_tests pytest @@ -66,6 +75,8 @@ src_prepare() { # xfail_strict fails on py3.10 sed -i -e '/--cov/d' -e '/pytest_cov/d' -e '/xfail_strict/d' setup.cfg || die sed -i -e 's:-Werror::' Makefile || die + # remove the bundled llhttp, we use the system one + rm -r vendor/llhttp || die distutils-r1_src_prepare } diff --git a/dev-python/aiohttp/files/aiohttp-3.11.16-devendor-llhttp.patch b/dev-python/aiohttp/files/aiohttp-3.11.16-devendor-llhttp.patch new file mode 100644 index 000000000000..26aa843ad936 --- /dev/null +++ b/dev-python/aiohttp/files/aiohttp-3.11.16-devendor-llhttp.patch @@ -0,0 +1,54 @@ +https://src.fedoraproject.org/rpms/python-aiohttp/raw/bceb660b835a4aaffd763a261cb2cd2392ee06db/f/0001-Unbundle-llhttp.patch +From: =?UTF-8?q?Tom=C3=A1=C5=A1=20Hrn=C4=8Diar?= +Date: Wed, 16 Feb 2022 13:57:57 +0100 +Subject: [PATCH] Unbundle llhttp + +Modified a little by arthurzam@gentoo.org to force cythonize + +--- a/aiohttp/_cparser.pxd ++++ b/aiohttp/_cparser.pxd +@@ -1,7 +1,7 @@ + from libc.stdint cimport int32_t, uint8_t, uint16_t, uint64_t + + +-cdef extern from "../vendor/llhttp/build/llhttp.h": ++cdef extern from "llhttp.h": + + struct llhttp__internal_s: + int32_t _index +--- a/setup.py ++++ b/setup.py +@@ -27,23 +27,21 @@ if IS_GIT_REPO and not (HERE / "vendor/llhttp/README.md").exists(): + # NOTE: makefile cythonizes all Cython modules + + extensions = [ +- Extension("aiohttp._websocket.mask", ["aiohttp/_websocket/mask.c"]), ++ Extension("aiohttp._websocket.mask", ["aiohttp/_websocket/mask.pyx"]), + Extension( + "aiohttp._http_parser", + [ +- "aiohttp/_http_parser.c", +- "aiohttp/_find_header.c", +- "vendor/llhttp/build/c/llhttp.c", +- "vendor/llhttp/src/native/api.c", +- "vendor/llhttp/src/native/http.c", ++ "aiohttp/_http_parser.pyx", + ], +- define_macros=[("LLHTTP_STRICT_MODE", 0)], +- include_dirs=["vendor/llhttp/build"], + ), +- Extension("aiohttp._http_writer", ["aiohttp/_http_writer.c"]), ++ Extension("aiohttp._http_writer", ["aiohttp/_http_writer.pyx"]), + Extension("aiohttp._websocket.reader_c", ["aiohttp/_websocket/reader_c.c"]), + ] + ++if not NO_EXTENSIONS: ++ from Cython.Build import cythonize ++ extensions = cythonize(extensions, force=True, language_level=3) ++ + + build_type = "Pure" if NO_EXTENSIONS else "Accelerated" + setup_kwargs = {} if NO_EXTENSIONS else {"ext_modules": extensions} +-- +2.48.1 +