blob: 0166a539c712c4c74ee66d46165df24bc17f9e8c [file] [log] [blame]
2022-03-17 Jonathan Bedard <JonWBedard@gmail.com>
configure-xcode-for-embedded-development fails with Xcode 13.3
https://bugs.webkit.org/show_bug.cgi?id=237994
<rdar://problem/90455614>
Reviewed by Ryan Haddad.
* Scripts/configure-xcode-for-embedded-development: Handle different xcspec locations in XCode 13.3.
2022-03-17 Brent Fulgham <bfulgham@apple.com>
Disable push features in CaptivePortal mode
https://bugs.webkit.org/show_bug.cgi?id=237981
<rdar://88897228>
Reviewed by Chris Dumez.
We should not support push features when running in a Captive Portal.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2022-03-17 Jonathan Bedard <jbedard@apple.com>
[Merge-Queue] Remove merge-queue labels when blocking PR
https://bugs.webkit.org/show_bug.cgi?id=237964
<rdar://problem/90372805>
Reviewed by Aakash Jain.
* CISupport/ews-build/steps.py:
(GitHubMixin.add_label): Renamed from modify_label, only handle add case
because removal case requires 'get' request first.
(GitHubMixin.remove_labels): Remove list of labels from PR.
(BlockPullRequest.start): Remove merge-queue labels.
(BlockPullRequest.getResultSummary): Add label name in results summary.
(GitHubMixin.modify_label): Renamed add_label.
2022-03-17 Saam Barati <sbarati@apple.com>
compare-results should break down sync vs async time in Speedometer2
https://bugs.webkit.org/show_bug.cgi?id=237993
Reviewed by Alexey Shvayka.
* Scripts/compare-results:
(speedometer2Breakdown):
(speedometer2BreakdownSyncAsync):
(dumpBreakdowns):
(getOptions):
(main):
2022-03-17 Myles C. Maxfield <mmaxfield@apple.com>
Delete Tools/jsc-cli in favor of the jsc target in JavaScriptCore itself
https://bugs.webkit.org/show_bug.cgi?id=238042
Rubber-stamped by Saam Barati.
The last time jsc-cli was substantively modified was 8 years ago. On the other
hand, the jsc target in JavaScriptCore serves the same purpose, and is actively
maintained.
* Scripts/build-jsc:
* jsc-cli/jsc-cli.xcodeproj/project.pbxproj: Removed.
* jsc-cli/jsc-cli/CLIInstance.h: Removed.
* jsc-cli/jsc-cli/CLIInstance.m: Removed.
* jsc-cli/jsc-cli/JSModule.h: Removed.
* jsc-cli/jsc-cli/JSModule.m: Removed.
* jsc-cli/jsc-cli/JSRunLoopThread.h: Removed.
* jsc-cli/jsc-cli/JSRunLoopThread.m: Removed.
* jsc-cli/jsc-cli/ReadEvalPrintLoop.h: Removed.
* jsc-cli/jsc-cli/ReadEvalPrintLoop.m: Removed.
* jsc-cli/jsc-cli/RunLoopThread.h: Removed.
* jsc-cli/jsc-cli/RunLoopThread.m: Removed.
* jsc-cli/jsc-cli/ScriptInputSource.h: Removed.
* jsc-cli/jsc-cli/ScriptInputSource.m: Removed.
* jsc-cli/jsc-cli/main.m: Removed.
2022-03-17 Ben Nham <nham@apple.com>
Only show notification permission prompt on user gesture
https://bugs.webkit.org/show_bug.cgi?id=237946
Unreviewed build fix for r291414.
* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
2022-03-17 Ben Nham <nham@apple.com>
Only show notification permission prompt on user gesture
https://bugs.webkit.org/show_bug.cgi?id=237946
Reviewed by Geoffrey Garen.
Change existing permission tests to use evaluateJavaScript since that executes in the
context of a user gesture.
* TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
2022-03-17 Ben Nham <nham@apple.com>
Allow push preference to be set programatically
https://bugs.webkit.org/show_bug.cgi?id=238003
Reviewed by Geoffrey Garen.
Make webpushd tests enable the push API via WKPreferences.
* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
2022-03-17 Kate Cheney <katherine_cheney@apple.com>
Calls to print can result in unresponsive print modal
https://bugs.webkit.org/show_bug.cgi?id=237940
<rdar://problem/88257828>
Reviewed by Chris Dumez.
Add API test. Adjust delegate naming in the PDF case to be more
specific so we can use the generic PrintUIDelegate name in the general
case.
* TestWebKitAPI/SourcesCocoa.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
(TEST):
(-[PrintUIDelegate _webView:printFrame:pdfFirstPageSize:completionHandler:]): Deleted.
(-[PrintUIDelegate waitForPageSize]): Deleted.
(-[PrintUIDelegate lastPrintedFrame]): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/WKPrinting.mm: Added.
(-[PrintUIDelegate callBlockAsync:]):
(-[PrintUIDelegate _webView:printFrame:pdfFirstPageSize:completionHandler:]):
(-[PrintUIDelegate waitForPagination]):
(TEST):
2022-03-17 Oriol Brufau <obrufau@igalia.com>
Clarify code for logical-to-physical mappings, and add physical-to-logical mappings
https://bugs.webkit.org/show_bug.cgi?id=237967
Reviewed by Darin Adler.
Add tests.
* TestWebKitAPI/CMakeLists.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/WritingModeTests.cpp: Added.
(TestWebKitAPI::TEST):
2022-03-17 Aakash Jain <aakash_jain@apple.com>
XSS in EWS App
https://bugs.webkit.org/show_bug.cgi?id=236633
Reported by Iman Sharafaldin - Forward Security.
Reviewed by Darin Adler.
* CISupport/ews-app/ews/views/submittoews.py:
(SubmitToEWS.post):
2022-03-16 Jonathan Bedard <jbedard@apple.com>
[reporelaypy] Support credentialed https repositories
https://bugs.webkit.org/show_bug.cgi?id=237853
<rdar://90252426>
Reviewed by Ryan Haddad, Dewei Zhu and Stephanie Lewis.
* Scripts/libraries/reporelaypy/reporelaypy/__init__.py: Bump version.
* Scripts/libraries/reporelaypy/reporelaypy/checkout.py:
(Checkout.Encoder.default): Pass credentials.
(Checkout.clone): Add credentials to local configuration.
(Checkout.add_credentials): Add username to .git/config and populate
.git-credentials file appropriately.
(Checkout.__init__): Re-add credentials.
* Scripts/libraries/reporelaypy/reporelaypy/tests/checkout_unittest.py:
(CheckoutUnittest.test_json):
* Scripts/libraries/reporelaypy/setup.py: Bump version.
2022-03-17 Nikolas Zimmermann <nzimmermann@igalia.com>
Build broken on macOS Monterey 12.3 - PassKitSPI related error
https://bugs.webkit.org/show_bug.cgi?id=238010
<rdar://problem/90417687>
Reviewed by Antoine Quint.
Unbreak the macOS 12.3 build: assure that 'PKShippingMethod' is declared before used
in the 'PKShippingMethods' interface. Fix various unused variable warnings.
No new tests. No change in functionality.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCloseAllMediaPresentations.mm:
(loadPictureInPicture):
2022-03-17 Youenn Fablet <youenn@apple.com>
AudioContext is suspended on iOS when page is backgrounded
https://bugs.webkit.org/show_bug.cgi?id=237878
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebKitCocoa/GPUProcess.mm:
* TestWebKitAPI/Tests/WebKitCocoa/audio-context-playing.html:
2022-03-16 Jonathan Bedard <jbedard@apple.com>
[Merge-Queue] Add step to make comment on pull requests
https://bugs.webkit.org/show_bug.cgi?id=237962
<rdar://problem/90371727>
Reviewed by Aakash Jain.
* CISupport/ews-build/steps.py:
(GitHubMixin.comment_on_pr): Make a comment on pull request for in repository.
(ApplyPatch.evaluateCommand): Rename CommentOnBug to LeaveComment.
(ValidateCommiterAndReviewer.fail_build): Ditto.
(ValidateChangeLogAndReviewer.evaluateCommand): Ditto.
(LeaveComment): Renamed from CommentOnBug, support pull request
(LeaveComment.start):
(LeaveComment.getResultSummary):
(AnalyzeCompileWebKitResults.analyzeResults): Rename CommentOnBug to LeaveComment.
(AnalyzeLayoutTestsResults.report_failure): Ditto.
(FindModifiedChangeLogs.evaluateCommand): Ditto.
(CreateLocalGITCommit.evaluateCommand): Ditto.
(PushCommitToWebKitRepo.evaluateCommand): Ditto.
(CommentOnBug): Renamed to LeaveComment.
2022-03-16 Basuke Suzuki <basuke.suzuki@sony.com>
Suppress warnings for implicit conversion from unsigned long to double
https://bugs.webkit.org/show_bug.cgi?id=237899
<rdar://problem/90364907>
Reviewed by Darin Adler.
Add static_cast for approx casting to double.
* TestWebKitAPI/Tests/WTF/Int128.cpp:
(TestWebKitAPI::TEST):
2022-03-15 Jonathan Bedard <jbedard@apple.com>
[Merge-Queue] Rename patch_reviewer
https://bugs.webkit.org/show_bug.cgi?id=237916
<rdar://problem/90324765>
Reviewed by Aakash Jain.
Rename patch_reviewer to reviewer for compatibility with
pull requests.
* CISupport/ews-build/steps.py:
(ApplyPatch.start):
(BugzillaMixin._does_patch_have_acceptable_review_flag):
(ValidateCommiterAndReviewer.start):
* CISupport/ews-build/steps_unittest.py:
2022-03-16 Youenn Fablet <youenn@apple.com>
Make MIMETypeRegistry::mimeTypeForPath take a StringView
https://bugs.webkit.org/show_bug.cgi?id=236441
<rdar://problem/89084526>
Reviewed by Chris Dumez.
* TestWebKitAPI/cocoa/TestInspectorURLSchemeHandler.mm:
(-[TestInspectorURLSchemeHandler webView:startURLSchemeTask:]):
2022-03-15 Diego Pino Garcia <dpino@igalia.com>
[GLIB] Unreviewed, fix build for Ubuntu 18.04 and Debian Stable after r291229
https://bugs.webkit.org/show_bug.cgi?id=237938
* TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
(elementSize):
2022-03-15 Saam Barati <sbarati@apple.com>
Add support for chrome-beta and chrome-dev to run-benchmark
https://bugs.webkit.org/show_bug.cgi?id=237937
Reviewed by Stephanie Lewis.
* Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py:
(set_binary_location_impl):
(OSXChromeDriver._set_chrome_binary_location):
(OSXChromeCanaryDriver):
(OSXChromeCanaryDriver._set_chrome_binary_location):
(OSXChromeBetaDriver):
(OSXChromeBetaDriver._set_chrome_binary_location):
(OSXChromeDevDriver):
(OSXChromeDevDriver._set_chrome_binary_location):
2022-03-15 Jonathan Bedard <jbedard@apple.com>
[Merge-Queue] Rename bugzilla_comment_text
https://bugs.webkit.org/show_bug.cgi?id=237911
<rdar://problem/90319995>
Reviewed by Aakash Jain.
Rename bugzilla_comment_text to comment_text to re-use
code to comment on pull requests.
* CISupport/ews-build/steps.py:
(ApplyPatch.evaluateCommand):
(ValidateCommiterAndReviewer.fail_build):
(ValidateChangeLogAndReviewer.evaluateCommand):
(CommentOnBug.start):
(AnalyzeCompileWebKitResults.analyzeResults):
(AnalyzeLayoutTestsResults.report_failure):
(FindModifiedChangeLogs.evaluateCommand):
(CreateLocalGITCommit.evaluateCommand):
(PushCommitToWebKitRepo.evaluateCommand):
* CISupport/ews-build/steps_unittest.py:
2022-03-15 Aditya Keerthi <akeerthi@apple.com>
[iOS] Indefinite hang when printing using a UIPrintPageRenderer
https://bugs.webkit.org/show_bug.cgi?id=237835
rdar://90002387
Reviewed by Devin Rousso.
Add API test coverage for printing web content to a PDF, using a
UIPrintPageRenderer (which uses the main thread) and a
UIPrintInteractionController (which uses a background thread).
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewPrintFormatter.mm:
(TEST):
2022-03-15 Alex Christensen <achristensen@webkit.org>
Stop using DYLD_INTERPOSE
https://bugs.webkit.org/show_bug.cgi?id=237867
Reviewed by Anders Carlsson.
* Scripts/webkitpy/port/mac.py:
(MacPort.setup_environ_for_server):
* Scripts/webkitpy/port/mac_unittest.py:
(MacTest.test_setup_environ_for_server):
2022-03-14 Jonathan Bedard <jbedard@apple.com>
[Merge-Queue] Fail draft PRs
https://bugs.webkit.org/show_bug.cgi?id=237859
<rdar://problem/90277316>
Reviewed by Aakash Jain.
We should never merge a draft pull request.
* CISupport/ews-build/factories.py:
(MergeQueueFactory.__init__): Verify that provided change is not a draft.
* CISupport/ews-build/steps.py:
(GitHubMixin._is_pr_draft): Check if pr_json indicates a draft PR.
(ValidateChange.__init__): Accept verifyNoDraft flag.
(ValidateChange.start):
(ValidateChange.fail_build):
(ValidateChange.validate_github): Fail the build if the provided PR is a draft.
* CISupport/ews-build/steps_unittest.py:
2022-03-15 Youenn Fablet <youenn@apple.com>
Mark permission as denied if system forbids access to camera and/or microphone
https://bugs.webkit.org/show_bug.cgi?id=237823
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
* TestWebKitAPI/Tests/WebKit/getUserMediaPermission.html:
2022-03-14 Wenson Hsieh <wenson_hsieh@apple.com>
[Mail compose] Allow copied resources with remote (HTTP/HTTPS) URLs to be pasted as attachments
https://bugs.webkit.org/show_bug.cgi?id=237810
rdar://90119983
Reviewed by Devin Rousso.
Add an API test to exercise copying remote images and pasting as attachment-backed images. This API test first
loads a web page (simulating page load via HTTPS, along with multiple image subresources); it then pastes into
an attachment-enabled WKWebView-based editor and verifies that the _WKAttachment UI delegate hooks are invoked
with attachments corresponding to each of the remote images.
* TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
(TestWebKitAPI::TEST):
2022-03-14 Wenson Hsieh <wenson_hsieh@apple.com>
[Mail Compose] Spelling and grammar context menu items need custom identifiers
https://bugs.webkit.org/show_bug.cgi?id=237804
rdar://90124049
Reviewed by Aditya Keerthi.
Add a new API test to exercise the new identifiers.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/mac/ContextMenuTests.mm: Added.
(-[NSMenu itemWithIdentifier:]):
(TestWebKitAPI::TEST):
2022-03-10 Jonathan Bedard <jbedard@apple.com>
[EWS] Clean up PR branches and remotes
https://bugs.webkit.org/show_bug.cgi?id=237714
<rdar://problem/88771970>
Reviewed by Aakash Jain.
* CISupport/ews-build/steps.py:
(ShellMixin.shell_command): Use `sh` on Windows.
(CleanGitRepo.run): Delete all non-origin remote and all unused branches.
* CISupport/ews-build/steps_unittest.py:
2022-03-14 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Handle comparing User and Contributor to None
https://bugs.webkit.org/show_bug.cgi?id=237622
<rdar://problem/89992772>
Reviewed by Dewei Zhu.
* Scripts/libraries/webkitbugspy/setup.py: Bump version.
* Scripts/libraries/webkitbugspy/webkitbugspy/__init__.py: Ditto.
* Scripts/libraries/webkitbugspy/webkitbugspy/tests/user_unittest.py:
(TestUser.test_compare):
* Scripts/libraries/webkitbugspy/webkitbugspy/user.py:
(User.__cmp__): Handle 'None' case.
* Scripts/libraries/webkitscmpy/webkitscmpy/contributor.py:
(Contributor.__cmp__): Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/test/contributor_unittest.py:
(TestContributor.test_comparison):
2022-03-14 Alejandro G. Castro <alex@igalia.com>
[Flatpack SDK] Api tests scripts have conflicting parameters with the flatpak scripts
https://bugs.webkit.org/show_bug.cgi?id=237778
Reviewed by Philippe Normand.
run-gtk-tests and run-wpe-tests have arguments that cause
conflicts with the flatpak sdk, we have to rewrite and consume
some of them to avoid problems because we do not know what the
user is requesting. This patch gives priority to the api tests
parameters, the flatpak ones for the conflictive situations need
to be passed with the long format, namely regenerate-toolchains
and sccache-token.
* Scripts/run-gtk-tests:
* Scripts/run-wpe-tests:
* glib/api_test_runner.py:
(add_options):
(get_runner_args):
2022-03-14 Jonathan Bedard <jbedard@apple.com>
[webkitcorepy] Do not fetch key without username
https://bugs.webkit.org/show_bug.cgi?id=237830
<rdar://problem/90248939>
Unreviewed git-webkit fix.
* Scripts/libraries/webkitcorepy/setup.py: Bump version.
* Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto.
* Scripts/libraries/webkitcorepy/webkitcorepy/credentials.py:
(credentials): Only attempt to fetch key if username is defined.
2022-03-14 Adrian Perez de Castro <aperez@igalia.com>
[GLib] Expose typed arrays in the public API
https://bugs.webkit.org/show_bug.cgi?id=197535
Reviewed by Carlos Garcia Campos.
This adds a set of new functions to operate on JSCValue objects which refer to typed
arrays in the JavaScript side of the world. Typed array values can be created with an
existing ArrayBuffer to hold the contents, in which case custom allocations are possible;
or letting JSC handle allocation. Operating on typed arrays is expected to be done on an
element-by-element basis, and in general it is recommended to use the functions dealing
with the "length" (number of elements) of typed arrays; nevertheless it is also possible
to retrieve their "size" and "offset" over the underlying ArrayBuffer, and/or retrieving
said ArrayBuffer.
* TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp: Added test for typed arrays.
(elementSize):
(testJSCTypedArray):
(main):
2022-03-14 Kimmo Kinnunen <kkinnunen@apple.com>
WebGL context should use discrete gpu if the context is created when the window is on external monitor, ANGLE Metal backend
https://bugs.webkit.org/show_bug.cgi?id=236487
Reviewed by Kenneth Russell.
Add tests to test that the windowGPUID affects the contexts being created.
Avoid ifdefs by always compiling the tests and move the "platform can have
multiple gpus / there is no multiple gpus in the platform" ifdef aspects
to helper functions.
* TestWebKitAPI/Tests/WebCore/cocoa/TestGraphicsContextGLCocoa.mm:
(TestWebKitAPI::allDevices):
(TestWebKitAPI::lowPowerDevice):
(TestWebKitAPI::highPerformanceDevice):
(TestWebKitAPI::hasMultipleGPUs):
(TestWebKitAPI::TEST_F):
2022-03-12 Tim Horton <timothy_horton@apple.com>
Adopt FALLBACK_PLATFORM_NAME in place of FALLBACK_PLATFORM
https://bugs.webkit.org/show_bug.cgi?id=237809
Reviewed by Per Arne Vollan.
* ContentExtensionTester/Configurations/SDKVariant.xcconfig:
* DumpRenderTree/mac/Configurations/SDKVariant.xcconfig:
* ImageDiff/cg/Configurations/SDKVariant.xcconfig:
* MiniBrowser/Configurations/SDKVariant.xcconfig:
* MobileMiniBrowser/Configurations/SDKVariant.xcconfig:
* TestWebKitAPI/Configurations/SDKVariant.xcconfig:
* WebEditingTester/Configurations/SDKVariant.xcconfig:
* WebKitTestRunner/Configurations/SDKVariant.xcconfig:
* lldb/lldbWebKitTester/Configurations/SDKVariant.xcconfig:
2022-03-11 Alex Christensen <achristensen@webkit.org>
Finish implementing modify-headers actions for WKContentRuleList SPI
https://bugs.webkit.org/show_bug.cgi?id=237784
Reviewed by Tim Hatcher.
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::TEST_F):
2022-03-11 Adrian Perez de Castro <aperez@igalia.com>
[GLib] Expose ArrayBuffer in the public API
https://bugs.webkit.org/show_bug.cgi?id=237088
Reviewed by Carlos Garcia Campos.
This adds a set of new functions to operate on JSCValue objects which refer to array
buffers in the JS side of the world. This allows sharing chunks of memory buffers
efficiently with native code, without needing to copy nor encode data back and forth.
* TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp: Added test for array buffers.
(testJSCArrayBuffer):
(main):
2022-03-11 Jonathan Bedard <jbedard@apple.com>
[Merge-Queue] Add queue triggered by label addition
https://bugs.webkit.org/show_bug.cgi?id=237615
<rdar://problem/89983452>
Reviewed by Aakash Jain.
* CISupport/ews-build/config.json: Add Merge-Queue.
* CISupport/ews-build/events.py:
(GitHubEventHandlerNoEdits): Remove action list, add merge-queue labels.
(GitHubEventHandlerNoEdits.handle_pull_request): Let parent class filter actions, treat
merge-queue label addition as a 'synchronize', but change event name to trigger different
scheduler family.
* CISupport/ews-build/factories.py:
(MergeQueueFactory): Added.
* CISupport/ews-build/factories_unittest.py:
(TestExpectedBuildSteps):
* CISupport/ews-build/loadConfig.py:
(loadBuilderConfig): AnyBranchSchedulers should only accept events which match their name.
* CISupport/ews-build/loadConfig_unittest.py:
(ConfigDotJSONTest): Match pull request scheduler name to pull request event.
2022-03-11 Jonathan Bedard <jbedard@apple.com>
[Merge-Queue] Check for merge-queue labels
https://bugs.webkit.org/show_bug.cgi?id=237690
<rdar://problem/90064892>
Reviewed by Aakash Jain.
* CISupport/ews-build/steps.py:
(GitHubMixin):
(GitHubMixin.get_pr_json): Add retry.
(GitHubMixin._is_pr_in_merge_queue): Check for merge-queue label.
(GitHubMixin.should_send_email_for_pr): get_pr_json now owns logging.
(ValidateChange.__init__): Add verifyMergeQueue flag.
(ValidateChange):
(ValidateChange.start): Add log to indicate PR has a merge-queue flag.
(ValidateChange.validate_github): Add retry when getting PR json, add merge queue check.
* CISupport/ews-build/steps_unittest.py:
2022-03-11 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Add support for -[UITextInput removeEmojiAlternatives] on WKContentView
https://bugs.webkit.org/show_bug.cgi?id=237742
rdar://89647018
Reviewed by Kate Cheney.
Adjust an API test and augment an existing test to exercise `-removeEmojiAlternatives`.
* TestWebKitAPI/Tests/ios/TextAlternatives.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/UIKitSPI.h:
2022-03-11 J Pascoe <j_pascoe@apple.com>
[WebAuthn] Support authenticatorSelection.residentKey ResidentKeyRequirement
https://bugs.webkit.org/show_bug.cgi?id=237567
rdar://89788378
Reviewed by Brent Fulgham and Chris Dumez.
Add API tests for authenticatorSelection.residentKey.
* TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
(TestWebKitAPI::TEST):
2022-03-10 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Add a unit tests to check the remote inspector HTTP server
https://bugs.webkit.org/show_bug.cgi?id=237708
Reviewed by Michael Catanzaro.
Rework the inspector server test to also allow to launch the HTTP server and check it correctly serves the
target list page.
* TestWebKitAPI/Tests/WebKitGtk/InspectorTestServer.cpp:
(main):
* TestWebKitAPI/Tests/WebKitGtk/TestInspectorServer.cpp:
(InspectorHTTPServerTest::setup):
(InspectorHTTPServerTest::teardown):
(testInspectorServerPageList):
(testInspectorHTTPServerPageList):
(beforeAll):
(afterAll):
(stopTestServer): Deleted.
(sigAbortHandler): Deleted.
(connectToInspectorServer): Deleted.
(waitUntilInspectorServerIsReady): Deleted.
(startTestServer): Deleted.
2022-03-10 Peng Liu <peng.liu6@apple.com>
EnterPictureInPictureEvent event was renamed to PictureInPictureEvent in spec
https://bugs.webkit.org/show_bug.cgi?id=221083
Reviewed by Youenn Fablet.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2022-03-10 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Support multiple metadata locations
https://bugs.webkit.org/show_bug.cgi?id=237395
<rdar://problem/89715863>
Reviewed by Dewei Zhu.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py:
(Git): Rename PROJECT_CONFIG_PATH to GIT_CONFIG_EXTENSION.
(Git.config): Use dynamic context.metadata instead of constant.
* Scripts/libraries/webkitscmpy/webkitscmpy/local/scm.py:
(Scm.__init__): Use self.metadata instead of constant.
(Scm.metadata): Support multiple locations for this directory.
* Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:
(Setup.git): Use dynamic repository.metadata instead of constant.
* Scripts/libraries/webkitscmpy/webkitscmpy/test/git_unittest.py:
2022-03-10 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Add support for -[UITextInput addTextAlternatives:] on WKContentView
https://bugs.webkit.org/show_bug.cgi?id=237691
rdar://89647018
Reviewed by Aditya Keerthi.
Add several basic API tests to exercise the new API; in particular, exercise both cases where the text
alternative's primary text matches before the selection, where it does not match, and where it matches inside
the selection.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/ios/TextAlternatives.mm: Added.
(-[TestWKWebView dictationAlternativesMarkerCount:]):
(TestWebKitAPI::createWebViewForTestingTextAlternatives):
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/UIKitSPI.h:
2022-03-10 Elliott Williams <emw@apple.com>
[XCBuild] Fix GeneratedSources dependency validation errors
https://bugs.webkit.org/show_bug.cgi?id=237490
Reviewed by Alexey Proskuryakov.
* Scripts/set-webkit-configuration: Add --validate-dependencies option.
* WebKitTestRunner/DerivedSources-input.xcfilelist: Autogenerated changes.
* WebKitTestRunner/DerivedSources.make: Explicitly depend on preprocessor.pm, which is
imported by other scripts but not listed as a dependency.
2022-03-09 Jonathan Bedard <jbedard@apple.com>
[EWS] Add DEFAULT_BRANCH variable
https://bugs.webkit.org/show_bug.cgi?id=237693
<rdar://problem/90067276>
Reviewed by Aakash Jain.
* CISupport/ews-build/steps.py:
(ShowIdentifier.evaluateCommand):
(CheckOutPullRequest.run):
(CleanGitRepo.__init__):
2022-03-10 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Add initial support for PDF documents using PDF.js
https://bugs.webkit.org/show_bug.cgi?id=237513
Reviewed by Michael Catanzaro.
Add a script to generate the GResource manifest for PDF.js sources.
* glib/generate-pdfjs-gresource-manifest.py: Added.
(get_filenames):
(get_filenames.should_ignore_resource):
(get_filenames.resource_name):
(is_compressible):
* gtk/manifest.txt.in: Add pdfjs to tarballs.
* wpe/manifest.txt.in: Ditto.
2022-03-09 Jonathan Bedard <jbedard@apple.com>
[EWS] Support concept of 'blocked' pull requests
https://bugs.webkit.org/show_bug.cgi?id=237370
<rdar://problem/89689094>
Unreviewed follow-up fix.
Accidently landed change using string literals instead of variables.
* CISupport/ews-build/steps.py:
(GitHubMixin):
(GitHubMixin._is_pr_blocked):
(ValidateChange.validate_github):
(BlockPullRequest.start):
(BlockPullRequest.getResultSummary):
2022-03-09 Lauro Moura <lmoura@igalia.com>
[Tools] Add script to query results database
https://bugs.webkit.org/show_bug.cgi?id=233800
Reviewed by Jonathan Bedard.
This commit adds a script to query https://results.webkit.org for the
history of a testcase for a given bot/config. It includes a
`--only-changes` switch to show only revisions when the actual changed
from the previous one (useful to check when a test started failing).
For now it supports only layout-tests and has GTK/WPE bots predefined,
although full configurations (the query string for results.webkit.org)
can be used to access other bots.
* Scripts/webkit-test-results: Added.
2022-03-09 Lauro Moura <lmoura@igalia.com>
[webkitcorepy] Prefer xdg-open to open in linux
https://bugs.webkit.org/show_bug.cgi?id=237655
Reviewed by Jonathan Bedard.
* Scripts/libraries/webkitcorepy/webkitcorepy/terminal.py:
(Terminal.open_url):
2021-12-07 Zhifei Fang <facetothefate@gmail.com>
[results.webkit.org]Add selection box for results database.
https://bugs.webkit.org/show_bug.cgi?id=233958
Reviewed by Jonathan Bedard.
Allow user can drag a selection box to select multiple dots.
Allow user to use cmd + click to select multiple dots.
Allow user to use shift + click to select a row of dots.
* Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/timeline.js:
(TimelineFromEndpoint):
(TimelineFromEndpoint.prototype.update):
(TimelineFromEndpoint.prototype.getTestResultStatus):
(TimelineFromEndpoint.prototype.getTestResultUrl):
(TimelineFromEndpoint.prototype.render):
* Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/tooltip.js:
* Scripts/libraries/resultsdbpy/resultsdbpy/view/static/library/js/components/TimelineComponents.js:
(pointRectCollisionDetect): Detact if a point and a rect have a insertion.
(rectRectCollisionDetect): Detact if two rects have a insertion.
(XScrollableCanvasProvider): Add selection box.
(xScrollStreamRenderFactory):
(Timeline.CanvasSeriesComponent): Add selection box , cmd + click and shift + click.
(prototype.ExpandableSeriesComponent):
(prototype.Timeline.CanvasContainer):
2022-03-01 Jonathan Bedard <jbedard@apple.com>
[EWS] Support concept of 'blocked' pull requests
https://bugs.webkit.org/show_bug.cgi?id=237370
<rdar://problem/89689094>
Reviewed by Ryan Haddad.
cq- communicates that a change is blocked, either by an engineer or by a failed EWS run.
"changes requested" is not as dramatic as "cq-", so we are adding the concept of a "blocked"
pull request, which has simlar effects to "cq-".
* CISupport/ews-build/steps.py:
(GitHubMixin._is_pr_blocked): Check if a pull request currently has the "blocked" tag.
(GitHubMixin.modify_label): Add or remove a label from a pull request.
(SetCommitQueueMinusFlagOnPatch.hideStepIf): Added.
(BlockPullRequest): Added.
(AnalyzeCompileWebKitResults.analyzeResults): Block PR if failed.
(AnalyzeLayoutTestsResults.report_failure): Ditto.
2022-03-09 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Extract revision from `git svn dcommit` (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=236849
<rdar://problem/89155179>
Unreviewed follow-up fix.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/program/land.py:
(Land.main): Only capture stdout.
2022-03-09 Angelos Oikonomopoulos <angelos@igalia.com>
[JSC] Make runner should only schedule tests on live remotes
https://bugs.webkit.org/show_bug.cgi?id=237030
Reviewed by Adrian Perez de Castro.
The make runner does static scheduling of tests, i.e. it will
assign tests to all known remotes. In practice, this means that
even though the make runner participates in the retry loop, it
will always end up scheduling any tests that failed to run
(e.g. because the remote was down on startup or went away during
testing) on all remotes, including ones that are known to be down.
This patch makes it slightly more robust by introducing a liveness
check (getLiveRemoteHosts) before the static scheduling, i.e.
1. in the initial preparation of the tests to run (prepareArtifacts) and
2. in refreshExecution.
It reuses the command to get the number of processors as the
liveness check (it's a command we know currenly works in all
supported remotes), so flips numberOfProcessors inside-out.
While here, it adds getconf _NPROCESSORS_ONLN as a final attempt
to get the number of processors.
This does not mean that the make runner is now robust against
flaky remotes. At the very least, it's still missing an ssh
timeout (so it won't hang e.g. when hosts go away after the
initial connection is established) and child cleanup (e.g. when
bailing early from one remote in forEachRemote, it needs to kill
all children for other remotes, or we might end up retrying while
the old jobs are still running). But it's getting there.
Q: But isn't the GNU parallel runner much better suited for
handling flaky remotes?
A: Yes. However, the make runner is (somewhat) better at keeping
the remote CPUs busy with "fast" remotes, so we may still want to
use it when the remotes are both fast and stable enough. That
said, it still needs to be able to recover from the occasional
failed remote without producing false test failures.
* Scripts/run-jsc-stress-tests:
* Scripts/webkitruby/jsc-stress-test/executor.rb:
Make remoteHosts available to refreshExecution.
2022-03-08 Jean-Yves Avenard <jya@apple.com>
Have MediaFormatReader plugin use WebMParser directly
https://bugs.webkit.org/show_bug.cgi?id=237594
rdar://89960307
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebCore/SampleMap.cpp:
2022-03-08 John Cunningham <johncunningham@apple.com>
RemoteGraphicsContextGL ReadPixels does not preserve contents for area that is not part of the Framebuffer
https://bugs.webkit.org/show_bug.cgi?id=222410
<rdar://problem/75025951>
Reviewed by Kimmo Kinnunen.
Make a copy of the data buffer passed into readnpixels so that reads outside the framebuffer contain
the expected results, rather than being zero'd.
* Scripts/generate-gpup-webgl:
2022-03-08 Jean-Yves Avenard <jya@apple.com>
Split SourceBufferParserWebM and have platform agnostic WebMParser
https://bugs.webkit.org/show_bug.cgi?id=237472
rdar://problem/89810969
Reviewed by Eric Carlson.
* TestWebKitAPI/Tests/WebCore/SampleMap.cpp: Update following base class definition change.
2022-03-08 Alex Christensen <achristensen@webkit.org>
Remove unused _grantAccessToPreferenceService
https://bugs.webkit.org/show_bug.cgi?id=237623
Reviewed by Per Arne Vollan.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKit/GrantAccessToPreferencesService.mm: Removed.
2022-03-08 Chris Dumez <cdumez@apple.com>
Rename allow-custom-protocols-navigation to allow-top-navigation-to-custom-protocols
https://bugs.webkit.org/show_bug.cgi?id=237605
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
(TEST):
2022-03-08 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Prompt user when GitHub credentials are likely incorrect
https://bugs.webkit.org/show_bug.cgi?id=237450
<rdar://problem/89781069>
Reviewed by Dewei Zhu.
GitHub doesn't make it obvious when credentials are invalid, but our scripts
can make an educated guess when invalid credentials are the root cause.
* Scripts/libraries/webkitbugspy/setup.py: Bump version.
* Scripts/libraries/webkitbugspy/webkitbugspy/__init__.py: Ditto.
* Scripts/libraries/webkitbugspy/webkitbugspy/github.py:
(Tracker): Add REFRESH_TOKEN_PROMPT.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/remote/git_hub.py:
(GitHub.PRGenerator.create):
(GitHub.PRGenerator.update):
(GitHub.request):
* Scripts/libraries/webkitscmpy/webkitscmpy/test/checkout_unittest.py:
(TestCheckout.test_no_pr_github):
2022-03-08 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Set bug tracker usernames from contributors.json
https://bugs.webkit.org/show_bug.cgi?id=237608
<rdar://problem/89971547>
Reviewed by Dewei Zhu.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/local/scm.py:
(Scm.__init__): Set GitHub and bugzilla usernames from contributors.json
2022-03-08 Youenn Fablet <youenn@apple.com>
Add a preference to mute video capture in case audio capture gets interrupted
https://bugs.webkit.org/show_bug.cgi?id=237524
<rdar://78421282>
Reviewed by Eric Carlson.
Add support for interrupt mock microphone devices.
* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
* WebKitTestRunner/InjectedBundle/TestRunner.h:
* WebKitTestRunner/TestController.cpp:
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/TestInvocation.cpp:
2022-03-08 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK][WPE] Do not add new modules under ThirdParty to the tarball
https://bugs.webkit.org/show_bug.cgi?id=237519
Reviewed by Michael Catanzaro.
We currently include ThirdParty and exclude individually what we don't want in the tarball. That means every
time something new is added to ThirdParty we have to manually exclude it. It's better to exclude ThirdParty and
manually add what we need instead.
* gtk/manifest.txt.in:
* wpe/manifest.txt.in:
2022-03-08 Sihui Liu <sihui_liu@apple.com>
Add early return for empty path in makeAllDirectories
https://bugs.webkit.org/show_bug.cgi?id=237540
rdar://89901536
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WTF/FileSystem.cpp:
(TestWebKitAPI::TEST_F):
2022-03-07 David Kilzer <ddkilzer@apple.com>
Fix Release builds for sanitizers by defining RELEASE_WITHOUT_OPTIMIZATIONS
<https://webkit.org/b/237556>
<rdar://problem/89929061>
Reviewed by Kate Cheney.
* sanitizer/sanitizer.xcconfig:
(OTHER_CFLAGS): Add `-DRELEASE_WITHOUT_OPTIMIZATIONS` so Release
builds at lower optimization levels don't fail.
2022-03-07 Jean-Yves Avenard <jya@apple.com>
Add ability to convert FragmentedSharedBuffer to CMBlockBuffer
https://bugs.webkit.org/show_bug.cgi?id=237075
Reviewed by Jer Noble.
* TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
(TestWebKitAPI::TEST_F):
2022-03-07 Jean-Yves Avenard <jya@apple.com>
MediaTime::invalidTime() conversion to CMTime incorrectly creates a valid time.
https://bugs.webkit.org/show_bug.cgi?id=237473
rdar://problem/89814921
Reviewed by Jer Noble.
Fly-by fixes: AVFoundationSoftLinkTest wasn't being compiled
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/cocoa/CoreMediaUtilities.mm: Added.
(TestWebKitAPI::TEST):
2022-03-07 Chris Dumez <cdumez@apple.com>
allow-custom-protocols-navigation sandbox flag.
https://bugs.webkit.org/show_bug.cgi?id=237269
<rdar://problem/89899736>
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
(TEST):
2022-03-07 Jonathan Bedard <jbedard@apple.com>
[iOS] editing/async-clipboard/* 20 tests are flaky timeouts on iOS
https://bugs.webkit.org/show_bug.cgi?id=237372
<rdar://problem/89689914>
Reviewed by Alexey Proskuryakov.
* CISupport/kill-old-processes: Kill "Simulator" process (since killing Simulator.app
won't do anything), shutdown simulators before killing processes. Check that simulators
are shut down before continuing.
2022-03-07 Chris Dumez <cdumez@apple.com>
Optimize the passing of data across threads
https://bugs.webkit.org/show_bug.cgi?id=237502
Reviewed by Geoff Garen.
Expand test coverage for crossThreadCopy() and make sure the optimizations are working
when called on a r-value reference.
* TestWebKitAPI/Tests/WTF/CrossThreadCopier.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WTF/Vector.cpp:
(TestWebKitAPI::TEST):
2022-03-07 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Derive branch name from bug title (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=237284
<rdar://problem/89578241>
Unreviewed follow-up fix.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/test/branch_unittest.py:
(TestBranch.test_basic_svn): Using an integer will attempt to find a bug number.
(TestBranch.test_basic_git): Ditto.
2022-03-07 Jonathan Bedard <jbedard@apple.com>
[webkitbugspy] Allow creation of new issues
https://bugs.webkit.org/show_bug.cgi?id=237123
<rdar://problem/89388181>
Reviewed by Dewei Zhu.
* Scripts/libraries/webkitbugspy/setup.py: Bump version.
* Scripts/libraries/webkitbugspy/webkitbugspy/__init__.py: Ditto.
* Scripts/libraries/webkitbugspy/webkitbugspy/bugzilla.py:
(Tracker.projects): Return a dictionary of projects, components and versions.
(Tracker.create): Create a new bug, prompting user for product, component and version
if needed.
* Scripts/libraries/webkitbugspy/webkitbugspy/github.py:
(Tracker.labels): Return a dictionary of all labels associated with the project.
(Tracker.projects): Return an empty dictionary.
(Tracker.create): Create a new issue.
* Scripts/libraries/webkitbugspy/webkitbugspy/mocks/__init__.py: Export PROJECT data.
* Scripts/libraries/webkitbugspy/webkitbugspy/mocks/base.py:
(Base.__init__): Mock trackers should define a project dictionary.
* Scripts/libraries/webkitbugspy/webkitbugspy/mocks/bugzilla.py:
(Bugzilla.__init__):
(Bugzilla._product_details): Derive product details from project dictionary.
(Bugzilla._create): Create a new bug.
(Bugzilla.request): Handle requests for product details and bug creation.
* Scripts/libraries/webkitbugspy/webkitbugspy/mocks/data.py:
* Scripts/libraries/webkitbugspy/webkitbugspy/mocks/github.py:
(GitHub.__init__):
(GitHub._labels): Return a list of project labels.
(GitHub._create): Create a new issue.
(GitHub.request): Handle requests for labels and issue creation.
* Scripts/libraries/webkitbugspy/webkitbugspy/mocks/radar.py:
(RadarClient.find_components): Mock radarclient's component search API.
(RadarClient.create_radar): Mock radarclient's radar creation API.
(Radar.Component): Added.
(Radar.exceptions): Added.
* Scripts/libraries/webkitbugspy/webkitbugspy/radar.py:
(Tracker):
(Tracker.Encoder.default): Pass 'projects' to radar instances.
(Tracker.__init__): Callers should define projects to limit component scope.
(Tracker.projects): Search radar components to provide a subset relevant to the declared projects.
(Tracker.create): Create a radar, prompting user for component and version if needed.
* Scripts/libraries/webkitbugspy/webkitbugspy/tests/bugzilla_unittest.py:
(TestBugzilla.test_state_why):
(TestBugzilla):
(TestBugzilla.test_projects):
(TestBugzilla.test_create):
(TestBugzilla.test_create_prompt):
* Scripts/libraries/webkitbugspy/webkitbugspy/tests/github_unittest.py:
(TestGitHub.test_state_why):
(TestGitHub):
(TestGitHub.test_labels):
(TestGitHub.test_projects):
(TestGitHub.test_create):
* Scripts/libraries/webkitbugspy/webkitbugspy/tests/radar_unittest.py:
(TestRadar.test_state_why):
(TestRadar):
(TestRadar.test_projects):
(TestRadar.test_create):
(TestRadar.test_create_prompt):
* Scripts/libraries/webkitbugspy/webkitbugspy/tracker.py:
(Tracker.from_json): Pass 'projects' to radar instances.
(Tracker.projects): Add base-class implementation.
(Tracker.create): Ditto.
2022-03-06 Lauro Moura <lmoura@igalia.com>
[Flatpak SDK] Fix key expired treatment with Python3
https://bugs.webkit.org/show_bug.cgi?id=237509
Reviewed by Fujii Hironori.
* flatpak/flatpakutils.py:
(FlatpakObject.flatpak_update):
2022-03-06 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Layer tree can get indefinitely frozen if WKWebView is unparented underneath -[UIWindow dealloc]
https://bugs.webkit.org/show_bug.cgi?id=237505
rdar://85563958
Reviewed by Tim Horton.
Add an API test to exercise the bug. This API test is comprised of the following series of steps:
1. Create the web view and add it under window #1.
2. Post a "did enter background" notification.
3. Deallocate window #1 (thereby unparenting the web view in the process).
4. Post a "will enter foreground" notification.
5. Add the web view under window #2.
6. Load some HTML content and wait for a presentation update.
Before the fix, this test times out because the layer tree is permanently frozen after step (3), due to the
`BackgroundApplication` reason, so the presentation update in step (6) never finishes.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/ios/ApplicationStateTracking.mm: Added.
(TestWebKitAPI::TEST):
2022-03-04 Sihui Liu <sihui_liu@apple.com>
Add null check for path in makeAllDirectories
https://bugs.webkit.org/show_bug.cgi?id=237477
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WTF/FileSystem.cpp:
(TestWebKitAPI::TEST_F):
2022-03-04 Myles C. Maxfield <mmaxfield@apple.com>
[iOS] Books ASSERTs upon opening a book with a debug build of WebKit
https://bugs.webkit.org/show_bug.cgi?id=237445
<rdar://problem/89776531>
Reviewed by Alex Christensen.
* TestWebKitAPI/Tests/WTF/FileSystem.cpp:
(TestWebKitAPI::TEST_F):
2022-03-04 Chris Dumez <cdumez@apple.com>
URL's isolatedCopy() optimization when called on a r-value reference doesn't work
https://bugs.webkit.org/show_bug.cgi?id=237481
Reviewed by Geoffrey Garen.
Add API test coverage.
* TestWebKitAPI/Tests/WTF/URL.cpp:
(TestWebKitAPI::TEST_F):
2022-03-04 Aditya Keerthi <akeerthi@apple.com>
[iOS] Unable to scroll to a found text range when there is an existing selection
https://bugs.webkit.org/show_bug.cgi?id=237407
rdar://89653213
Reviewed by Wenson Hsieh.
Add an API test that sets a selection in the document, finds some
text outside the viewport, and scrolls to make the found text
visible.
* TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
(-[TestScrollViewDelegate init]):
(-[TestScrollViewDelegate scrollViewDidEndScrollingAnimation:]):
(TEST):
2022-03-04 Philippe Normand <pnormand@igalia.com>
[Flatpak SDK] Upgrade from llvm12 to llvm13
https://bugs.webkit.org/show_bug.cgi?id=237430
Reviewed by Adrian Perez de Castro.
* flatpak/flatpakutils.py:
(WebkitFlatpak.run_in_sandbox):
(WebkitFlatpak._get_dependency_packages):
2022-03-03 Ben Nham <nham@apple.com>
Enforce silent push quota
https://bugs.webkit.org/show_bug.cgi?id=236863
Reviewed by Brady Eidson.
Modified existing push tests to show a notification. Added a new test case to make sure that
subscriptions are removed when an origin reaches its quota of silent pushes.
* TestWebKitAPI/TestNotificationProvider.cpp:
(TestWebKitAPI::notificationPermissions):
(TestWebKitAPI::TestNotificationProvider::TestNotificationProvider):
(TestWebKitAPI::TestNotificationProvider::~TestNotificationProvider):
(TestWebKitAPI::TestNotificationProvider::notificationPermissions):
(TestWebKitAPI::TestNotificationProvider::setPermission):
* TestWebKitAPI/Tests/WebCore/PushDatabase.cpp:
(TestWebKitAPI::makeTemporaryDatabasePath):
(TestWebKitAPI::getTopicsSync):
(TestWebKitAPI::PushDatabaseTest::getTopics):
(TestWebKitAPI::PushDatabaseTest::removeRecordsByBundleIdentifierAndSecurityOrigin):
(TestWebKitAPI::PushDatabaseTest::incrementSilentPushCount):
(TestWebKitAPI::operator==):
(TestWebKitAPI::TEST_F):
(TestWebKitAPI::TEST):
* TestWebKitAPI/cocoa/HTTPServer.mm:
(TestWebKitAPI::HTTPServer::origin const):
2022-03-03 Dewei Zhu <dewei_zhu@apple.com>
'run-benchmark' script should log http requests during benchmark run.
https://bugs.webkit.org/show_bug.cgi?id=237076
<rdar://89270825>
Reviewed by Jonathan Bedard.
Relanding 290583 with fix.
Add support to log http requests during benchmark run for diagnostic purpose.
AutoInstall sets 'AUTOINSTALL_CA_CERT_PATH' to environment variables when certificate is specified,
and uses 'AUTOINSTALL_CA_CERT_PATH' when it's present in environment variables. This ensures scripts invoked
from subprocess can use autoinstalled correcctly.
* Scripts/libraries/webkitcorepy/webkitcorepy/autoinstall.py:
(AutoInstall):
(AutoInstall.set_index):
* Scripts/webkitpy/__init__.py: Update 'attr' package version to 20.3.0 so match upgraded twisted version
* Scripts/webkitpy/autoinstalled/twisted.py: Upgrade twisted version to latest python2 & python3 compatibile
version with specified implicit dependencies.
* Scripts/webkitpy/benchmark_runner/benchmark_runner.py: Ensure benchmark diagnostic directory is created.
(BenchmarkRunner.__init__):
* Scripts/webkitpy/benchmark_runner/http_server_driver/http_server/twisted_http_server.py: Add '--log-path'
arugment to allow specify logging output and it defaults to '/tmp/run-benchmark-http.log'
* Scripts/webkitpy/benchmark_runner/http_server_driver/http_server_driver.py:
(HTTPServerDriver.set_device_id):
(HTTPServerDriver):
(HTTPServerDriver.set_http_log):
* Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py: Pass http log path to
twisted http server if specified.
(SimpleHTTPServerDriver.__init__):
(SimpleHTTPServerDriver.serve):
(SimpleHTTPServerDriver.set_http_log):
* Scripts/webkitpy/benchmark_runner/run_benchmark.py: Fix a tiny bug that default_diagnose_dir() is involked twice in
argument parser help message.
(config_argument_parser):
* Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py: Set http request log path if diagnostic directory
is specified.
(WebServerBenchmarkRunner.__init__):
2022-03-03 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Handle new PR with old branch name
https://bugs.webkit.org/show_bug.cgi?id=237457
<rdar://problem/89788939>
Reviewed by Dewei Zhu.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/program/pull_request.py:
(PullRequest.main):
2022-03-03 Sihui Liu <sihui_liu@apple.com>
Text manipulation does not observe updated title element
https://bugs.webkit.org/show_bug.cgi?id=237435
rdar://87318842
Reviewed by Wenson Hsieh.
* TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TestWebKitAPI::TEST):
2022-03-03 Lauro Moura <lmoura@igalia.com>
[Python3] Switch a few more glib scripts to Python3
https://bugs.webkit.org/show_bug.cgi?id=237442
Reviewed by Adrian Perez de Castro.
* Scripts/check-for-global-bss-symbols-in-webkitgtk-libs: Update
shebang.
(bss_symbols): Decode Popen bytes output.
* gtk/jhbuildrc: Update shebang.
* gtk/ycm_extra_conf.py: Ditto.
* jhbuild/jhbuild-wrapper: Ditto.
(jhbuild_at_expected_revision): Decode Popen bytes output.
* jhbuild/jhbuildrc_common.py: Remove uneeded shebang.
* wpe/jhbuildrc: Update shebang.
2022-03-03 Jonathan Bedard <jbedard@apple.com>
[webkitcorepy] Disable prompt when saving credentials
https://bugs.webkit.org/show_bug.cgi?id=237438
<rdar://problem/89764417>
Reviewed by Aakash Jain.
* Scripts/libraries/webkitbugspy/setup.py: Bump version.
* Scripts/libraries/webkitbugspy/webkitbugspy/__init__.py: Ditto.
* Scripts/libraries/webkitbugspy/webkitbugspy/github.py:
(Tracker.credentials): Pass 'save' to webkitcorepy.credentials.
* Scripts/libraries/webkitcorepy/setup.py: Bump version.
* Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto.
* Scripts/libraries/webkitcorepy/webkitcorepy/credentials.py:
(credentials): Unless caller explicitly disables saving, assume that all credentials
should be saved to a system's keyring.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:
(Setup.github): Automatically save any prompted credentials.
(Setup.git): Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/remote/git_hub.py:
(GitHub.credentials): Pass 'save' to github.Tracker.credentials.
2022-03-03 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Open pre-populated GitHub page for new tokens
https://bugs.webkit.org/show_bug.cgi?id=237436
<rdar://problem/89763053>
Reviewed by Ryan Haddad.
GitHub gives us a way to pre-populate its token generation web page. We should
open this page with appropriate arguments during setup.
* Scripts/libraries/webkitbugspy/setup.py: Bump version.
* Scripts/libraries/webkitbugspy/webkitbugspy/__init__.py: Ditto.
* Scripts/libraries/webkitbugspy/webkitbugspy/github.py:
(Tracker.credentials): Make 'prompt' into a function, allowing us to open a url
and change the prompt based on the success of opening the url.
* Scripts/libraries/webkitcorepy/setup.py: Bump version.
* Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto.
* Scripts/libraries/webkitcorepy/webkitcorepy/credentials.py:
(credentials): Allow 'prompt' to be callable.
2022-03-03 Lauro Moura <lmoura@igalia.com>
[build.webkit.org] Add GTK queue using clang
https://bugs.webkit.org/show_bug.cgi?id=229637
Reviewed by Michael Catanzaro.
This commit adds a specific queue to build with clang in place of GCC.
It will help cover both toolchains and catch bugs and warnings
that happen to be raised by/to affect only clang.
Initially, it'll be a build-only queue, moving to a complete build and
tester in the future. It'll use clang-12, the version available in the
current SDK used by GTK and WPE.
* CISupport/build-webkit-org/config.json:
* CISupport/build-webkit-org/factories_unittest.py:
(TestExpectedBuildSteps):
2022-03-03 Myles C. Maxfield <mmaxfield@apple.com>
[Style] Forbid spaces between type names and protocol names in Objective-C
https://bugs.webkit.org/show_bug.cgi?id=237406
Reviewed by Darin Adler.
According to https://lists.webkit.org/pipermail/webkit-dev/2022-February/032130.html.
Because the style checker uses regexes, we don't know what's a type name and what's
a protocol name, so the checker simplifies the problem and just checks for "id <".
* Scripts/webkitpy/style/checkers/cpp.py:
(check_objc_protocol):
(check_style):
2022-03-03 Jonathan Bedard <jbedard@apple.com>
[Python-3] Invoke webkit-patch with Python 3 by default (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=231591
<rdar://problem/84153640>
Unreviewed follow-up fix.
* Scripts/webkitpy/tool/commands/download.py:
(AbstractRevertPrepCommand._prepare_state): Reason may be spread accross multiple arguments.
* Scripts/webkitpy/tool/commands/download_unittest.py:
2022-03-03 Philippe Normand <pnormand@igalia.com>
[Python3] Switch a couple glib/flatpak scripts to Python3
https://bugs.webkit.org/show_bug.cgi?id=237377
Reviewed by Carlos Garcia Campos.
* Scripts/update-webkit-flatpak: Update shebang to Python3.
* Scripts/webkit-flatpak: Ditto.
* glib/api_test_runner.py: Ditto.
* glib/common.py: Remove useless shebang.
* glib/generate-inspector-gresource-manifest.py: Update shebang to Python3.
* glib/svn-revision: Ditto.
2022-03-02 Lauro Moura <lmoura@igalia.com>
[Tools] Fix linux_get_crash_log.py error logging with python3
https://bugs.webkit.org/show_bug.cgi?id=237404
Reviewed by Fujii Hironori.
Avoid issues generating error logs after 247736@main defaulted to
python3.
* Scripts/webkitpy/port/linux_get_crash_log.py:
(GDBCrashLogGenerator._get_gdb_output): Encode returncode before
appending to bytes.
2022-03-02 Jonathan Bedard <jbedard@apple.com>
[webkitcorepy] Add Terminal.open_url
https://bugs.webkit.org/show_bug.cgi?id=237386
<rdar://problem/89703756>
Reviewed by Don Olmstead.
Different platforms have different commands to open URLs.
* Scripts/libraries/webkitcorepy/setup.py: Bump version.
* Scripts/libraries/webkitcorepy/webkitcorepy/__init__.py: Ditto.
* Scripts/libraries/webkitcorepy/webkitcorepy/terminal.py:
(Terminal): Add list of valid URL prefixes.
(Terminal.open_url): If terminal is interactive, open the provided URL.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:
(Setup.main): Invoke Terminal.open_url.
2022-03-02 Chris Dumez <cdumez@apple.com>
Unreviewed, address post-landing feedback from Darin on r290743
* WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseMoveTo):
2022-03-02 Jonathan Bedard <jbedard@apple.com>
[Python-3] Invoke webkit-patch with Python 3 by default
https://bugs.webkit.org/show_bug.cgi?id=231591
<rdar://problem/84153640>
Reviewed by Ryan Haddad.
* Scripts/webkit-patch: Change shebang to Python 3.
2022-03-02 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Derive branch name from bug title
https://bugs.webkit.org/show_bug.cgi?id=237284
<rdar://problem/89578241 >
Reviewed by Dewei Zhu.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/program/branch.py:
(Branch.to_branch_name): Convert string (particularly a bug title) to potential branch name.
(Branch.main): If provided branch name is actually a bug number or URL, use the title
of that bug as the branch name.
* Scripts/libraries/webkitscmpy/webkitscmpy/test/branch_unittest.py:
(TestBranch):
(TestBranch.test_prompt_git):
(TestBranch.test_prompt_number):
(TestBranch.test_prompt_url):
(TestBranch.test_invalid_branch):
(TestBranch.test_to_branch_name):
2022-03-02 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Sync personal fork by default
https://bugs.webkit.org/show_bug.cgi?id=237324
<rdar://problem/89618617>
Reviewed by Dewei Zhu.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py:
(Git): Add new webkitscmpy.update-fork option.
* Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py:
* Scripts/libraries/webkitscmpy/webkitscmpy/program/pull_request.py:
(PullRequest.main): If we are rebasing the source branch, we should push that synced branch
to a user's personal fork, if such a fork exists.
* Scripts/libraries/webkitscmpy/webkitscmpy/test/pull_request_unittest.py:
2022-03-02 Chris Dumez <cdumez@apple.com>
Mousemove events double-firing in Safari
https://bugs.webkit.org/show_bug.cgi?id=237342
<rdar://88025610>
Reviewed by Wenson Hsieh.
Call [WKWebView _simulateMouseMove:] SPI instead of calling [WKWebView mouseMoved:]
since the latter calls are now being ignored.
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestWKWebView mouseMoveToPoint:withFlags:]):
* TestWebKitAPI/mac/PlatformWebViewMac.mm:
(TestWebKitAPI::PlatformWebView::simulateMouseMove):
* WebKitTestRunner/mac/EventSenderProxy.mm:
(WTR::EventSenderProxy::mouseMoveTo):
2022-03-02 Sihui Liu <sihui_liu@apple.com>
Add assertion that no two sessions share the same general storage directory
https://bugs.webkit.org/show_bug.cgi?id=236844
<rdar://problem/89178566>
Reviewed by Chris Dumez.
Update the tests where two WebsiteDataStores are created with the same general storage directory.
* TestWebKitAPI/Tests/WebKitCocoa/PrivateClickMeasurement.mm:
(emptyObservationsDBPath):
(emptyPcmDBPath):
(cleanUp):
* TestWebKitAPI/Tests/WebKitCocoa/PushAPI.mm:
* TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
(TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WebPushDaemon.mm:
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(runWebsiteDataStoreCustomPaths):
2022-03-02 Sihui Liu <sihui_liu@apple.com>
Add test coverage for deleting FileSystem data when file is being written
https://bugs.webkit.org/show_bug.cgi?id=237353
Reviewed by Chris Dumez.
Verify that file can be removed from disk, and active FileSystemSyncAccessHandle is invalidated in this case.
* TestWebKitAPI/Tests/WebKitCocoa/FileSystemAccess.mm:
2022-03-02 Alex Christensen <achristensen@webkit.org>
Add SPI _WKDataTask
https://bugs.webkit.org/show_bug.cgi?id=237234
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/NetworkProcess.mm:
(-[TestDataTaskDelegate dataTask:didReceiveAuthenticationChallenge:completionHandler:]):
(-[TestDataTaskDelegate dataTask:didReceiveResponse:decisionHandler:]):
(-[TestDataTaskDelegate dataTask:didReceiveData:]):
(-[TestDataTaskDelegate dataTask:didCompleteWithError:]):
(TEST):
2022-03-01 Wenson Hsieh <wenson_hsieh@apple.com>
Clipboard Paste dialog doesn't show on external monitors
https://bugs.webkit.org/show_bug.cgi?id=236395
rdar://88943577
Reviewed by Tim Horton.
Adjust the swizzled implementation of `-popUpContextMenu:withEvent:forView:` to additionally verify that the
NSEvent we're presenting the menu with isn't `nil`.
* WebKitTestRunner/mac/TestControllerMac.mm:
(WTR::swizzledPopUpContextMenu):
2022-03-01 Fujii Hironori <Hironori.Fujii@sony.com>
WTF::SentinelLinkedList::iterator should have operator++ for range-for loop
https://bugs.webkit.org/show_bug.cgi?id=237265
Reviewed by Yusuke Suzuki.
* TestWebKitAPI/Tests/WTF/SentinelLinkedList.cpp:
(TestWebKitAPI::TEST):
2022-03-01 Fujii Hironori <Hironori.Fujii@sony.com>
[WinCairo][pywebsocket3] UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 640: character maps to <undefined>
https://bugs.webkit.org/show_bug.cgi?id=237339
Reviewed by Jonathan Bedard.
After r290580 started to use pywebsocket3 and Python 3, Windows
Python couldn't start WebSocket server due to UnicodeDecodeError.
* Scripts/webkitpy/port/win.py:
(WinPort.setup_environ_for_server): Added PYTHONUTF8 environment variable.
2022-03-01 Andres Gonzalez <andresg_22@apple.com>
Make accessibility/aria-hidden-false-works-in-subtrees.html async to pass in isolated tree mode.
https://bugs.webkit.org/show_bug.cgi?id=237051
<rdar://problem/89312156>
Reviewed by Chris Fleizach.
* WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
(WTR::AccessibilityController::accessibleElementById):
Convert the JSStringRef to NSString on the main thread and capture the
NSString to be used on the AX secondary thread. This may be safer since
JSStringRefs are supposed to be used on the main thread.
2022-03-01 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Gate information URL on initial setup
https://bugs.webkit.org/show_bug.cgi?id=237325
<rdar://problem/89620175>
Reviewed by Aakash Jain.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:
(Setup.main): Offer to open documentation URL if repository has not been setup.
* Scripts/libraries/webkitscmpy/webkitscmpy/test/setup_unittest.py:
(TestSetup.test_github):
2022-03-01 J Pascoe <j_pascoe@apple.com>
REGRESSION(r290539-r290538): [ iOS ] 3 TestWebKitAPI.WebAuthenticationPanel.* tests are constantly failing/crashing.
https://bugs.webkit.org/show_bug.cgi?id=237285
rdar://problem/89579460
Reviewed by Brent Fulgham.
Remove obsolete API test and ensure another has clean state.
* TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST):
2022-03-01 Commit Queue <commit-queue@webkit.org>
Unreviewed, reverting r290325.
https://bugs.webkit.org/show_bug.cgi?id=237326
Broken patch
Reverted changeset:
"[GStreamer] Switch media player to playbin3"
https://bugs.webkit.org/show_bug.cgi?id=236884
https://commits.webkit.org/r290325
2022-03-01 Angelos Oikonomopoulos <angelos@igalia.com>
[JSC] Implement chunking for the GNU parallel runner
https://bugs.webkit.org/show_bug.cgi?id=237028
Reviewed by Adrian Perez de Castro.
The GNU parallel runner can't keep up with the scheduling when using
multiple fast remotes. This results in poor CPU utilization on the
remotes and more waiting time.
As a quick fix, allow the user to specify a --gnu-parallel-chunk-size,
the value of which specifies the number of test jobs to schedule as a
unit (defaults to 1). Specifying a higher value means longer-running
jobs, so that GNU parallel can more efficiently schedule them.
* Scripts/run-javascriptcore-tests:
(runJSCStressTests):
* Scripts/run-jsc-stress-tests:
2022-03-01 Sihui Liu <sihui_liu@apple.com>
Migrate third-party IndexedDB data to GeneralStorageDirectory
https://bugs.webkit.org/show_bug.cgi?id=237283
Reviewed by Chris Dumez.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
* TestWebKitAPI/Tests/WebKitCocoa/indexeddb-persistence-third-party.sqlite3: Added.
2022-02-28 Simon Fraser <simon.fraser@apple.com>
No animation when scroll snap scroller is navigated with the keyboard
https://bugs.webkit.org/show_bug.cgi?id=236244
Reviewed by Tim Horton.
In fixing this bug I ran into the issue predicted in https://bugs.webkit.org/show_bug.cgi?id=234456#c6.
As a workaround, explicitly set NSScrollAnimationEnabled to NO in both processes. This is a partial revert
of r287228 which I tried, and failed to fix via bug 234488.
* WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
(WTR::InjectedBundle::platformInitialize):
* WebKitTestRunner/mac/main.mm:
(setDefaultsToConsistentValuesForTesting):
2022-02-28 Wenson Hsieh <wenson_hsieh@apple.com>
Add API testing infrastructure for "Markup Image" and "Copy Cropped Image"
https://bugs.webkit.org/show_bug.cgi?id=236519
rdar://89154213
Reviewed by Tim Horton.
Add API testing support (as well as a new API test) for the "Markup Image" flow.
* TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:
(TestWebKitAPI::TEST):
(TestWebKitAPI::invokeImageMarkupAction):
* TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm:
Add an API test that triggers the "Markup Image" action, and verifies the following:
- The first image is replaced with the canned image result (a 215-px-wide image of the WebKit logo).
- The selection range is effectively unchanged.
* TestWebKitAPI/cocoa/ImageAnalysisTestingUtilities.h:
* TestWebKitAPI/cocoa/ImageAnalysisTestingUtilities.mm:
Add a declaration for ImageAnalysisMarkupSwizzler, a helper class that is used in the new API test to make
VisionKit return a canned image and cropped rect when invoking the SPI that corresponds to "Markup Image"; see
WebKitAdditions change for more information.
* TestWebKitAPI/cocoa/TestWKWebView.h:
* TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[WKWebView selectedText]):
* TestWebKitAPI/ios/TestUIMenuBuilder.h:
* TestWebKitAPI/ios/TestUIMenuBuilder.mm:
(-[TestUIMenuBuilder actionWithTitle:]):
Refactor and rename this to return the found UIAction instead of just a BOOL indicating whether or not it could
be found, and change existing call sites above to use `EXPECT_NULL` and `EXPECT_NOT_NULL`.
(-[TestUIMenuBuilder containsActionWithTitle:]): Deleted.
* TestWebKitAPI/ios/UIKitSPI.h:
2022-02-28 Christopher Reid <chris.reid@sony.com>
[Win] vswhere should search for Visual Studio Build tools
https://bugs.webkit.org/show_bug.cgi?id=237229
Reviewed by Ross Kirsling.
* Scripts/webkitdirs.pm:
2022-02-28 Angelos Oikonomopoulos <angelos@igalia.com>
[webkit-patch] Allow user to opt out of browser for viewing the diff
https://bugs.webkit.org/show_bug.cgi?id=220925
Reviewed by Jonathan Bedard.
The user may legitimately have a browser installed yet not want to
use it to view the diff.
* Scripts/webkitpy/common/system/user.py:
(User.can_open_url):
2022-02-28 Jonathan Bedard <jbedard@apple.com>
Unreviewed, reverting r290583.
Breaks webkit-patch
Reverted changeset:
"'run-benchmark' script should log http requests during
benchmark run."
https://bugs.webkit.org/show_bug.cgi?id=237076
https://commits.webkit.org/r290583
2022-02-28 Pascal Abresch <nep@packageloss.eu>
Enable python3 for lighttpd
https://bugs.webkit.org/show_bug.cgi?id=236938
Reviewed by Darin Adler.
This is needed for the Haiku port to use the python3 tests.
This patch also removes the PHP support since all PHP tests have been removed and there are
currently no plans to include new ones in the future.
* Scripts/webkitpy/layout_tests/servers/http_server.py:
(Lighttpd._prepare_config):
* Scripts/webkitpy/layout_tests/servers/lighttpd.conf:
2022-02-22 Jonathan Bedard <jbedard@apple.com>
[run-webkit-tests] Use Python 3 (Part 3)
https://bugs.webkit.org/show_bug.cgi?id=226658
<rdar://problem/78882016 >
Reviewed by Ryan Haddad.
* CISupport/ews-build/steps.py:
(RunWebKitTests): Change invocation to Python 3.
* CISupport/ews-build/steps_unittest.py:
(test_success):
(test_warnings):
2022-02-27 Dewei Zhu <dewei_zhu@apple.com>
'run-benchmark' script should log http requests during benchmark run.
https://bugs.webkit.org/show_bug.cgi?id=237076
<rdar://89270825>
Reviewed by Simon Fraser.
Add support to log http requests during benchmark run for diagnostic purpose.
* Scripts/webkitpy/__init__.py: Update 'attr' package version to 20.3.0 so match upgraded twisted version
* Scripts/webkitpy/autoinstalled/twisted.py: Upgrade twisted version to latest python2 & python3 compatibile
version.
* Scripts/webkitpy/benchmark_runner/benchmark_runner.py: Ensure benchmark diagnostic directory is created.
(BenchmarkRunner.__init__):
* Scripts/webkitpy/benchmark_runner/http_server_driver/http_server/twisted_http_server.py: Add '--log-path'
arugment to allow specify logging output and it defaults to '/tmp/run-benchmark-http.log'
* Scripts/webkitpy/benchmark_runner/http_server_driver/http_server_driver.py:
(HTTPServerDriver.set_device_id):
(HTTPServerDriver):
(HTTPServerDriver.set_http_log):
* Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py: Pass http log path to
twisted http server if specified.
(SimpleHTTPServerDriver.__init__):
(SimpleHTTPServerDriver.serve):
(SimpleHTTPServerDriver.set_http_log):
* Scripts/webkitpy/benchmark_runner/run_benchmark.py: Fix a tiny bug that default_diagnose_dir() is involked twice in
argument parser help message.
(config_argument_parser):
* Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py: Set http request log path if diagnostic directory
is specified.
(WebServerBenchmarkRunner.__init__):
2022-02-27 Jonathan Bedard <jbedard@apple.com>
webkitpy: WebSocket server doesn't support Python 3
https://bugs.webkit.org/show_bug.cgi?id=230319
<rdar://problem/58814743>
Reviewed by Fujii Hironori.
* Scripts/new-run-webkit-websocketserver: Change shebang.
* Scripts/webkitpy/layout_tests/servers/websocket_server.py:
(PyWebSocket._prepare_config): Invoke WebSocket server with Python 3.
2022-02-27 Chris Dumez <cdumez@apple.com>
Omit template parameter for SetForScope<> variables
https://bugs.webkit.org/show_bug.cgi?id=237258
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WTF/SetForScope.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/WKInspectorDelegate.mm:
(TEST):
* TestWebKitAPI/mac/TestFontOptions.mm:
(-[TestFontOptions setShadowWidth:]):
(-[TestFontOptions setShadowHeight:]):
(-[TestFontOptions setShadowBlurRadius:]):
(-[TestFontOptions setHasShadow:]):
(-[TestFontOptions setForegroundColor:]):
(-[TestFontOptions setBackgroundColor:]):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetStateToConsistentValues):
(WTR::TestController::reattachPageToWebProcess):
2022-02-27 Chris Dumez <cdumez@apple.com>
Call WKNavigationDelegate.didFailProvisionalNavigation even after a cross-origin navigation with COOP
https://bugs.webkit.org/show_bug.cgi?id=237071
<rdar://problem/89354367>
Reviewed by Darin Adler.
Add API test coverage (Test was written by Alex Christensen).
* TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
(TEST):
2022-02-25 Sihui Liu <sihui_liu@apple.com>
[macOS] TestWebKitAPI.WebKit.MigrateLocalStorageDataToGeneralStorageDirectory is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=237065
<rdar://problem/89324250>
Reviewed by Alexey Proskuryakov.
* TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
(TEST):
2022-02-25 Wenson Hsieh <wenson_hsieh@apple.com>
Adjust -[WKContentView _requiresKeyboardWhenFirstResponder] to account for editable web views
https://bugs.webkit.org/show_bug.cgi?id=237226
rdar://89447095
Reviewed by Aditya Keerthi.
Add an API test to exercise the change. This new API test is comprised of 3 parts:
- Verify that `-_requiresKeyboardWhenFirstResponder` is NO after loading the page.
- Verify that `-_requiresKeyboardWhenFirstResponder` becomes YES after making the web view editable.
- Verify that `-_requiresKeyboardWhenFirstResponder` is NO again after focusing a readonly input inside the
now-editable web view.
* TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/ios/UIKitSPI.h:
2022-02-25 J Pascoe <j_pascoe@apple.com>
[WebAuthn] Fallback to attestation=none whenever attestation fails
https://bugs.webkit.org/show_bug.cgi?id=237223
rdar://88767812
Reviewed by Brent Fulgham.
Add test for local authenticator attestation fallback behavior.
* TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST):
2022-02-25 Brent Fulgham <bfulgham@apple.com>
WebKit continues to render PDF images in Captive Portal mode
https://bugs.webkit.org/show_bug.cgi?id=237120
<rdar://problem/89384234>
Reviewed by Chris Dumez.
WebKit should handle all PDF processing in PDF.JS when in Captive Portal mode. However, testing
revealed that PDF images are still rendered natively. As a first step we should bypass the
native PDF code path. A subsequent patch will handle in PDF.JS.
We need to thread the state of the Captive Portal setting through the image loading code so that
WebKit knows to bail out before consuming the PDF data in the native decoder.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/CaptivePortalPDF.html: Added.
* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
(-[CaptivePortalMessageHandler userContentController:didReceiveScriptMessage:]): Add new test case.
* TestWebKitAPI/Tests/WebKitCocoa/webkit-logo.pdf: Added.
2022-02-25 Sihui Liu <sihui_liu@apple.com>
Regression(r242729): m_origin in IDBDatabaseIdentifier is incorrect
https://bugs.webkit.org/show_bug.cgi?id=237044
Reviewed by Youenn Fablet.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
(-[IndexedDBMessageHandler userContentController:didReceiveScriptMessage:]):
(TEST):
2022-02-25 Alex Christensen <achristensen@webkit.org>
Re-add YouTubePluginReplacement, removed in r285252
https://bugs.webkit.org/show_bug.cgi?id=237182
Reviewed by Chris Dumez.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebCore/YouTubePluginReplacement.cpp:
2022-02-24 Jonathan Bedard <jbedard@apple.com>
[Python 3] Invoke validate-committer-lists with Python 3
https://bugs.webkit.org/show_bug.cgi?id=237171
<rdar://problem/89449485>
Reviewed by Alexey Proskuryakov.
* Scripts/validate-committer-lists:
(CommitterListFromMailingList): Use https urls.
(CommitterListFromMailingList._fetch_authors_and_last_commit_time_from_git_log):
Handle commits in the canonical repository.
(CommitterListFromGit.possibly_expired_committers): Use Python 3 sorting idioms.
(CommitterListFromGit.possibly_inactive_reviewers): Declare process encoding.
(CommitterListFromGit.print_possibly_expired_committers): Committers which are not in
contributors.json or are only contributors cannot have expired committer status.
(CommitterListFromGit.print_possibly_inactive_reviewers): String already utf-8.
(CommitterListFromGit.print_committers_missing_from_committer_list): Check contributors,
not committers.
* Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
(BugzillaQueries.fetch_bugs_matching_quicksearch): Make urllib.quote invocations Python 3 compatible.
(BugzillaQueries.fetch_bugs_matching_search): Ditto.
(BugzillaQueries.fetch_bugs_from_review_queue): Ditto.
(BugzillaQueries.fetch_login_userid_pairs_matching_substring): Ditto.
(BugzillaQueries.is_invalid_bugzilla_email): Ditto.
2022-02-25 Kimmo Kinnunen <kkinnunen@apple.com>
REGRESSION(r289580): [ iOS macOS ] TestWebKitAPI.IPCTestingAPI.CanReceiveSharedMemory is a constant timeout
https://bugs.webkit.org/show_bug.cgi?id=236744
Reviewed by Antti Koivisto.
* TestWebKitAPI/Tests/WebKitCocoa/IPCTestingAPI.mm:
2022-02-25 Carlos Garcia Campos <cgarcia@igalia.com>
AX: List item marker not exposed when not a direct child of a list item
https://bugs.webkit.org/show_bug.cgi?id=236777
<rdar://problem/89082485>
Reviewed by Adrian Perez de Castro.
* WebKitTestRunner/InjectedBundle/atspi/AccessibilityUIElementAtspi.cpp:
(WTR::roleValueToString): Return AXStatic for Text role too.
2022-02-24 Alex Christensen <achristensen@webkit.org>
Unreviewed, reverting r290371.
Caused assertion
Reverted changeset:
"Call WKNavigationDelegate.didFailProvisionalNavigation even
after a cross-origin navigation with COOP"
https://bugs.webkit.org/show_bug.cgi?id=237071
https://commits.webkit.org/r290371
2022-02-24 Aditya Keerthi <akeerthi@apple.com>
[iOS] Add support for replacing WKFoundTextRanges
https://bugs.webkit.org/show_bug.cgi?id=237151
rdar://89258687
Reviewed by Wenson Hsieh.
Add a test that replaces found ranges.
* TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
(TEST):
2022-02-24 Jonathan Bedard <jbedard@apple.com>
[Python3] Remove shebangs from webkitpy files
https://bugs.webkit.org/show_bug.cgi?id=237167
<rdar://problem/89444955>
Reviewed by Dewei Zhu.
* Scripts/webkitpy/browserperfdash/browserperfdash_runner.py: Remove shebang.
* Scripts/webkitpy/browserperfdash/browserperfdash_unittest.py: Ditto.
* Scripts/webkitpy/common/attribute_saver.py: Ditto.
* Scripts/webkitpy/common/attribute_saver_unittest.py: Ditto.
* Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py: Ditto.
* Scripts/webkitpy/common/net/bugzilla/test_expectation_updater_unittest.py: Ditto.
* Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py: Ditto.
* Scripts/webkitpy/layout_tests/views/buildbot_results.py: Ditto.
* Scripts/webkitpy/w3c/test_converter.py: Ditto.
* Scripts/webkitpy/w3c/test_importer.py: Ditto.
* Scripts/webkitpy/w3c/test_parser.py: Ditto.
* Scripts/webkitpy/xcode/sdk.py: Ditto.
* Scripts/webkitpy/xcode/sdk_unittest.py: Ditto.
2022-02-24 Jonathan Bedard <jbedard@apple.com>
[Python3] Change shebang for various scripts
https://bugs.webkit.org/show_bug.cgi?id=237155
<rdar://problem/89436097>
Reviewed by Ryan Haddad.
* Scripts/lint-webkitpy: Change shebang to Python 3.
* Scripts/open-layout-test: Ditto.
* Scripts/run-imagediff: Ditto.
* Scripts/run-minibrowser: Ditto.
* Scripts/run-webkit-httpd: Ditto.
* Scripts/test-webkit-scripts: Ditto.
2022-02-24 Jonathan Bedard <jbedard@apple.com>
[Python3] Make report-non-inclusive-language Python 3 compatible
https://bugs.webkit.org/show_bug.cgi?id=237154
<rdar://problem/89434987>
Reviewed by Aakash Jain.
* Scripts/report-non-inclusive-language: Make Python 3 compatible.
2022-02-24 Jonathan Bedard <jbedard@apple.com>
[Python3] Migrate Tools/CISupport to Python3
https://bugs.webkit.org/show_bug.cgi?id=237148
<rdar://problem/89430395>
Reviewed by Aakash Jain.
* CISupport/build-webkit-org/committer_auth_unittest_old.py: Removed.
* CISupport/build-webkit-org/loadConfig_unittest.py: Change shebang to Python 3.
* CISupport/build-webkit-org/make_passwords_json.py: Change shebang to Python 3,
make Python 3 compatible.
* CISupport/ews-build/email_unittest.py: Change shebang to Python 3.
* CISupport/ews-build/loadConfig_unittest.py: Ditto.
* CISupport/win/kill-old-processes: Ditto.
2022-02-24 Wenson Hsieh <wenson_hsieh@apple.com>
Refactor logic for showing "Markup Image" and Quick Note items in the callout bar
https://bugs.webkit.org/show_bug.cgi?id=237127
rdar://89396617
Reviewed by Megan Gardner.
Adjust a couple of existing API tests. See comments below.
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
* TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:
Refactor ImageAnalysisTests.MenuControllerItems to exercise `-buildMenuWithBuilder:` instead of swizzling
UIMenuController methods and checking `-menuItems`.
(TestWebKitAPI::swizzledSetMenuItems): Deleted.
(): Deleted.
* TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm:
Refactor WebKit.AppHighlightsInImageOverlays to exercise `-buildMenuWithBuilder:` instead of passing in actions
to `-targetForAction:withSender:`.
* TestWebKitAPI/ios/TestUIMenuBuilder.h: Added.
* TestWebKitAPI/ios/TestUIMenuBuilder.mm: Added.
Add a helper class that conforms to UIMenuBuilder. This is used in the two API tests above as an argument to
`-buildMenuWithBuilder:` in order to collect additional menu items that WKWebView adds to the callout bar.
(-[TestUIMenuBuilder init]):
(-[TestUIMenuBuilder system]):
(-[TestUIMenuBuilder menuForIdentifier:]):
(-[TestUIMenuBuilder findMatching:]):
(-[TestUIMenuBuilder containsActionWithTitle:]):
(-[TestUIMenuBuilder reset]):
(-[TestUIMenuBuilder actionForIdentifier:]):
(-[TestUIMenuBuilder commandForAction:propertyList:]):
(-[TestUIMenuBuilder replaceMenuForIdentifier:withMenu:]):
(-[TestUIMenuBuilder replaceChildrenOfMenuForIdentifier:fromChildrenBlock:]):
(-[TestUIMenuBuilder insertChildMenu:atStartOfMenuForIdentifier:]):
(-[TestUIMenuBuilder insertChildMenu:atEndOfMenuForIdentifier:]):
(-[TestUIMenuBuilder removeMenuForIdentifier:]):
(-[TestUIMenuBuilder insertSiblingMenu:beforeMenuForIdentifier:]):
(-[TestUIMenuBuilder insertSiblingMenu:afterMenuForIdentifier:]):
(-[TestUIMenuBuilder registerMenu:]):
2022-02-24 Jonathan Bedard <jbedard@apple.com>
[Python3] Convert shebangs in generate_xcfilelists_lib
https://bugs.webkit.org/show_bug.cgi?id=237147
<rdar://problem/89427981>
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/generate_xcfilelists_lib/__init__.py: Change shebang to Python 3.
* Scripts/webkitpy/generate_xcfilelists_lib/application.py: Ditto.
* Scripts/webkitpy/generate_xcfilelists_lib/generators.py: Ditto.
* Scripts/webkitpy/generate_xcfilelists_lib/util.py: Ditto.
2022-02-24 Devin Rousso <drousso@apple.com>
[MacCatalyst] REGRESSION(r290091): sometimes can crash if `WKWebView` is deallocated before the next visible content rect update
https://bugs.webkit.org/show_bug.cgi?id=237126
<rdar://problem/89345853>
Reviewed by Tim Horton.
* TestWebKitAPI/Tests/WebKitCocoa/WKWebViewResize.mm: Added.
(TEST.WKWebViewResize.DoesNotAssertInDeallocAfterChangingFrame):
(TEST.WKWebViewResize.DoesNotAssertInDeallocAfterChangingBounds):
* TestWebKitAPI/SourcesCocoa.txt:
* TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2022-02-24 J Pascoe <j_pascoe@apple.com>
Add myself (John Pascoe) to watchlist for authentication and WebCrypto
https://bugs.webkit.org/show_bug.cgi?id=237121
rdar://problem/89385797
Reviewed by Alexey Proskuryakov.
* Scripts/webkitpy/common/config/watchlist:
2022-02-22 Jonathan Bedard <jbedard@apple.com>
[run-webkit-tests] Use Python 3 (Part 2)
https://bugs.webkit.org/show_bug.cgi?id=226658
<rdar://problem/78882016>
Reviewed by Ryan Haddad.
* Scripts/run-webkit-tests: Change shebang to Python 3.
2022-02-24 Kimmo Kinnunen <kkinnunen@apple.com>
Thread safety analysis to assert "code is run sequentially" is not useful when code is mainly run with WorkQueues
https://bugs.webkit.org/show_bug.cgi?id=236832
Reviewed by Antti Koivisto.
Test the added functionality to be able to use assertIsCurrent(thread/workQueue).
Fix WTF_WorkQueue.DestroyDispatchedOnDispatchQueue test, it is now able to make the assertion correctly.
- The object is created somewhere that is not the tested WorkQueue
- The object is destroyed in the tested WorkQueue
* Scripts/generate-gpup-webgl:
* TestWebKitAPI/Tests/WTF/Threading.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
(TestWebKitAPI::TEST):
2022-02-23 Chris Dumez <cdumez@apple.com>
Adopt more widely the new URL constructor that takes in a String
https://bugs.webkit.org/show_bug.cgi?id=237099
Reviewed by Darin Adler.
* TestWebKitAPI/Tests/WTF/URLParser.cpp:
(TestWebKitAPI::checkURL):
(TestWebKitAPI::checkURLDifferences):
(TestWebKitAPI::testUserPassword):
* TestWebKitAPI/Tests/WTF/cocoa/URLExtras.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
(TestWebKitAPI::mainDocumentRequest):
(TestWebKitAPI::subResourceRequest):
(TestWebKitAPI::requestInTopAndFrameURLs):
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/RegistrableDomain.cpp:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
(TestWebKitAPI::TEST_F):
* TestWebKitAPI/Tests/WebCore/curl/Cookies.cpp:
(TestWebKitAPI::Curl::TEST_F):
* TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm:
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
2022-02-23 Wenson Hsieh <wenson_hsieh@apple.com>
REGRESSION (288925?): [iOS] TestWebKitAPI.RequestTextInputContext.TextInteraction_FocusingReadOnlyElementShouldScrollToReveal is failing
https://bugs.webkit.org/show_bug.cgi?id=237069
rdar://89325305
Reviewed by Kate Cheney.
This iOS API test occasionally fails in some test runners in automation, due to `didScroll` still being false at
the end of the test. While I was unable to reproduce (both locally, and using EWS test runners), from code
inspection this test appears to be inherently flaky since the scrolling is triggered via editor state updates
propagated through remote layer tree commits; however, the test only verifies that scrolling occurs after one
IPC round-trip between the web and UI processes (due to the call to `-stringByEvaluatingJavaScript:`).
Since the regression point is suspiciously close to r288925, it's possible that the optimizations introduced in
r288925 removed an extra sync IPC round-trip to the web process and back when requesting an autocorrection
context after element focus, which would make this flakiness easier to reproduce in some configurations.
In any case, one speculative fix for this test is to simply wait for the scrolling to occur, instead of assuming
that it occurs after a single IPC round-trip.
* TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
(TestWebKitAPI::TEST):
2022-02-23 Jonathan Bedard <jbedard@apple.com>
[run-webkit-tests] Catch OSError when sampling
https://bugs.webkit.org/show_bug.cgi?id=237087
<rdar://problem/89357299>
Reviewed by Aakash Jain.
* Scripts/webkitpy/port/darwin.py:
(DarwinPort.sample_process): Catch OSError when either sampling a
process or running spindump. These errors indicate the error gathering process
failed, but such a failure should not be fatal to the entire test run.
2022-02-23 J Pascoe <j_pascoe@apple.com>
[WebAuthn] userHandle not marked nullable in _WKWebAuthenticationAssertionResponse
https://bugs.webkit.org/show_bug.cgi?id=237043
rdar://89317740
Reviewed by Brent Fulgham.
Create tests to check for null userHandle.
* TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
(TestWebKitAPI::TEST):
2022-02-23 Philippe Normand <pnormand@igalia.com>
[GStreamer] De-initialize GStreamer before terminating WebProcess
https://bugs.webkit.org/show_bug.cgi?id=237084
Reviewed by Carlos Garcia Campos.
* flatpak/flatpakutils.py:
(WebkitFlatpak.setup_gstbuild): Do not add extra quotes to GST_TRACERS, this is not supposed
to store paths.
2022-02-23 Alex Christensen <achristensen@webkit.org>
Call WKNavigationDelegate.didFailProvisionalNavigation even after a cross-origin navigation with COOP
https://bugs.webkit.org/show_bug.cgi?id=237071
<rdar://88652375>
Reviewed by Chris Dumez.
* TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
(TEST):
2022-02-23 Angelos Oikonomopoulos <angelos@igalia.com>
[JSC] Set ssh keepalive in run-jsc-stress-tests
https://bugs.webkit.org/show_bug.cgi?id=237031
Reviewed by Adrian Perez de Castro.
If a remote goes down after an ssh connection has been established, we
need to be able to detect that. Keep the common ssh config options in
one constant and add ServerAliveInterval=30 to it.
While here, change sshRead to execute ssh directly (instead of
going through the shell). Similarly, don't open-code the read
loop, just call IO.read.
* Scripts/run-jsc-stress-tests:
2022-02-23 Kimmo Kinnunen <kkinnunen@apple.com>
Fix GPUP WebGL generator script wrt uninitialised sized span
https://bugs.webkit.org/show_bug.cgi?id=235889
Reviewed by Antti Koivisto.
Fix the generator. The r290328 only edited the generated files.
Add a other hunk missing from r290175.
* Scripts/generate-gpup-webgl:
2022-02-23 Zan Dobersek <zdobersek@igalia.com>
[GStreamer] Add WebKitDMABufVideoSink
https://bugs.webkit.org/show_bug.cgi?id=236883
Reviewed by Philippe Normand.
* Scripts/webkitpy/style/checker.py:
Add two additional files under the GObject-style exceptions.
2022-02-23 Kimmo Kinnunen <kkinnunen@apple.com>
Thread safety analysis macros are confusing for non-Lock use-cases
https://bugs.webkit.org/show_bug.cgi?id=237022
Reviewed by Chris Dumez.
* Scripts/webkitpy/style/checkers/cpp.py:
(check_identifier_name_in_declaration):
* TestWebKitAPI/Tests/WTF/ThreadAssertionsTest.cpp:
(TestWebKitAPI::WTF_REQUIRES_CAPABILITY):
2022-02-23 Youenn Fablet <youenn@apple.com>
Enable WebRTCRemoteVideoFrameEnabled by default in WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=236969
Reviewed by Eric Carlson.
* WebKitTestRunner/TestOptions.cpp:
2022-02-22 Chris Dumez <cdumez@apple.com>
Drop StringHasher::hashMemory() and use the modern Hasher instead
https://bugs.webkit.org/show_bug.cgi?id=237049
Reviewed by Sam Weinig.
* TestWebKitAPI/Tests/WTF/StringHasher.cpp:
2022-02-22 Ryan Haddad <ryanhaddad@apple.com>
REGRESSION(r289580): [ iOS macOS ] TestWebKitAPI.IPCTestingAPI.CanReceiveSharedMemory is a constant timeout
https://bugs.webkit.org/show_bug.cgi?id=236744
Unreviewed test gardening.
* TestWebKitAPI/Tests/WebKitCocoa/IPCTestingAPI.mm: Disable the test.
(TEST):
2022-02-17 Ryan Haddad <ryanhaddad@apple.com>
Remove dormant queues from bot watchers dashboard
https://bugs.webkit.org/show_bug.cgi?id=236809
Reviewed by Alexey Proskuryakov.
* CISupport/build-webkit-org/public_html/dashboard/Scripts/Dashboard.js:
* CISupport/build-webkit-org/public_html/dashboard/Scripts/WebKitBuildbot.js:
(WebKitBuildbot):
* Tools/CISupport/build-webkit-org/public_html/dashboard/Styles/Main.css:
2022-02-22 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Link to GitHub wiki
https://bugs.webkit.org/show_bug.cgi?id=237048
<rdar://problem/89307995>
Reviewed by Ryan Haddad.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:
(Setup.main): Add GitHub wiki link.
* Scripts/libraries/webkitscmpy/webkitscmpy/test/setup_unittest.py:
(TestSetup.test_github):
2022-02-22 Philippe Normand <pnormand@igalia.com>
[GStreamer] Switch media player to playbin3
https://bugs.webkit.org/show_bug.cgi?id=236884
Reviewed by Xabier Rodriguez-Calvar.
Replace WEBKIT_GST_USE_PLAYBIN3 with WEBKIT_GST_USE_PLAYBIN2 that allows to opt-out of
playbin3, if this is desired.
* Scripts/webkitpy/port/gtk.py:
(GtkPort.setup_environ_for_server):
* Scripts/webkitpy/port/wpe.py:
(WPEPort.setup_environ_for_server):
2022-02-22 Jonathan Bedard <jbedard@apple.com>
[git-webkit] Extract revision from `git svn dcommit`
https://bugs.webkit.org/show_bug.cgi?id=236849
<rdar://problem/89155179>
Reviewed by Ryan Haddad.
* Scripts/libraries/webkitscmpy/setup.py: Bump version.
* Scripts/libraries/webkitscmpy/webkitscmpy/__init__.py: Ditto.
* Scripts/libraries/webkitscmpy/webkitscmpy/mocks/local/git.py:
(Git): Thoroughly mock `dcommit`
* Scripts/libraries/webkitscmpy/webkitscmpy/program/land.py:
(Land.main): Extract committed SVN revision from `git svn dcommit` command to accurately
match landed commits to the pull request that generated them.
* Scripts/libraries/webkitscmpy/webkitscmpy/test/land_unittest.py:
(repository): Add revision to local commit.
2022-02-22 Dean Jackson <dino@apple.com>
Filter some build output from JSC
https://bugs.webkit.org/show_bug.cgi?id=236885
Reviewed by Simon Fraser.
Add some filter rules for recently added output. In particular:
- whatever prints out the build command
- python executables now having the version numbers in the binary
- creating entitlements files
* Scripts/filter-build-webkit:
(shouldIgnoreLine):
2022-02-22 Aditya Keerthi <akeerthi@apple.com>
[iOS] Adopt new _UITextSearching method for range comparison
https://bugs.webkit.org/show_bug.cgi?id=237012
rdar://88442811
Reviewed by Devin Rousso.
Ensure TestSearchAggregator conforms to _UITextSearchAggregator.
* TestWebKitAPI/Tests/WebKitCocoa/FindInPage.mm:
(-[TestSearchAggregator initWithCompletionHandler:]):
(-[TestSearchAggregator allFoundRanges]):
(-[TestSearchAggregator invalidateFoundRange:inDocument:]):
(-[TestSearchAggregator invalidate]):
(textRangesForQueryString):
(-[TestSearchAggregator foundRanges]): Deleted.
2022-02-22 Angelos Oikonomopoulos <angelos@igalia.com>
[JSC] Guard against dead remotes in numberOfProcessors
https://bugs.webkit.org/show_bug.cgi?id=236643
Reviewed by Adrian Perez de Castro.
Instead of using only the first remote (and then defaulting to 1 when
it happens to not respond), try all the remotes in sequence.
Also, instead of trying the sysctl version on all hosts first and
only try nproc after sysctl has failed on all hosts, combine
sysctl and nproc in one command to speed things along.
This change also removes the numProcessors == 0 typo in the rescue
path.
* Scripts/run-jsc-stress-tests:
2022-02-22 Carlos Garcia Campos <cgarcia@igalia.com>
[GTK] Can't run performance tests due to a11y errors
https://bugs.webkit.org/show_bug.cgi?id=230705
Reviewed by Sergio Villar Senin.
Disable a11y in WTR since it's no longer nedded with ATSPI.
* WebKitTestRunner/gtk/main.cpp:
(main):
* WebKitTestRunner/wpe/main.cpp:
(main):
2022-02-21 Brandon Stewart <brandonstewart@apple.com>
Use ArgumentParser for parsing args in generate-compile-commands
https://bugs.webkit.org/show_bug.cgi?id=236995
Reviewed by Alexey Proskuryakov.
Use argument parser instead of sys.argv[1] for getting build dir.
* Scripts/generate-compile-commands:
2022-02-21 Wenson Hsieh <wenson_hsieh@apple.com>
[iOS] Adjust some behaviors around the "Markup Image" action in the callout bar
https://bugs.webkit.org/show_bug.cgi?id=236980
Reviewed by Aditya Keerthi.
Add an API test to verify that "Markup Image" appears as the first non-default callout bar item when a single
image element is in the selection range. The test is comprised of three parts:
1. Select just a single image, and expect the "Markup Image" item.
2. Select all images in the document, and expect no "Markup Image" item.
3. Select a single image and some surrounding text, and expect the "Markup Image" item.
See WebKit/ChangeLog for more details.
* TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:
(TestWebKitAPI::createWebViewWithTextRecognitionEnhancements):
(TestWebKitAPI::swizzledSetMenuItems):
(TestWebKitAPI::TEST):
* TestWebKitAPI/Tests/WebKitCocoa/multiple-images.html:
Add some text before and after each image so that we can select a single image alongside some text, and exercise
the changes in `WebPage::getPlatformEditorState` (see WebKit changes for more information).
2022-02-21 Jon Lee <jonlee@apple.com>
Add test name to the image diff template
https://bugs.webkit.org/show_bug.cgi?id=237003
Reviewed by Sam Weinig.
* Scripts/webkitpy/layout_tests/controllers/test_result_writer.py:
(TestResultWriter.write_image_diff_files):
== Rolled over to ChangeLog-2022-02-22 ==