Skip to content

Bump WebKit - #22957

Merged
Jarred-Sumner merged 12 commits into
mainfrom
jarred/bump-webkit-sep-25
Sep 26, 2025
Merged

Jarred-Sumner merged 12 commits into
mainfrom
jarred/bump-webkit-sep-25

Conversation

@Jarred-Sumner

Copy link
Copy Markdown
Collaborator

What does this PR do?

How did you verify your code works?

@robobun

robobun commented Sep 25, 2025 •

Copy link
Copy Markdown
Collaborator
Updated 12:19 AM PT - Sep 26th, 2025

❌ @Jarred-Sumner, your commit 5ba94c4 has 4 failures in Build #27108 (All Failures):


🧪   To try this PR locally:

bunx bun-pr 22957

That installs a local version of the PR into your bun-22957 executable, so you can run:

bun-22957 --bun

@Jarred-Sumner
Jarred-Sumner force-pushed the jarred/bump-webkit-sep-25 branch from 936a7f5 to db1e6e7 Compare September 25, 2025 09:57
Claude Bot and others added 10 commits September 25, 2025 10:22
- Replace std::variant with WTF::Variant in CryptoGenDhKeyPair.h
- Convert WTF::switchOn to std::visit with WTF::makeVisitor pattern:
  - JSMessageEventCustom.cpp
  - PerformanceUserTiming.cpp (2 instances)
  - SerializedScriptValue.cpp
  - MessageEvent.cpp

This addresses the API changes in the new WebKit version where std::variant
is now used instead of WTF::Variant in many places, and WTF::switchOn no
longer works with std::variant.
- Changed isAsyncFrame() to isAsyncFrameWithoutCodeblock() in ZigGlobalObject.cpp
- Converted all WTF::switchOn to std::visit with WTF::makeVisitor in SubtleCrypto.cpp (3 instances)
@Jarred-Sumner
Jarred-Sumner marked this pull request as ready for review September 26, 2025 08:45
@Jarred-Sumner
Jarred-Sumner merged commit ea735c3 into main Sep 26, 2025
57 of 60 checks passed
@Jarred-Sumner
Jarred-Sumner deleted the jarred/bump-webkit-sep-25 branch September 26, 2025 08:46
@coderabbitai

coderabbitai Bot commented Sep 26, 2025

Copy link
Copy Markdown
Contributor

Caution

Review failed

The pull request is closed.

Walkthrough

Updates default WEBKIT_VERSION in CMake. Converts various variant-dispatch sites from WTF::switchOn to std::visit with WTF::makeVisitor across WebCore and WebCrypto bindings. Adjusts a node crypto header to use WTF::Variant instead of std::variant for a member type. No public API changes.

Changes

Cohort / File(s) Summary
Build config: WebKit version default
cmake/tools/SetupWebKit.cmake
Updated default WEBKIT_VERSION hash used when WEBKIT_VERSION is unset.
Node crypto: variant type change
src/bun.js/bindings/node/crypto/CryptoGenDhKeyPair.h
Changed Bun::DhKeyPairJobCtx::m_prime from std::variant to WTF::Variant of ncrypto::BignumPointer or int.
WebCore: switchOn → std::visit migration
src/bun.js/bindings/webcore/JSMessageEventCustom.cpp, src/bun.js/bindings/webcore/MessageEvent.cpp, src/bun.js/bindings/webcore/PerformanceUserTiming.cpp, src/bun.js/bindings/webcore/SerializedScriptValue.cpp
Replaced WTF::switchOn with std::visit using WTF::makeVisitor for variant dispatch; preserved existing branch semantics (message data conversion, memory cost, timing mark handling, property value assignment).
WebCrypto: switchOn → std::visit migration
src/bun.js/bindings/webcrypto/SubtleCrypto.cpp
Rewrote key data parsing and generateKey resolution to use std::visit with WTF::makeVisitor, keeping existing error handling and results.

Possibly related PRs

✨ Finishing touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch jarred/bump-webkit-sep-25

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 5a709a2 and 5ba94c4.

📒 Files selected for processing (7)
  • cmake/tools/SetupWebKit.cmake (1 hunks)
  • src/bun.js/bindings/node/crypto/CryptoGenDhKeyPair.h (1 hunks)
  • src/bun.js/bindings/webcore/JSMessageEventCustom.cpp (1 hunks)
  • src/bun.js/bindings/webcore/MessageEvent.cpp (1 hunks)
  • src/bun.js/bindings/webcore/PerformanceUserTiming.cpp (2 hunks)
  • src/bun.js/bindings/webcore/SerializedScriptValue.cpp (1 hunks)
  • src/bun.js/bindings/webcrypto/SubtleCrypto.cpp (2 hunks)

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot mentioned this pull request Jan 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants