git: 59dfa871e82e - main - lang/v8-beta: update to 15.7.112 (Chrome 157 beta)

From: Xin LI <delphij_at_FreeBSD.org>
Date: Sat, 17 Oct 2026 19:20:47 UTC
The branch main has been updated by delphij:

URL: https://cgit.FreeBSD.org/ports/commit/?id=59dfa871e82e564fe3d512e188936a3e4beaf68c

commit 59dfa871e82e564fe3d512e188936a3e4beaf68c
Author:     Xin LI <delphij@FreeBSD.org>
AuthorDate: 2026-10-17 18:20:57 +0000
Commit:     Xin LI <delphij@FreeBSD.org>
CommitDate: 2026-10-17 19:20:13 +0000

    lang/v8-beta: update to 15.7.112 (Chrome 157 beta)
    
    - Update the dependency pins from DEPS and the Temporal crates to the
      versions in Chromium's third_party/rust.
    - Adapt the pkg-config.py and PartitionAlloc stack patches to upstream
      changes.  Initialize the attribute object before passing it to
      pthread_attr_get_np(), which FreeBSD requires.
    - libclang's Python bindings before LLVM 21 pass non-Cursor operands
      such as None to clang_equalCursors(), which metagen now relies on
      working.  Extend the existing shim with LLVM 21's Cursor.__eq__.
---
 lang/v8-beta/Makefile                              | 35 ++++----
 lang/v8-beta/Makefile.crates                       | 13 ++-
 lang/v8-beta/distinfo                              | 92 +++++++++++-----------
 lang/v8-beta/files/patch-BUILD.gn                  |  8 +-
 .../files/patch-build_config_BUILDCONFIG.gn        | 18 ++---
 lang/v8-beta/files/patch-build_config_c++_c++.gni  |  4 +-
 .../files/patch-build_config_clang_BUILD.gn        |  4 +-
 .../files/patch-build_config_linux_pkg-config.py   | 18 ++---
 lang/v8-beta/files/patch-src_api_api.cc            |  4 +-
 lang/v8-beta/files/patch-src_d8_d8.cc              |  6 +-
 ...rd__party_partition__alloc_partition__alloc.gni |  4 +-
 ...c_partition__alloc_partition__address__space.cc |  8 +-
 ...tion__alloc_src_partition__alloc_stack_stack.cc | 21 +++--
 .../files/patch-tools_metagen_clang__bootstrap.py  | 10 ++-
 lang/v8-beta/files/temporal_capi-Cargo.lock        | 51 +++++-------
 15 files changed, 145 insertions(+), 151 deletions(-)

diff --git a/lang/v8-beta/Makefile b/lang/v8-beta/Makefile
index 992787fce7a9..b76608b61a31 100644
--- a/lang/v8-beta/Makefile
+++ b/lang/v8-beta/Makefile
@@ -1,11 +1,10 @@
 # We follow the beta channel on https://chromiumdash.appspot.com/releases?platform=Linux
 # Latest beta version API: https://chromiumdash.appspot.com/fetch_releases?channel=Beta&platform=Linux&num=1&offset=0
 # V8 is mirrored at https://github.com/v8/v8 (use a specific release tag, not lkgr which is a dynamic ref)
-# Browse current beta branch: https://chromium.googlesource.com/v8/v8/+/refs/heads/15.6-lkgr
+# Browse current beta branch: https://chromium.googlesource.com/v8/v8/+/refs/heads/15.7-lkgr
 
 PORTNAME=	v8
-PORTVERSION=	15.6.75.8
-PORTREVISION=	1
+PORTVERSION=	15.7.112
 CATEGORIES=	lang
 PKGNAMESUFFIX=	-beta
 
@@ -91,33 +90,33 @@ TEMPORAL_CAPI_DIR=	${CARGO_VENDOR_DIR}/${CARGO_CRATES:Mtemporal_capi-[0-9]*}
 TEMPORAL_CAPI_LIB=	${WRKDIR}/libv8_temporal.a
 
 # Sub-dependency commit hashes from DEPS at tag ${PORTVERSION}
-ABSL_REV=			edf0931ff4e2cddfeecade307ae948b5d09b8b38
-BUILD_REV=			bc0661cf80717e97e1b6868396f61f7f94f2d04a
-BUILDTOOLS_REV=			c202b4a9dac30e789ed6e3b2354efa94357a56f3
-CLANG_REV=			10f700407ca356594ea2a575572b7ce63183721d
+ABSL_REV=			9aa0c314d9bd021e48f0193f0af3316a7e8bec63
+BUILD_REV=			aa268127b8cc571ebc60f200d052a09d27231843
+BUILDTOOLS_REV=			8790f824690e131a78f36e80ecc05a9272f061c8
+CLANG_REV=			47fbf574c4f14e7288da3e51ff6eca0990183377
 CPU_FEATURES_CHROMIUM_REV=	4974e2063946d9dd2a417c27db139fd982ff447a
 CPU_FEATURES_REV=		81d13c49649f0714dd41fb56bb246398b6584085
 DISARM_REV=			2d960dae4b4fb29dba05cfc48210fbed423f3d2c
 DRAGONBOX_REV=			beeeef91cf6fef89a4d4ba5e95d47ca64ccb3a44
 FADEC_REV=			c9f78f532b9004de278489019ab2c6c28ae9746e
-FAST_FLOAT_REV=			b0ab987b3dfdde13fa1915f65ef2a5c068d9208c
+FAST_FLOAT_REV=			42f254836ee416ffcf2f4e6576260003ac33d48c
 FP16_REV=			782eea126dc5c755827be751a099eb01826175cf
-FUZZTEST_REV=			55970ac2863f6b740d3e8247ac0ec48e7acb2113
-FUZZTEST_SRC_REV=		7a8e9056de2a4f745082a4b3861a67ada47ced36
+FUZZTEST_REV=			4b524d48590b3433597a557d1a8abc134a86b611
+FUZZTEST_SRC_REV=		a8861f3aa71443dabaf42dc9cba78b3982524a51
 GOOGLETEST_REV=			4fe3307fb2d9f86d19777c7eb0e4809e9694dde7
 HIGHWAY_REV=			2607d3b5b0113992fe84d3848859eae13b3b52c1
-ICU_REV=			5aa526207171ecadf31597f0980a7b7ad8872f33
+ICU_REV=			19dfb44a62ae60ce6b0060de8c0cef5d5c527177
 JSONCPP_REV=			3347a4b86bb914cb565f0cbda19c06e109513300
 LIBCXX_REV=			97b436da4c33663581d394f4ee0a5977fc38c2f4
-LIBCXXABI_REV=			92767730c5f8350fc53f5b3de5c3c02d00bbab8c
-LIBUNWIND_REV=			24a407d5353ad38f948f107c7d6bc2bcbb4bca24
-LLVM_LIBC_REV=			5e61624667bf9e44ea452191dbda0172997018a2
-PARTITION_ALLOC_REV=		a0f30e381c6e132215a0c8d809fd08ff4cdad244
-PROTOBUF_REV=			398c57e93a383373546bc6ae5ac2052b6155f2ba
+LIBCXXABI_REV=			0e691bb69ac90450d8d53bc8ee5968c62f9c15a7
+LIBUNWIND_REV=			c4438dd4178c627697459a12c54eb1f7f8eefd12
+LLVM_LIBC_REV=			97e60a1e7f7180965cc84e22ddde9f1d4ffd640f
+PARTITION_ALLOC_REV=		1b65ca87736e9edb51911e15915573bf4cda7245
+PROTOBUF_REV=			9fbbf0b210753390b790e4f1e74ddff5d7d97bbf
 PROTOC_WRAPPER_REV=		e9dbe1bf6a2a5d2d4973725874259eed587cf18d
