git: 9eead9a2d6d9 - main - www/proxygen: update 2026.02.09.00 → 2026.05.11.00

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Tue, 12 May 2026 22:52:43 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9eead9a2d6d9bcdab08fab6486cc369475f1bcaf

commit 9eead9a2d6d9bcdab08fab6486cc369475f1bcaf
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2026-05-12 22:51:50 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2026-05-12 22:52:31 +0000

    www/proxygen: update 2026.02.09.00 → 2026.05.11.00
---
 www/proxygen/Makefile                              |  2 +-
 www/proxygen/distinfo                              |  6 ++--
 .../files/patch-cmake_ProxygenFunctions.cmake      | 27 ++++++++++++++++++
 .../files/patch-proxygen_httpserver_CMakeLists.txt | 26 ++++++++++++++++++
 ...h-proxygen_httpserver_samples_hq_CMakeLists.txt | 32 ++++++++++++++++++++++
 ...en_httpserver_samples_hq_devious_CMakeLists.txt | 13 +++++++++
 www/proxygen/pkg-plist                             | 29 +++++++++++---------
 7 files changed, 118 insertions(+), 17 deletions(-)

diff --git a/www/proxygen/Makefile b/www/proxygen/Makefile
index 6e5960c53b8c..0ac5ff065b25 100644
--- a/www/proxygen/Makefile
+++ b/www/proxygen/Makefile
@@ -1,6 +1,6 @@
 PORTNAME=	proxygen
 DISTVERSIONPREFIX=	v
-DISTVERSION=	2026.02.09.00
+DISTVERSION=	2026.05.11.00
 CATEGORIES=	www
 
 MAINTAINER=	yuri@FreeBSD.org
diff --git a/www/proxygen/distinfo b/www/proxygen/distinfo
index 0e49723c267c..92c8b02184f5 100644
--- a/www/proxygen/distinfo
+++ b/www/proxygen/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1770698098
-SHA256 (facebook-proxygen-v2026.02.09.00_GH0.tar.gz) = 80b8c2d69d5bedfc4206f188f3b1383da165b57e1957ebc47283fd14dbc6f7ea
-SIZE (facebook-proxygen-v2026.02.09.00_GH0.tar.gz) = 1577336
+TIMESTAMP = 1778613230
+SHA256 (facebook-proxygen-v2026.05.11.00_GH0.tar.gz) = b121d700bdc064f16212f33c6181141db5f86bd5b5c0c7a4274c5715489c88fd
+SIZE (facebook-proxygen-v2026.05.11.00_GH0.tar.gz) = 1698457
diff --git a/www/proxygen/files/patch-cmake_ProxygenFunctions.cmake b/www/proxygen/files/patch-cmake_ProxygenFunctions.cmake
new file mode 100644
index 000000000000..d78c6fb73b8d
--- /dev/null
+++ b/www/proxygen/files/patch-cmake_ProxygenFunctions.cmake
@@ -0,0 +1,27 @@
+-- Fix shared-library OBJECT target dep resolution: allow non-proxygen external targets
+-- (Folly::, mvfst::, fizz:: etc.) when no _obj version exists, while still avoiding
+-- circular dependencies caused by proxygen INTERFACE wrappers linking to monolithic proxygen.
+--- cmake/ProxygenFunctions.cmake.orig	2026-05-11 03:29:48 UTC
++++ cmake/ProxygenFunctions.cmake
+@@ -432,10 +432,17 @@ function(proxygen_resolve_deferred_dependencies)
+     foreach(_dep IN LISTS _deps)
+       # For shared builds: if target is an OBJECT library (*_obj) and dep has an _obj version,
+       # link to _obj for include path propagation
+-      if(BUILD_SHARED_LIBS AND _target MATCHES "_obj$" AND TARGET ${_dep}_obj)
+-        list(APPEND _valid_deps ${_dep}_obj)
+-      elseif(BUILD_SHARED_LIBS AND _target MATCHES "_obj$")
+-        # No _obj version exists; skip to avoid cycle through monolithic library
++      if(BUILD_SHARED_LIBS AND _target MATCHES "_obj$")
++        # In shared builds, OBJECT libraries must only link to other OBJECT libraries
++        # to avoid circular dependencies through INTERFACE wrappers that link to monolithic proxygen
++        if(TARGET ${_dep}_obj)
++          list(APPEND _valid_deps ${_dep}_obj)
++        elseif(NOT _dep MATCHES "^proxygen_")
++          # Allow non-proxygen targets (external deps like Folly::, mvfst::, etc.)
++          if(TARGET ${_dep})
++            list(APPEND _valid_deps ${_dep})
++          endif()
++        endif()
+       elseif(TARGET ${_dep})
+         list(APPEND _valid_deps ${_dep})
+       endif()
diff --git a/www/proxygen/files/patch-proxygen_httpserver_CMakeLists.txt b/www/proxygen/files/patch-proxygen_httpserver_CMakeLists.txt
new file mode 100644
index 000000000000..3233ed520f51
--- /dev/null
+++ b/www/proxygen/files/patch-proxygen_httpserver_CMakeLists.txt
@@ -0,0 +1,26 @@
+-- Mark proxygen_httpserver_decompression_filter and proxygen_httpserver as
+-- EXCLUDE_FROM_MONOLITH so they build as separate shared libraries
+-- (libproxygen_httpserver.so, libproxygen_httpserver_decompression_filter.so)
+-- instead of INTERFACE targets pointing at the monolithic libproxygen.so.
+-- The monolithic library is created in proxygen/lib/CMakeLists.txt before
+-- httpserver/ is processed, so httpserver object code would otherwise not be
+-- included in any shared library, causing undefined-symbol linker errors in
+-- the sample binaries (proxygen_push, proxygen_echo, proxygen_static, etc.).
+--- proxygen/httpserver/CMakeLists.txt.orig	2026-05-12 20:06:06 UTC
++++ proxygen/httpserver/CMakeLists.txt
+@@ -21,6 +21,7 @@ proxygen_add_library(proxygen_httpserver_decompression
+ )
+ 
+ proxygen_add_library(proxygen_httpserver_decompression_filter
++  EXCLUDE_FROM_MONOLITH
+   SRCS
+     filters/DecompressionFilter.cpp
+   DEPS
+@@ -31,6 +32,7 @@ proxygen_add_library(proxygen_httpserver
+ )
+ 
+ proxygen_add_library(proxygen_httpserver
++  EXCLUDE_FROM_MONOLITH
+   SRCS
+     HTTPServer.cpp
+     HTTPServerAcceptor.cpp
diff --git a/www/proxygen/files/patch-proxygen_httpserver_samples_hq_CMakeLists.txt b/www/proxygen/files/patch-proxygen_httpserver_samples_hq_CMakeLists.txt
new file mode 100644
index 000000000000..876f37edce41
--- /dev/null
+++ b/www/proxygen/files/patch-proxygen_httpserver_samples_hq_CMakeLists.txt
@@ -0,0 +1,32 @@
+-- Mark proxygen_hq_logger_helper, proxygen_hq_server and proxygen_hq_samples as
+-- EXCLUDE_FROM_MONOLITH so each builds as its own shared library.
+-- Same root cause as patch-proxygen_httpserver_CMakeLists.txt: the monolithic
+-- libproxygen.so is assembled before the httpserver/samples/hq subtree is
+-- processed, so these objects would otherwise be absent from any shared library,
+-- resulting in undefined-symbol errors in the hq binary.
+--- proxygen/httpserver/samples/hq/CMakeLists.txt.orig	2026-05-12 20:06:06 UTC
++++ proxygen/httpserver/samples/hq/CMakeLists.txt
+@@ -10,6 +10,7 @@ proxygen_add_library(proxygen_hq_logger_helper
+ # auto-generated dep names to these clean names.
+ 
+ proxygen_add_library(proxygen_hq_logger_helper
++  EXCLUDE_FROM_MONOLITH
+   SRCS
+     HQLoggerHelper.cpp
+   EXPORTED_DEPS
+@@ -23,6 +24,7 @@ proxygen_add_library(proxygen_hq_server
+ )
+ 
+ proxygen_add_library(proxygen_hq_server
++  EXCLUDE_FROM_MONOLITH
+   SRCS
+     FizzContext.cpp
+     HQParams.cpp
+@@ -58,6 +60,7 @@ proxygen_add_library(proxygen_hq_samples
+ )
+ 
+ proxygen_add_library(proxygen_hq_samples
++  EXCLUDE_FROM_MONOLITH
+   SRCS
+     H2Server.cpp
+     HQClient.cpp
diff --git a/www/proxygen/files/patch-proxygen_httpserver_samples_hq_devious_CMakeLists.txt b/www/proxygen/files/patch-proxygen_httpserver_samples_hq_devious_CMakeLists.txt
new file mode 100644
index 000000000000..d6fe99c0c3a6
--- /dev/null
+++ b/www/proxygen/files/patch-proxygen_httpserver_samples_hq_devious_CMakeLists.txt
@@ -0,0 +1,13 @@
+-- Mark proxygen_hq_devious_baton as EXCLUDE_FROM_MONOLITH so it builds as its
+-- own shared library (libproxygen_hq_devious_baton.so).
+-- Same root cause as patch-proxygen_httpserver_CMakeLists.txt.
+--- proxygen/httpserver/samples/hq/devious/CMakeLists.txt.orig	2026-05-12 20:06:06 UTC
++++ proxygen/httpserver/samples/hq/devious/CMakeLists.txt
+@@ -5,6 +5,7 @@ proxygen_add_library(proxygen_hq_devious_baton
+ # LICENSE file in the root directory of this source tree.
+ 
+ proxygen_add_library(proxygen_hq_devious_baton
++  EXCLUDE_FROM_MONOLITH
+   SRCS
+     DeviousBaton.cpp
+   DEPS
diff --git a/www/proxygen/pkg-plist b/www/proxygen/pkg-plist
index 29d428b77e64..b55b796bdb3c 100644
--- a/www/proxygen/pkg-plist
+++ b/www/proxygen/pkg-plist
@@ -91,6 +91,7 @@ include/proxygen/lib/http/codec/DefaultHTTPCodecFactory.h
 include/proxygen/lib/http/codec/DirectErrorsRateLimitFilter.h
 include/proxygen/lib/http/codec/ErrorCode.h
 include/proxygen/lib/http/codec/FlowControlFilter.h
+include/proxygen/lib/http/codec/H3EarlyDataHandler.h
 include/proxygen/lib/http/codec/HQControlCodec.h
 include/proxygen/lib/http/codec/HQFramedCodec.h
 include/proxygen/lib/http/codec/HQFramer.h
@@ -119,6 +120,7 @@ include/proxygen/lib/http/codec/RateLimitFilter.h
 include/proxygen/lib/http/codec/ResetsRateLimitFilter.h
 include/proxygen/lib/http/codec/SettingsId.h
 include/proxygen/lib/http/codec/TransportDirection.h
+include/proxygen/lib/http/codec/VarintUtils.h
 include/proxygen/lib/http/codec/compress/CompressionInfo.h
 include/proxygen/lib/http/codec/compress/HPACKCodec.h
 include/proxygen/lib/http/codec/compress/HPACKConstants.h
@@ -258,6 +260,7 @@ include/proxygen/lib/http/session/QuicProtocolInfo.h
 include/proxygen/lib/http/session/SecondaryAuthManager.h
 include/proxygen/lib/http/session/SecondaryAuthManagerBase.h
 include/proxygen/lib/http/session/ServerPushLifecycle.h
+include/proxygen/lib/http/session/SessionLoopCallback.h
 include/proxygen/lib/http/session/SimpleController.h
 include/proxygen/lib/http/session/TTLBAStats.h
 include/proxygen/lib/http/session/TransactionByteEvents.h
@@ -281,10 +284,13 @@ include/proxygen/lib/http/structuredheaders/StructuredHeadersEncoder.h
 include/proxygen/lib/http/structuredheaders/StructuredHeadersUtilities.h
 include/proxygen/lib/http/webtransport/FlowController.h
 include/proxygen/lib/http/webtransport/HTTPWebTransport.h
+include/proxygen/lib/http/webtransport/HqWtSession.h
 include/proxygen/lib/http/webtransport/QuicWebTransport.h
+include/proxygen/lib/http/webtransport/QuicWtSession.h
 include/proxygen/lib/http/webtransport/StreamPriorityQueue.h
 include/proxygen/lib/http/webtransport/WebTransport.h
 include/proxygen/lib/http/webtransport/WebTransportImpl.h
+include/proxygen/lib/http/webtransport/WebTransportSession.h
 include/proxygen/lib/http/webtransport/WtEgressContainer.h
 include/proxygen/lib/http/webtransport/WtStreamManager.h
 include/proxygen/lib/http/webtransport/WtUtils.h
@@ -309,6 +315,7 @@ include/proxygen/lib/services/Service.h
 include/proxygen/lib/services/ServiceConfiguration.h
 include/proxygen/lib/services/ServiceWorker.h
 include/proxygen/lib/services/WorkerThread.h
+include/proxygen/lib/ssl/FizzHandshakeErrorType.h
 include/proxygen/lib/ssl/ProxygenSSL.h
 include/proxygen/lib/ssl/ThreadLocalSSLStats.h
 include/proxygen/lib/stats/BaseStats.h
@@ -317,10 +324,13 @@ include/proxygen/lib/stats/PeriodicStatsDataBase.h
 include/proxygen/lib/stats/ResourceData.h
 include/proxygen/lib/stats/ResourceStats.h
 include/proxygen/lib/transport/AsyncUDPSocketFactory.h
+include/proxygen/lib/transport/ConnectUDPUtils.h
 include/proxygen/lib/transport/H3DatagramAsyncSocket.h
 include/proxygen/lib/transport/PersistentFizzPskCache.h
 include/proxygen/lib/transport/PersistentQuicPskCache.h
 include/proxygen/lib/transport/PersistentQuicTokenCache.h
+include/proxygen/lib/transport/qmux/QmuxCodec.h
+include/proxygen/lib/transport/qmux/QmuxFramer.h
 include/proxygen/lib/utils/AcceptorAddress.h
 include/proxygen/lib/utils/AsyncTimeoutSet.h
 include/proxygen/lib/utils/CobHelper.h
@@ -362,18 +372,11 @@ lib/cmake/proxygen/proxygen-config.cmake
 lib/cmake/proxygen/proxygen-targets-%%CMAKE_BUILD_TYPE%%.cmake
 lib/cmake/proxygen/proxygen-targets.cmake
 lib/liblibhttperf2.so
-lib/liblibhttperf2.so.1.34.6
 lib/libproxygen.so
-lib/libproxygen.so.1.34.6
+lib/libproxygen_hq_devious_baton.so
+lib/libproxygen_hq_logger_helper.so
+lib/libproxygen_hq_samples.so
+lib/libproxygen_hq_server.so
+lib/libproxygen_httpserver.so
+lib/libproxygen_httpserver_decompression_filter.so
 lib/libproxygencurl.so
-lib/libproxygencurl.so.1.34.6
-lib/libproxygendeviousbaton.so
-lib/libproxygendeviousbaton.so.1.34.6
-lib/libproxygenhqloggerhelper.so
-lib/libproxygenhqloggerhelper.so.1.34.6
-lib/libproxygenhqserver.so
-lib/libproxygenhqserver.so.1.34.6
-lib/libproxygenhttpserver.so
-lib/libproxygenhttpserver.so.1.34.6
-lib/libquicwebtransport.so
-lib/libwt_stream_manager.so