[webkit-changes] [WebKit/WebKit] 4c946e: Versioning.

nmahendru noreply at github.com
Fri Dec 20 12:14:25 PST 2024


  Branch: refs/heads/safari-7619.2.8.11-branch
  Home:   https://github.com/WebKit/WebKit
  Commit: 4c946e6a3e68b6e6190c03c7ea1b30bf50468028
      https://github.com/WebKit/WebKit/commit/4c946e6a3e68b6e6190c03c7ea1b30bf50468028
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-10-21 (Mon, 21 Oct 2024)

  Changed paths:
    M Configurations/Version.xcconfig

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

WebKit-7619.2.8.11.10

Canonical link: https://commits.webkit.org/280938.392@safari-7619.2.8.11-branch


  Commit: fbd4d2fbb811f9766a3c2ec179ea4b55782ed6fe
      https://github.com/WebKit/WebKit/commit/fbd4d2fbb811f9766a3c2ec179ea4b55782ed6fe
  Author: Wenson Hsieh <wenson_hsieh at apple.com>
  Date:   2024-10-21 (Mon, 21 Oct 2024)

  Changed paths:
    M Source/WebCore/editing/cocoa/HTMLConverter.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm

  Log Message:
  -----------
  Cherry-pick becb5858cc51. rdar://138041439

    Writing tools rewrite incorrectly removes links in Mail compose
    https://bugs.webkit.org/show_bug.cgi?id=281718
    rdar://138041439

    Reviewed by Richard Robinson.

    Using rewrite currently causes any links in Mail compose to be replaced by a span element that has
    the same text color, font and underlines as the link, but (importantly) doesn't contain the actual
    link `href`. This happens because the extracted attributed string for WritingTools doesn't contain
    any link URL attributes. To fix this, we teach `WebCore::editingAttributedString` to detect when
    text is contained inside of a link, extract the URL of the link, and add it as an attributed string
    attribute corresponding to `NSLinkAttributeName`.

    * Source/WebCore/editing/cocoa/HTMLConverter.mm:
    (hasAncestorQualifyingForWritingToolsPreservation):

    Drive-by fix: use `find()` to avoid a redundant hash lookup.

    (enclosingLinkElement):

    Add a helper method to return whether a given node is contained within an enclosing link (determined
    via `Node::isLink()`). To avoid redundant tree traversal in the case where text is not inside of a
    link, we cache the enclosing link result (which may be null) for each node that is both not a link,
    and a parent of some text node in the DOM.

    (updateAttributes):
    (WebCore::editingAttributedString):

    See above for more details.

    (updateAttributesForStyle): Deleted.
    * Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm:
    (TEST(WritingTools, ProofreadingWithImage)):

    Drive-by fix: typo in a FIXME comment.

    (TEST(WritingTools, ProofreadingWithLinks)):

    Add a new API test to exercise the change, by verifying that the extracted text context contains
    link URLs in the attributed text.

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

Canonical link: https://commits.webkit.org/280938.393@safari-7619.2.8.11-branch


  Commit: bbd10d2b7b6fabcc16a2c164f73d503734a09f6c
      https://github.com/WebKit/WebKit/commit/bbd10d2b7b6fabcc16a2c164f73d503734a09f6c
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-10-21 (Mon, 21 Oct 2024)

  Changed paths:
    M Source/WebCore/editing/cocoa/HTMLConverter.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm

  Log Message:
  -----------
  Revert becb5858cc51. rdar://138041439

This reverts commit fbd4d2fbb811f9766a3c2ec179ea4b55782ed6fe.

