From nobody Tue Dec 31 16:00:23 2024 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4YMyNm0N2Fz5jdx3; Tue, 31 Dec 2024 16:00:24 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (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 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4YMyNl6cGWz428Y; Tue, 31 Dec 2024 16:00:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1735660823; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qU3CuacKkeJRyFa8/z/NL+koy8ixOhlYsGiyAQsKxSY=; b=d7yfT04YCcfRME7R876T4cwo9+C+fUg72Hlw2iMK8YLYHfRVT4O/RQpjFptMcT4n0mIGQy 7CXcyrFGa52m43MqllUIgVzqE1Wa6MryuDAGcoqevUxRe2zwiUZnjOf44OqojCXelXnNHu XIGjD9TmP6LQ7lhwxiEI9jOTuW6Klg5ISrfMPuVbDeHqz9q722V5vxafzNAVSPPrrhEfsf Vsm5WkJ3TDu0n9Dstuh2K5/ZtmT4tZC7NVFUzjA9KjfJKCAjX4a7zo3U25aHm4HBqsMMv1 eUJcjCcrXPhucmm7AlpUmBpiIQcxC0pOVyoBxZgrxm725k0iX/VQ4se7SzDYew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1735660823; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=qU3CuacKkeJRyFa8/z/NL+koy8ixOhlYsGiyAQsKxSY=; b=lGu7cSdWEIsujF9cBb+YC82MUyGVQm9YRjXEcSHn7EmrFbS5K39wu1rhZY5gr7WFVLds+f 5U7hWXjRw9y4l7vOY6+iTqO7i/oVLaSvXFdbLBb1cNOgTcQ75KvkKeAx+YqJEskZJqHVzT 8sLFUtUozWQmwAkxj4ypmpvnc+52q7dOQY0MyDlG6EMPSptHulcxJijpsBCHSTRPjFToBi ork0sz7pmoz+XYhOg8LO9gcSA3KUiUILNpQZx3acBsBqWDH9iaWi7BkAMIf7vQQtcifW9a hcYmhuQCYS7s8PFs6vuzlOlUX8M4/ZQCxKau6058dghjcskipKdQCLcOB6T6JA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1735660823; a=rsa-sha256; cv=none; b=ISFynWhZ0o5ncpR5j+egHQy85VLD5W3raDR10HoNFx/a6ZP4qIsUPK6CeD27d9OBR7z2MN UF1yvL/boGWUyyaufwbbKiWIBwFjznydP8dhrI6GrKh4y8v/oG+5nJi3PDBWkAe3RIp1mj HmvQzRsYwJdWL4nHSgsrLlStSm4nXm9a/nXWvPu5w/XOlWgJJeNjzLipe9zm/7mviWcUN5 PXKE9YLK28fJnimrgdiOiUgcJeaJ+qAO34TRXN2dHJwTGy0KgLincIW08Iz8/4MhBFjIIE WimHFiGJP7FNBWPLFckT377E6pRrW9BrfQtYk3B9mXNqZyw6K3l05Ipu6I2R5g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (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) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4YMyNl4G9dzlq3; Tue, 31 Dec 2024 16:00:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 4BVG0NuZ081404; Tue, 31 Dec 2024 16:00:23 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 4BVG0NUO081401; Tue, 31 Dec 2024 16:00:23 GMT (envelope-from git) Date: Tue, 31 Dec 2024 16:00:23 GMT Message-Id: <202412311600.4BVG0NUO081401@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Po-Chuan Hsieh Subject: git: 42e11176fea1 - main - www/py-jh2: Add py-jh2 5.0.4 List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-ports-main@freebsd.org Sender: owner-dev-commits-ports-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: sunpoet X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 42e11176fea137c595eacf70ee3d8bdd695c0af8 Auto-Submitted: auto-generated The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=42e11176fea137c595eacf70ee3d8bdd695c0af8 commit 42e11176fea137c595eacf70ee3d8bdd695c0af8 Author: Po-Chuan Hsieh AuthorDate: 2024-12-31 15:38:21 +0000 Commit: Po-Chuan Hsieh CommitDate: 2024-12-31 15:38:21 +0000 www/py-jh2: Add py-jh2 5.0.4 jh2, HTTP/2 Protocol Stack, is a fork of the well known hyper/h2 package. We want to provide a cleaner and faster HTTP/2 state machine while keeping a pure Python implementation. We decided to embed the leaf dependencies as we want a neater dependency tree and along with that a easier maintenance burden. We believe it was a mistake to ship three packages (h2, hpack, and hyperframe). Analysis shown that h2 spend a lot of time doing hpack encode and decode operations, this is why we decided to offer a complementary optimized build. The pure Python version will still be available. This repository contains a pure-Python implementation of a HTTP/2 protocol stack. It's written from the ground up to be embeddable in whatever program you choose to use, ensuring that you can speak HTTP/2 regardless of your programming paradigm. --- www/Makefile | 1 + www/py-jh2/Makefile | 24 ++++++++++++++++++++++++ www/py-jh2/Makefile.crates | 21 +++++++++++++++++++++ www/py-jh2/distinfo | 45 +++++++++++++++++++++++++++++++++++++++++++++ www/py-jh2/pkg-descr | 14 ++++++++++++++ 5 files changed, 105 insertions(+) diff --git a/www/Makefile b/www/Makefile index 5b100a096cc9..7884b15bc14d 100644 --- a/www/Makefile +++ b/www/Makefile @@ -1769,6 +1769,7 @@ SUBDIR += py-inlinestyler SUBDIR += py-instabot SUBDIR += py-internetarchive + SUBDIR += py-jh2 SUBDIR += py-jonpy SUBDIR += py-jsonfield SUBDIR += py-kiss-headers diff --git a/www/py-jh2/Makefile b/www/py-jh2/Makefile new file mode 100644 index 000000000000..4281307920a2 --- /dev/null +++ b/www/py-jh2/Makefile @@ -0,0 +1,24 @@ +PORTNAME= jh2 +PORTVERSION= 5.0.4 +CATEGORIES= www python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTFILES= ${DISTNAME}${EXTRACT_SUFX} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= HTTP/2 State-Machine based protocol implementation +WWW= https://python-hyper.org/projects/h2/en/stable/ \ + https://github.com/jawah/h2 + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=1.2<2.0:devel/py-maturin@${PY_FLAVOR} + +USES= cargo python +USE_PYTHON= autoplist concurrent pep517 + +CARGO_BUILD= no +CARGO_INSTALL= no + +.include diff --git a/www/py-jh2/Makefile.crates b/www/py-jh2/Makefile.crates new file mode 100644 index 000000000000..63e9308aa1fb --- /dev/null +++ b/www/py-jh2/Makefile.crates @@ -0,0 +1,21 @@ +CARGO_CRATES= autocfg-1.4.0 \ + cfg-if-1.0.0 \ + heck-0.5.0 \ + httlib-hpack-0.1.3 \ + httlib-huffman-0.3.4 \ + indoc-2.0.5 \ + libc-0.2.161 \ + memoffset-0.9.1 \ + once_cell-1.20.2 \ + portable-atomic-1.9.0 \ + proc-macro2-1.0.89 \ + pyo3-0.22.5 \ + pyo3-build-config-0.22.5 \ + pyo3-ffi-0.22.5 \ + pyo3-macros-0.22.5 \ + pyo3-macros-backend-0.22.5 \ + quote-1.0.37 \ + syn-2.0.85 \ + target-lexicon-0.12.16 \ + unicode-ident-1.0.13 \ + unindent-0.2.3 diff --git a/www/py-jh2/distinfo b/www/py-jh2/distinfo new file mode 100644 index 000000000000..ce487cc84ae4 --- /dev/null +++ b/www/py-jh2/distinfo @@ -0,0 +1,45 @@ +TIMESTAMP = 1735227774 +SHA256 (jh2-5.0.4.tar.gz) = c8d864106e84d8878ce685af1176b4cf10b196752c7437b0faa8ece214fb2cf5 +SIZE (jh2-5.0.4.tar.gz) = 7299146 +SHA256 (rust/crates/autocfg-1.4.0.crate) = ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26 +SIZE (rust/crates/autocfg-1.4.0.crate) = 17712 +SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd +SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 +SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea +SIZE (rust/crates/heck-0.5.0.crate) = 11517 +SHA256 (rust/crates/httlib-hpack-0.1.3.crate) = 40cf60e5e8567c6ff914a590f1452821de9377a560338a562e570a6ff052aae3 +SIZE (rust/crates/httlib-hpack-0.1.3.crate) = 6141856 +SHA256 (rust/crates/httlib-huffman-0.3.4.crate) = 1a9fcbcc408c5526c3ab80d534e5c86e7967c1fb7aa0a8c76abd1edc27deb877 +SIZE (rust/crates/httlib-huffman-0.3.4.crate) = 32157 +SHA256 (rust/crates/indoc-2.0.5.crate) = b248f5224d1d606005e02c97f5aa4e88eeb230488bcc03bc9ca4d7991399f2b5 +SIZE (rust/crates/indoc-2.0.5.crate) = 14396 +SHA256 (rust/crates/libc-0.2.161.crate) = 8e9489c2807c139ffd9c1794f4af0ebe86a828db53ecdc7fea2111d0fed085d1 +SIZE (rust/crates/libc-0.2.161.crate) = 765389 +SHA256 (rust/crates/memoffset-0.9.1.crate) = 488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a +SIZE (rust/crates/memoffset-0.9.1.crate) = 9032 +SHA256 (rust/crates/once_cell-1.20.2.crate) = 1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775 +SIZE (rust/crates/once_cell-1.20.2.crate) = 33394 +SHA256 (rust/crates/portable-atomic-1.9.0.crate) = cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2 +SIZE (rust/crates/portable-atomic-1.9.0.crate) = 166365 +SHA256 (rust/crates/proc-macro2-1.0.89.crate) = f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e +SIZE (rust/crates/proc-macro2-1.0.89.crate) = 49446 +SHA256 (rust/crates/pyo3-0.22.5.crate) = 3d922163ba1f79c04bc49073ba7b32fd5a8d3b76a87c955921234b8e77333c51 +SIZE (rust/crates/pyo3-0.22.5.crate) = 546700 +SHA256 (rust/crates/pyo3-build-config-0.22.5.crate) = bc38c5feeb496c8321091edf3d63e9a6829eab4b863b4a6a65f26f3e9cc6b179 +SIZE (rust/crates/pyo3-build-config-0.22.5.crate) = 31293 +SHA256 (rust/crates/pyo3-ffi-0.22.5.crate) = 94845622d88ae274d2729fcefc850e63d7a3ddff5e3ce11bd88486db9f1d357d +SIZE (rust/crates/pyo3-ffi-0.22.5.crate) = 69354 +SHA256 (rust/crates/pyo3-macros-0.22.5.crate) = e655aad15e09b94ffdb3ce3d217acf652e26bbc37697ef012f5e5e348c716e5e +SIZE (rust/crates/pyo3-macros-0.22.5.crate) = 8186 +SHA256 (rust/crates/pyo3-macros-backend-0.22.5.crate) = ae1e3f09eecd94618f60a455a23def79f79eba4dc561a97324bf9ac8c6df30ce +SIZE (rust/crates/pyo3-macros-backend-0.22.5.crate) = 66308 +SHA256 (rust/crates/quote-1.0.37.crate) = b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af +SIZE (rust/crates/quote-1.0.37.crate) = 28558 +SHA256 (rust/crates/syn-2.0.85.crate) = 5023162dfcd14ef8f32034d8bcd4cc5ddc61ef7a247c024a33e24e1f24d21b56 +SIZE (rust/crates/syn-2.0.85.crate) = 275231 +SHA256 (rust/crates/target-lexicon-0.12.16.crate) = 61c41af27dd6d1e27b1b16b489db798443478cef1f06a660c96db617ba5de3b1 +SIZE (rust/crates/target-lexicon-0.12.16.crate) = 26488 +SHA256 (rust/crates/unicode-ident-1.0.13.crate) = e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe +SIZE (rust/crates/unicode-ident-1.0.13.crate) = 43279 +SHA256 (rust/crates/unindent-0.2.3.crate) = c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce +SIZE (rust/crates/unindent-0.2.3.crate) = 7306 diff --git a/www/py-jh2/pkg-descr b/www/py-jh2/pkg-descr new file mode 100644 index 000000000000..dde705c4e8a8 --- /dev/null +++ b/www/py-jh2/pkg-descr @@ -0,0 +1,14 @@ +jh2, HTTP/2 Protocol Stack, is a fork of the well known hyper/h2 package. We +want to provide a cleaner and faster HTTP/2 state machine while keeping a pure +Python implementation. We decided to embed the leaf dependencies as we want a +neater dependency tree and along with that a easier maintenance burden. We +believe it was a mistake to ship three packages (h2, hpack, and hyperframe). + +Analysis shown that h2 spend a lot of time doing hpack encode and decode +operations, this is why we decided to offer a complementary optimized build. The +pure Python version will still be available. + +This repository contains a pure-Python implementation of a HTTP/2 protocol +stack. It's written from the ground up to be embeddable in whatever program you +choose to use, ensuring that you can speak HTTP/2 regardless of your programming +paradigm.