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_bugzi...@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_hs...@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_bugzi...@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_hs...@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_bugzi...@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_bugzi...@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 <mohs...@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 <danl...@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 <charl...@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 <mohs...@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 <nitinmahen...@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 <nitinmahen...@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 _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes