Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
344 commits
Select commit Hold shift + click to select a range
f6dbdfa
Reimport css-box WPTs.
sammygill Aug 25, 2026
602545c
[Text Extraction] Add more text context before or after a targeted el…
whsieh Aug 25, 2026
66328c1
WKAttachmentTests and MediaLoading API tests are not built in the Xco…
cdumez Aug 25, 2026
9ec22b7
[GFC][Cleanup] Move item placement logic into a dedicated class
sammygill Aug 25, 2026
2eedeab
[JSC] Stop broadcasting to every parallel marker when a bonus visitor…
Constellation Aug 25, 2026
b4f60d6
Avoid redundant URL copies on Cache API query paths
Ahmad-S792 Aug 25, 2026
a3d2b19
Image observer save/restore should be scope-bound
nullhook Aug 25, 2026
2f352b5
Drop the hardening added to DOMWrapperWorld in 315505@main
cdumez Aug 25, 2026
f824f17
[git-webkit] Uploading a pull request repeatedly duplicates the branc…
TheBoyRoy05 Aug 25, 2026
38f9cc6
Remove stale UNUSED_PARAM(name) in WebLockManager::request()
Ahmad-S792 Aug 25, 2026
bfb94d1
Refresh the imported css-inline alignment-baseline parsing tests from…
swpatters Aug 25, 2026
6ceceeb
Field ordering in Geolocation wastes 8 bytes of padding per instance
Ahmad-S792 Aug 25, 2026
4b62d53
Reimport css-flexbox WPTs.
sammygill Aug 25, 2026
b62ea5f
[GTK][WPE][Damage] opacity animation doesn't damage descendant layers
nikolaszimmermann Aug 25, 2026
b98b1c5
Use CheckedPtr for Node::m_previousSibling
rniwa Aug 25, 2026
81c94da
[GLIB] Enable the IPC testing API for clang builds of the GTK and WPE…
csaavedra Aug 25, 2026
2faf1df
Update safer C++ expectations (2026-08-25)
rniwa Aug 25, 2026
1330d57
[JSC] Fold unsigned compares against zero into cbz/cbnz and test
gaul Aug 25, 2026
752ab90
[JSC] Deeply nested destructuring pattern crashes bytecode generation
sosukesuzuki Aug 25, 2026
268a25f
AudioBufferSourceNode renders only silence for an out-of-bounds start…
cdumez Aug 25, 2026
87c3be9
Resync libvpx up to M152
youennf Aug 25, 2026
11d5c08
Resync libaom up to M152
youennf Aug 25, 2026
045a0c6
DOMException should have a stack property, like other errors
cdumez Aug 25, 2026
a562b34
[Skia] Test fast/writing-mode/vertical-subst-font-vert-no-dflt.html i…
dpino Aug 25, 2026
682a362
Avoid importing Foundation on Windows
adetaylor Aug 25, 2026
6937c07
[AppKit Gestures] Some scrolls should not produce momentum
aprotyas Aug 25, 2026
3f38d00
[ANGLE] Fix MSL symbol table key comparison logic
jon-b-apple Aug 25, 2026
8000aee
Resync libwebrtc up to M152
youennf Aug 25, 2026
b5aef3f
REGRESSION(317964@main): [macOS iOS] ASSERTION FAILED: bytesSent >= m…
youennf Aug 25, 2026
cd7cc6f
Remove a few unneeded abseil files from Xcode build
youennf Aug 25, 2026
cb13847
Remove ReadableByteStreamFetchSourceEnabled flag
youennf Aug 25, 2026
05da852
Resync abseil-cpp to M152
youennf Aug 25, 2026
9972b95
Harden `SpinButtonElement` by making `SpinButtonOwner` ref-countable
iidmsa Aug 25, 2026
5c50fc9
Reimport css-grid WPTs.
sammygill Aug 25, 2026
b2c29f6
[WebCore] Unsynchronized access to process-global serializedPrimitive…
anttijk Aug 25, 2026
117c212
[Grid Lanes] Rename flow-tolerance to fit-tolerance
sammygill Aug 25, 2026
a4bb577
AX: Add coverage for ten untested or under-tested macOS accessibility…
twilco Aug 25, 2026
396f000
Remove dead autoPictureInPicture/disablePictureInPicture accessors in…
Ahmad-S792 Aug 25, 2026
61f9f23
Unconditionally block external URLs in subframes
rniwa Aug 25, 2026
b17b55f
Make ImageDecoderFactoryAVF thread safe
shallawa Aug 25, 2026
de94eda
Unreviewed, reverting 319776@main (2faf1df3d1dc), 319750@main (ea3dd8…
rniwa Aug 25, 2026
5549b36
Use-after-free of ScriptExecutionContext in trustedTypeCompliantString
pvollan Aug 25, 2026
b5fcdaa
[anon-block-removal] A grid-lanes container gets no anonymous item fo…
alanbaradlay Aug 25, 2026
6fb54e2
[inline] LineGeometry::initialLogicalTopLeft is left unset for a line…
alanbaradlay Aug 25, 2026
950d24e
[webkitbot] Test suite cannot run due to undeclared https-proxy-agent…
ryanhaddad Aug 25, 2026
05b0362
[GTK][WPE] Using g_loadable_icon_load[_async] on a WebKitImage provid…
aperezdc Aug 25, 2026
0fdbfc2
Fix WebRTCPrefix.h after 319787@main
kmiller68 Aug 25, 2026
3387626
[JavaScriptCore] Absence PropertyCondition does not consult non-reifi…
heimskr Aug 25, 2026
47bd52d
[Gardening]: [macOS Release] TestWebKitAPI.WebKit.MediaBufferingPolic…
martadarbinyan Aug 25, 2026
23997cd
Make prewarmed and cached processes run in idle jetsam band
bnham Aug 25, 2026
efff72a
[Grid Lanes] GridLanesLayout does not need to live on RenderGrid.
sammygill Aug 25, 2026
d669c9d
[AppKit Gestures] Rotation and magnification gesture location inconsi…
aprotyas Aug 25, 2026
b5928f9
[JSC][Wasm] Use loadPair for targetInstance and entrypoint in wasmToW…
chicoxyzzy Aug 25, 2026
34a2ffa
[AppKit Gestures] Gesture event support should follow regular AppKit …
aprotyas Aug 25, 2026
1de8c29
Fix Cocoa CMake build
achristensen07 Aug 25, 2026
24562bd
[webkitbot] webkitbot fails to parse identifiers when they are linkif…
ryanhaddad Aug 25, 2026
3a999a1
Sync alignment, padding, specificity, changes for appearance: base-se…
fantasai Aug 25, 2026
7920db1
[JSC] Do not attempt to link a CallLinkInfo after handleHostCall
dhecht Aug 25, 2026
791e1e0
List marker is painted on top of the list item's content instead of b…
alanbaradlay Aug 25, 2026
1e517ef
REGRESSION(319811@main): Broke internal macOS builds
aprotyas Aug 25, 2026
b0212ef
Cache InlineTextItem widths per inline text box content to speed up r…
NathanSolomon733 Aug 25, 2026
c9d5b3f
A block level box on a line is left behind when a column break moves …
alanbaradlay Aug 25, 2026
037843a
Validate fingerprints to previous generated offer/answer when apply a…
youennf Aug 25, 2026
f05fd6d
[ANGLE] MSL translator missing integer UB wrappers allow array bounds…
roberto-apple Aug 25, 2026
f198e8a
[JSC] Optimize MarkedBlock::Handle::stopAllocating
Constellation Aug 25, 2026
2b0e502
[JSC] Fold the string-impl hash shift into the megamorphic cache hash…
gaul Aug 25, 2026
0900347
[EWS] Don't mark the build as exception when extract-test-results is …
aj062 Aug 25, 2026
a1aec7b
REGRESSION(318162@main): [macOS 26] 5 editing/mac/attributed-string/a…
karlrackler Aug 25, 2026
920f517
[git webkit] prepare-commit-msg fails to amend when the checkout is o…
zakariaridouh Aug 25, 2026
c763056
[AppKit Gestures] Notify the client of unhandled magnification gestures
aprotyas Aug 25, 2026
0100cca
Fix pbxproj after 317307@main moved files out of xros
squelart Aug 25, 2026
aca22be
[ews-build] Logging grouping of resultsDB results
TheBoyRoy05 Aug 25, 2026
11b32a9
[Quirks] Move element fullscreen and simulated mouse events quirks in…
colelao Aug 25, 2026
b4980ee
[Gardening]: Remove gardening of imported/w3c/web-platform-tests/wasm…
martadarbinyan Aug 25, 2026
2ca5592
Speed up lunisolar calendar month walk in JS Temporal
asworkjsc Aug 25, 2026
e5961e3
fetch() ignores targetAddressSpace when constructed from a URL string
igower Aug 25, 2026
de707c4
[GFC] Include grid item margins in intrinsic size contributions
yulunwu2 Aug 25, 2026
a19aae0
[GFC] Implement step 2.4 of Distributing Extra Space
yulunwu2 Aug 25, 2026
ba29ff4
SOAuthorizationSession should allow the client to present the authori…
RemyDemarest Aug 25, 2026
9a17cd1
[JSC] Procedure::usesSIMD() not set when OMG inlines a SIMD callee in…
heimskr Aug 26, 2026
4087ab8
[Grid Lanes] Initialize GridLanesLayout in its constructor
sammygill Aug 26, 2026
60477f5
[WPE][GTK] FlatpakLauncher should not attempt to expose paths under /…
mcatanzaro Aug 26, 2026
1018e6f
[macOS] YouTube.com audio continues to play after tab is closed
jernoble Aug 26, 2026
54b9fc0
Make ScopedLambda non-moveable
kmiller68 Aug 26, 2026
3dff3fa
HTML parser should not insert an element into its own subtree
annevk Aug 26, 2026
8d29616
[GFC][Cleanup] Move the grid sizing algorithm into a GridSizer class
sammygill Aug 26, 2026
bc2c887
[JSC] LINK `op_instanceof` metadata in `CodeBlock::finishCreation`
sosukesuzuki Aug 26, 2026
cab3915
[MSE] Seeking to the end of a HTMLMediaElement backed by a MediaSourc…
jyavenard Aug 26, 2026
f186fcf
[preview-only] REGRESSION(304956@main): wpt /css/css-overflow/line-cl…
rwlbuis Aug 26, 2026
5d41d95
`.submitproject-append` should include `Tools/TestWebKitAPI`
roynos Aug 26, 2026
19a32dd
[LBSE] Collecting pattern attributes walks an xlink:href cycle forever
nikolaszimmermann Aug 26, 2026
ee671ed
[Grid Lanes] Resolve fit-tolerance outside of GridLanesLayout
sammygill Aug 26, 2026
24f0a33
[JSC] Add JSString::isDefinitelyAtom
Constellation Aug 26, 2026
71c8aea
[GStreamer] Use fixed watermarks for WebKitWebSource's internal queue
vivienne-w Aug 26, 2026
4e646d1
Fix the Swift clang importer on Windows: MSVC STL module visibility a…
iangrunert Aug 26, 2026
d115ce1
[WPE][GTK] Use a Chrome UA for PrimeVideo
philn Aug 26, 2026
874824c
Unreviewed. [GTK] Bump version numbers
carlosgcampos Aug 26, 2026
3e6559f
[GLIB] MemoryPressureHandlerConfiguration has no IPC metadata under t…
csaavedra Aug 26, 2026
9d3acc9
[GTK][WPE] IconDatabase should use current timestamp when inserting n…
aperezdc Aug 26, 2026
da06d39
(319455@main) Multiple YouTube videos can play simultaneously across …
jyavenard Aug 26, 2026
4d58ca8
CanvasBase and CanvasRenderingContexts should discard copies before d…
kkinnunen-apple Aug 26, 2026
d06355e
[CISupport] Cap max timeout in jscore-tests
aoikonomopoulos Aug 26, 2026
ae6f786
[Cleanup] Streamline the viewport-percentage unit resolution functions
weinig Aug 26, 2026
9ba6cb6
Race on RemoteVideoDecoderCallbacks::m_timestampToDuration leads to u…
youennf Aug 26, 2026
0748de3
Incomplete replacementPath validation in NetworkConnectionToWebProces…
youennf Aug 26, 2026
63ee8a1
Unsynchronized cross-thread access to m_opaqueResponseToSizeWithPaddi…
youennf Aug 26, 2026
68a8f63
[GTK][WPE] Skia compositor: tile cached SkImage should be re-created …
carlosgcampos Aug 26, 2026
9fa946d
Clean up jsObjectCall style
justinmichaud Aug 26, 2026
f8876bd
Allow Swift on Windows
adetaylor Aug 26, 2026
d59388d
Avoid quadratic duplicate detection in Cache.addAll()
Ahmad-S792 Aug 26, 2026
1a124a0
[GTK][WPE] Bump SDK version v9 -> v11
nikolaszimmermann Aug 26, 2026
4d2212f
HighlightRegistry::addAnnotationHighlightWithRange() does redundant a…
Ahmad-S792 Aug 26, 2026
44d3c5c
REGRESSION(319727@main): Broke the build with clang 20 due to a self-…
csaavedra Aug 26, 2026
03efc97
REGRESSION(315609@main): Stack overflow in NetworkProcess aborting th…
szewai Aug 26, 2026
6571377
DisplayList::Recorder has a copy of remote GraphicsContext state per …
kkinnunen-apple Aug 26, 2026
5bb2286
[GTK][WPE?] Branch webkitglib/2.54 does not build with USE_SPIEL=ON
philn Aug 26, 2026
76f03b2
missing bounds check in RtpPacket::SetCsrcs for RTCEncodedVideoFrameM…
youennf Aug 26, 2026
d7c8ef5
int truncation of OBU size in RtpPacketizerAv1::ParseObus
youennf Aug 26, 2026
dfe0d84
[WebRTC] Out-of-bounds write in copyVideoFrameBuffer for odd-width I4…
youennf Aug 26, 2026
533420b
[AppKit Gestures] Support mouse tracking with multiple gesture recogn…
aprotyas Aug 26, 2026
b2678cc
[GLib] Add API for the HTTPS upgrade policy
TingPing Aug 26, 2026
ca6fa1b
New Test(316184@main): [macOS Debug] fast/mediastream/applyConstraint…
youennf Aug 26, 2026
713192f
[Site Isolation] http/tests/local/blob/navigate-blob.html fails
rniwa Aug 26, 2026
aa73fff
[Quirks] Clean up the QuirksMatch API
colelao Aug 26, 2026
a8c3165
[Site Isolation] Avoid sending per-frame layout info if there are no …
bnham Aug 26, 2026
6c3d7d1
Web Inspector: remove obsolete setting migrations
dcrousso Aug 26, 2026
a6dae45
ipc/serialized-type-info.html reports the wrong types off Cocoa
csaavedra Aug 26, 2026
296586e
Update ANGLE to 2026-07-13 (ef84704aca0595b7e3c5b165efc4de81bfaa83d5)
roberto-apple Aug 26, 2026
153ae03
[AppKit Gestures] Magnification can snap the scroll position unexpect…
aprotyas Aug 26, 2026
f733e45
[JSC] Do not broadcast termination from the thread that is about to s…
Constellation Aug 26, 2026
46357e1
[Quirks] Remove isDomain and isEmbedDomain
colelao Aug 26, 2026
fd1caf2
ANGLE: Metal: EnsureLoopForwardProgress infinite loops with unsigned …
kkinnunen-apple Aug 26, 2026
432bc10
[GLIB] Add XRDeviceIdentifier to serialized_identifiers()
csaavedra Aug 26, 2026
0ca045f
Adopt CSS parser machinery for parsing SVGAngleValue
Ahmad-S792 Aug 26, 2026
9790ba0
Generate a crash log when terminating auxiliary processes due to an I…
charliewolfe Aug 26, 2026
4102848
[block-in-inline] An orthogonal block level box in an inline box is m…
alanbaradlay Aug 26, 2026
5f23115
CanvasNoiseInjection lowerAndUpperBound mishandles neighbor ordering …
Ahmad-S792 Aug 26, 2026
613b3c7
[block-in-inline] An orthogonal block level box in an inline box make…
alanbaradlay Aug 26, 2026
86ddc7a
Extension background service worker can't find other extension pages …
b-weinstein Aug 26, 2026
00f2675
[block-in-inline] A relatively positioned block level box on a line r…
alanbaradlay Aug 26, 2026
aaa9ed3
Resync `svg` from WPT Upstream
Ahmad-S792 Aug 26, 2026
cbf0ef6
[Swift in WebKit] Introduce a bridging mechanism to create `WTF::Comp…
rr-codes Aug 26, 2026
f391e22
[EWS] Flaky Detection Fixes
TheBoyRoy05 Aug 26, 2026
c728111
[WebGL] Querying an unlinked WebGL program with a reserved name prefi…
roberto-apple Aug 26, 2026
e5c29fb
Introducing Mya, a MemorY Analyzer, and libJavaScriptCoreTools.
Aug 26, 2026
aa0d427
[WebAuthn] Smart card is inaccessible to other clients during ceremony
pascoej Aug 26, 2026
66a86d6
[Grid Lanes] GridLanesLayout attempts to populate positions before la…
sammygill Aug 26, 2026
98d64b7
[Grid Lanes][Cleanup] Remove GridLanesLayout::m_stackingAxisSpan
sammygill Aug 26, 2026
80fc868
[JSC] add/sub of a zero immediate should be a mov
gaul Aug 26, 2026
33cb9c1
[GTK][WPE] Gardening of tests - 2026-08-26
nikolaszimmermann Aug 26, 2026
364b06d
marketwatch.com: "Subscribe now" drop-down does not render anything
alanbaradlay Aug 26, 2026
0a67a66
[JSC] Baseline: load adjacent metadata pointer fields with a single ldp
gaul Aug 26, 2026
eff8dd1
browser.offscreen shouldn't be available to offscreen pages
b-weinstein Aug 26, 2026
82220a2
[CMake] Stop rewriting arguments in swiftc-wrapper
emw-apple Aug 26, 2026
e88c8b0
BroadcastChannel cross-origin spoof
beidson Aug 26, 2026
a90ff51
Make ThreadSafeWeakPtr safe to mutate from different threads
achristensen07 Aug 26, 2026
bcee9e4
[Site Isolation] Shared process outlives every frame using it because…
szewai Aug 26, 2026
e6ef322
Honor a non-keyword max-width on an out-of-flow replaced box with an …
brentfulgham Aug 27, 2026
c7a6160
Classify address spaces beyond the ranges in the Local Network Access…
igower Aug 27, 2026
b5d5bff
Unreviewed. [WPE] Bump version numbers
aperezdc Aug 27, 2026
53d02d6
[Grid Lanes][Cleanup] Grid axis track count member variable is redund…
sammygill Aug 27, 2026
c8fdf5e
Descendant and dynamic module script fetches send the wrong Referer h…
cdumez Aug 27, 2026
542a224
DOMParser-parsed XML script elements execute after being cloned
cdumez Aug 27, 2026
3ce67ec
REGRESSION(319878@main): Broke ASan builds
JonWBedard Aug 27, 2026
118f677
Reverting 319904@main: Broke Simulator and Catalyst builds.
Aug 27, 2026
bc9bb88
[Build] Remove SDK additions for unsupported OS versions
emw-apple Aug 27, 2026
d3699b5
MediaSource should remove itself as a Logger observer on destruction
aestes Aug 27, 2026
7072dd3
Unreviewed, reverting 319923@main (3ce67ec0a31b) and 319878@main (dfe…
JonWBedard Aug 27, 2026
d9d2fbd
[JSC] Detect CPU core configurations more accurately
Constellation Aug 27, 2026
ccdac12
[GFC][Integration] Grid content does not contribute to the scrollable…
sammygill Aug 27, 2026
126d3c1
[Quirks] Move the Quirk table to it's own file
colelao Aug 27, 2026
c2eb051
<input type=checkbox switch>: stop tinting a pressed thumb on macOS
annevk Aug 27, 2026
075a8d0
window.open() with noopener should not always return null
annevk Aug 27, 2026
d9bb3e4
RemoteRenderingBackend can still allocateImageBuffer() with Rendering…
shallawa Aug 27, 2026
580b6da
[JSC] Store `OSRExitDescriptor` exit values as a compact byte stream
sosukesuzuki Aug 27, 2026
9f3eea6
[JSC] `DFGFixupPhase` should not clear `NodeMustGenerate` on checked …
sosukesuzuki Aug 27, 2026
0ba6492
[css-conditional-5] @supports at-rule should check whether an at-rule…
tuankiet65 Aug 27, 2026
4002a93
[JSC][Wasm] Growing a shared memory reads its instances' sibling memo…
tadeuzagallo Aug 27, 2026
6e990fd
[TextureMapper] Move BitmapTexture and BitmapTexturePool from texmap …
carlosgcampos Aug 27, 2026
6bffc6b
Change email for Yousuke Kimoto
ykimot Aug 27, 2026
63929b8
[GTK][WPE] Skia compositor: remove the support for GPU rendering with…
carlosgcampos Aug 27, 2026
9abf8d4
Move the Cocoa-only ipc/ tests into ipc/cocoa
csaavedra Aug 27, 2026
32f4474
(319938@main) [cmake] build failure
jyavenard Aug 27, 2026
1d650ab
[GTK][WPE] Skia compositor: use promise images for video DMA-BUF buffers
carlosgcampos Aug 27, 2026
061aabf
Fix missing bracket
adetaylor Aug 27, 2026
3bdf3be
[Gardening][GLIB] Test media/media-source/worker/media-source-worker-…
carlosgcampos Aug 27, 2026
0988eec
REGRESSION(316854@main): Frame CertificateInfo is empty after process…
carlosgcampos Aug 27, 2026
0788d4a
Resync dav1d up to M152
youennf Aug 27, 2026
0c2c3da
REGRESSION(316854@main): CertificateInfo is not sent to the UI proces…
carlosgcampos Aug 27, 2026
a5b2b89
[GTK] webrtc/video-disabled-black.html crashes
philn Aug 27, 2026
d8889ce
NetworkConnectionToWebProcess::establishSWContextConnection hits MESS…
youennf Aug 27, 2026
38a4d7b
[Quirks] Move site specific quirk names to QuirkNames.h
colelao Aug 27, 2026
4d79cb1
JSDOMException is not reconciling it's weak stack trace
kmiller68 Aug 27, 2026
34625d1
[Site Isolation] Cleanup TestExpectations after recent AudioSession f…
eric-carlson Aug 27, 2026
dc36ab8
[GTK][WPE] webrtc/protocol/additional-codecs.html and webrtc/msection…
philn Aug 27, 2026
5c7edee
[SaferCPP] Address some failures found by the latest static analyzer …
cdumez Aug 27, 2026
37787f8
Add a flag to support disabling WebRTC private relay bypass
youennf Aug 27, 2026
6d1e650
Remove ENABLE_JSC_RESTRICTED_OPTIONS_BY_DEFAULT
mcatanzaro Aug 27, 2026
2fa7080
[Test Coverage] [SVG2] Allow leading and trailing whitespace in svg a…
Ahmad-S792 Aug 27, 2026
1afb343
[GLIB] HighPriorityThreads hits an assertion crash when its RealtimeK…
csaavedra Aug 27, 2026
f0c5381
REGRESSION(319347@main): Touchmove is dropped when it arrives while t…
psaavedra Aug 27, 2026
e6f6ed9
Annotate Lock functions as NODELETE
rniwa Aug 27, 2026
35ba184
[scroll-animations] sync WPT tests
graouts Aug 27, 2026
40976d3
AX: AXLineForIndex fails when passed an index equal to the length of …
minorninth Aug 27, 2026
f6a959b
[JSC] Remove valueProfileLock
Constellation Aug 27, 2026
041ad12
[JSC] Make MarkedSpace::stopAllocating faster
Constellation Aug 27, 2026
573d93d
[GFC] Add an early return to skip tracks without single span items
yulunwu2 Aug 27, 2026
ef17f9b
Use copyNativeImage in 2D context drawImage
kkinnunen-apple Aug 27, 2026
75da5d7
Do not compute shared preferences for a dummy process proxy
szewai Aug 27, 2026
6e575fc
[Site Isolation] Cross-site frame in webarchive does not load when sh…
szewai Aug 27, 2026
8d764ee
Decode WebExtension PDF icons in WebContent process
atar13 Aug 27, 2026
0aa4569
[Site Isolation] Web Inspector: Rework protocol test inspector/animat…
the-chenergy Aug 27, 2026
854eb72
background-size: contain/cover and auto sizing ignore SVG images with…
Ahmad-S792 Aug 27, 2026
86e9570
[WebAuthn] Perform validation of related origins
pascoej Aug 27, 2026
456e79b
trackIndexCompare uses int subtraction that can overflow
Aug 27, 2026
07e2441
mail.yahoo.com: Copying Text change caret color to text color from co…
J0pan Aug 27, 2026
874029c
WAKAppKitStubs.h declares duplicate CGRect and CGSize type aliases wh…
Aug 27, 2026
37cb031
[ANGLE] Correctly rewrite unindexed interpolant array references
roberto-apple Aug 27, 2026
eb1d4ac
NEW TEST(315306@main): [ iOS macOS Debug ] ipc/fecolormatrix-type-val…
csaavedra Aug 27, 2026
8f229fb
[JSC] WebAssembly try/catch result-type confusion omits optimized ref…
heimskr Aug 27, 2026
ed6717d
Fix typos in `NonInheritedMiscData::dumpDifferences`
nt1m Aug 27, 2026
7180315
REGRESSION: streaming fetch() body is withheld until the next network…
youennf Aug 27, 2026
a7c0b0f
Harden `DateTimeFieldElement` by making `DateTimeFieldElementFieldOwn…
iidmsa Aug 27, 2026
cc7fb4f
[Site Isolation] Remove failing expectations for authentication-redir…
jelee53 Aug 27, 2026
57d9837
[JSC] Skip the global StructureCache when the prototype has never bee…
Constellation Aug 27, 2026
34e1686
Add OS 27 family OS images for use on the dashboard
robert-jenner Aug 27, 2026
b0dfdeb
[Site Isolation] Web Inspector: Rework protocol tests in inspector/la…
the-chenergy Aug 27, 2026
c64092e
Annotate toWebCoreNode / toWKDOMNode as pointer conversion
rniwa Aug 27, 2026
965fa91
[css-conditional-3] Support CSSMediaRule.matches
tuankiet65 Aug 27, 2026
88c3ee4
[webkitpy] Lower the per-simulator CPU estimate
Smackteo Aug 27, 2026
bfdfa49
[ews] Choose the simulator count dynamically on the iOS simulator queues
Smackteo Aug 27, 2026
436d708
[Swift in WebKit] Make it possible for CxxCompletionHandler to be use…
rr-codes Aug 27, 2026
54b0b24
[GLib] Add libbacktrace to system dependencies list
dpino Aug 27, 2026
abf4ece
[Site Isolation] Use Page::hasRemoteFrames in more places
bnham Aug 27, 2026
4a983f1
[css-values-5] Fix invalidation and serialization of properties using…
surajt6 Aug 27, 2026
c323954
[GStreamer] imported/w3c/web-platform-tests/webrtc/RTCPeerConnection-…
philn Aug 27, 2026
ffc8923
AX: run more tests with isolated-tree flag on (4 of many)
minorninth Aug 27, 2026
a2ccf35
[interactive-widget] lvh and svh do not respect resizes-content value
jesxilin Aug 27, 2026
ba84b36
Unreviewed, reverting 319911@main (0a67a6646c82)
revert-bot Aug 27, 2026
c2d659a
Build failure: Xlib defines causing conflicts
mgorse Aug 27, 2026
f918fec
[libpas] Inline PAS_MTE_HANDLEs which resolve to PAS_MTE_CLEAR*
Achierius Aug 27, 2026
ada29ca
Update safer C++ expectations (2026-08-27)
rniwa Aug 27, 2026
798b6ba
[JSC][Wasm] Inline table.get for externref and anyref
chicoxyzzy Aug 27, 2026
b13574b
Destroying a WeakPtr should be considered as no-delete
rniwa Aug 27, 2026
5bbcf5a
[JSC][Wasm] Inline table.size
chicoxyzzy Aug 27, 2026
23d9fb2
Use a compile-time table of un/accelerated convertImagePixels functio…
squelart Aug 27, 2026
82407cd
Package.is_cached() should use exact version matching
gsnedders Aug 27, 2026
48985e1
[JSC] Store the DFG `VariableEventStream` as a byte stream
sosukesuzuki Aug 27, 2026
6b87968
background-size: cover paints nothing for an SVG image with an extrem…
Ahmad-S792 Aug 28, 2026
41528be
Merge remote-tracking branch 'upstream/main' into bun/upgrade-to-6b87…
robobun Aug 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
1 change: 1 addition & 0 deletions .submitproject-append
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
includedSubdirectoryPatterns = Tools/ImageDiff
includedSubdirectoryPatterns = Tools/MiniBrowser
includedSubdirectoryPatterns = Tools/TestRunnerShared
includedSubdirectoryPatterns = Tools/TestWebKitAPI
includedSubdirectoryPatterns = Tools/WebKitTestRunner
excludedSubdirectoryPatterns = Tools/WebKitTestRunner/gtk
excludedSubdirectoryPatterns = Tools/WebKitTestRunner/glib
2 changes: 1 addition & 1 deletion .wkdev-sdk-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.53-v9-c666b76
2.53-v11-80e4002
6 changes: 6 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,12 @@ if (SWIFT_REQUIRED)
endif ()
add_compile_options($<$<COMPILE_LANGUAGE:Swift>:--original-swift-compiler=${ORIGINAL_Swift_COMPILER}>)
add_link_options($<$<LINK_LANGUAGE:Swift>:--original-swift-compiler=${ORIGINAL_Swift_COMPILER}>)

if (APPLE)
# When Swift is used as a linker frontend, disable dSYM generation. The
# objects being linked still contain debug info.
add_link_options("$<$<LINK_LANGUAGE:Swift>:-gnone>")
endif ()
# The static archive rule (<CMAKE_Swift_CREATE_STATIC_LIBRARY>) uses neither
# <FLAGS> nor link options, so inject the flag directly into the template.
string(REPLACE "<CMAKE_Swift_COMPILER>"
Expand Down
7 changes: 2 additions & 5 deletions Configurations/CommonBase.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -137,13 +137,10 @@ WK_SWIFT_MEMORY_SAFETY_ERROR_FLAGS[sdk=*26.3*] = ;
// rdar://168992837 requires us to tell swiftc to tell clang how to set version macros
// when interpreting C++ headers as clang modules, so that we get identical feature
// enablement to C++ interpretation of those headers (otherwise we get mismatched data members etc.)
WK_SWIFT_CLANG_DEPLOYMENT_TARGET = $(WK_SWIFT_CLANG_DEPLOYMENT_TARGET_$(WK_PLATFORM_NAME);
WK_SWIFT_CLANG_DEPLOYMENT_TARGET = $(WK_SWIFT_CLANG_DEPLOYMENT_TARGET_$(WK_PLATFORM_NAME));
WK_SWIFT_CLANG_DEPLOYMENT_TARGET_macosx = -clang-target $(CURRENT_ARCH)-apple-macos$(MACOSX_DEPLOYMENT_TARGET);

// rdar://170129992: remove -track-system-dependencies when resolved
OTHER_SWIFT_FLAGS = $(inherited) $(WK_AVAILABILITY_OVERLAY_SWIFT_FLAGS) -Xcc -fvisibility=hidden -Werror ExistentialAny -Werror NoUseUnstructuredThrowingTask -Werror NoUsage -enable-upcoming-feature ExistentialAny $(WK_SWIFT_MEMORY_SAFETY_FLAGS) $(WK_SWIFT_MEMORY_SAFETY_ERROR_FLAGS) $(WK_SWIFT_CLANG_DEPLOYMENT_TARGET) $(WK_SANITIZER_OTHER_SWIFT_FLAGS) -enable-upcoming-feature InternalImportsByDefault -enable-upcoming-feature MemberImportVisibility -track-system-dependencies -enable-experimental-feature ImportCxxMembersLazily;
// Work around rdar://157581667 on affected toolchains.
OTHER_SWIFT_FLAGS[sdk=*26.2*] = $(inherited) -Xcc -fno-modulemap-allow-subdirectory-search;
OTHER_SWIFT_FLAGS[sdk=*26.3*] = $(inherited) -Xcc -fno-modulemap-allow-subdirectory-search;
OTHER_SWIFT_FLAGS = $(inherited) $(WK_AVAILABILITY_OVERLAY_SWIFT_FLAGS) -Xcc -fvisibility=hidden -Werror ExistentialAny -Werror NoUseUnstructuredThrowingTask -Werror NoUsage -enable-upcoming-feature ExistentialAny $(WK_SWIFT_MEMORY_SAFETY_FLAGS) $(WK_SWIFT_MEMORY_SAFETY_ERROR_FLAGS) $(WK_SWIFT_CLANG_DEPLOYMENT_TARGET) $(WK_SANITIZER_OTHER_SWIFT_FLAGS) -enable-upcoming-feature InternalImportsByDefault -enable-upcoming-feature MemberImportVisibility -track-system-dependencies -enable-experimental-feature ImportCxxMembersLazily -enable-experimental-feature SuppressedAssociatedTypes -enable-experimental-feature SuppressedAssociatedTypesWithDefaults;

OTHER_LIBTOOLFLAGS = -no_warning_for_no_symbols;
2 changes: 1 addition & 1 deletion Configurations/Version.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@

MAJOR_VERSION = 626;
MINOR_VERSION = 1;
TINY_VERSION = 4;
TINY_VERSION = 6;
MICRO_VERSION = 0;
NANO_VERSION = 0;
FULL_VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(TINY_VERSION);
Expand Down
8 changes: 8 additions & 0 deletions JSTests/microbenchmarks/object-rest-clone.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
var cities = ["a", "b", "c", "d", "e", "f", "g", "h"];
var state = { id: 1, name: "x", age: 3, city: "z", zip: 0, flag: true, score: 1.5, tag: "t" };
for (var i = 0; i < 1e4; ++i) {
var { ...next } = state;
next.city = cities[i & 7];
next.zip = i;
state = next;
}
10 changes: 10 additions & 0 deletions JSTests/microbenchmarks/regexp-lookbehind-fixed-count-group.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
let text = "abababab-abab-ababab-ab-abababab-".repeat(300);
let re = /(?<=(?:ab){3})-/g;
let result = 0;
for (let i = 0; i < 1e4; ++i) {
re.lastIndex = 0;
while (re.exec(text))
result++;
}
if (result !== 3 * 300 * 1e4)
throw new Error("Bad result: " + result);
10 changes: 10 additions & 0 deletions JSTests/microbenchmarks/regexp-lookbehind-lookahead.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
let text = "doable unable readable unreadable stable unstable notable untenable capable ".repeat(40);
let re = /(?<=\b(?!un)\w+)able/g;
let result = 0;
for (let i = 0; i < 1e4; ++i) {
re.lastIndex = 0;
while (re.exec(text))
result++;
}
if (result !== 200 * 1e4)
throw new Error("Bad result: " + result);
10 changes: 10 additions & 0 deletions JSTests/microbenchmarks/regexp-lookbehind-quantified-group.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
let text = "1,234,567 12,345 999 1,000,000 42 7,777,777,777 ".repeat(200);
let re = /(?<=\b(?:\d{1,3},)+\d{3}) /g;
let result = 0;
for (let i = 0; i < 1e4; ++i) {
re.lastIndex = 0;
while (re.exec(text))
result++;
}
if (result !== 4 * 200 * 1e4)
throw new Error("Bad result: " + result);
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
// Regression benchmark for the chinese/dangi monthCode path in nonISOCalendarDateToISO
// (CalendarICUBridge.cpp). ICU4C cannot say which ordinal a month code occupies, so the bridge
// anchors on the start of the reference year and walks month by month; each advance jumps to
// day 29 and then steps, since a lunar month is 29 or 30 days. The walk is memoized per
// (calendar, year, monthCode), and the month length per month start.
//
// One phase per thing to protect:
// steady - a single input, so both memos hit every time
// warm - four distinct keys over both calendars, still inside the walk memo
// cold - every month code for both calendars, more keys than either memo holds
//
// The resolved day is checked once per case up front rather than in the loops: the day getter
// is a second ICU round trip that touches neither memo, so accumulating it would dilute what
// the loops measure.

const steadyCase = { calendar: "chinese", monthCode: "M07", day: 15 };

const warmCases = [
{ calendar: "chinese", monthCode: "M03", day: 15 },
{ calendar: "chinese", monthCode: "M05L", day: 15 },
{ calendar: "dangi", monthCode: "M07", day: 15 },
{ calendar: "dangi", monthCode: "M11", day: 15 },
];

const coldCases = [];
for (const calendar of ["chinese", "dangi"]) {
for (let month = 1; month <= 12; ++month) {
const monthCode = "M" + (month < 10 ? "0" : "") + month;
coldCases.push({ calendar, monthCode, day: 15 });
coldCases.push({ calendar, monthCode: monthCode + "L", day: 15 });
}
}

if (coldCases.length !== 48)
throw "Bad case count: " + coldCases.length;

// Day 15 is inside every lunar month, and under the default constrain overflow a leap month
// absent from the reference year falls back to the non-leap month, so every case resolves to
// day 15 rather than throwing.
for (const fields of [steadyCase, ...warmCases, ...coldCases]) {
const day = Temporal.PlainMonthDay.from(fields).day;
if (day !== 15)
throw "Bad day for " + fields.calendar + " " + fields.monthCode + ": " + day;
}

let sink = null;
for (var i = 0; i < 10000; ++i)
sink = Temporal.PlainMonthDay.from(steadyCase);
for (var i = 0; i < 2000; ++i) {
for (var j = 0; j < warmCases.length; ++j)
sink = Temporal.PlainMonthDay.from(warmCases[j]);
}
for (var i = 0; i < 5; ++i) {
for (var j = 0; j < coldCases.length; ++j)
sink = Temporal.PlainMonthDay.from(coldCases[j]);
}

if (!sink)
throw "Bad result: " + sink;
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
// Absence PropertyCondition should consult non-reified static property tables;
// otherwise, the Abstract Interpreter folds GetById past Symbol.prototype's
// static `description`.

function assert(cond) {
if (!cond)
throw new Error("Assertion failed");
}

function assertThrows(fn) {
try {
fn();
} catch (e) {
return;
}

throw "Expected an exception";
}

let K = {};
K.y = 13.37;
Object.prototype.description = K;

function setup(a) { return a.description; }
noInline(setup);
let setupObj = {};
for (let i = 0; i < 50_000; i++) setup(setupObj);

let o_warm = Object(Symbol("warm")); o_warm.x = 1;
let o_leak = Object(Symbol("leak")); o_leak.x = 1;
let o_crash = Object(Symbol()); o_crash.x = 1;

function f(a, n) {
let b = a;
if (n > 0) {
let r = a.description;
let v = r.y;
return v;
}
b.x; b.x; b.x;
return undefined;
}
noInline(f);

assert(f(o_warm, 1) === undefined);
for (let i = 0; i < 500_000; i++) f(o_warm, 0);

var hole = f(o_leak, 1);
assert(hole === undefined);
assert(typeof hole === "undefined");

assertThrows(() => f(o_crash, 1));
42 changes: 42 additions & 0 deletions JSTests/stress/arith-abs-checked-input-range.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
let enteredFirstBranch = 0;
let enteredBoundsBranch = 0;
let lastIndex = 0;

function probe(x)
{
const target = new Uint8Array(new ArrayBuffer(32));

let dead = x;
dead++;
dead++;

const first = Math.abs(x + 2);
if (first < 1) {
enteredFirstBranch++;
const index = first + 16;
lastIndex = index;
if (index < target.length) {
enteredBoundsBranch++;
return target[index];
}
}
return 0;
}
noInline(probe);

for (let i = 0; i < 30000; ++i)
probe(-2);

enteredFirstBranch = 0;
enteredBoundsBranch = 0;
lastIndex = 0;

const result = probe(2147483646);
if (result !== 0)
throw new Error(`Bad result: ${result}`);
if (enteredFirstBranch)
throw new Error(`Entered first branch: ${enteredFirstBranch}`);
if (enteredBoundsBranch)
throw new Error(`Entered bounds branch: ${enteredBoundsBranch}`);
if (lastIndex)
throw new Error(`Computed wrapped index: ${lastIndex}`);
73 changes: 73 additions & 0 deletions JSTests/stress/arith-checked-int-must-generate-dce.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
//@ requireOptions("--useConcurrentJIT=0", "--thresholdForFTLOptimizeAfterWarmUp=1000")

function shouldBe(actual, expected) {
if (actual !== expected)
throw new Error("FAIL: got " + actual + ", expected " + expected);
}

function mulOverflow(k) {
let y = k;
y = y * y;
return (y | 0) === y;
}
noInline(mulOverflow);

function mulNegativeZero(a, b) {
let y = a;
y = y * b;
return Object.is(y | 0, y);
}
noInline(mulNegativeZero);

function divNonInteger(a, b) {
let y = a;
y = y / b;
return (y | 0) === y;
}
noInline(divNonInteger);

function modNegativeZero(a, b) {
let y = a;
y = y % b;
return Object.is(y | 0, y);
}
noInline(modNegativeZero);

function negateOverflow(k) {
let y = k;
y = -y;
return (y | 0) === y;
}
noInline(negateOverflow);

function negateNegativeZero(k) {
let y = k;
y = -y;
return Object.is(y | 0, y);
}
noInline(negateNegativeZero);

function absOverflow(k) {
let y = k;
y = Math.abs(y);
return (y | 0) === y;
}
noInline(absOverflow);

for (let i = 0; i < testLoopCount; ++i) {
mulOverflow(3);
mulNegativeZero(3, 2);
divNonInteger(6, 3);
modNegativeZero(7, 3);
negateOverflow(3);
negateNegativeZero(3);
absOverflow(-3);
}

shouldBe(mulOverflow(65536), false);
shouldBe(mulNegativeZero(0, -1), false);
shouldBe(divNonInteger(7, 2), false);
shouldBe(modNegativeZero(-3, 3), false);
shouldBe(negateOverflow(-2147483648), false);
shouldBe(negateNegativeZero(0), false);
shouldBe(absOverflow(-2147483648), false);
27 changes: 27 additions & 0 deletions JSTests/stress/destructuring-pattern-deep-recursion.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
function shouldThrowRangeError(script) {
let error;
try {
(0, eval)(script);
} catch (e) {
error = e;
}
if (!(error instanceof RangeError))
throw new Error("Expected RangeError, got " + error);
}

const depth = 12000;
const open = "[".repeat(depth);
const close = "]".repeat(depth);

shouldThrowRangeError("let " + open + "z" + close + " = [];");
shouldThrowRangeError("var " + open + "z" + close + " = [];");
shouldThrowRangeError("(function (" + open + "z" + close + ") {})([]);");
shouldThrowRangeError("try { throw []; } catch (" + open + "z" + close + ") {}");
shouldThrowRangeError("let " + "{a:".repeat(depth) + "z" + "}".repeat(depth) + " = {};");

let [[[a]]] = [[[42]]];
if (a !== 42)
throw new Error("shallow array destructuring broken");
let { b: { c } } = { b: { c: 7 } };
if (c !== 7)
throw new Error("shallow object destructuring broken");
29 changes: 29 additions & 0 deletions JSTests/stress/dfg-getscope-fold-stale-cfa-state.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
function opt(a1, a2, a3, a4, a5) {
try {
class Trans extends Array {
};
function inline() {
try {
a2(["Āሴ￿", a5]);
} catch (x) {
};
};
inline();
} catch (x) {
};
function foo(a, b) {
for (var x = 0; x < 10000; x++) {
};
return a == b;
}
foo(-1, a5);
class C {
};
}

for (let i = 0; i < 10000; i++) {
try {
opt(Function.prototype.apply, Function.prototype.toString, 1.1, '💩', Object.defineProperty);
} catch (e) {
}
}
Loading
Loading