-RE2_REV=			972a15cedd008d846f1a39b2e88ce48d7f166cbd
+RE2_REV=			2da0056814cf180480a19f5cf811e7e1c054bf6d
 SIMDUTF_REV=			f7356eed293f8208c40b3c1b344a50bd70971983
-ZLIB_REV=			13395eebe853e811d274f7bd9b71fb7d9b5a5851
+ZLIB_REV=			456ae730017b9b4bd3371927abc82627fd51feef
 
 # Run "gn args --list out/Release" for all variables.
 # Some parts don't have use_system_* flag, and can be turned on/off by using
diff --git a/lang/v8-beta/Makefile.crates b/lang/v8-beta/Makefile.crates
index 578a49d5cc80..785915851251 100644
--- a/lang/v8-beta/Makefile.crates
+++ b/lang/v8-beta/Makefile.crates
@@ -23,23 +23,22 @@ CARGO_CRATES=	autocfg-1.5.1 \
 		serde-1.0.229 \
 		serde_core-1.0.229 \
 		serde_derive-1.0.229 \
-		smallvec-1.16.1 \
+		smallvec-1.16.2 \
 		stable_deref_trait-1.2.1 \
 		strck-1.0.0 \
-		syn-2.0.119 \
-		syn-3.0.5 \
-		synstructure-0.13.2 \
+		syn-3.0.6 \
+		synstructure-0.14.0 \
 		temporal_capi-0.2.6 \
 		temporal_rs-0.2.6 \
 		timezone_provider-0.2.6 \
 		tinystr-0.8.4 \
-		unicode-ident-1.0.24 \
+		unicode-ident-1.0.26 \
 		utf8_iter-1.0.4 \
 		writeable-0.6.4 \
 		yoke-0.8.3 \
-		yoke-derive-0.8.2 \
+		yoke-derive-0.8.4 \
 		zerofrom-0.1.8 \
-		zerofrom-derive-0.1.7 \
+		zerofrom-derive-0.1.8 \
 		zerotrie-0.2.5 \
 		zerovec-0.11.8 \
 		zerovec-derive-0.11.6 \
diff --git a/lang/v8-beta/distinfo b/lang/v8-beta/distinfo
index c310d36707b1..81207535cfb0 100644
--- a/lang/v8-beta/distinfo
+++ b/lang/v8-beta/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1791700857
+TIMESTAMP = 1792207044
 SHA256 (rust/crates/autocfg-1.5.1.crate) = f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53
 SIZE (rust/crates/autocfg-1.5.1.crate) = 18911
 SHA256 (rust/crates/calendrical_calculations-0.2.4.crate) = 5abbd6eeda6885048d357edc66748eea6e0268e3dd11f326fff5bd248d779c26
@@ -49,18 +49,16 @@ SHA256 (rust/crates/serde_core-1.0.229.crate) = 67dca2c9c51e58a4791a4b1ed58308b3
 SIZE (rust/crates/serde_core-1.0.229.crate) = 63100
 SHA256 (rust/crates/serde_derive-1.0.229.crate) = e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348
 SIZE (rust/crates/serde_derive-1.0.229.crate) = 59864
-SHA256 (rust/crates/smallvec-1.16.1.crate) = ba467056f1b547ed52077911161fc86985becbc60e8e1857c8a144dab0def891
-SIZE (rust/crates/smallvec-1.16.1.crate) = 32694
+SHA256 (rust/crates/smallvec-1.16.2.crate) = f9395f0f0eee849a9b707b2f06bb92a6a422090e2123bb2ef8e87a0e61892a8e
+SIZE (rust/crates/smallvec-1.16.2.crate) = 34874
 SHA256 (rust/crates/stable_deref_trait-1.2.1.crate) = 6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596
 SIZE (rust/crates/stable_deref_trait-1.2.1.crate) = 8186
 SHA256 (rust/crates/strck-1.0.0.crate) = 42316e70da376f3d113a68d138a60d8a9883c604fe97942721ec2068dab13a9f
 SIZE (rust/crates/strck-1.0.0.crate) = 10262
-SHA256 (rust/crates/syn-2.0.119.crate) = 872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297
-SIZE (rust/crates/syn-2.0.119.crate) = 307407
-SHA256 (rust/crates/syn-3.0.5.crate) = 12df2e0110f65b775f769bb17ef989067a1d931b2eb822bd4346631eeada89f9
-SIZE (rust/crates/syn-3.0.5.crate) = 313222
-SHA256 (rust/crates/synstructure-0.13.2.crate) = 728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2
-SIZE (rust/crates/synstructure-0.13.2.crate) = 18950
+SHA256 (rust/crates/syn-3.0.6.crate) = 8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee
+SIZE (rust/crates/syn-3.0.6.crate) = 313821
+SHA256 (rust/crates/synstructure-0.14.0.crate) = 901704edd0dfe137f1987838ee4f259e4e063c31371bdb423f7ae38ec6f77f02
+SIZE (rust/crates/synstructure-0.14.0.crate) = 19010
 SHA256 (rust/crates/temporal_capi-0.2.6.crate) = f48eb9ca4ca22caaa48d1e7a534ad3fd598a23d1a71945e8ad5ac0be501fa5f2
 SIZE (rust/crates/temporal_capi-0.2.6.crate) = 76554
 SHA256 (rust/crates/temporal_rs-0.2.6.crate) = 1a978fef907a27736827d336c0bfaab14fb8a7509dd6dc2b43c44e51d59aca5b
@@ -69,20 +67,20 @@ SHA256 (rust/crates/timezone_provider-0.2.6.crate) = 89ec4f4eebb4817fde02a411aed
 SIZE (rust/crates/timezone_provider-0.2.6.crate) = 145717
 SHA256 (rust/crates/tinystr-0.8.4.crate) = b1e27c91459209c2986af3dcf603a5a74a4368754ce37414f59acc971167f643
 SIZE (rust/crates/tinystr-0.8.4.crate) = 25003
-SHA256 (rust/crates/unicode-ident-1.0.24.crate) = e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75
-SIZE (rust/crates/unicode-ident-1.0.24.crate) = 49298
+SHA256 (rust/crates/unicode-ident-1.0.26.crate) = d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954
+SIZE (rust/crates/unicode-ident-1.0.26.crate) = 48425
 SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be
 SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437
 SHA256 (rust/crates/writeable-0.6.4.crate) = 3ad82d2a33cdc9674dc7465672f271e096168fcdbe0f799d9e6db8c5892679dc
 SIZE (rust/crates/writeable-0.6.4.crate) = 31222
 SHA256 (rust/crates/yoke-0.8.3.crate) = 709fe23a0424b6a435d82152b1bd3fdfb0833487d5fa90d05d42762a9891fef5
 SIZE (rust/crates/yoke-0.8.3.crate) = 33132
-SHA256 (rust/crates/yoke-derive-0.8.2.crate) = de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e
-SIZE (rust/crates/yoke-derive-0.8.2.crate) = 15077
+SHA256 (rust/crates/yoke-derive-0.8.4.crate) = ec8ebde2db3681e8c9980cc27822030e68752690ddfa9473e739aeb4dbde6d71
+SIZE (rust/crates/yoke-derive-0.8.4.crate) = 15054
 SHA256 (rust/crates/zerofrom-0.1.8.crate) = 0ec05a11813ea801ff6d75110ad09cd0824ddba17dfe17128ea0d5f68e6c5272
 SIZE (rust/crates/zerofrom-0.1.8.crate) = 6156
-SHA256 (rust/crates/zerofrom-derive-0.1.7.crate) = 11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1
-SIZE (rust/crates/zerofrom-derive-0.1.7.crate) = 8853
+SHA256 (rust/crates/zerofrom-derive-0.1.8.crate) = f75b4683f6c7f45248d4d64056a24298c6281e0993356d7d1b4a1a962ef10d4a
+SIZE (rust/crates/zerofrom-derive-0.1.8.crate) = 8834
 SHA256 (rust/crates/zerotrie-0.2.5.crate) = 4ea269c3bd32f0a32c321907a2ae912ba6f4649bb0fc764a15627e99a7095a3f
 SIZE (rust/crates/zerotrie-0.2.5.crate) = 84204
 SHA256 (rust/crates/zerovec-0.11.8.crate) = bb0464e17806c1d976d5cba29399c7f08e516e279e2ba493f63123b5fca67dd8
@@ -91,8 +89,8 @@ SHA256 (rust/crates/zerovec-derive-0.11.6.crate) = 34df6fc39dbd26ddc9c10e6a29844
 SIZE (rust/crates/zerovec-derive-0.11.6.crate) = 23102
 SHA256 (rust/crates/zoneinfo64-0.3.0.crate) = ed6eb2607e906160c457fd573e9297e65029669906b9ac8fb1b5cd5e055f0705
 SIZE (rust/crates/zoneinfo64-0.3.0.crate) = 81655
-SHA256 (v8-v8-15.6.75.8_GH0.tar.gz) = 80f7f66d716612d651bb374bad4a3c4ce18bc6859cbe9aa3639f02eb451a46f2
-SIZE (v8-v8-15.6.75.8_GH0.tar.gz) = 31195302
+SHA256 (v8-v8-15.7.112_GH0.tar.gz) = de5e4b2e16be14755ca7474aba82066b2ac3a0f7f2fb619ef54b9c9ea1a23dba
+SIZE (v8-v8-15.7.112_GH0.tar.gz) = 31461418
 SHA256 (chromium-full-mirror-external_github.com_google_cpu_features-81d13c49649f0714dd41fb56bb246398b6584085_GH0.tar.gz) = 11d95dc8866e3ea5667509cc30d0169b838ad7d96c740ac06bfdde600f609209
 SIZE (chromium-full-mirror-external_github.com_google_cpu_features-81d13c49649f0714dd41fb56bb246398b6584085_GH0.tar.gz) = 116738
 SHA256 (chromium-full-mirror-external_github.com_aengelke_disarm-2d960dae4b4fb29dba05cfc48210fbed423f3d2c_GH0.tar.gz) = 9ddc77e464873341e44394cf59670a69dc45c34e19ea0d437561a9618111f4f7
@@ -101,49 +99,49 @@ SHA256 (chromium-full-mirror-external_github.com_jk-jeon_dragonbox-beeeef91cf6fe
 SIZE (chromium-full-mirror-external_github.com_jk-jeon_dragonbox-beeeef91cf6fef89a4d4ba5e95d47ca64ccb3a44_GH0.tar.gz) = 4227723
 SHA256 (chromium-full-mirror-external_github.com_aengelke_fadec-c9f78f532b9004de278489019ab2c6c28ae9746e_GH0.tar.gz) = 3424d18c3933d6bb18ae89ffb237fc6053119dfa11ae44a2a221b449375f046c
 SIZE (chromium-full-mirror-external_github.com_aengelke_fadec-c9f78f532b9004de278489019ab2c6c28ae9746e_GH0.tar.gz) = 121174
-SHA256 (chromium-full-mirror-external_github.com_fastfloat_fast_float-b0ab987b3dfdde13fa1915f65ef2a5c068d9208c_GH0.tar.gz) = c901aee92d5e08c4acd0132797d86cae31db640063013346422af12e9f105d13
-SIZE (chromium-full-mirror-external_github.com_fastfloat_fast_float-b0ab987b3dfdde13fa1915f65ef2a5c068d9208c_GH0.tar.gz) = 143364
+SHA256 (chromium-full-mirror-external_github.com_fastfloat_fast_float-42f254836ee416ffcf2f4e6576260003ac33d48c_GH0.tar.gz) = 800d49f7252faa48b84e8e2c1df0d6798ea21e005fbaf72d060a72d080c8ef93
+SIZE (chromium-full-mirror-external_github.com_fastfloat_fast_float-42f254836ee416ffcf2f4e6576260003ac33d48c_GH0.tar.gz) = 154258
 SHA256 (chromium-full-mirror-external_github.com_Maratyszcza_FP16-782eea126dc5c755827be751a099eb01826175cf_GH0.tar.gz) = 736e00f597e783f7d763bc0b80e9503ed35b4d6bf08c890d7516464fc1259ade
 SIZE (chromium-full-mirror-external_github.com_Maratyszcza_FP16-782eea126dc5c755827be751a099eb01826175cf_GH0.tar.gz) = 64762
-SHA256 (chromium-full-mirror-external_github.com_google_fuzztest-7a8e9056de2a4f745082a4b3861a67ada47ced36_GH0.tar.gz) = 33f7628ab1eb6f27eaaff2f69c38a6c8d57052484e007c8c900b8597865193d4
-SIZE (chromium-full-mirror-external_github.com_google_fuzztest-7a8e9056de2a4f745082a4b3861a67ada47ced36_GH0.tar.gz) = 993397
+SHA256 (chromium-full-mirror-external_github.com_google_fuzztest-a8861f3aa71443dabaf42dc9cba78b3982524a51_GH0.tar.gz) = e871e968a80e63843b988562fb45cbafad4053dbf54e202b5107f66a4527a71b
+SIZE (chromium-full-mirror-external_github.com_google_fuzztest-a8861f3aa71443dabaf42dc9cba78b3982524a51_GH0.tar.gz) = 990307
 SHA256 (chromium-full-mirror-external_github.com_google_googletest-4fe3307fb2d9f86d19777c7eb0e4809e9694dde7_GH0.tar.gz) = edec3397b5fddc4d4b82b800f5818d7b9af42234c0a18418c7a3324b117b674c
 SIZE (chromium-full-mirror-external_github.com_google_googletest-4fe3307fb2d9f86d19777c7eb0e4809e9694dde7_GH0.tar.gz) = 889388
 SHA256 (chromium-full-mirror-external_github.com_google_highway-2607d3b5b0113992fe84d3848859eae13b3b52c1_GH0.tar.gz) = cff71f93ba12be899fac8579f8095c28197e97167b88d6fa511122f2b53107b3
 SIZE (chromium-full-mirror-external_github.com_google_highway-2607d3b5b0113992fe84d3848859eae13b3b52c1_GH0.tar.gz) = 3692458
 SHA256 (chromium-full-mirror-external_github.com_open-source-parsers_jsoncpp-3347a4b86bb914cb565f0cbda19c06e109513300_GH0.tar.gz) = a8989f83704f5ebc938b8666e2092dc8305642a45c1b6649e1daa1c1db801cdf
 SIZE (chromium-full-mirror-external_github.com_open-source-parsers_jsoncpp-3347a4b86bb914cb565f0cbda19c06e109513300_GH0.tar.gz) = 188156
-SHA256 (chromium-full-mirror-external_github.com_google_re2-972a15cedd008d846f1a39b2e88ce48d7f166cbd_GH0.tar.gz) = 186469e8880a129eb2d0f142f8a89a66d6e7d0fe908c59e36ed473c9ee33aeb0
-SIZE (chromium-full-mirror-external_github.com_google_re2-972a15cedd008d846f1a39b2e88ce48d7f166cbd_GH0.tar.gz) = 398192
-SHA256 (chromium-full-mirror-chromium_src_third_party_abseil-cpp-edf0931ff4e2cddfeecade307ae948b5d09b8b38_GH0.tar.gz) = bd403cc3e25ec89a61505d877c0d14554595762512d721e86d8b9f3e1a0137a9
-SIZE (chromium-full-mirror-chromium_src_third_party_abseil-cpp-edf0931ff4e2cddfeecade307ae948b5d09b8b38_GH0.tar.gz) = 3169833
-SHA256 (chromium-full-mirror-chromium_src_build-bc0661cf80717e97e1b6868396f61f7f94f2d04a_GH0.tar.gz) = 2b722649aee0f9904d60519de917273d1528644b897f7a483d4025d71d2a3950
-SIZE (chromium-full-mirror-chromium_src_build-bc0661cf80717e97e1b6868396f61f7f94f2d04a_GH0.tar.gz) = 1913722
-SHA256 (chromium-full-mirror-chromium_src_buildtools-c202b4a9dac30e789ed6e3b2354efa94357a56f3_GH0.tar.gz) = f628e38b6eb2a940037ce80e16a838ec488ee88951b883654df42996a392be3e
-SIZE (chromium-full-mirror-chromium_src_buildtools-c202b4a9dac30e789ed6e3b2354efa94357a56f3_GH0.tar.gz) = 57071
-SHA256 (chromium-full-mirror-chromium_src_tools_clang-10f700407ca356594ea2a575572b7ce63183721d_GH0.tar.gz) = 045e78afe7f46b743781dd4df343d97b1ba1325bbe4f3ceeb6bc3809efcbdbee
-SIZE (chromium-full-mirror-chromium_src_tools_clang-10f700407ca356594ea2a575572b7ce63183721d_GH0.tar.gz) = 659180
+SHA256 (chromium-full-mirror-external_github.com_google_re2-2da0056814cf180480a19f5cf811e7e1c054bf6d_GH0.tar.gz) = bfe2eaaf27e2d7f1729eb1b9285dbfc56559c6b5fe70d48bc388ce6f5dc0bee8
+SIZE (chromium-full-mirror-external_github.com_google_re2-2da0056814cf180480a19f5cf811e7e1c054bf6d_GH0.tar.gz) = 398158
+SHA256 (chromium-full-mirror-chromium_src_third_party_abseil-cpp-9aa0c314d9bd021e48f0193f0af3316a7e8bec63_GH0.tar.gz) = 0f65e6116a7a49d76a650b45057e60f5dcdf472c61654e57ed0989d7e4b90dd5
+SIZE (chromium-full-mirror-chromium_src_third_party_abseil-cpp-9aa0c314d9bd021e48f0193f0af3316a7e8bec63_GH0.tar.gz) = 3182883
+SHA256 (chromium-full-mirror-chromium_src_build-aa268127b8cc571ebc60f200d052a09d27231843_GH0.tar.gz) = f0bbc78424abcd300d6a21adbf14af509278f403a8f75b91eb0c6a30036ca110
+SIZE (chromium-full-mirror-chromium_src_build-aa268127b8cc571ebc60f200d052a09d27231843_GH0.tar.gz) = 1909291
+SHA256 (chromium-full-mirror-chromium_src_buildtools-8790f824690e131a78f36e80ecc05a9272f061c8_GH0.tar.gz) = fd435c2a20db51f60cf7166d6c081e350c5655938a3423cc9d50055522925573
+SIZE (chromium-full-mirror-chromium_src_buildtools-8790f824690e131a78f36e80ecc05a9272f061c8_GH0.tar.gz) = 60965
+SHA256 (chromium-full-mirror-chromium_src_tools_clang-47fbf574c4f14e7288da3e51ff6eca0990183377_GH0.tar.gz) = 4e0b128becf7d0ea8c4de47d110b788f1be63c673dc8391944d5ccfbd22d1a05
+SIZE (chromium-full-mirror-chromium_src_tools_clang-47fbf574c4f14e7288da3e51ff6eca0990183377_GH0.tar.gz) = 680111
 SHA256 (chromium-full-mirror-chromium_src_third_party_cpu_features-4974e2063946d9dd2a417c27db139fd982ff447a_GH0.tar.gz) = 8bb2d742de571eccd1d0e1046bfd3710306ad25ab9451a1f1f83d730241f4ec4
 SIZE (chromium-full-mirror-chromium_src_third_party_cpu_features-4974e2063946d9dd2a417c27db139fd982ff447a_GH0.tar.gz) = 1350
-SHA256 (chromium-full-mirror-chromium_src_third_party_fuzztest-55970ac2863f6b740d3e8247ac0ec48e7acb2113_GH0.tar.gz) = 53fd81c68af7c5dfd1307b96d290c75f0e8a286c7b99337dfefcd2e8e4d05d0d
-SIZE (chromium-full-mirror-chromium_src_third_party_fuzztest-55970ac2863f6b740d3e8247ac0ec48e7acb2113_GH0.tar.gz) = 4878
-SHA256 (chromium-full-mirror-chromium_deps_icu-5aa526207171ecadf31597f0980a7b7ad8872f33_GH0.tar.gz) = 88ed4aad7df30d74540c3ed9aca38368e6b7668d96182a6e4a07ec18139f5621
-SIZE (chromium-full-mirror-chromium_deps_icu-5aa526207171ecadf31597f0980a7b7ad8872f33_GH0.tar.gz) = 55564401
+SHA256 (chromium-full-mirror-chromium_src_third_party_fuzztest-4b524d48590b3433597a557d1a8abc134a86b611_GH0.tar.gz) = 82fbd2fade0ebd8b0f6177766933196ca5999a9d6207fd9c260f9ae871fd8682
+SIZE (chromium-full-mirror-chromium_src_third_party_fuzztest-4b524d48590b3433597a557d1a8abc134a86b611_GH0.tar.gz) = 4881
+SHA256 (chromium-full-mirror-chromium_deps_icu-19dfb44a62ae60ce6b0060de8c0cef5d5c527177_GH0.tar.gz) = a541dad6e335110acb8b85b0bef4f7b2d74222356286b0c0c7f79b09ef34e846
+SIZE (chromium-full-mirror-chromium_deps_icu-19dfb44a62ae60ce6b0060de8c0cef5d5c527177_GH0.tar.gz) = 55586456
 SHA256 (chromium-full-mirror-external_github.com_llvm_llvm-project_libcxx-97b436da4c33663581d394f4ee0a5977fc38c2f4_GH0.tar.gz) = bf96db13560d0f8436ce3fe9ad8d7ccbe36fd8a509cf0982635eed822a718c94
 SIZE (chromium-full-mirror-external_github.com_llvm_llvm-project_libcxx-97b436da4c33663581d394f4ee0a5977fc38c2f4_GH0.tar.gz) = 8565984
-SHA256 (chromium-full-mirror-external_github.com_llvm_llvm-project_libcxxabi-92767730c5f8350fc53f5b3de5c3c02d00bbab8c_GH0.tar.gz) = 43361244cb302581ca4fc8710831a9aa1fba23ccd9e55c42d25848c960b27471
-SIZE (chromium-full-mirror-external_github.com_llvm_llvm-project_libcxxabi-92767730c5f8350fc53f5b3de5c3c02d00bbab8c_GH0.tar.gz) = 801453
-SHA256 (chromium-full-mirror-external_github.com_llvm_llvm-project_libunwind-24a407d5353ad38f948f107c7d6bc2bcbb4bca24_GH0.tar.gz) = dd84d3b24041b658c1c420eb81c2b530a2c31daad123ee9919cd6947c51570ac
-SIZE (chromium-full-mirror-external_github.com_llvm_llvm-project_libunwind-24a407d5353ad38f948f107c7d6bc2bcbb4bca24_GH0.tar.gz) = 185836
-SHA256 (chromium-full-mirror-external_github.com_llvm_llvm-project_libc-5e61624667bf9e44ea452191dbda0172997018a2_GH0.tar.gz) = 49fafd32636be8a468f229898307ae9397b9854b8b3175841100e1dfb41e7243
-SIZE (chromium-full-mirror-external_github.com_llvm_llvm-project_libc-5e61624667bf9e44ea452191dbda0172997018a2_GH0.tar.gz) = 43871838
-SHA256 (chromium-full-mirror-chromium_src_base_allocator_partition_allocator-a0f30e381c6e132215a0c8d809fd08ff4cdad244_GH0.tar.gz) = 91480006aface76b715e93891c10b736303d757e247aed7a15906efcac20a078
-SIZE (chromium-full-mirror-chromium_src_base_allocator_partition_allocator-a0f30e381c6e132215a0c8d809fd08ff4cdad244_GH0.tar.gz) = 880412
-SHA256 (chromium-full-mirror-chromium_src_third_party_protobuf-398c57e93a383373546bc6ae5ac2052b6155f2ba_GH0.tar.gz) = 9229416c957a01c71c256eba918d5013a5e09565d6c13e9fb9ad52b6878f2302
-SIZE (chromium-full-mirror-chromium_src_third_party_protobuf-398c57e93a383373546bc6ae5ac2052b6155f2ba_GH0.tar.gz) = 7242010
+SHA256 (chromium-full-mirror-external_github.com_llvm_llvm-project_libcxxabi-0e691bb69ac90450d8d53bc8ee5968c62f9c15a7_GH0.tar.gz) = a8c94e18ce50aef27cc8693a00a028e4d132e8e2821b32541cf1fdb9cc2efe33
+SIZE (chromium-full-mirror-external_github.com_llvm_llvm-project_libcxxabi-0e691bb69ac90450d8d53bc8ee5968c62f9c15a7_GH0.tar.gz) = 801739
+SHA256 (chromium-full-mirror-external_github.com_llvm_llvm-project_libunwind-c4438dd4178c627697459a12c54eb1f7f8eefd12_GH0.tar.gz) = 98f9de8b1de92835ad25e8d5ef95c759e5f52604121e457a7ecb91bf1412d539
+SIZE (chromium-full-mirror-external_github.com_llvm_llvm-project_libunwind-c4438dd4178c627697459a12c54eb1f7f8eefd12_GH0.tar.gz) = 185897
+SHA256 (chromium-full-mirror-external_github.com_llvm_llvm-project_libc-97e60a1e7f7180965cc84e22ddde9f1d4ffd640f_GH0.tar.gz) = bf30860c35e0775f53acf0ec190e8f37157b86aabe08a11fbc3a4ec8159f2c6d
+SIZE (chromium-full-mirror-external_github.com_llvm_llvm-project_libc-97e60a1e7f7180965cc84e22ddde9f1d4ffd640f_GH0.tar.gz) = 43933295
+SHA256 (chromium-full-mirror-chromium_src_base_allocator_partition_allocator-1b65ca87736e9edb51911e15915573bf4cda7245_GH0.tar.gz) = 1adc2ef2d9fbec0af68984eb11737cbae4971e2dd646c5a2c188759f1d1543ae
+SIZE (chromium-full-mirror-chromium_src_base_allocator_partition_allocator-1b65ca87736e9edb51911e15915573bf4cda7245_GH0.tar.gz) = 889838
+SHA256 (chromium-full-mirror-chromium_src_third_party_protobuf-9fbbf0b210753390b790e4f1e74ddff5d7d97bbf_GH0.tar.gz) = 057dad107620f8c423972ac3fc36b799ce05243c6d6f23186af5449862d678da
+SIZE (chromium-full-mirror-chromium_src_third_party_protobuf-9fbbf0b210753390b790e4f1e74ddff5d7d97bbf_GH0.tar.gz) = 7327117
 SHA256 (chromium-full-mirror-chromium_src_tools_protoc_wrapper-e9dbe1bf6a2a5d2d4973725874259eed587cf18d_GH0.tar.gz) = f1cd02acacdabea17c4e0e5c312982cd94ab4bfabbe8f20d77baa473313125cb
 SIZE (chromium-full-mirror-chromium_src_tools_protoc_wrapper-e9dbe1bf6a2a5d2d4973725874259eed587cf18d_GH0.tar.gz) = 4446
 SHA256 (chromium-full-mirror-chromium_src_third_party_simdutf-f7356eed293f8208c40b3c1b344a50bd70971983_GH0.tar.gz) = ba5584a4392a5189f8cc3849b946c5733b0b3a3cce006b57b611fb3d5e9987a4
 SIZE (chromium-full-mirror-chromium_src_third_party_simdutf-f7356eed293f8208c40b3c1b344a50bd70971983_GH0.tar.gz) = 425405
-SHA256 (chromium-full-mirror-chromium_src_third_party_zlib-13395eebe853e811d274f7bd9b71fb7d9b5a5851_GH0.tar.gz) = 055e7277b111297a91b03c07780619cfb7c2a971c0376e095980c1d1674feec6
-SIZE (chromium-full-mirror-chromium_src_third_party_zlib-13395eebe853e811d274f7bd9b71fb7d9b5a5851_GH0.tar.gz) = 1385572
+SHA256 (chromium-full-mirror-chromium_src_third_party_zlib-456ae730017b9b4bd3371927abc82627fd51feef_GH0.tar.gz) = 3633836b6b940588850e7fad36b4b4548d8ca308eee253913a3235d76d12c236
+SIZE (chromium-full-mirror-chromium_src_third_party_zlib-456ae730017b9b4bd3371927abc82627fd51feef_GH0.tar.gz) = 1386796
diff --git a/lang/v8-beta/files/patch-BUILD.gn b/lang/v8-beta/files/patch-BUILD.gn
index 895da4ba90e3..8fc78224314c 100644
--- a/lang/v8-beta/files/patch-BUILD.gn
+++ b/lang/v8-beta/files/patch-BUILD.gn
@@ -1,6 +1,6 @@
---- BUILD.gn.orig	2026-10-06 18:33:12 UTC
+--- BUILD.gn.orig	2026-10-12 21:12:54 UTC
 +++ BUILD.gn
-@@ -7648,7 +7648,7 @@ v8_component("v8_libbase") {
+@@ -7716,7 +7716,7 @@ v8_component("v8_libbase") {
      }
    }
  
@@ -9,7 +9,7 @@
      sources += [
        "src/base/debug/stack_trace_posix.cc",
        "src/base/platform/platform-linux.cc",
-@@ -7666,6 +7666,12 @@ v8_component("v8_libbase") {
+@@ -7734,6 +7734,12 @@ v8_component("v8_libbase") {
      ]
  
      libs = [ "dl" ]
@@ -22,7 +22,7 @@
    } else if (is_android) {
      if (current_toolchain == host_toolchain) {
        libs = [
-@@ -8252,6 +8258,9 @@ if (v8_monolithic) {
+@@ -8320,6 +8326,9 @@ if (v8_monolithic) {
        ":v8_libplatform",
        "//build/win:default_exe_manifest",
      ]
diff --git a/lang/v8-beta/files/patch-build_config_BUILDCONFIG.gn b/lang/v8-beta/files/patch-build_config_BUILDCONFIG.gn
index 0cb09cd17cd2..906d89ea3f96 100644
--- a/lang/v8-beta/files/patch-build_config_BUILDCONFIG.gn
+++ b/lang/v8-beta/files/patch-build_config_BUILDCONFIG.gn
@@ -1,4 +1,4 @@
---- build/config/BUILDCONFIG.gn.orig	2026-09-21 01:17:00 UTC
+--- build/config/BUILDCONFIG.gn.orig	2026-10-12 03:47:41 UTC
 +++ build/config/BUILDCONFIG.gn
 @@ -224,8 +224,8 @@ if (host_toolchain == "") {
    # TODO(dpranke): Add some sort of assert here that verifies that
@@ -34,16 +34,16 @@
  
  is_apple = is_ios || is_mac || is_watchos
  is_posix = !is_win && !is_fuchsia
-@@ -630,6 +631,8 @@ foreach(_target_type,
-             filter_include([ _current_label ],
-                            CHECK_INCLUDES_STRICT_ALLOWLIST) != []
+@@ -631,6 +632,8 @@ foreach(_target_type,
+           check_includes_strict = false
+         }
        }
 +      # devel/gn predates check_includes_strict (added in gn 2489)
 +      not_needed([ "check_includes_strict" ])
  
        if (use_libcxx_modules && is_clang) {
          if (strict_deps) {
-@@ -642,6 +645,7 @@ foreach(_target_type,
+@@ -643,6 +646,7 @@ foreach(_target_type,
        if (!defined(generate_modulemap)) {
          generate_modulemap = default_modulemap_mode
        }
@@ -51,16 +51,16 @@
  
        if (use_libcxx_modules) {
          # Add a dependency needed for Clang modules builds.
-@@ -774,6 +778,8 @@ foreach(_target_type,
-             filter_include([ _current_label ],
-                            CHECK_INCLUDES_STRICT_ALLOWLIST) != []
+@@ -776,6 +780,8 @@ foreach(_target_type,
+           check_includes_strict = false
+         }
        }
 +      # devel/gn predates check_includes_strict (added in gn 2489)
 +      not_needed([ "check_includes_strict" ])
  
        if (use_libcxx_modules && is_clang) {
          if (strict_deps) {
-@@ -786,6 +792,7 @@ foreach(_target_type,
+@@ -788,6 +794,7 @@ foreach(_target_type,
        if (!defined(generate_modulemap)) {
          generate_modulemap = default_modulemap_mode
        }
diff --git a/lang/v8-beta/files/patch-build_config_c++_c++.gni b/lang/v8-beta/files/patch-build_config_c++_c++.gni
index 43628e31284c..410909a3f855 100644
--- a/lang/v8-beta/files/patch-build_config_c++_c++.gni
+++ b/lang/v8-beta/files/patch-build_config_c++_c++.gni
@@ -1,6 +1,6 @@
---- build/config/c++/c++.gni.orig	2026-09-13 16:45:17 UTC
+--- build/config/c++/c++.gni.orig	2026-10-12 03:47:41 UTC
 +++ build/config/c++/c++.gni
-@@ -113,7 +113,7 @@ assert(
+@@ -116,7 +116,7 @@ assert(
  # The saigo libc++ is distinct from the custom hermetic libc++. However, since
  # the Chrome team controls the saigo toolchain, it is safe to unconditionally
  # enable libc++ hardening there as well.
diff --git a/lang/v8-beta/files/patch-build_config_clang_BUILD.gn b/lang/v8-beta/files/patch-build_config_clang_BUILD.gn
index ce27e1511b1b..a38d2570ac2d 100644
--- a/lang/v8-beta/files/patch-build_config_clang_BUILD.gn
+++ b/lang/v8-beta/files/patch-build_config_clang_BUILD.gn
@@ -1,6 +1,6 @@
---- build/config/clang/BUILD.gn.orig	2026-09-21 01:17:00 UTC
+--- build/config/clang/BUILD.gn.orig	2026-10-12 03:47:41 UTC
 +++ build/config/clang/BUILD.gn
-@@ -282,6 +282,10 @@ clang_lib("compiler_builtins") {
+@@ -286,6 +286,10 @@ clang_lib("compiler_builtins") {
      } else {
        assert(false, "unsupported target_platform=$target_platform")
      }
diff --git a/lang/v8-beta/files/patch-build_config_linux_pkg-config.py b/lang/v8-beta/files/patch-build_config_linux_pkg-config.py
index f88e00f59a74..6f3eb262ad17 100644
--- a/lang/v8-beta/files/patch-build_config_linux_pkg-config.py
+++ b/lang/v8-beta/files/patch-build_config_linux_pkg-config.py
@@ -1,6 +1,6 @@
---- build/config/linux/pkg-config.py.orig	2026-09-13 16:54:58 UTC
+--- build/config/linux/pkg-config.py.orig	2026-10-12 03:47:41 UTC
 +++ build/config/linux/pkg-config.py
-@@ -58,8 +58,12 @@ def SetConfigPath(options):
+@@ -59,8 +59,12 @@ def SetConfigPath(options):
          print("You must specify an architecture via -a if using a sysroot.")
          sys.exit(1)
  
@@ -15,12 +15,12 @@
      os.environ['PKG_CONFIG_LIBDIR'] = libdir
      return libdir
  
-@@ -145,7 +149,7 @@ def main():
-     # If this is run on non-Linux platforms, just return nothing and indicate
-     # success. This allows us to "kind of emulate" a Linux build from other
-     # platforms.
+@@ -143,7 +147,7 @@ def main():
+     )
+     (options, args) = parser.parse_args()
+ 
 -    if "linux" not in sys.platform:
 +    if "linux" not in sys.platform and "bsd" not in sys.platform:
-         if options.dridriverdir or options.libdir:
-             sys.stdout.write("")
-             return 0
+         if (
+             sys.platform == 'darwin'
+             and options.sysroot
diff --git a/lang/v8-beta/files/patch-src_api_api.cc b/lang/v8-beta/files/patch-src_api_api.cc
index 98f017a8bbc7..b2e4c3f90ce6 100644
--- a/lang/v8-beta/files/patch-src_api_api.cc
+++ b/lang/v8-beta/files/patch-src_api_api.cc
@@ -1,6 +1,6 @@
---- src/api/api.cc.orig	2026-10-06 18:33:12 UTC
+--- src/api/api.cc.orig	2026-10-12 21:12:54 UTC
 +++ src/api/api.cc
-@@ -6535,7 +6535,7 @@ bool v8::V8::Initialize(const int build_config) {
+@@ -6532,7 +6532,7 @@ bool v8::V8::Initialize(const int build_config) {
    return true;
  }
  
diff --git a/lang/v8-beta/files/patch-src_d8_d8.cc b/lang/v8-beta/files/patch-src_d8_d8.cc
index d346b61d2f51..ccf26eab996d 100644
--- a/lang/v8-beta/files/patch-src_d8_d8.cc
+++ b/lang/v8-beta/files/patch-src_d8_d8.cc
@@ -1,6 +1,6 @@
---- src/d8/d8.cc.orig	2026-10-06 18:33:12 UTC
+--- src/d8/d8.cc.orig	2026-10-12 21:12:54 UTC
 +++ src/d8/d8.cc
-@@ -110,6 +110,11 @@
+@@ -111,6 +111,11 @@
  #include <signal.h>
  #endif  // V8_OS_POSIX
  
@@ -12,7 +12,7 @@
  #ifdef V8_FUZZILLI
  // gn check complains when not using the v8_fuzzilli arg since the public dep.
  // is added conditionally
-@@ -8031,7 +8036,17 @@ int Shell::Main(int argc, char* argv[]) {
+@@ -8196,7 +8201,17 @@ int Shell::Main(int argc, char* argv[]) {
    // TODO(40925855): Enable this more broadly outside of d8.
  #if defined(V8_ENABLE_PARTITION_ALLOC)
  #if PA_BUILDFLAG(ENABLE_USER_SPACE_ZERO_SEGMENT)
diff --git a/lang/v8-beta/files/patch-third__party_partition__alloc_partition__alloc.gni b/lang/v8-beta/files/patch-third__party_partition__alloc_partition__alloc.gni
index aed0cc7a0e9f..e616bd8c6ea4 100644
--- a/lang/v8-beta/files/patch-third__party_partition__alloc_partition__alloc.gni
+++ b/lang/v8-beta/files/patch-third__party_partition__alloc_partition__alloc.gni
@@ -1,4 +1,4 @@
---- third_party/partition_alloc/partition_alloc.gni.orig	2026-09-18 16:27:42 UTC
+--- third_party/partition_alloc/partition_alloc.gni.orig	2026-10-08 04:32:34 UTC
 +++ third_party/partition_alloc/partition_alloc.gni
 @@ -110,8 +110,8 @@ use_large_empty_slot_span_ring = true
  # TODO(crbug.com/329199197): Clean this up when experiments are complete.
@@ -11,7 +11,7 @@
  
  declare_args() {
    # Whether PartitionAlloc is built in official mode.
-@@ -540,7 +540,8 @@ is_pkeys_available =
+@@ -546,7 +546,8 @@ is_pkeys_available =
  # dependencies that use partition_allocator are compiled in AOSP against a
  # version of glibc that does not include pkeys syscall numbers.
  is_pkeys_available =
diff --git a/lang/v8-beta/files/patch-third__party_partition__alloc_src_partition__alloc_partition__address__space.cc b/lang/v8-beta/files/patch-third__party_partition__alloc_src_partition__alloc_partition__address__space.cc
index f8f5e5a37aa0..403f682f9546 100644
--- a/lang/v8-beta/files/patch-third__party_partition__alloc_src_partition__alloc_partition__address__space.cc
+++ b/lang/v8-beta/files/patch-third__party_partition__alloc_src_partition__alloc_partition__address__space.cc
@@ -1,6 +1,6 @@
---- third_party/partition_alloc/src/partition_alloc/partition_address_space.cc.orig	2026-09-18 16:27:42 UTC
+--- third_party/partition_alloc/src/partition_alloc/partition_address_space.cc.orig	2026-10-08 04:32:34 UTC
 +++ third_party/partition_alloc/src/partition_alloc/partition_address_space.cc
-@@ -36,6 +36,10 @@
+@@ -37,6 +37,10 @@
  #include <windows.h>
  #endif  // PA_BUILDFLAG(IS_WIN)
  
@@ -11,7 +11,7 @@
  #if PA_BUILDFLAG(ENABLE_THREAD_ISOLATION)
  #include <sys/mman.h>
  #endif
-@@ -263,6 +267,13 @@ void PartitionAddressSpace::InitZeroSegment() {
+@@ -264,6 +268,13 @@ void PartitionAddressSpace::InitZeroSegment() {
    // failure. Previously reserved regions are intentionally leaked allowing for
    // partial user space segment.
    const auto reserve_region = [](uintptr_t address, size_t size) -> bool {
@@ -25,7 +25,7 @@
      const uintptr_t allocated_base =
          AllocPages(address, size, PageAllocationGranularity(),
                     PageAccessibilityConfiguration(
-@@ -275,6 +286,7 @@ void PartitionAddressSpace::InitZeroSegment() {
+@@ -276,6 +287,7 @@ void PartitionAddressSpace::InitZeroSegment() {
        FreePages(allocated_base, size);
      }
      return false;
diff --git a/lang/v8-beta/files/patch-third__party_partition__alloc_src_partition__alloc_stack_stack.cc b/lang/v8-beta/files/patch-third__party_partition__alloc_src_partition__alloc_stack_stack.cc
index 1226d8f759b8..e56fe00d24dd 100644
--- a/lang/v8-beta/files/patch-third__party_partition__alloc_src_partition__alloc_stack_stack.cc
+++ b/lang/v8-beta/files/patch-third__party_partition__alloc_src_partition__alloc_stack_stack.cc
@@ -1,4 +1,4 @@
---- third_party/partition_alloc/src/partition_alloc/stack/stack.cc.orig	2026-09-13 16:45:48 UTC
+--- third_party/partition_alloc/src/partition_alloc/stack/stack.cc.orig	2026-10-08 04:32:34 UTC
 +++ third_party/partition_alloc/src/partition_alloc/stack/stack.cc
 @@ -17,7 +17,10 @@
  #include <windows.h>
@@ -11,26 +11,31 @@
  
  #if PA_BUILDFLAG(PA_LIBC_GLIBC)
  extern "C" void* __libc_stack_end;
-@@ -49,6 +52,22 @@ void* GetStackTop() {
+@@ -49,6 +52,27 @@ uintptr_t GetStackTop() {
  
- void* GetStackTop() {
-   return pthread_get_stackaddr_np(pthread_self());
+ uintptr_t GetStackTop() {
+   return reinterpret_cast<uintptr_t>(pthread_get_stackaddr_np(pthread_self()));
 +}
 +
 +#elif PA_BUILDFLAG(IS_FREEBSD)
 +
-+void* GetStackTop() {
++uintptr_t GetStackTop() {
 +  pthread_attr_t attr;
-+  int error = pthread_attr_get_np(pthread_self(), &attr);
++  int error = pthread_attr_init(&attr);
++  if (error) {
++    return 0;
++  }
++  error = pthread_attr_get_np(pthread_self(), &attr);
 +  if (!error) {
 +    void* base;
 +    size_t size;
 +    error = pthread_attr_getstack(&attr, &base, &size);
 +    PA_CHECK(!error);
 +    pthread_attr_destroy(&attr);
-+    return PA_UNSAFE_TODO(reinterpret_cast<uint8_t*>(base) + size);
++    return reinterpret_cast<uintptr_t>(base) + size;
 +  }
-+  return nullptr;
++  pthread_attr_destroy(&attr);
++  return 0;
  }
  
  #elif PA_BUILDFLAG(IS_POSIX) || PA_BUILDFLAG(IS_FUCHSIA)
diff --git a/lang/v8-beta/files/patch-tools_metagen_clang__bootstrap.py b/lang/v8-beta/files/patch-tools_metagen_clang__bootstrap.py
index b03f4fcbeb8a..30f340079dca 100644
--- a/lang/v8-beta/files/patch-tools_metagen_clang__bootstrap.py
+++ b/lang/v8-beta/files/patch-tools_metagen_clang__bootstrap.py
@@ -1,12 +1,16 @@
---- tools/metagen/clang_bootstrap.py.orig	2026-10-08 04:42:29 UTC
+--- tools/metagen/clang_bootstrap.py.orig	2026-10-12 21:12:54 UTC
 +++ tools/metagen/clang_bootstrap.py
-@@ -158,6 +158,11 @@ def bootstrap_native(native_so: str,
+@@ -158,6 +158,15 @@ def bootstrap_native(native_so: str,
      sys.exit(1)
    cindex.Config.set_library_file(native_so)
  
 +  # cindex before LLVM 21 defines Cursor.__eq__ without __hash__, which
-+  # makes cursors unhashable; metagen keeps them in sets.
++  # makes cursors unhashable; metagen keeps them in sets.  Its __eq__ also
++  # passes non-Cursor operands such as None to libclang, which fails.
 +  if cindex.Cursor.__hash__ is None:
++    _cursor_eq = cindex.Cursor.__eq__
++    cindex.Cursor.__eq__ = lambda self, other: (
++        isinstance(other, cindex.Cursor) and _cursor_eq(self, other))
 +    cindex.Cursor.__hash__ = lambda self: self.hash
 +
    # Log the libclang version and warn if it is older than the clang
diff --git a/lang/v8-beta/files/temporal_capi-Cargo.lock b/lang/v8-beta/files/temporal_capi-Cargo.lock
index 432a844aecfa..7ae657c48902 100644
--- a/lang/v8-beta/files/temporal_capi-Cargo.lock
+++ b/lang/v8-beta/files/temporal_capi-Cargo.lock
@@ -36,7 +36,7 @@ dependencies = [
  "diplomat_core",
  "proc-macro2",
  "quote",
- "syn 3.0.5",
+ "syn",
 ]
 
 [[package]]
@@ -56,7 +56,7 @@ dependencies = [
  "serde",
  "smallvec",
  "strck",
- "syn 3.0.5",
+ "syn",
 ]
 
 [[package]]
@@ -67,7 +67,7 @@ checksum = "c6232dd377dcc64799954cbd3a9bb882e9cdc1308ccd87b1c098f1fb2eaf82a8"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 3.0.5",
+ "syn",
 ]
 
 [[package]]
@@ -251,14 +251,14 @@ checksum = "e7a5d71263a5a7d47b41f6b3f06ba276f10cc18b0931f1799f710578e2309348"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 3.0.5",
+ "syn",
 ]
 
 [[package]]
 name = "smallvec"
-version = "1.16.1"
+version = "1.16.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba467056f1b547ed52077911161fc86985becbc60e8e1857c8a144dab0def891"
+checksum = "f9395f0f0eee849a9b707b2f06bb92a6a422090e2123bb2ef8e87a0e61892a8e"
 
 [[package]]
 name = "stable_deref_trait"
@@ -277,20 +277,9 @@ dependencies = [
 
 [[package]]
 name = "syn"
-version = "2.0.119"
+version = "3.0.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "872831b642d1a07999a962a351ed35b955ea2cfc8f3862091e2a240a84f17297"
-dependencies = [
- "proc-macro2",
- "quote",
- "unicode-ident",
-]
-
-[[package]]
-name = "syn"
-version = "3.0.5"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "12df2e0110f65b775f769bb17ef989067a1d931b2eb822bd4346631eeada89f9"
+checksum = "8593e8e72159ed2257d083c7a454a85cbf854f37a0966d8d483aff8c8a3ebcee"
 dependencies = [
  "proc-macro2",
  "quote",
@@ -299,13 +288,13 @@ dependencies = [
 
 [[package]]
 name = "synstructure"
-version = "0.13.2"
+version = "0.14.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
+checksum = "901704edd0dfe137f1987838ee4f259e4e063c31371bdb423f7ae38ec6f77f02"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.119",
+ "syn",
 ]
 
 [[package]]
@@ -367,9 +356,9 @@ dependencies = [
 
 [[package]]
 name = "unicode-ident"
-version = "1.0.24"
+version = "1.0.26"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75"
+checksum = "d245f478577f809a851594d02313b640fb437e0bb33866753cff937863096954"
 
 [[package]]
 name = "utf8_iter"
@@ -403,13 +392,13 @@ dependencies = [
 
 [[package]]
 name = "yoke-derive"
-version = "0.8.2"
+version = "0.8.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "de844c262c8848816172cef550288e7dc6c7b7814b4ee56b3e1553f275f1858e"
+checksum = "ec8ebde2db3681e8c9980cc27822030e68752690ddfa9473e739aeb4dbde6d71"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.119",
+ "syn",
  "synstructure",
 ]
 
@@ -424,13 +413,13 @@ dependencies = [
 
 [[package]]
 name = "zerofrom-derive"
-version = "0.1.7"
+version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "11532158c46691caf0f2593ea8358fed6bbf68a0315e80aae9bd41fbade684a1"
+checksum = "f75b4683f6c7f45248d4d64056a24298c6281e0993356d7d1b4a1a962ef10d4a"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 2.0.119",
+ "syn",
  "synstructure",
 ]
 
@@ -464,7 +453,7 @@ checksum = "34df6fc39dbd26ddc9c10e6a2984476e13acce22e64e4487636ef494369225da"
 dependencies = [
  "proc-macro2",
  "quote",
- "syn 3.0.5",
+ "syn",
 ]
 
 [[package]]