[webkit-changes] [WebKit/WebKit] 6a22ac: Cherry-pick 2cf06cdf0b2a. rdar://problem/51415024

Russell Epstein noreply at github.com
Thu Oct 26 12:09:15 PDT 2023


  Branch: refs/heads/safari-7614.1.25.9-branch
  Home:   https://github.com/WebKit/WebKit
  Commit: 6a22ac2feeffc4598e3ad0a87bce3ad02cf624a1
      https://github.com/WebKit/WebKit/commit/6a22ac2feeffc4598e3ad0a87bce3ad02cf624a1
  Author: Patrick Angle <pangle at apple.com>
  Date:   2022-08-10 (Wed, 10 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/inspector/remote/RemoteInspector.cpp
    M Source/JavaScriptCore/inspector/remote/RemoteInspector.h
    M Source/JavaScriptCore/inspector/remote/cocoa/RemoteInspectorCocoa.mm
    M Source/JavaScriptCore/inspector/remote/glib/RemoteInspectorGlib.cpp
    M Source/JavaScriptCore/inspector/remote/socket/RemoteInspectorSocket.cpp

  Log Message:
  -----------
  Cherry-pick 2cf06cdf0b2a. rdar://problem/51415024

    Web Inspector: [Cocoa] `RemoteInspector` fails to send automatic inspection candidates created on a non-main thread
    https://bugs.webkit.org/show_bug.cgi?id=242267
    rdar://51415024

    Reviewed by Devin Rousso.

    Automatic inspection of JSContexts works by spinning the thread a JSContext is created on when the feature is enabled at
    the device level (via webinspectord) until we can ask an attached debugger(s) if we should automatically inspect that
    context. At that same time, the attached debugger will let us know if we should formally pause script execution, or if
    we should allow execution to continue normally. Upon receiving the yes/no from the debugger, we unspin the thread and if
    requested start the debug session/pause JS execution.

    This previously only reliably worked for the main thread and for contexts created after a JSContext was created on the
    main thread. This was because there is initialization that must be done on the main thread (WTF::initialize). The issues
    arose because while we would schedule initialization to later occur on the main thread, non-main-threads would still
    carry on checking to see if, among other things, automatic inspection was enabled. Because the device-global automatic
    inspection enablement wasn't read until after main thread initialization, we always declined to automatically inspect
    non-main-thread contexts created before initialization had completed on the main thread.

    This tangle of dependancies is unravelled by doing a few different things in tandem:
    1. Get the global automatic inspection state before scheduling initialization - `notify_get_state` is designed for
    cross-process and cross-thread messaging, so there is no need for us to be on the main thread to do so.
    2. Keep track of the RemoteInspector singleton pending initialization.
    3. Consider a "targets" (called debuggables by the client) for automatic inspection and spin them if automatic
    inspection is enabled (since we now get that state before this point for all threads) and only bail if we are both
    disabled and not pending initialization.

    As part of this, it is now much more likely that multiple JSContexts may need to be considered candidates for automatic
    inspection at the same time, so we also fix an existing limitation by allowing ourselves to keep track of multiple
    candidates, since we may build a small set of candidates before initialization has completed.

    * Source/JavaScriptCore/inspector/remote/RemoteInspector.cpp:
    (Inspector::RemoteInspector::setupFailed):
    (Inspector::RemoteInspector::setupCompleted):
    (Inspector::RemoteInspector::waitingForAutomaticInspection):
    * Source/JavaScriptCore/inspector/remote/RemoteInspector.h:
    * Source/JavaScriptCore/inspector/remote/cocoa/RemoteInspectorCocoa.mm:
    (Inspector::RemoteInspector::singleton):
    (Inspector::RemoteInspector::initialize):
    (Inspector::RemoteInspector::setPendingMainThreadInitialization):
    (Inspector::RemoteInspector::updateAutomaticInspectionCandidate):
    (Inspector::RemoteInspector::sendAutomaticInspectionCandidateMessage):
    (Inspector::RemoteInspector::start):
    (Inspector::RemoteInspector::stopInternal):
    (Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
    (Inspector::RemoteInspector::xpcConnectionFailed):
    (Inspector::RemoteInspector::receivedSetupMessage):
    (Inspector::RemoteInspector::receivedAutomaticInspectionConfigurationMessage):
    (Inspector::RemoteInspector::receivedAutomaticInspectionRejectMessage):
    * Source/JavaScriptCore/inspector/remote/glib/RemoteInspectorGlib.cpp:
    (Inspector::RemoteInspector::stopInternal):
    (Inspector::RemoteInspector::sendAutomaticInspectionCandidateMessage):
    * Source/JavaScriptCore/inspector/remote/socket/RemoteInspectorSocket.cpp:
    (Inspector::RemoteInspector::stopInternal):
    (Inspector::RemoteInspector::sendAutomaticInspectionCandidateMessage):

    Canonical link: https://commits.webkit.org/252569@main

Canonical link: https://commits.webkit.org/252432.129@safari-7614.1.25.9-branch


  Commit: 351fc21a97b8104d82f373adcd9beecf0377eed3
      https://github.com/WebKit/WebKit/commit/351fc21a97b8104d82f373adcd9beecf0377eed3
  Author: Timothy Hatcher <timothy at apple.com>
  Date:   2022-08-10 (Wed, 10 Aug 2022)

  Changed paths:
    M Source/WebInspectorUI/UserInterface/Controllers/WebInspectorExtensionController.js
    M Source/WebInspectorUI/UserInterface/Protocol/InspectorFrontendAPI.js
    M Source/WebInspectorUI/UserInterface/Views/WebInspectorExtensionTabContentView.js
    M Source/WebKit/UIProcess/API/APIInspectorExtension.cpp
    M Source/WebKit/UIProcess/API/APIInspectorExtension.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKInspector.mm
    M Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.mm
    M Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtensionHost.h
    M Source/WebKit/UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.mm
    M Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp
    M Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h
    M Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp
    M Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.h
    M Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.messages.in

  Log Message:
  -----------
  Cherry-pick c55c39c2cc60. rdar://problem/86542412

    Change how Web Inspector extension tabs are loaded.
    https://bugs.webkit.org/show_bug.cgi?id=243073
    rdar://86542412

    Reviewed by Devin Rousso.
    Patch by Kiara Rose <kiara_rose at apple.com>.

    Add a dedicated loadURL method to load a URL in a tab instead of relying on evaluateScript.
    This avoids so extra indirection and makes is a little easier to debug loading issues.
    This change also sets the iframe.src up-front and avoids the empty load bounce.

    * Source/WebInspectorUI/UserInterface/Controllers/WebInspectorExtensionController.js:
    (WI.WebInspectorExtensionController.prototype.navigateTabForExtension): Added.
    * Source/WebInspectorUI/UserInterface/Protocol/InspectorFrontendAPI.js:
    (InspectorFrontendAPI.navigateTabForExtension): Added.
    * Source/WebKit/UIProcess/API/APIInspectorExtension.cpp:
    (API::InspectorExtension::navigateTab): Added.
    * Source/WebKit/UIProcess/API/Cocoa/_WKInspector.mm:
    (-[_WKInspector navigateExtensionTabWithIdentifier:toURL:completionHandler:]): Added.
    * Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.h:
    * Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtension.mm:
    (-[_WKInspectorExtension navigateToURL:inTabWithIdentifier:completionHandler:]): Added.
    * Source/WebKit/UIProcess/API/Cocoa/_WKInspectorExtensionHost.h:
    * Source/WebKit/UIProcess/API/Cocoa/_WKRemoteWebInspectorViewController.mm:
    (-[_WKRemoteWebInspectorViewController navigateExtensionTabWithIdentifier:toURL:completionHandler:]): Added.
    * Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.cpp:
    (WebKit::WebInspectorUIExtensionControllerProxy::navigateTabForExtension): Added.
    * Source/WebKit/UIProcess/Inspector/WebInspectorUIExtensionControllerProxy.h:
    * Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp:
    (WebKit::WebInspectorUIExtensionController::navigateTabForExtension): Added.
    * Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.h:
    * Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.messages.in:

    Canonical link: https://commits.webkit.org/252793@main

Canonical link: https://commits.webkit.org/252432.130@safari-7614.1.25.9-branch


  Commit: 4f60eaa23662a173804540402b4bf3f1a173a3a7
      https://github.com/WebKit/WebKit/commit/4f60eaa23662a173804540402b4bf3f1a173a3a7
  Author: Devin Rousso <drousso at apple.com>
  Date:   2022-08-10 (Wed, 10 Aug 2022)

  Changed paths:
    M Source/WebCore/page/FrameView.cpp
    M Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm
    M Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.h
    M Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.mm
    M Source/WebKit/UIProcess/PageClient.h
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/CSSViewportUnits.mm

  Log Message:
  -----------
  Cherry-pick cd186d735bf2. rdar://problem/97031866

    REGRESSION (Safari 16): Dynamic viewport units (dvh) not matching viewport height
    https://bugs.webkit.org/show_bug.cgi?id=242758
    <rdar://problem/97031866>

    Reviewed by Simon Fraser.

    This is likely a regression from two different commits.

    248939 at main started *always* setting an override for `sv*`/`lv*` based on `-[WKWebView setFrame:]`
    whereas before they'd fall back to `FrameView::viewportConstrainedVisibleContentRect`, which takes
    into account the `topContentInset`.

    251232 at main switched from using `RenderView::size` for `dvh` to using `FrameView::size` instead,
    which does not take into account the `topContentInset`.

    * Source/WebCore/page/FrameView.cpp:
    (WebCore::FrameView::sizeForCSSDynamicViewportUnits const):
    Use a different method that takes into account the `topContentInset`. This also matches the fallback
    behavior for `sv*`/`lv*`.

    * Source/WebKit/UIProcess/API/Cocoa/WKWebView.mm:
    (-[WKWebView _recalculateViewportSizesWithMinimumViewportInset:maximumViewportInset:throwOnInvalidInput:]):
    Include the `_topContentInset` when calculating the viewport sizes on macOS.

    * Source/WebKit/UIProcess/WebPageProxy.cpp:
    (WebKit::WebPageProxy::setTopContentInset):
    * Source/WebKit/UIProcess/PageClient.h:
    (WebKit::PageClient::topContentInsetDidChange): Added.
    * Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.h:
    * Source/WebKit/UIProcess/Cocoa/PageClientImplCocoa.mm:
    (WebKit::PageClientImplCocoa::topContentInsetDidChange): Added.
    Recalculate the viewport sizes whenever the `_topContentInset` changes (including `_automaticallyAdjustsContentInsets`).

    * Tools/TestWebKitAPI/Tests/WebKitCocoa/CSSViewportUnits.mm:
    (TEST.CSSViewportUnits.TopContentInset): Added.
    (TEST.CSSViewportUnits.MinimumViewportInsetWithTopContentInset): Added.
    (TEST.CSSViewportUnits.MaximumViewportInsetWithTopContentInset): Added.

    Canonical link: https://commits.webkit.org/252878@main

Canonical link: https://commits.webkit.org/252432.131@safari-7614.1.25.9-branch


  Commit: 70a6dd4126cf02f1e667f5cefcd302bcbb5434fa
      https://github.com/WebKit/WebKit/commit/70a6dd4126cf02f1e667f5cefcd302bcbb5434fa
  Author: Richard Robinson <richard_robinson2 at apple.com>
  Date:   2022-08-10 (Wed, 10 Aug 2022)

  Changed paths:
    A LayoutTests/editing/caret/insert-paragraph-does-not-paint-stale-carets-expected.txt
    A LayoutTests/editing/caret/insert-paragraph-does-not-paint-stale-carets.html
    A LayoutTests/platform/gtk/editing/caret/insert-paragraph-does-not-paint-stale-carets-expected.txt
    A LayoutTests/platform/ios-wk2/editing/caret/insert-paragraph-does-not-paint-stale-carets-expected.txt
    M Source/WebCore/editing/FrameSelection.cpp

  Log Message:
  -----------
  Cherry-pick da96b048f1a9. rdar://problem/96150129

    While composing an email when using Gmail in Safari, using a double space creates an extra line/visible character in space between paragraphs in email.
    https://bugs.webkit.org/show_bug.cgi?id=242651
    rdar://96150129

    Reviewed by Ryosuke Niwa and Wenson Hsieh.

    Prior to r294523, selection updates were performed synchronously, so there is no pending
    update when layout is being performed, and Gmail's node insertion/removal does not result
    in a selection update.

    In Gmail. when composing a new email, adding a newline causes `setSelection` to be called,
    which schedules a selection update by setting `m_pendingSelectionUpdate = true`.

    Then, the `keydown` event listener is fired, and a zero-delay timer on the Gmail JS side
    is invoked. A text node is then inserted into the document via JS.

    A layout update is then triggered, which causes a selection update, which calls `recomputeCaretRect`.

    The problem is then that `m_previousCaretNode` gets set based on the current selection,
    however that selected node then gets removed from the document. Since `m_previousCaretNode`
    is a removed node, no rect is returned and so invalidation never happens leading to a
    stale caret still being displayed.

    This PR fixes this by checking for this failure case, and then ensuring that
    `m_previousCaretNode` is not in a bad state and does not represent a removed node.

    * Source/WebCore/editing/Editor.cpp:
    (WebCore::Editor::appliedEditing):
    * Source/WebCore/editing/Editor.h:
    (WebCore::Editor::setIsProcessingKeyCommand):
    (WebCore::Editor::isProcessingKeyCommand const):
    * Source/WebKit/WebProcess/WebPage/mac/WebPageMac.mm:
    (WebKit::WebPage::executeKeypressCommandsInternal):

    Canonical link: https://commits.webkit.org/252683@main

Canonical link: https://commits.webkit.org/252432.132@safari-7614.1.25.9-branch


  Commit: 83049950e2800975bb409d8c1fdea6ed80beb44e
      https://github.com/WebKit/WebKit/commit/83049950e2800975bb409d8c1fdea6ed80beb44e
  Author: Jer Noble <jer.noble at apple.com>
  Date:   2022-08-10 (Wed, 10 Aug 2022)

  Changed paths:
    M Source/WebCore/html/MediaElementSession.cpp

  Log Message:
  -----------
  Cherry-pick f94d8d61f57b. rdar://problem/97105384

    Having many active media elements can spin the main thread during playback
    https://bugs.webkit.org/show_bug.cgi?id=243062
    <rdar://97105384>

    Reviewed by Eric Carlson.

    Creating a media element and calling `.load()` on it will "activate" the element itself and, if called during a user gesture, remove playback restrictions. Subsequently, when determining which media element should be considered the "main" element for the purposes of remote control commands, now playing, and touch bar, all of these elements are subjected to numerous queries about their state. Some of these queries log, and this logging during a tight loop can hang the main thread for multiple hundreds of ms.

    However, sites can have valid reasons for creating hundreds of media elements and calling `.load()` on each; they may want a pool of unlocked media elements for doing dynamic ad insertion, for playback of multiple episodes of content back-to-back, etc.

    From sample trace data, the primary culprit in these hangs is `MediaElementSession::updateMediaUsageIfChanged()`. It will loop over every existing media element and run extensive queries against each. The queries themselves are relatively cheap, but allocating logging strings and sending them to syslog can be expensive.

    Reduce the cost of `updateMediaUsageIfChanged()` by bailing out early if the media element in question does currently have a valid `currentURL()`, and did not have a valid URL the last pass either.

    * Source/WebCore/html/MediaElementSession.cpp:
    (WebCore::MediaElementSession::updateMediaUsageIfChanged):

    Canonical link: https://commits.webkit.org/252734@main

Canonical link: https://commits.webkit.org/252432.133@safari-7614.1.25.9-branch


  Commit: 90cd13168bc3365881b043f46253637644b51992
      https://github.com/WebKit/WebKit/commit/90cd13168bc3365881b043f46253637644b51992
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2022-08-10 (Wed, 10 Aug 2022)

  Changed paths:
    M Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml
    M Source/WTF/wtf/PlatformHave.h
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/html/HTMLCanvasElement.cpp
    A Source/WebCore/platform/graphics/gpu/GPUAvailability.h
    A Source/WebCore/platform/graphics/gpu/cocoa/GPUAvailabilityMetal.mm

  Log Message:
  -----------
  Cherry-pick 6ed0df1df12a. rdar://problem/96096307

    Make WebGL rendering context creation fail if GPU is not available
    https://bugs.webkit.org/show_bug.cgi?id=242814
    <rdar://96096307>

    Reviewed by Geoffrey Garen.

    We are seeing WebGL crash reports where no Metal devices appear to be available. Guard against
    this crash by failing to create WebGL contexts when Metal is not available.

    * Source/WTF/Scripts/Preferences/WebPreferencesExperimental.yaml:
    * Source/WTF/wtf/PlatformHave.h:
    * Source/WebCore/WebCore.xcodeproj/project.pbxproj:
    * Source/WebCore/html/HTMLCanvasElement.cpp:
    (WebCore::HTMLCanvasElement::createContextWebGL):
    * Source/WebCore/platform/graphics/gpu/GPUAvailability.h: Added.
    * Source/WebCore/platform/graphics/gpu/cocoa/GPUAvailabilityMetal.mm: Added.
    (WebCore::isGPUAvailable):

    Canonical link: https://commits.webkit.org/252531@main

Canonical link: https://commits.webkit.org/252432.134@safari-7614.1.25.9-branch


  Commit: 33a6a581957bafd1f224bb9390cf6f04e85f3605
      https://github.com/WebKit/WebKit/commit/33a6a581957bafd1f224bb9390cf6f04e85f3605
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2022-08-10 (Wed, 10 Aug 2022)

  Changed paths:
    M Source/WebKit/Configurations/WebKit.xcconfig

  Log Message:
  -----------
  Cherry-pick 65828c428e63. rdar://problem/97083674

    Stop linking with Power log library
    https://bugs.webkit.org/show_bug.cgi?id=242820
    <rdar://97096069>

    Reviewed by Chris Dumez.

    Stop linking with Power log library to avoid a launch time regression. This will not create a build failure since this
    library is only in use if HAVE(POWERLOG_TASK_MODE_QUERY) = 1. In https://github.com/WebKit/WebKit/pull/1726 we have a
    patch to reenable this feature, but it also removes the requirement to link with this library.

    * Source/WebKit/Configurations/WebKit.xcconfig:

    Canonical link: https://commits.webkit.org/252530@main

Canonical link: https://commits.webkit.org/252432.135@safari-7614.1.25.9-branch


  Commit: 0586926b2285d2776c08227cda04b85663f5f9c0
      https://github.com/WebKit/WebKit/commit/0586926b2285d2776c08227cda04b85663f5f9c0
  Author: Alan Coon <alancoon at apple.com>
  Date:   2022-08-10 (Wed, 10 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.1

Canonical link: https://commits.webkit.org/252432.136@safari-7614.1.25.9-branch


  Commit: 6364372eae83907970e9782f18584eea2d868010
      https://github.com/WebKit/WebKit/commit/6364372eae83907970e9782f18584eea2d868010
  Author: Alan Coon <alancoon at apple.com>
  Date:   2022-08-11 (Thu, 11 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.2

Canonical link: https://commits.webkit.org/252432.137@safari-7614.1.25.9-branch


  Commit: 7cd9619380bfe359070351591ab1ea91c51f32c3
      https://github.com/WebKit/WebKit/commit/7cd9619380bfe359070351591ab1ea91c51f32c3
  Author: Russell Epstein <repstein at apple.com>
  Date:   2022-08-11 (Thu, 11 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.3

Canonical link: https://commits.webkit.org/252432.138@safari-7614.1.25.9-branch


  Commit: 879bb4bccc282cea46654a2ec7c2669912bdeafe
      https://github.com/WebKit/WebKit/commit/879bb4bccc282cea46654a2ec7c2669912bdeafe
  Author: Timothy Hatcher <timothy at apple.com>
  Date:   2022-08-11 (Thu, 11 Aug 2022)

  Changed paths:
    M Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp

  Log Message:
  -----------
  Cherry-pick 6e3353ec6e21. rdar://problem/98489955

    WebKit build failure: Use of undeclared identifier 'InspectorFrontendAPIDispatcher'; did you mean 'WebCore::InspectorFrontendAPIDispatcher'?
    https://bugs.webkit.org/show_bug.cgi?id=243827
    rdar://98489955

    Unreviewed build fix.

    * Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.cpp:
    (WebKit::WebInspectorUIExtensionController::navigateTabForExtension): Add WebCore namespace.

    Canonical link: https://commits.webkit.org/253340@main

Canonical link: https://commits.webkit.org/252432.139@safari-7614.1.25.9-branch


  Commit: c8d72724052d9eca292951fce15080dbc837b6be
      https://github.com/WebKit/WebKit/commit/c8d72724052d9eca292951fce15080dbc837b6be
  Author: Russell Epstein <repstein at apple.com>
  Date:   2022-08-12 (Fri, 12 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.4

Canonical link: https://commits.webkit.org/252432.140@safari-7614.1.25.9-branch


  Commit: cd8cb74e3e4b367b0c2c874b4a4368594261b80e
      https://github.com/WebKit/WebKit/commit/cd8cb74e3e4b367b0c2c874b4a4368594261b80e
  Author: Alan Coon <alancoon at apple.com>
  Date:   2022-08-15 (Mon, 15 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.5

Canonical link: https://commits.webkit.org/252432.141@safari-7614.1.25.9-branch


  Commit: f6f739e56f5ac14134c6725bf2fc3b73c9a622ef
      https://github.com/WebKit/WebKit/commit/f6f739e56f5ac14134c6725bf2fc3b73c9a622ef
  Author: Per Arne Vollan <pvollan at apple.com>
  Date:   2022-08-15 (Mon, 15 Aug 2022)

  Changed paths:
    M Source/WebCore/platform/graphics/gpu/cocoa/GPUAvailabilityMetal.mm

  Log Message:
  -----------
  Cherry-pick 9c38ac4d4af5. rdar://problem/96096307

    Fix build after https://commits.webkit.org/252531@main
    https://bugs.webkit.org/show_bug.cgi?id=242850
    <rdar://problem/97173031>

    Unreviewed build fix.

    * Source/WebCore/platform/graphics/gpu/cocoa/GPUAvailabilityMetal.mm:

    Canonical link: https://commits.webkit.org/252565@main

Canonical link: https://commits.webkit.org/252432.142@safari-7614.1.25.9-branch


  Commit: 763639d36fa61edbf49d6dca96e2f2ffcc16df44
      https://github.com/WebKit/WebKit/commit/763639d36fa61edbf49d6dca96e2f2ffcc16df44
  Author: Alan Coon <alancoon at apple.com>
  Date:   2022-08-16 (Tue, 16 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.6

Canonical link: https://commits.webkit.org/252432.143@safari-7614.1.25.9-branch


  Commit: 9515d41ffd94565b4a4d4b6abb06b3e99033db53
      https://github.com/WebKit/WebKit/commit/9515d41ffd94565b4a4d4b6abb06b3e99033db53
  Author: Alex Christensen <achristensen at apple.com>
  Date:   2022-08-16 (Tue, 16 Aug 2022)

  Changed paths:
    M Source/WebKit/UIProcess/WebProcessProxy.cpp
    M Source/WebKit/UIProcess/WebProcessProxy.h

  Log Message:
  -----------
  Cherry-pick 2cd7eec58eff. rdar://problem/98313174

    WebProcessProxy should keep WebsiteDataStore alive
    https://bugs.webkit.org/show_bug.cgi?id=243960
    <rdar://98313174>

    Reviewed by Chris Dumez.

    This effectively reverts bug 238892 because it caused rdar://98313174
    Tasks such as the one scheduled in WorkerSWClientConnection::unregisterServiceWorkerClient
    need a connection to the network process, and if the network process has crashed
    then they need a WebsiteDataStore to restart that network process, so a WebProcessProxy
    needs to keep a WebsiteDataStore alive.

    * Source/WebKit/UIProcess/WebProcessProxy.cpp:
    (WebKit::m_webPermissionController):
    (WebKit::WebProcessProxy::setWebsiteDataStore):
    (WebKit::WebProcessProxy::isDummyProcessProxy const):
    (WebKit::WebProcessProxy::addExistingWebPage):
    (WebKit::WebProcessProxy::getNetworkProcessConnection):
    (WebKit::WebProcessProxy::sessionID const):
    (WebKit::WebProcessProxy::websiteDataStore const): Deleted.
    * Source/WebKit/UIProcess/WebProcessProxy.h:
    (WebKit::WebProcessProxy::websiteDataStore const):

    Canonical link: https://commits.webkit.org/253449@main

Canonical link: https://commits.webkit.org/252432.144@safari-7614.1.25.9-branch


  Commit: 8956d3c20875b9293a0a8a1e854aef294a3be0de
      https://github.com/WebKit/WebKit/commit/8956d3c20875b9293a0a8a1e854aef294a3be0de
  Author: Sihui Liu <sihui_liu at apple.com>
  Date:   2022-08-17 (Wed, 17 Aug 2022)

  Changed paths:
    M Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp

  Log Message:
  -----------
  Cherry-pick 23bb0ec47b18. rdar://problem/98760078

    Regression(252534 at main): LocalStorage directory is not resolved before creating sandbox extension
    https://bugs.webkit.org/show_bug.cgi?id=244049
    rdar://98760078

    Reviewed by Geoffrey Garen.

    We used to resolve and create directories in WebsiteDataStore::parameters, and 252534 at main removes that so we don't have
    to resolve directories for the same directories each time we create parameters. The resolving and creating step was
    moved to WebsiteDataStore::resolveDirectoriesIfNecessary. However, WebsiteDataStore::resolveDirectoriesIfNecessary does
    not handle LocalStorage directory, and sandbox extension may fails to be created.

    * Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp:
    (WebKit::WebsiteDataStore::resolveDirectoriesIfNecessary):

    Canonical link: https://commits.webkit.org/253537@main

Canonical link: https://commits.webkit.org/252432.145@safari-7614.1.25.9-branch


  Commit: 584d96fb7d93962bd1ea7b8b4378f4596e681c66
      https://github.com/WebKit/WebKit/commit/584d96fb7d93962bd1ea7b8b4378f4596e681c66
  Author: Alan Coon <alancoon at apple.com>
  Date:   2022-08-25 (Thu, 25 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.7

Canonical link: https://commits.webkit.org/252432.146@safari-7614.1.25.9-branch


  Commit: 4ad94dec719959ecff859cf1d760bd850f2d6546
      https://github.com/WebKit/WebKit/commit/4ad94dec719959ecff859cf1d760bd850f2d6546
  Author: J Pascoe <j_pascoe at apple.com>
  Date:   2022-08-25 (Thu, 25 Aug 2022)

  Changed paths:
    M Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp
    M Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm
    M Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm
    M Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp

  Log Message:
  -----------
  Cherry-pick b9dc53260530. rdar://problem/98902499

    Add logging to debug WebAuthn failures
    https://bugs.webkit.org/show_bug.cgi?id=244214
    rdar://98902499

    Reviewed by Brent Fulgham.

    This patch adds more logging for use when debugging.

    * Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp:
    (WebKit::AuthenticatorManager::cancelRequest):
    * Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:
    (WebKit::LocalAuthenticator::getAssertion):
    (WebKit::LocalAuthenticator::continueGetAssertionAfterUserVerification):
    (WebKit::LocalAuthenticator::receiveException const):
    (WebKit::LocalAuthenticator::deleteDuplicateCredential const):
    (WebKit::LocalAuthenticator::validateUserVerification const):
    * Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm:
    (WebKit::continueAfterRequest):
    * Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.cpp:
    (WebKit::WebAuthenticatorCoordinatorProxy::handleRequest):

    Canonical link: https://commits.webkit.org/253660@main

Canonical link: https://commits.webkit.org/252432.147@safari-7614.1.25.9-branch


  Commit: 3900f5f396bcf093fc9daaa3c70defd81d41c0b8
      https://github.com/WebKit/WebKit/commit/3900f5f396bcf093fc9daaa3c70defd81d41c0b8
  Author: Alan Coon <alancoon at apple.com>
  Date:   2022-08-29 (Mon, 29 Aug 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.8

Canonical link: https://commits.webkit.org/252432.148@safari-7614.1.25.9-branch


  Commit: 7a3a830dd1411d6726ddd6917ef7ce6d945339a2
      https://github.com/WebKit/WebKit/commit/7a3a830dd1411d6726ddd6917ef7ce6d945339a2
  Author: Alan Coon <alancoon at apple.com>
  Date:   2022-08-29 (Mon, 29 Aug 2022)

  Changed paths:
    M Source/WebKit/UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm

  Log Message:
  -----------
  Apply patch. rdar://problem/98690533

Canonical link: https://commits.webkit.org/252432.149@safari-7614.1.25.9-branch


  Commit: 75741c57da25a38881cf5b3d5c09e5a1d21fd2a3
      https://github.com/WebKit/WebKit/commit/75741c57da25a38881cf5b3d5c09e5a1d21fd2a3
  Author: J Pascoe <j_pascoe at apple.com>
  Date:   2022-09-06 (Tue, 06 Sep 2022)

  Changed paths:
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebKit/Sources.txt
    M Source/WebKit/SourcesCocoa.txt
    M Source/WebKit/WebKit.xcodeproj/project.pbxproj

  Log Message:
  -----------
  Cherry-pick 06d4a7261d9b. rdar://problem/99350672

    [WebAuthn] Turn off optimization for some files to workaround LTO bug
    https://bugs.webkit.org/show_bug.cgi?id=244731
    rdar://99350672

    Reviewed by Elliott Williams.

    LTO optimization on these files ends up causing issues in some configurations,
    so this patch disables optimization on those files until that is resolved. None
    of them are hot paths.

    * Source/WebCore/WebCore.xcodeproj/project.pbxproj:
    * Source/WebKit/Sources.txt:
    * Source/WebKit/SourcesCocoa.txt:
    * Source/WebKit/WebKit.xcodeproj/project.pbxproj:

    Canonical link: https://commits.webkit.org/254123@main

Canonical link: https://commits.webkit.org/252432.150@safari-7614.1.25.9-branch


  Commit: b13d1e9434011298740a8e0c7cd9d8890d7de5e8
      https://github.com/WebKit/WebKit/commit/b13d1e9434011298740a8e0c7cd9d8890d7de5e8
  Author: Alan Coon <alancoon at apple.com>
  Date:   2022-09-07 (Wed, 07 Sep 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.9

Canonical link: https://commits.webkit.org/252432.150@safari-7614.1.25.9-branch


  Commit: cd45543ee8cc629e678c16eb077befc89af49660
      https://github.com/WebKit/WebKit/commit/cd45543ee8cc629e678c16eb077befc89af49660
  Author: Russell Epstein <repstein at apple.com>
  Date:   2022-09-07 (Wed, 07 Sep 2022)

  Changed paths:
    M Source/JavaScriptCore/Configurations/Version.xcconfig
    M Source/ThirdParty/ANGLE/Configurations/Version.xcconfig
    M Source/ThirdParty/libwebrtc/Configurations/Version.xcconfig
    M Source/WebCore/Configurations/Version.xcconfig
    M Source/WebCore/PAL/Configurations/Version.xcconfig
    M Source/WebGPU/Configurations/Version.xcconfig
    M Source/WebInspectorUI/Configurations/Version.xcconfig
    M Source/WebKit/Configurations/Version.xcconfig
    M Source/WebKitLegacy/mac/Configurations/Version.xcconfig

  Log Message:
  -----------
  Versioning.

WebKit-7614.1.25.9.10

Canonical link: https://commits.webkit.org/252432.152@safari-7614.1.25.9-branch


Compare: https://github.com/WebKit/WebKit/compare/6a22ac2feeff%5E...cd45543ee8cc


More information about the webkit-changes mailing list