Canonical link: https://commits.webkit.org/280938.394@safari-7619.2.8.11-branch


  Commit: 6cf9a0a71c6be8afe14304f1fc953ffd835cb40c
      https://github.com/WebKit/WebKit/commit/6cf9a0a71c6be8afe14304f1fc953ffd835cb40c
  Author: Wenson Hsieh <wenson_hsieh at apple.com>
  Date:   2024-10-21 (Mon, 21 Oct 2024)

  Changed paths:
    M Source/WebCore/editing/cocoa/HTMLConverter.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm

  Log Message:
  -----------
  Cherry-pick becb5858cc51. rdar://138328457

    Writing tools rewrite incorrectly removes links in Mail compose
    https://bugs.webkit.org/show_bug.cgi?id=281718
    rdar://138041439

    Reviewed by Richard Robinson.

    Using rewrite currently causes any links in Mail compose to be replaced by a span element that has
    the same text color, font and underlines as the link, but (importantly) doesn't contain the actual
    link `href`. This happens because the extracted attributed string for WritingTools doesn't contain
    any link URL attributes. To fix this, we teach `WebCore::editingAttributedString` to detect when
    text is contained inside of a link, extract the URL of the link, and add it as an attributed string
    attribute corresponding to `NSLinkAttributeName`.

    * Source/WebCore/editing/cocoa/HTMLConverter.mm:
    (hasAncestorQualifyingForWritingToolsPreservation):

    Drive-by fix: use `find()` to avoid a redundant hash lookup.

    (enclosingLinkElement):

    Add a helper method to return whether a given node is contained within an enclosing link (determined
    via `Node::isLink()`). To avoid redundant tree traversal in the case where text is not inside of a
    link, we cache the enclosing link result (which may be null) for each node that is both not a link,
    and a parent of some text node in the DOM.

    (updateAttributes):
    (WebCore::editingAttributedString):

    See above for more details.

    (updateAttributesForStyle): Deleted.
    * Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm:
    (TEST(WritingTools, ProofreadingWithImage)):

    Drive-by fix: typo in a FIXME comment.

    (TEST(WritingTools, ProofreadingWithLinks)):

    Add a new API test to exercise the change, by verifying that the extracted text context contains
    link URLs in the attributed text.

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

Canonical link: https://commits.webkit.org/280938.395@safari-7619.2.8.11-branch


  Commit: 91785fdb46b9c45e720a8d2f4c26fc59a36f3ee8
      https://github.com/WebKit/WebKit/commit/91785fdb46b9c45e720a8d2f4c26fc59a36f3ee8
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-10-21 (Mon, 21 Oct 2024)

  Changed paths:
    M Source/WebCore/editing/cocoa/HTMLConverter.mm
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WritingTools.mm

  Log Message:
  -----------
  Revert becb5858cc51. rdar://138328457

This reverts commit 6cf9a0a71c6be8afe14304f1fc953ffd835cb40c.

Canonical link: https://commits.webkit.org/280938.396@safari-7619.2.8.11-branch


  Commit: 1610f2d5131c865294ed5a2cd1a1f42ddb48f3c1
      https://github.com/WebKit/WebKit/commit/1610f2d5131c865294ed5a2cd1a1f42ddb48f3c1
  Author: Dan Robson <dtr_bugzilla at apple.com>
  Date:   2024-10-21 (Mon, 21 Oct 2024)

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

  Log Message:
  -----------
  Revert 5f8c88f5cf2b. rdar://137678579

Canonical link: https://commits.webkit.org/280938.397@safari-7619.2.8.11-branch


  Commit: 47d25e3046a1a374d753b1c6025e14676ddb70e5
      https://github.com/WebKit/WebKit/commit/47d25e3046a1a374d753b1c6025e14676ddb70e5
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-11-13 (Wed, 13 Nov 2024)

  Changed paths:
    M Configurations/Version.xcconfig

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

WebKit-7619.2.8.11.11

Canonical link: https://commits.webkit.org/280938.398@safari-7619.2.8.11-branch


  Commit: 107296314916dbfb9a7100ef2e7d798d0776d021
      https://github.com/WebKit/WebKit/commit/107296314916dbfb9a7100ef2e7d798d0776d021
  Author: Daniel Liu <danlliu at umich.edu>
  Date:   2024-11-13 (Wed, 13 Nov 2024)

  Changed paths:
    M Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp

  Log Message:
  -----------
  Cherry-pick ded4d02c0a93. rdar://139747120

    Don't allocate DFG register after a slow path
    https://bugs.webkit.org/show_bug.cgi?id=283063
    rdar://139747120

    Reviewed by Yusuke Suzuki.

    Allocating a DFG register after a slow path means that if the slow path
    is taken, we end up with an incorrect global state.

    * Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp:
    (JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):

    Canonical link: https://commits.webkit.org/283286.475@safari-7620-branch


  Commit: b1fcda02d8f05d02b5cc095c96430b608849ad61
      https://github.com/WebKit/WebKit/commit/b1fcda02d8f05d02b5cc095c96430b608849ad61
  Author: Charlie Wolfe <charliew at apple.com>
  Date:   2024-11-14 (Thu, 14 Nov 2024)

  Changed paths:
    M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
    M Source/WebKit/NetworkProcess/NetworkProcess.cpp
    M Source/WebKit/NetworkProcess/NetworkProcess.h
    M Source/WebKit/NetworkProcess/NetworkSession.cpp
    M Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp
    M Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.cpp
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/IPCTestingAPI.mm

  Log Message:
  -----------
  Cherry-pick 60c387845715. rdar://139893250

    Cherry-pick 2815b4e29829. rdar://139893250

        Data Isolation bypass via attacker controlled firstPartyForCookies
        https://bugs.webkit.org/show_bug.cgi?id=283095
        rdar://139818629

        Reviewed by Matthew Finkel and Alex Christensen.

        `NetworkProcess::allowsFirstPartyForCookies` unconditionally allows cookie access for about:blank or
        empty firstPartyForCookies URLs. We tried to remove this in rdar://105733798 and rdar://107270673, but
        we needed to revert both because there were rare and subtle bugs where certain requests would incorrectly
        have about:blank set as their firstPartyForCookies, causing us to kill the WCP.

        This patch is a lower risk change that removes the unconditional cookie access for requests that have an
        empty firstPartyForCookies, but will not kill the WCP that is incorrectly sending an empty
        firstPartyForCookies.

        * Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp:
        (WebKit::NetworkConnectionToWebProcess::createSocketChannel):
        (WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
        (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
        (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
        (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
        (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
        (WebKit::NetworkConnectionToWebProcess::getRawCookies):
        (WebKit::NetworkConnectionToWebProcess::cookiesForDOMAsync):
        (WebKit::NetworkConnectionToWebProcess::setCookieFromDOMAsync):
        (WebKit::NetworkConnectionToWebProcess::domCookiesForHost):
        (WebKit::NetworkConnectionToWebProcess::establishSWContextConnection):
        * Source/WebKit/NetworkProcess/NetworkProcess.cpp:
        (WebKit::NetworkProcess::allowsFirstPartyForCookies):
        * Source/WebKit/NetworkProcess/NetworkProcess.h:
        * Source/WebKit/NetworkProcess/NetworkSession.cpp:
        (WebKit::NetworkSession::addAllowedFirstPartyForCookies):
        * Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
        (WebKit::WebSWServerConnection::scheduleJobInServer):
        * Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.cpp:
        (WebKit::WebSharedWorkerServerConnection::requestSharedWorker):
        * Tools/TestWebKitAPI/Tests/WebKitCocoa/IPCTestingAPI.mm:
        (EmptyFirstPartyForCookiesCookieRequestHeaderFieldValue)):

        Canonical link: https://commits.webkit.org/283286.477@safari-7620-branch


  Commit: 60e391595e6ad517a79e300b757ef627b731dea0
      https://github.com/WebKit/WebKit/commit/60e391595e6ad517a79e300b757ef627b731dea0
  Author: Mohsin Qureshi <mohsinq at apple.com>
  Date:   2024-11-14 (Thu, 14 Nov 2024)

  Changed paths:
    M Configurations/Version.xcconfig

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

WebKit-7619.2.8.11.12

Canonical link: https://commits.webkit.org/280938.401@safari-7619.2.8.11-branch


  Commit: c25c850eafd650da450c534d8f2708571f720151
      https://github.com/WebKit/WebKit/commit/c25c850eafd650da450c534d8f2708571f720151
  Author: Nitin Mahendru <nitinmahendru at apple.com>
  Date:   2024-11-14 (Thu, 14 Nov 2024)

  Changed paths:
    M LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-hid.https-expected.txt
    M LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-hid.https.html
    M LayoutTests/http/wpt/webauthn/public-key-credential-get-success-hid.https-expected.txt
    M LayoutTests/http/wpt/webauthn/public-key-credential-get-success-hid.https.html
    M Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.cpp
    M Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.h
    M Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp
    M Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.h

  Log Message:
  -----------
  Cherry-pick fbc1283a4a99. rdar://139913405

    Unreviewed, reverting "[WebAuthn] Implement batching for checking allowCredentials (48851c3d135a)"
    https://bugs.webkit.org/show_bug.cgi?id=282880
    rdar://138281493

    Fix Login Issues with newer Yubikeys.

    Reverted change:

    Cherry-pick 52a47cb. rdar://133711978
        [WebAuthn] Implement batching for checking allowCredentials
        rdar://133711978
        https://bugs.webkit.org/show_bug.cgi?id=277979

        Reviewed by Brent Fulgham.

        This change implements checking the allowCredentials in batches as supported by
        the authenticator during getAssertion. This is accomplished with smaller up=0,
        get requests to determine if credentials are present on the authenticator.

        Then if a credential is detected as present, it is included in the allowCredentials list
        in the real request. If no credentials matched, then we already know the call will not
        be able to succeed, so we just include the last batch.

        Added layout tests for the new behaviors.

        * LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-hid.https-expected.txt:
        * LayoutTests/http/wpt/webauthn/public-key-credential-get-failure-hid.https.html:
        * LayoutTests/http/wpt/webauthn/public-key-credential-get-success-hid.https-expected.txt:
        * LayoutTests/http/wpt/webauthn/public-key-credential-get-success-hid.https.html:
        * Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp:
        (WebKit::CtapAuthenticator::makeCredential):
        (WebKit::CtapAuthenticator::continueSlientlyCheckCredentials):
        (WebKit::CtapAuthenticator::continueMakeCredentialAfterCheckExcludedCredentials):
        (WebKit::CtapAuthenticator::getAssertion):
        (WebKit::CtapAuthenticator::continueGetAssertionAfterCheckAllowCredentials):
        (WebKit::CtapAuthenticator::continueCheckExcludedCredentialsAfterResponseRecieved): Deleted.
        * Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.h:

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

    Canonical link: https://commits.webkit.org/283286.467@safari-7620-branch


  Commit: 1f67b2f85b17fac8e7ca762fad02684fdbaea1f6
      https://github.com/WebKit/WebKit/commit/1f67b2f85b17fac8e7ca762fad02684fdbaea1f6
  Author: Nitin Mahendru <nitinmahendru at apple.com>
  Date:   2024-11-14 (Thu, 14 Nov 2024)

  Changed paths:
    M LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-hid.https-expected.txt
    M LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-hid.https.html
    M LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https-expected.txt
    M LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https.html
    M LayoutTests/http/wpt/webauthn/resources/util.js
    M Source/WebCore/Modules/webauthn/fido/AuthenticatorGetInfoResponse.cpp
    M Source/WebCore/Modules/webauthn/fido/AuthenticatorGetInfoResponse.h
    M Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.cpp
    M Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.h
    M Source/WebCore/Modules/webauthn/fido/DeviceResponseConverter.cpp
    M Source/WebCore/Modules/webauthn/fido/FidoConstants.h
    M Source/WebCore/testing/MockWebAuthenticationConfiguration.h
    M Source/WebCore/testing/MockWebAuthenticationConfiguration.idl
    M Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in
    M Source/WebKit/UIProcess/WebAuthentication/Mock/MockHidConnection.cpp
    M Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp
    M Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.h

  Log Message:
  -----------
  Cherry-pick aaafcd1e5687. rdar://139913405

    Unreviewed, reverting [WebAuthn] Implement batching for checking excludeCredentials
    https://bugs.webkit.org/show_bug.cgi?id=282878
    rdar://138281493

    Revert to Fix rdar://138281493 Unable to enter PIN for Yubikey

    Reverted change:
        Cherry-pick f56198757e4b. rdar://133307666

            [WebAuthn] Implement batching for checking excludeCredentials
            rdar://133307666
            https://bugs.webkit.org/show_bug.cgi?id=277695

            Reviewed by Charlie Wolfe.

            This change starts to implement checking the excludeCredential list in batches as
            supported by the authenticator during a makeCredential. This is accomplished by using
            smaller, up=0, get requests to detect if a credential is present on the authenticator.

            Then if a credential is detected, only that credential may be included with the actual
            makeCredential request to get the proper error code back from the authenticator. If none
            matched, we don't need to include a excludeCredentials list to the authenticator since
            we already know those credentials aren't present.

            This patch only implements this logic for makeCredential, getAssertion will be done in
            another patch.

            Added layout tests to test matching exclude list with batching, non-matching exclude list with
            batching, and a security key that supports batches greater than 1.

            * LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-hid.https-expected.txt:
            * LayoutTests/http/wpt/webauthn/public-key-credential-create-failure-hid.https.html:
            * LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https-expected.txt:
            * LayoutTests/http/wpt/webauthn/public-key-credential-create-success-hid.https.html:
            * LayoutTests/http/wpt/webauthn/resources/util.js:
            * Source/WebCore/Modules/webauthn/fido/AuthenticatorGetInfoResponse.cpp:
            (fido::AuthenticatorGetInfoResponse::setMaxCredentialCountInList):
            (fido::AuthenticatorGetInfoResponse::setMaxCredentialIDLength):
            (fido::encodeAsCBOR):
            * Source/WebCore/Modules/webauthn/fido/AuthenticatorGetInfoResponse.h:
            * Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.cpp:
            (fido::encodeSilentGetAssertion):
            * Source/WebCore/Modules/webauthn/fido/DeviceRequestConverter.h:
            * Source/WebCore/Modules/webauthn/fido/DeviceResponseConverter.cpp:
            (fido::readCTAPGetInfoResponse):
            * Source/WebCore/Modules/webauthn/fido/FidoConstants.h:
            * Source/WebCore/testing/MockWebAuthenticationConfiguration.h:
            * Source/WebCore/testing/MockWebAuthenticationConfiguration.idl:
            * Source/WebKit/Shared/WebCoreArgumentCoders.serialization.in:
            * Source/WebKit/UIProcess/WebAuthentication/Mock/MockHidConnection.cpp:
            (WebKit::MockHidConnection::feedReports):
            * Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp:
            (WebKit::CtapAuthenticator::makeCredential):
            (WebKit::CtapAuthenticator::continueCheckExcludedCredentialsAfterResponseRecieved):
            (WebKit::CtapAuthenticator::continueMakeCredentialAfterCheckExcludedCredentials):
            * Source/WebKit/UIProcess/WebAuthentication/fido/CtapAuthenticator.h:

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

        Canonical link: https://commits.webkit.org/280938.236@safari-7619-branch

    Canonical link: https://commits.webkit.org/283286.468@safari-7620-branch


Compare: https://github.com/WebKit/WebKit/compare/1053ea1bea0d...1f67b2f85b17

To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list