[iOS] Deny mach lookup access to content filter service in the WebContent sandbox
[WebKit.git] / Tools / ChangeLog
1 2019-12-12  Per Arne Vollan  <pvollan@apple.com>
2
3         [iOS] Deny mach lookup access to content filter service in the WebContent sandbox
4         https://bugs.webkit.org/show_bug.cgi?id=205077
5
6         Reviewed by Brent Fulgham.
7
8         With this patch, the WebContentAnalysis framework will not be loaded in the WebContent process unless
9         [WebFilterEvaluator isManagedSession] returns YES. Swizzle this method to return YES in the UI process.
10
11         * TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:
12         (isManagedSession):
13         (TEST):
14
15 2019-12-12  Patrick Griffis  <pgriffis@igalia.com>
16
17         [SOUP] Use new API for strict secure cookies
18         https://bugs.webkit.org/show_bug.cgi?id=169356
19
20         Reviewed by Michael Catanzaro.
21
22         Update libsoup to fix a secure cookie test
23
24         * gtk/jhbuild.modules:
25         * wpe/jhbuild.modules:
26
27 2019-12-11  Jonathan Bedard  <jbedard@apple.com>
28
29         Python 3: Support serial ServerProcess tests
30         https://bugs.webkit.org/show_bug.cgi?id=205146
31
32         Reviewed by Stephanie Lewis.
33
34         * Scripts/webkitpy/port/server_process.py:
35         (ServerProcess.write): Flush stdin after writing to it.
36         * Scripts/webkitpy/port/server_process_unittest.py:
37         (TestServerProcess): print to stderr in Python 2/3 compatible way.
38         (TestServerProcess.serial_test_basic): ServerProcess speaks in bytes.
39         (TestServerProcess.serial_test_read_after_process_exits): Ditto.
40         (TestServerProcess.serial_test_process_crashing): Ditto.
41         (TestServerProcess.serial_test_process_crashing_no_data): Ditto.
42
43 2019-12-11  Daniel Bates  <dabates@apple.com>
44
45         UIWKDocumentContext returns 0 character rects when caret is at beginning or end of text
46         https://bugs.webkit.org/show_bug.cgi?id=205135
47         <rdar://problem/56887914>
48
49         Reviewed by Wenson Hsieh.
50
51         Add tests that request rects when the insertion point is at the beginning or end of the text.
52
53         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
54         (TEST):
55
56 2019-12-11  Jiewen Tan  <jiewen_tan@apple.com>
57
58         [WebAuthn] Combine AuthenticatorResponse and PublicKeyCredentialData
59         https://bugs.webkit.org/show_bug.cgi?id=190783
60         <rdar://problem/57781183>
61
62         Reviewed by Brent Fulgham.
63
64         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
65         (TestWebKitAPI::TEST):
66         Updates tests accordingly.
67
68 2019-12-11  Truitt Savell  <tsavell@apple.com>
69
70         Unreviewed, rolling out r253376.
71
72         Broke internal builds
73
74         Reverted changeset:
75
76         "Move WKWebView code related to testing to new files, with
77         their own headers, and stop exposing test-only functions as
78         SPI."
79         https://bugs.webkit.org/show_bug.cgi?id=205021
80         https://trac.webkit.org/changeset/253376
81
82 2019-12-11  Jonathan Bedard  <jbedard@apple.com>
83
84         Python 3: Add support in webkitpy.performance_tests
85         https://bugs.webkit.org/show_bug.cgi?id=205122
86
87         Reviewed by Stephanie Lewis.
88
89         * Scripts/test-webkitpy-python3: Add webkitpy.performance_tests.
90         * Scripts/webkitpy/performance_tests/perftest.py:
91         (PerfTest.run): Use range over xrange.
92         (PerfTest.log_statistics): Python 3 may use more precision than Python 2.
93         (PerfTest._run_with_driver): Convert list to map.
94         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
95         (TestPerfTest._assert_results_are_correct): Convert map to list.
96         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
97         (MainTest._test_run_with_json_output): Use range over xrange, convert keys to list.
98         (MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):
99         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
100         (MainTest.test_collect_tests_with_multile_files): Use assertEqual over assertItemsEqual.
101         (MainTest.test_collect_tests_with_skipped_list): Ditto.
102         (MainTest.test_collect_tests_with_skipped_list_and_files): Ditto.
103         (MainTest.test_collect_tests_with_ignored_skipped_list): Ditto.
104
105 2019-12-11  Jonathan Bedard  <jbedard@apple.com>
106
107         Python 3: Add support in webkitpy.w3c
108         https://bugs.webkit.org/show_bug.cgi?id=205118
109
110         Reviewed by Stephanie Lewis.
111
112         * Scripts/test-webkitpy-python3: Add webkitpy.w3c.
113         * Scripts/webkitpy/common/system/filesystem_mock.py:
114         (MockFileSystem.open_binary_file_for_reading): Missing file should cause Filesystem exception.
115         (MockFileSystem.read_binary_file): Ditto.
116         (MockFileSystem.open_text_file_for_reading): Ditto.
117         (MockFileSystem.remove): Ditto.
118         * Scripts/webkitpy/w3c/test_converter.py:
119         (convert_for_webkit): Convert binary file to text file.
120         (_W3CTestConverter.read_webkit_prefixed_css_property_list): Use items over iteritems.
121         * Scripts/webkitpy/w3c/test_converter_unittest.py:
122         (verify_test_harness_paths): Use Python 3 compatible type check.
123         * Scripts/webkitpy/w3c/test_downloader.py:
124         (TestDownloader._init_paths_from_expectations): Use items over iteritems.
125         * Scripts/webkitpy/w3c/test_importer.py:
126         (TestImporter.readEnvironmentsForTemplateTest): Convert filter to list.
127         * Scripts/webkitpy/w3c/wpt_github.py:
128         (WPTGitHub.auth_token): Encode base64 input and decode base64 output.
129         * Scripts/webkitpy/w3c/wpt_github_unittest.py:
130         (WPTGitHubTest.test_auth_token):
131
132 2019-12-10  Simon Fraser  <simon.fraser@apple.com>
133
134         Move WKWebView code related to testing to new files, with their own headers, and stop exposing test-only functions as SPI.
135         https://bugs.webkit.org/show_bug.cgi?id=205021
136
137         Reviewed by Tim Horton.
138
139         Stop exposing WKWebView (WKTesting) as SPI, because everyone added SPI here by mistake, and
140         internal clients kept using testing SPI.
141         
142         Instead, move testing-only functions to internal headers that are not present in the built framework,
143         and move to WKWebView (WKPrivate) properties and functions that webkit clients rely on.
144         
145         Add WKWebViewTesting/WKWebViewTestingMac/WKWebViewTestingIOS for test-only code.
146         
147         WKWebViewTesting* headers are copied to a "WebKitTestSupport" directory in the Products directory, and WTR/DRT and TestWebKitAPI
148         get header search paths to find the headers there.
149
150         * MiniBrowser/Configurations/Base.xcconfig:
151         * MiniBrowser/mac/WK2BrowserWindowController.m:
152         * TestWebKitAPI/Configurations/Base.xcconfig:
153         * TestWebKitAPI/EditingTestHarness.mm:
154         * TestWebKitAPI/Tests/WebKit/ResponsivenessTimerCrash.mm:
155         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
156         * TestWebKitAPI/Tests/WebKitCocoa/DoubleDefersLoading.mm:
157         * TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm:
158         * TestWebKitAPI/Tests/WebKitCocoa/MediaBufferingPolicy.mm:
159         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
160         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
161         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm:
162         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
163         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
164         * TestWebKitAPI/Tests/WebKitCocoa/SnapshotStore.mm:
165         * TestWebKitAPI/Tests/WebKitCocoa/SystemPreview.mm:
166         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
167         * TestWebKitAPI/Tests/WebKitCocoa/UserMediaSimulateFailedSandbox.mm:
168         * TestWebKitAPI/Tests/WebKitCocoa/VideoControlsManager.mm:
169         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
170         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
171         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewCandidateTests.mm:
172         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewEditActions.mm:
173         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFirstResponderTests.mm:
174         * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
175         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
176         * TestWebKitAPI/Tests/ios/AutocorrectionTestsIOS.mm:
177         * TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
178         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
179         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
180         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
181         * WebKitTestRunner/Configurations/Base.xcconfig:
182         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
183         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
184         * WebKitTestRunner/cocoa/UIScriptControllerCocoa.mm:
185         * WebKitTestRunner/ios/TestControllerIOS.mm:
186         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
187         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
188
189 2019-12-11  Jonathan Bedard  <jbedard@apple.com>
190
191         Add test-lldb-webkit
192         https://bugs.webkit.org/show_bug.cgi?id=187916
193
194         Reviewed by Stephanie Lewis.
195
196         * Scripts/test-lldb-webkit: Added.
197         (NoAction): Argparse action which support --<variable> and --no-<variable>.
198         (LldbTester): Wrapper around webkitpy's Tester class.
199         (LldbTester.parse_args): Specialized argparse for lldb tests.
200         (LldbTester.run): Setup environment and build lldb test runner.
201         (main):
202         * Scripts/webkitpy/test/main.py:
203         (main): Remove lldb testing code.
204         (Tester._parse_args): Ditto.
205         (Tester.run): Ditto.
206         (Tester._run_tests): Ditto.
207         (Tester._test_names): Ditto.
208         (_supports_building_and_running_lldb_tests): Deleted.
209
210 2019-12-10  Per Arne Vollan  <pvollan@apple.com>
211
212         Fix API test failure after r253351
213         https://bugs.webkit.org/show_bug.cgi?id=205089
214
215         Reviewed by Brent Fulgham.
216
217         With the patch landed in r253351, the NetworkExtension framework will not be loaded in the WebContent process unless
218         [NEFilterSource filterRequired] returns YES. Swizzle this method to return YES in the UI process.
219
220         * TestWebKitAPI/Tests/WebKitCocoa/ContentFiltering.mm:
221         (filterRequired):
222         (TEST):
223
224 2019-12-10  Chris Dumez  <cdumez@apple.com>
225
226         Gyroscope (DeviceMotion related) permission cannot be requested in WKWebView unless the client app sets a WKUIDelegate
227         https://bugs.webkit.org/show_bug.cgi?id=203287
228
229         Reviewed by Alex Christensen.
230
231         Add layout test coverage.
232
233         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
234         (runDeviceOrientationTest):
235         (TEST):
236
237 2019-12-10  youenn fablet  <youenn@apple.com>
238
239         Mark some WPT test folders as DumpJSConsoleLogInStdErr
240         https://bugs.webkit.org/show_bug.cgi?id=204793
241
242         Reviewed by Eric Carlson.
243
244         Make DTR and WTR set the default DumpJSConsoleLogInStdErr to true for some WPT sub-folders.
245         This is easier done there instead of TestExpectations as TestExpectations can be overriden in more specific expectations. 
246
247         * DumpRenderTree/TestOptions.cpp:
248         (pathContains):
249         (shouldDumpJSConsoleLogInStdErr):
250         (TestOptions::TestOptions):
251         * WebKitTestRunner/TestController.cpp:
252         (WTR::updateTestOptionsFromTestHeader):
253         * WebKitTestRunner/TestOptions.cpp:
254         (WTR::shouldDumpJSConsoleLogInStdErr):
255         (WTR::TestOptions::TestOptions):
256
257 2019-12-10  youenn fablet  <youenn@apple.com>
258
259         Disable video capture in UIProcess for WebKitTestRunner
260         https://bugs.webkit.org/show_bug.cgi?id=205054
261
262         Reviewed by Eric Carlson.
263
264         * WebKitTestRunner/TestOptions.h:
265         Some tests are still flaky as noted in bug 205053 and this option is still experimental.
266
267 2019-12-09  Jonathan Bedard  <jbedard@apple.com>
268
269         test-webkitpy: Remove --<configuration> flags from CI
270         https://bugs.webkit.org/show_bug.cgi?id=205016
271
272         Reviewed by Stephanie Lewis.
273
274         * BuildSlaveSupport/build.webkit.org-config/steps.py:
275         (RunPythonTests): Remove --debug/--release flags to test-webkitpy.
276
277 2019-12-09  Alex Christensen  <achristensen@webkit.org>
278
279         Re-disable TLS1.0 and TLS1.1 by default
280         https://bugs.webkit.org/show_bug.cgi?id=204922
281         <rdar://problem/57677752>
282
283         Reviewed by Youenn Fablet.
284
285         * TestWebKitAPI/TCPServer.cpp:
286         (TestWebKitAPI::TCPServer::respondWithOK):
287         * TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:
288         (TestWebKitAPI::TEST):
289         (TestWebKitAPI::getWebSocketEventWebKitLegacy):
290
291 2019-12-09  youenn fablet  <youenn@apple.com>
292
293         Add an option to capture audio in GPU process
294         https://bugs.webkit.org/show_bug.cgi?id=205007
295
296         Reviewed by Eric Carlson.
297
298         * WebKitTestRunner/TestController.cpp:
299         (WTR::TestController::resetPreferencesToConsistentValues):
300         (WTR::updateTestOptionsFromTestHeader):
301         * WebKitTestRunner/TestOptions.h:
302         (WTR::TestOptions::hasSameInitializationOptions const):
303
304 2019-12-08  Tim Horton  <timothy_horton@apple.com>
305
306         REGRESSION: Crash under UIScriptControllerIOS::simulateAccessibilitySettingsChangeNotification
307         https://bugs.webkit.org/show_bug.cgi?id=205002
308
309         Reviewed by Wenson Hsieh.
310
311         Keep a strong reference to the UIScriptController while running async tasks.
312         UIScriptContext will be nulled out if the view was torn down, but this way
313         we keep the UIScriptController itself and can find the null UIScriptContext
314         reliably.
315
316         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
317         (WTR::UIScriptControllerIOS::doAsyncTask):
318         (WTR::UIScriptControllerIOS::zoomToScale):
319         * DumpRenderTree/mac/UIScriptControllerMac.mm:
320         (WTR::UIScriptControllerMac::doAsyncTask):
321         (WTR::UIScriptControllerMac::activateDataListSuggestion):
322         (WTR::UIScriptControllerMac::removeViewFromWindow):
323         (WTR::UIScriptControllerMac::addViewToWindow):
324         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
325         (WTR::UIScriptControllerIOS::doAfterPresentationUpdate):
326         (WTR::UIScriptControllerIOS::doAfterNextStablePresentationUpdate):
327         (WTR::UIScriptControllerIOS::ensurePositionInformationIsUpToDateAt):
328         (WTR::UIScriptControllerIOS::doAfterVisibleContentRectUpdate):
329         (WTR::UIScriptControllerIOS::zoomToScale):
330         (WTR::UIScriptControllerIOS::retrieveSpeakSelectionContent):
331         (WTR::UIScriptControllerIOS::simulateAccessibilitySettingsChangeNotification):
332         (WTR::UIScriptControllerIOS::touchDownAtPoint):
333         (WTR::UIScriptControllerIOS::liftUpAtPoint):
334         (WTR::UIScriptControllerIOS::twoFingerSingleTapAtPoint):
335         (WTR::UIScriptControllerIOS::doubleTapAtPoint):
336         (WTR::UIScriptControllerIOS::stylusDownAtPoint):
337         (WTR::UIScriptControllerIOS::stylusMoveToPoint):
338         (WTR::UIScriptControllerIOS::stylusUpAtPoint):
339         (WTR::UIScriptControllerIOS::stylusTapAtPointWithModifiers):
340         (WTR::UIScriptControllerIOS::dragFromPointToPoint):
341         (WTR::UIScriptControllerIOS::longPressAtPoint):
342         (WTR::UIScriptControllerIOS::typeCharacterUsingHardwareKeyboard):
343         (WTR::UIScriptControllerIOS::dismissFilePicker):
344         (WTR::UIScriptControllerIOS::applyAutocorrection):
345         (WTR::UIScriptControllerIOS::simulateRotation):
346         (WTR::UIScriptControllerIOS::simulateRotationLikeSafari):
347         (WTR::UIScriptControllerIOS::setDidStartFormControlInteractionCallback):
348         (WTR::UIScriptControllerIOS::setDidEndFormControlInteractionCallback):
349         (WTR::UIScriptControllerIOS::setDidShowContextMenuCallback):
350         (WTR::UIScriptControllerIOS::setDidDismissContextMenuCallback):
351         (WTR::UIScriptControllerIOS::setWillBeginZoomingCallback):
352         (WTR::UIScriptControllerIOS::setDidEndZoomingCallback):
353         (WTR::UIScriptControllerIOS::setDidShowKeyboardCallback):
354         (WTR::UIScriptControllerIOS::setDidHideKeyboardCallback):
355         (WTR::UIScriptControllerIOS::setWillPresentPopoverCallback):
356         (WTR::UIScriptControllerIOS::setDidDismissPopoverCallback):
357         (WTR::UIScriptControllerIOS::setDidEndScrollingCallback):
358         (WTR::UIScriptControllerIOS::activateDataListSuggestion):
359         (WTR::UIScriptControllerIOS::doAfterDoubleTapDelay):
360         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
361         (WTR::UIScriptControllerMac::zoomToScale):
362         (WTR::UIScriptControllerMac::simulateAccessibilitySettingsChangeNotification):
363         (WTR::UIScriptControllerMac::chooseMenuAction):
364         (WTR::UIScriptControllerMac::activateAtPoint):
365
366 2019-12-07  Said Abou-Hallawa  <sabouhallawa@apple.com>
367
368         Make ColorSpace an enum class
369         https://bugs.webkit.org/show_bug.cgi?id=204970
370
371         Reviewed by Sam Weinig.
372
373         * TestWebKitAPI/Tests/WebCore/ExtendedColor.cpp:
374         (TestWebKitAPI::TEST):
375         (TestWebKitAPI::makeColor):
376
377 2019-12-06  Jonathan Bedard  <jbedard@apple.com>
378
379         Python 3: Add support in webkitpy.tool (Follow-up, part 2)
380         https://bugs.webkit.org/show_bug.cgi?id=204838
381
382         Unreviewed follow-up fix.
383
384         * Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
385
386 2019-12-06  Jonathan Bedard  <jbedard@apple.com>
387
388         Python 3: Add support in webkitpy.tool (Follow-up, part 1)
389         https://bugs.webkit.org/show_bug.cgi?id=204838
390
391         Reviewed by Stephanie Lewis.
392
393         As I've been using webkit-patch with Python 3, I've encountered a handful of other
394         compatibility bugs.
395
396         * Scripts/webkit-patch:
397         (ForgivingUTF8Writer): Only apple the ForgivingUTF8Writer when our string type isn't unicode.
398         (ForgivingUTF8Writer.write): Use standardized decoding functions.
399         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
400         (Bugzilla.authenticate): Use byte regex.
401         * Scripts/webkitpy/tool/steps/editchangelog.py:
402         (EditChangeLog.run): Convert map to list.
403
404 2019-12-06  Jonathan Bedard  <jbedard@apple.com>
405
406         Python 3: Add support in webkitpy.test
407         https://bugs.webkit.org/show_bug.cgi?id=204952
408
409         Reviewed by Stephanie Lewis.
410
411         * Scripts/test-webkitpy-python3: Add webkitpy.tool.
412         * Scripts/webkitpy/layout_tests/lint_test_expectations_unittest.py: Use Python 2/3
413         compatible StringIO objects.
414         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Ditto.
415         * Scripts/webkitpy/performance_tests/perftest_unittest.py: Ditto.
416         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py: Ditto.
417         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py: Ditto.
418         * Scripts/webkitpy/test/finder.py:
419         (Finder._exclude): Convert filter to list.
420         * Scripts/webkitpy/test/main.py:
421         (Tester._log_exception): Use Python 2/3 compatible StringIO object.
422         (_Loader.getTestCaseNames): Convert filter to list.
423         * Scripts/webkitpy/test/main_unittest.py:
424         (TesterTest.test_no_tests_found): Use Python 2/3 compatible StringIO.
425         (TesterTest.test_integration_tests_are_found): Sort serial tests before comparing.
426         * Scripts/webkitpy/test/printer.py: Use Python 2/3 compatible StringIO.
427         * Scripts/webkitpy/test/runner_unittest.py: Ditto.
428         * Scripts/webkitpy/test/skip.py:
429         (_skipped_method._skip): Fix class inspection on instance method.
430         * Scripts/webkitpy/test/skip_unittest.py: Use Python 2/3 compatible StringIO.
431         * Scripts/webkitpy/w3c/test_converter.py: Use Python 2/3 compatible HTMLParser.
432         * Scripts/webkitpy/w3c/wpt_runner.py:
433         (main): Fix Python 3 syntax errors.
434         * lldb/dump_class_layout_unittest.py:
435         (TestDumpClassLayout.setUpClass): Fix Python 3 syntax errors.
436
437 2019-12-05  Jonathan Bedard  <jbedard@apple.com>
438
439         Python 3: Add support to webkitpy.browserperfdash
440         https://bugs.webkit.org/show_bug.cgi?id=204887
441
442         Reviewed by Stephanie Lewis.
443
444         * Scripts/test-webkitpy-python3: Add webkitpy.browserperfdash.
445         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py: Remove urlparse dependency.
446         * Scripts/webkitpy/benchmark_runner/webdriver_benchmark_runner.py: Use explicit import.
447         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
448         (WebServerBenchmarkRunner._run_one_test): Use Python 2/3 compatible urljoin.
449
450 2019-12-05  Sihui Liu  <sihui_liu@apple.com>
451
452         Fix a Typo in IndexedDBInPageCache.html
453         https://bugs.webkit.org/show_bug.cgi?id=204897
454
455         Reviewed by Chris Dumez.
456
457         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBInPageCache.html:
458
459 2019-12-05  youenn fablet  <youenn@apple.com>
460
461         inspector/page/overrideSetting-MockCaptureDevicesEnabled.html is failing after removal of internals.setMockMediaCaptureDevicesEnabled API
462         https://bugs.webkit.org/show_bug.cgi?id=204849
463
464         Reviewed by Eric Carlson.
465
466         Add test runner API to check which center (mock or not) is used in UIProcess side.
467
468         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
469         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
470         (WTR::TestRunner::isMockRealtimeMediaSourceCenterEnabled):
471         * WebKitTestRunner/InjectedBundle/TestRunner.h:
472         * WebKitTestRunner/TestController.cpp:
473         (WTR::TestController::isMockRealtimeMediaSourceCenterEnabled const):
474         * WebKitTestRunner/TestController.h:
475         * WebKitTestRunner/TestInvocation.cpp:
476         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
477
478 2019-12-05  Zalan Bujtas  <zalan@apple.com>
479
480         [LFC][IFC] Move trailing trimming logic to LineBuilder::TrimmableContent
481         https://bugs.webkit.org/show_bug.cgi?id=204872
482         <rdar://problem/57652365>
483
484         Reviewed by Antti Koivisto.
485
486         * LayoutReloaded/misc/LFC-passing-tests.txt:
487
488 2019-12-04  Fujii Hironori  <Hironori.Fujii@sony.com>
489
490         run-javascriptcore-tests is failing to run testmasm of 64bit AppleWin on Buildbot
491         https://bugs.webkit.org/show_bug.cgi?id=204869
492
493         Reviewed by Per Arne Vollan.
494
495         testmasm is compiled only when DEVELOPER_MODE.
496         Enable DEVELOPER_MODE for all 64bit Windows builds.
497
498         * Scripts/webkitdirs.pm:
499         (generateBuildSystemFromCMakeProject): Replaced "isFTW() || isWinCairo()" with isWin64()
500         in the condition of enabling DEVELOPER_MODE.
501
502 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
503
504         results.webkit.org: Decrease ttl for archives
505         https://bugs.webkit.org/show_bug.cgi?id=204806
506         <rdar://problem/57527644>
507
508         Unreviewed infrastructure fix.
509
510         * resultsdbpy/resultsdbpy/controller/archive_controller_unittest.py:
511         (ArchiveControllerUnittest.setup_webserver): Disable time-to-live.
512         * resultsdbpy/resultsdbpy/model/mock_model_factory.py:
513         (MockModelFactory.create): Ensure time-to-live is longer than the oldest commit.
514
515 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
516
517         results.webkit.org: Handle duplicate archives
518         https://bugs.webkit.org/show_bug.cgi?id=204860
519
520         Reviewed by Stephanie Lewis.
521
522         * resultsdbpy/resultsdbpy/controller/archive_controller.py:
523         (ArchiveController): Pass test time to ArchiveContext, de-duplicate any
524         identical archives.
525         * resultsdbpy/resultsdbpy/model/archive_context.py:
526         (ArchiveContext): Only upack identical archives once, pass digest to caller.
527
528 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
529
530         Python 3: Add support in webkitpy.benchmark_runner
531         https://bugs.webkit.org/show_bug.cgi?id=204784
532
533         Reviewed by Stephanie Lewis.
534
535         * Scripts/test-webkitpy-python3: Add webkitpy.benchmark_runner.
536         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
537         (BenchmarkResults): Arithmetic aggregator should use integer division.
538         (BenchmarkResults._format_values): Convert map to list.
539         (BenchmarkResults._aggregate_results): Ditto.
540         (BenchmarkResults._aggregate_results_for_test): Use Python 2/3 compatible iteritems.
541         (BenchmarkResults._subtest_values_by_config_iteration): Ditto.
542         (BenchmarkResults._lint_subtest_results): Ditto.
543         (BenchmarkResults._lint_configuration): Ditto.
544         * Scripts/webkitpy/benchmark_runner/benchmark_results_unittest.py: Use explicit imports.
545         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py: Ditto.
546         * Scripts/webkitpy/benchmark_runner/browser_driver/__init__.py: Ditto.
547         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_browser_driver.py: Ditto.
548         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_chrome_driver.py: Ditto.
549         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_cog_driver.py: Ditto.
550         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_epiphany_driver.py: Ditto.
551         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_firefox_driver.py: Ditto.
552         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowsergtk_driver.py: Ditto.
553         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowserwpe_driver.py: Ditto.
554         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_browser_driver.py: Ditto.
555         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py: Ditto.
556         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_firefox_driver.py: Ditto.
557         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py: Ditto.
558         * Scripts/webkitpy/benchmark_runner/http_server_driver/__init__.py: Ditto.
559         * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py: Ditto.
560         * Scripts/webkitpy/benchmark_runner/run_benchmark.py: Ditto.
561         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py: Ditto.
562
563 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
564
565         Python 3: Add support in webkitpy.tool
566         https://bugs.webkit.org/show_bug.cgi?id=204838
567
568         Reviewed by Stephanie Lewis.
569
570         * Scripts/test-webkitpy-python3: Add webkitpy.tool.
571         * Scripts/webkit-patch: Remove version check.
572         * Scripts/webkitpy/common/net/bugzilla/bug.py:
573         (Bug.reviewed_patches): Convert filter to list.
574         (Bug.commit_queued_patches): Ditto.
575         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
576         (MockBugzillaQueries.fetch_bug_ids_from_commit_queue): Convert map to list.
577         (MockBugzillaQueries.fetch_attachment_ids_from_review_queue): Ditto.
578         (MockBugzillaQueries.fetch_bug_ids_from_pending_commit_list): Ditto.
579         (MockBugzilla.post_comment_to_bug): Sort cc list before printing.
580         * Scripts/webkitpy/common/net/statusserver.py:
581         (StatusServer.set_api_key): Convert filter to list.
582         * Scripts/webkitpy/common/net/web.py:
583         (Web.get_binary): Use Python 2/3 compatible urlopen.
584         (Web.request): Use Python 2/3 compatible Request.
585         * Scripts/webkitpy/common/prettypatch.py:
586         (PrettyPatch.pretty_diff_file): Encode diff before printing.
587         * Scripts/webkitpy/common/system/executive_mock.py:
588         (MockExecutive.run_and_throw_if_fail): Sort environment before printing.
589         (MockExecutive.run_command): Convert input to string before printing.
590         * Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
591         (FailingTestCommitQueue.test_results): Convert map to list.
592         (MockSimpleTestPlanCommitQueue.test_results): Ditto.
593         * Scripts/webkitpy/tool/bot/feeders.py:
594         (CommitQueueFeeder.feed): Use Python 2/3 compatible sort.
595         (CommitQueueFeeder._patch_cmp): Deleted.
596         * Scripts/webkitpy/tool/bot/flakytestreporter.py:
597         (FlakyTestReporter._lookup_bug_for_flaky_test): Convert filter to list.
598         * Scripts/webkitpy/tool/bot/irc_command.py:
599         (Whois.execute): Convert map to list.
600         * Scripts/webkitpy/tool/bot/retrylogic_unittest.py:
601         (JSCEarlyWarningSystemTest._create_task): Convert map to list.
602         * Scripts/webkitpy/tool/bot/sheriff.py:
603         * Scripts/webkitpy/tool/commands/applywatchlistlocal_unittest.py: Use sorted lists
604         Instead of sets.
605         * Scripts/webkitpy/tool/commands/download.py:
606         (AbstractPatchSequencingCommand.__init__): Use Python 2/3 compatible sort.
607         * Scripts/webkitpy/tool/commands/download_unittest.py: Sort environment.
608         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
609         (AbstractEarlyWarningSystem.load_ews_classes): str.translate differs between Python 2
610         and Python 3.
611         * Scripts/webkitpy/tool/commands/newcommitbot.py:
612         (NewCommitBot._summarize_commit_log): Convert filter to list.
613         * Scripts/webkitpy/tool/commands/queues.py:
614         (AbstractQueue.should_continue_work_queue): Handle case where iterations is a MagicMock.
615         (AbstractQueue._log_from_script_error_for_upload): Explicitly use BytesIO
616         * Scripts/webkitpy/tool/commands/queues_unittest.py: Use explicit import paths.
617         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py: Sort lists before comparing them.
618         * Scripts/webkitpy/tool/commands/stepsequence.py:
619         (StepSequence.options): Use Python 2/3 compatible sort.
620         * Scripts/webkitpy/tool/commands/suggestnominations.py:
621         (AbstractCommitLogCommand.__init__): Use Python 2/3 compatible sort.
622         (SuggestNominations._print_nominations): Ditto.
623         (SuggestNominations._print_counts): Ditto.
624         (SuggestNominations._print_nominations.nomination_cmp): Deleted.
625         (SuggestNominations._print_counts.counter_cmp): Deleted.
626         * Scripts/webkitpy/tool/mocktool_unittest.py: Use explicit import paths.
627         * Scripts/webkitpy/tool/multicommandtool.py:
628         (HelpCommand._help_epilog): Convert filter to list, use Python 2/3 compatible sort.
629         (MultiCommandTool._find_all_commands): Use Python 2/3 compatible sort.
630         * Scripts/webkitpy/tool/servers/gardeningserver.py:
631         (GardeningHTTPServer): Use Python 2/3 compatible HTTPServers.
632         * Scripts/webkitpy/tool/servers/rebaselineserver.py:
633         (get_test_baselines.AllPlatformsPort.baseline_search_path): Use list instead of utterable keys.
634         (RebaselineHTTPServer): Use Python 2/3 compatible HTTPServers.
635         (RebaselineHTTPServer.__init__): Ditto.
636         * Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:
637         (GetActualResultFilesTest.test): Use assertEqual instead of assertItemsEqual.
638         * Scripts/webkitpy/tool/servers/reflectionhandler.py:
639         (ReflectionHandler): Use Python 2/3 compatible HTTPServers.
640         * Scripts/webkitpy/tool/steps/applywatchlist.py:
641         (ApplyWatchList.run): Sort cc_emails before printing.
642         * Scripts/webkitpy/tool/steps/applywatchlist_unittest.py: Print sorted list instead
643         of set.
644         * Scripts/webkitpy/tool/steps/confirmdiff.py:
645         (ConfirmDiff._show_pretty_diff): Use Python 2/3 compatible pathname2url.
646         * Scripts/webkitpy/tool/steps/haslanded.py:
647         (HasLanded.convert_to_svn): Use Python 2/3 compatible StringIO.
648         (HasLanded.strip_change_log): Ditto.
649         * Scripts/webkitpy/tool/steps/preparechangelog.py:
650         (PrepareChangeLog._resolve_existing_entry): Convert zip object to list.
651         * Scripts/webkitpy/tool/steps/promptforbugortitle.py: Use Python 2/3 compatible urlparse.
652         * Scripts/webkitpy/tool/steps/steps_unittest.py: Sort environment.
653         * Scripts/webkitpy/w3c/test_exporter.py: Use Python 2/3 compatible HTTPError.
654         * Scripts/webkitpy/w3c/wpt_github.py:
655         (WPTGitHub.remove_label): Use Python 2/3 compatible urllib.quote.
656         (WPTGitHub.is_pr_merged): Use Python 2/3 compatible HTTPError.
657         (WPTGitHub.merge_pr): Ditto.
658         (JSONResponse.__init__):
659
660 2019-12-04  Jonathan Bedard  <jbedard@apple.com>
661
662         Unreviewed, rolling out r253069.
663
664         requests not handling certificate chain correctly in Catalina
665
666         Reverted changeset:
667
668         "results.webkit.org: Sort out certificates on Catalina"
669         https://bugs.webkit.org/show_bug.cgi?id=202837
670         https://trac.webkit.org/changeset/253069
671
672 2019-12-04  Louie Livon-Bemel  <llivonbemel@apple.com>
673
674         Add exclusion rule for text manipulation SPI to exclude based on element class
675         https://bugs.webkit.org/show_bug.cgi?id=204754
676         <rdar://problem/57398802>
677
678         Reviewed by Ryosuke Niwa.
679
680         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
681         (TestWebKitAPI::TEST):
682             - When matching a class, it should work even with other class names on the element.
683             - All children elements should get the same exclusion rule, unless overridden by another rule.
684
685 2019-12-04  youenn fablet  <youenn@apple.com>
686
687         WebProcessPool::terminateServiceWorkerProcess should be renamed terminateServiceWorkers
688         https://bugs.webkit.org/show_bug.cgi?id=204792
689
690         Reviewed by Chris Dumez.
691
692         Renaming testRunner API from terminateServiceWorkerProcess to terminateServiceWorkers.
693
694         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
695         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
696         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
697         (WTR::TestRunner::terminateServiceWorkers):
698         * WebKitTestRunner/InjectedBundle/TestRunner.h:
699         * WebKitTestRunner/TestController.cpp:
700         (WTR::TestController::terminateServiceWorkers):
701         * WebKitTestRunner/TestController.h:
702         * WebKitTestRunner/TestInvocation.cpp:
703         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
704
705 2019-12-04  Patrick Griffis  <pgriffis@igalia.com>
706
707         [GTK][WPE] Add libuuid to install-dependencies
708         https://bugs.webkit.org/show_bug.cgi?id=204705
709
710         Reviewed by Adrian Perez de Castro.
711
712         * gtk/install-dependencies:
713         * wpe/install-dependencies:
714
715 2019-12-04  Tim Horton  <timothy_horton@apple.com>
716
717         Introduce a GPU process
718         https://bugs.webkit.org/show_bug.cgi?id=204343
719
720         Reviewed by Simon Fraser.
721
722         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
723
724 2019-12-03  Megan Gardner  <megan_gardner@apple.com>
725
726         Add disabled highlight API skeleton
727         https://bugs.webkit.org/show_bug.cgi?id=204809
728
729         Reviewed by Ryosuke Niwa.
730
731         * DumpRenderTree/mac/DumpRenderTree.mm:
732         (enableExperimentalFeatures):
733         * WebKitTestRunner/TestController.cpp:
734         (WTR::TestController::resetPreferencesToConsistentValues):
735
736 2019-12-03  Ryosuke Niwa  <rniwa@webkit.org>
737
738         Replace customJavaScriptUserAgentAsSiteSpecificQuirks with customUserAgentAsSiteSpecificQuirks
739         https://bugs.webkit.org/show_bug.cgi?id=204824
740
741         Reviewed by Brent Fulgham.
742
743         Replaced WebKit.WebsitePoliciesCustomJavaScriptUserAgent and WebKit.WebsitePoliciesCustomUserAgents
744         with WebKit.WebsitePoliciesCustomUserAgentAsSiteSpecificQuirksDisabled, which tests that the UA string
745         specified by customUserAgentAsSiteSpecificQuirks is not used when site specific quirks is disabled,
746         and WebKit.WebsitePoliciesCustomUserAgentAsSiteSpecificQuirks, which tests that new property sets
747         UA string for both network requests and JS API.
748
749         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
750         (-[CustomJavaScriptUserAgentDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
751
752 2019-12-03  Andres Gonzalez  <andresg_22@apple.com>
753
754         Focus tracking support in the accessibility isolatedtree.
755         https://bugs.webkit.org/show_bug.cgi?id=204535
756
757         Reviewed by Chris Fleizach.
758
759         FocusElement can run on the secondary AXThread.
760
761         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
762         (WTR::AccessibilityController::focusedElement):
763
764 2019-12-03  John Wilander  <wilander@apple.com>
765
766         Resource Load Statistics (experimental): Delete non-cookie website data after 7 days of no user interaction
767         https://bugs.webkit.org/show_bug.cgi?id=204779
768         <rdar://problem/57578989>
769
770         Reviewed by Alex Christensen.
771
772         These changes are test infrastructure so that TestRunner can
773         control the new setting.
774
775         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
776         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
777         (WTR::InjectedBundle::didReceiveMessageToPage):
778         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
779         (WTR::TestRunner::setStatisticsFirstPartyWebsiteDataRemovalMode):
780         (WTR::TestRunner::statisticsCallDidSetFirstPartyWebsiteDataRemovalModeCallback):
781         * WebKitTestRunner/InjectedBundle/TestRunner.h:
782         * WebKitTestRunner/TestController.cpp:
783         (WTR::TestController::setStatisticsFirstPartyWebsiteDataRemovalMode):
784         * WebKitTestRunner/TestController.h:
785         * WebKitTestRunner/TestInvocation.cpp:
786         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
787         (WTR::TestInvocation::didSetFirstPartyWebsiteDataRemovalMode):
788         * WebKitTestRunner/TestInvocation.h:
789
790 2019-12-03  Jonathan Bedard  <jbedard@apple.com>
791
792         Python 3: Add support in webkitpy.bindings
793         https://bugs.webkit.org/show_bug.cgi?id=204783
794
795         Reviewed by Stephanie Lewis.
796
797         Allow Tools/Scripts/run-bindings-tests to support Python 3.
798
799         * Scripts/webkitpy/bindings/main.py:
800         (BindingsTests.generate_supplemental_dependency): Encode unicode strings before
801         writing to file as bytes.
802
803 2019-12-03  Jonathan Bedard  <jbedard@apple.com>
804
805         results.webkit.org: Sort out certificates on Catalina
806         https://bugs.webkit.org/show_bug.cgi?id=202837
807
808         Unreviewed infrastructure repair.
809
810         Reverting the active parts of r250997 now that the certificates are sorted out.
811
812         * Scripts/webkitpy/results/upload.py:
813         (Upload.upload):
814         (Upload.upload_archive):
815
816 2019-12-03  Jonathan Bedard  <jbedard@apple.com>
817
818         results.webkit.org: Decrease ttl for archives
819         https://bugs.webkit.org/show_bug.cgi?id=204806
820         <rdar://problem/57527644>
821
822         Reviewed by Aakash Jain.
823
824         Make the ttl on the archive tables shorter, drop the existing table and create new ones
825         with a shorter ttl.
826
827         * resultsdbpy/resultsdbpy/model/archive_context.py:
828         (ArchiveContext.ArchiveMetaDataByCommit): Define new ArchiveMetaDataByCommit table.
829         (ArchiveContext.ArchiveChunks): Ditto.
830         * resultsdbpy/resultsdbpy/model/model.py:
831         (Model.__init__): Add archive ttl, 8 weeks by default.
832
833 2019-12-03  Christopher Reid  <chris.reid@sony.com>
834
835         Regular expression hangs in Safari only
836         https://bugs.webkit.org/show_bug.cgi?id=202882
837         <rdar://problem/56236654>
838
839         Reviewed by Yusuke Suzuki.
840
841         * TestWebKitAPI/CMakeLists.txt:
842         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
843         * TestWebKitAPI/Tests/WTF/BumpPointerAllocator.cpp: Added.
844
845 2019-12-03  Jonathan Bedard  <jbedard@apple.com>
846
847         https://bugs.webkit.org/show_bug.cgi?id=204804
848         <rdar://problem/57595666>
849
850         Reviewed by Tim Horton.
851
852         * Scripts/webkitpy/port/mac.py:
853         (MacCatalystPort):
854         (MacCatalystPort._build_driver_flags): Add SDKVARIANT=iosmac to build flags.
855
856 2019-12-03  Antoine Quint  <graouts@apple.com>
857
858         [Web Animations] Add a runtime flag for Web Animations composite operations
859         https://bugs.webkit.org/show_bug.cgi?id=204718
860
861         Reviewed by Dean Jackson.
862
863         * DumpRenderTree/mac/DumpRenderTree.mm:
864         (enableExperimentalFeatures):
865         * DumpRenderTree/win/DumpRenderTree.cpp:
866         (enableExperimentalFeatures):
867
868 2019-12-03  Aakash Jain  <aakash_jain@apple.com>
869
870         Do not retry the EWS build due to flaky failures in layout-test
871         https://bugs.webkit.org/show_bug.cgi?id=204769
872
873         Reviewed by Jonathan Bedard.
874
875         * BuildSlaveSupport/ews-build/steps.py:
876         (AnalyzeLayoutTestsResults.start): Do not retry the build due to flaky tests failures.
877         * BuildSlaveSupport/ews-build/steps_unittest.py:
878         (test_flaky_and_inconsistent_failures_without_clean_tree_failures): expected outcome changed from RETRY to SUCCESS.
879         (test_flaky_and_inconsistent_failures_with_clean_tree_failures): Ditto.
880         (test_flaky_and_consistent_failures_with_clean_tree_failures): Ditto.
881         (test_mildly_flaky_patch_with_some_tree_redness_and_flakiness): Ditto.
882
883 2019-12-03  youenn fablet  <youenn@apple.com>
884
885         Add support for camera rotation when capturing in UIProcess
886         https://bugs.webkit.org/show_bug.cgi?id=204750
887
888         Reviewed by Eric Carlson.
889
890         Add test runner API to set the device rotation specifically for mock camera devices.
891
892         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
893         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
894         (WTR::TestRunner::setMockCameraOrientation):
895         * WebKitTestRunner/InjectedBundle/TestRunner.h:
896         * WebKitTestRunner/TestController.cpp:
897         (WTR::TestController::setMockCameraOrientation):
898         * WebKitTestRunner/TestController.h:
899         * WebKitTestRunner/TestInvocation.cpp:
900         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
901
902 2019-12-03  youenn fablet  <youenn@apple.com>
903
904         Expose WKWebView API to stop ongoing capture
905         https://bugs.webkit.org/show_bug.cgi?id=204787
906
907         Reviewed by Eric Carlson.
908
909         * TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
910         (TestWebKitAPI::TEST):
911         * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
912
913 2019-12-03  youenn fablet  <youenn@apple.com>
914
915         [Cocoa] Run camera capture in UIProcess by default in layout tests
916         https://bugs.webkit.org/show_bug.cgi?id=204512
917
918         Reviewed by Eric Carlson.
919
920         By defaut, enable capture in UIProcess on Cocoa side.
921
922         * WebKitTestRunner/TestController.cpp:
923         (WTR::TestController::resetPreferencesToConsistentValues):
924         (WTR::updateTestOptionsFromTestHeader):
925         * WebKitTestRunner/TestOptions.h:
926         (WTR::TestOptions::hasSameInitializationOptions const):
927
928 2019-12-03  Carlos Garcia Campos  <cgarcia@igalia.com>
929
930         Unreviewed. Focus the location bar on CTRL+l in GTK MiniBrowser
931
932         * MiniBrowser/gtk/BrowserWindow.c:
933         (focusLocationBar):
934         (browser_window_init):
935
936 2019-12-02  Sihui Liu  <sihui_liu@apple.com>
937
938         Cross-thread version StorageQuotaManager
939         https://bugs.webkit.org/show_bug.cgi?id=203971
940         <rdar://problem/57290349>
941
942         Reviewed by Chris Dumez.
943
944         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
945         * TestWebKitAPI/Tests/WebCore/StorageQuotaManager.cpp: Removed as we have a different StorageQuotaManager 
946         implementation now.
947         * WebKitTestRunner/TestController.cpp: reset StorageQuotaManager's quota between tests.
948         (WTR::TestController::resetStateToConsistentValues):
949         (WTR::TestController::resetQuota):
950         * WebKitTestRunner/TestController.h:
951
952 2019-12-02  Saam Barati  <sbarati@apple.com>
953
954         run-jsc should exit with the same signal or exit status that the `jsc` shell does
955         https://bugs.webkit.org/show_bug.cgi?id=204778
956
957         Reviewed by Keith Miller.
958
959         * Scripts/run-jsc:
960
961 2019-12-02  Aakash Jain  <aakash_jain@apple.com>
962
963         Revert - [EWS] Do not retry layout-tests build if the flaky test failures are also present in clean tree run
964         https://bugs.webkit.org/show_bug.cgi?id=204704
965
966         Reverting this, a more generic fix for handling flakiness would be made in Bug 204769.
967
968 2019-12-02  Louie Livon-Bemel  <llivonbemel@apple.com>
969
970         Add helper methods for description and equality to text manipulation SPI
971         https://bugs.webkit.org/show_bug.cgi?id=204758
972         <rdar://problem/57438200>
973
974         Reviewed by Wenson Hsieh.
975
976         Add tests for the new methods. Most are equality tests for various situations, and are moved over from the
977         Safari unit tests I had for the category methods that had the same purpose.
978
979         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
980         (TestWebKitAPI::TEST):
981             - Add test to make sure the content isn't included in the regular -description, but the identifier is. And
982               That -debugDescription does include the contents.
983             - Add many tests equality for various situations, testing both with and without content equality.
984         (TestWebKitAPI::createTextManipulationToken):
985             Add a helper for creating a token in one line.
986
987 2019-12-02  Daniel Bates  <dabates@apple.com>
988
989         REGRESSION (r195080): prepare-ChangeLog does not emit function list for file paths that contain a space
990         https://bugs.webkit.org/show_bug.cgi?id=204236
991
992         Reviewed by Brian Burg.
993
994         Revert the filename escape logic added in <http://trac.webkit.org/changeset/195080> as it broke
995         function list generation in file paths that contain space characters. Function list generation
996         broke because the escaping was performed after line range dictionaries were built up keyed off
997         the unescaped file path. Subsequent code would try to query these dictionaries to build up the
998         changed function list using the escaped file path and never a match. The escaping logic was not
999         necessary to fix the originally reported bug. All that was needed was to use the three-argument
1000         open() call that took a mode. So, remove the escape logic.
1001
1002         * Scripts/prepare-ChangeLog:
1003         (actuallyGenerateFunctionLists):
1004
1005 2019-11-30  Ross Kirsling  <ross.kirsling@sony.com>
1006
1007         test262-runner should dump YAML with correct encoding
1008         https://bugs.webkit.org/show_bug.cgi?id=204493
1009
1010         Reviewed by Saam Barati.
1011
1012         Even though we spit out correctly-encoded output to the terminal, Perl's YAML module insists upon *re*-encoding
1013         to UTF-8 when dumping to file. This works out in the end because an analogous double-decode occurs when loading
1014         from file. Still, it's really annoying that expectations.yaml has garbled (i.e. double-encoded) text.
1015
1016         We shouldn't modify libraries directly, but we can copy-paste DumpFile/LoadFile into Runner.pm and tweak!
1017
1018         * Scripts/test262/Runner.pm:
1019         (DumpFile):
1020         (LoadFile):
1021         Add custom versions of DumpFile/LoadFile which do not execute `binmode $OUT, ':utf8';`.
1022
1023 2019-11-30  Zalan Bujtas  <zalan@apple.com>
1024
1025         [LFC] Expand tests coverage (2648 new tests -> 3980).
1026
1027         * LayoutReloaded/misc/LFC-passing-tests.txt:
1028
1029 2019-11-30  Zalan Bujtas  <zalan@apple.com>
1030
1031         [LFC][IFC] Add support for hyphenate-limit-lines
1032         https://bugs.webkit.org/show_bug.cgi?id=204712
1033         <rdar://problem/57536727>
1034
1035         Reviewed by Antti Koivisto.
1036
1037         * LayoutReloaded/misc/LFC-passing-tests.txt:
1038
1039 2019-11-30  Aakash Jain  <aakash_jain@apple.com>
1040
1041         [EWS] Do not retry layout-tests build if the flaky test failures are also present in clean tree run
1042         https://bugs.webkit.org/show_bug.cgi?id=204704
1043
1044         Reviewed by Alexey Proskuryakov.
1045
1046         * BuildSlaveSupport/ews-build/steps.py:
1047         (AnalyzeLayoutTestsResults.start):
1048         * BuildSlaveSupport/ews-build/steps_unittest.py:
1049         (TestAnalyzeLayoutTestsResults.test_flaky_and_inconsistent_failures_with_clean_tree_failures): Changed expected outcome to SUCCESS.
1050         (TestAnalyzeLayoutTestsResults.test_flaky_and_consistent_failures_with_clean_tree_failures): Ditto.
1051
1052 2019-11-29  Zalan Bujtas  <zalan@apple.com>
1053
1054         [LFC][IFC] Add support for hyphenate-limit-before and hyphenate-limit-after
1055         https://bugs.webkit.org/show_bug.cgi?id=204710
1056         <rdar://problem/57535210>
1057
1058         Reviewed by Antti Koivisto.
1059
1060         * LayoutReloaded/misc/LFC-passing-tests.txt:
1061
1062 2019-11-29  Antti Koivisto  <antti@apple.com>
1063
1064         Add mechanism for enabling internal and experimental features from run-webkit-test command line
1065         https://bugs.webkit.org/show_bug.cgi?id=204702
1066
1067         Reviewed by Antoine Quint.
1068
1069         Add --internal-feature and --experimental-feature flags to TestRunner and run-webkit-tests.
1070         This is useful for running existing tests with different feature enabled without modifying
1071         anything else. For example:
1072
1073         run-webkit-tests --internal-feature LayoutFormattingContextRenderTreeIntegrationEnabled
1074
1075         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1076         (parse_args):
1077         * Scripts/webkitpy/port/base.py:
1078         (Port.internal_feature):
1079         (Port):
1080         (Port.experimental_feature):
1081         * Scripts/webkitpy/port/driver.py:
1082         (Driver.cmd_line):
1083         * WebKitTestRunner/Options.cpp:
1084         (WTR::handleOptionExperimentalFeature):
1085         (WTR::handleOptionInternalFeature):
1086         (WTR::OptionsHandler::OptionsHandler):
1087         * WebKitTestRunner/Options.h:
1088         * WebKitTestRunner/TestController.cpp:
1089         (WTR::TestController::initialize):
1090         (WTR::TestController::testOptionsForTest const):
1091         * WebKitTestRunner/TestController.h:
1092
1093 2019-11-29  Aakash Jain  <aakash_jain@apple.com>
1094
1095         Add a unit-test to new EWS for scenario when there is flakiness with patch and also on clean tree
1096         https://bugs.webkit.org/show_bug.cgi?id=204707
1097         <rdar://problem/57533998>
1098
1099         Unreviewed unit-test.
1100
1101         * BuildSlaveSupport/ews-build/steps_unittest.py:
1102         (TestAnalyzeLayoutTestsResults.test_mildly_flaky_patch_with_some_tree_redness_and_flakiness):
1103
1104 2019-11-29  Aakash Jain  <aakash_jain@apple.com>
1105
1106         Add a unit-test to old EWS for scenario when there is flakiness with patch and also on clean tree
1107         https://bugs.webkit.org/show_bug.cgi?id=204707
1108
1109         Unreviewed unit-test.
1110
1111         * Scripts/webkitpy/tool/bot/commitqueuetask_unittest.py:
1112
1113 2019-11-29  Paulo Matos  <pmatos@igalia.com>
1114
1115         Move jsc-i386 from old to new EWS
1116         https://bugs.webkit.org/show_bug.cgi?id=204667
1117
1118         Reviewed by Aakash Jain.
1119
1120         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1121         (StatusBubble):
1122         * QueueStatusServer/config/queues.py:
1123
1124 2019-11-28  Fujii Hironori  <Hironori.Fujii@sony.com>
1125
1126         Remove ENABLE_KEYBOARD_CODE_ATTRIBUTE and ENABLE_KEYBOARD_KEY_ATTRIBUTE macros
1127         https://bugs.webkit.org/show_bug.cgi?id=204666
1128
1129         Reviewed by Ross Kirsling and Don Olmstead.
1130
1131         * Scripts/webkitperl/FeatureList.pm:
1132         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1133
1134 2019-11-28  Aakash Jain  <aakash_jain@apple.com>
1135
1136         Rename 'submit to new EWS' to 'Submit for EWS analysis'
1137         https://bugs.webkit.org/show_bug.cgi?id=204692
1138
1139         Unreviewed minor fix.
1140
1141         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
1142
1143 2019-11-28  Aakash Jain  <aakash_jain@apple.com>
1144
1145         Old EWS is showing 'Submit to old EWS' button on every patch
1146         https://bugs.webkit.org/show_bug.cgi?id=204691
1147
1148         Unreviewed minor fix.
1149
1150         * QueueStatusServer/handlers/statusbubble.py:
1151         (StatusBubble.get): Disabled Submit to old EWS button since almost all the queues
1152         have been removed from old EWS.
1153
1154 2019-11-28  Diego Pino Garcia  <dpino@igalia.com>
1155
1156         test262-runner ends with SIGPIPE signal
1157         https://bugs.webkit.org/show_bug.cgi?id=194816
1158
1159         Reviewed by Carlos Alberto Lopez Perez.
1160
1161         * Scripts/test262/Runner.pm:
1162         (main):
1163
1164 2019-11-28  Aakash Jain  <aakash_jain@apple.com>
1165
1166         Removed ENABLED_QUEUES logic from ews-app
1167         https://bugs.webkit.org/show_bug.cgi?id=204683
1168
1169         Unreviewed minor fix.
1170
1171         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1172         (StatusBubble): Removed ENABLED_QUEUES.
1173         (StatusBubble._build_bubbles_for_patch):
1174         (StatusBubble._should_show_bubble_for_queue): Deleted.
1175
1176 2019-11-28  Aakash Jain  <aakash_jain@apple.com>
1177
1178         [ews] Enable Windows queue on new EWS
1179         https://bugs.webkit.org/show_bug.cgi?id=204243
1180
1181         Reviewed by Jonathan Bedard.
1182
1183         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py: Enabled windows queue bubble on new EWS.
1184         * BuildSlaveSupport/ews-build/config.json: Enabled the scheduler for windows queue. Removed the disabled Try_Userpass scheduler.
1185         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1186         (BubbleQueueServer): Removed windows ews queue from bot-watcher's dashboard.
1187         * QueueStatusServer/config/queues.py: Removed windows queue from old EWS.
1188
1189 2019-11-28  Philippe Normand  <pnormand@igalia.com>
1190
1191         [GStreamer] Move GL video sink to its own GstBin sub-class
1192         https://bugs.webkit.org/show_bug.cgi?id=204624
1193
1194         Reviewed by Xabier Rodriguez-Calvar.
1195
1196         * Scripts/webkitpy/style/checker.py: White-list the new GLVideoSinkGStreamer GObject implementation.
1197
1198 2019-11-27  Zalan Bujtas  <zalan@apple.com>
1199
1200         [LFC] Unreviewed test gardening.
1201
1202         * LayoutReloaded/misc/LFC-passing-tests.txt: These tests were passing accidentally.
1203
1204 2019-11-26  Fujii Hironori  <Hironori.Fujii@sony.com>
1205
1206         [AppleWin] run-webkit-tests is failing to find bin32/DumpRenderTree since r252834
1207         https://bugs.webkit.org/show_bug.cgi?id=204571
1208
1209         Reviewed by Ross Kirsling.
1210
1211         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1212         (RunWebKitTests.start): Replaced 'bin32' with 'bin64'.
1213
1214 2019-11-25  Kent Tamura  <tkent@chromium.org>
1215
1216         Remove tkent@ from watchlist
1217         https://bugs.webkit.org/show_bug.cgi?id=204599
1218
1219         Reviewed by Chris Dumez.
1220
1221         * Scripts/webkitpy/common/config/watchlist: Remove tkent@
1222
1223 2019-11-25  Wenson Hsieh  <wenson_hsieh@apple.com>
1224
1225         [macOS] Dragged images are only available as .tiff when dropping onto macCatalyst apps
1226         https://bugs.webkit.org/show_bug.cgi?id=204598
1227         <rdar://problem/57093920>
1228
1229         Reviewed by Tim Horton.
1230
1231         Verify that WKWebView is able to provide data in non-TIFF formats when dragging several types of images using a
1232         new API test.
1233
1234         * TestWebKitAPI/Tests/mac/DragAndDropTestsMac.mm:
1235
1236 2019-11-25  Ross Kirsling  <ross.kirsling@sony.com>
1237
1238         [Win] Ensure MiniBrowser can be built with !ENABLE(WEBKIT_LEGACY)
1239         https://bugs.webkit.org/show_bug.cgi?id=204592
1240
1241         Reviewed by Don Olmstead.
1242
1243         * MiniBrowser/win/CMakeLists.txt:
1244         * MiniBrowser/win/Common.cpp:
1245         (parseCommandLine):
1246         * MiniBrowser/win/Common.h:
1247         * MiniBrowser/win/MainWindow.cpp:
1248         (MainWindow::init):
1249         (MainWindow::WndProc):
1250         * MiniBrowser/win/WinMain.cpp:
1251         (wWinMain):
1252         * PlatformWin.cmake:
1253
1254 2019-11-25  Fujii Hironori  <Hironori.Fujii@sony.com>
1255
1256         Add DefaultHash<OptionSet<T>> and HashTrait<OptionSet<T>> specializations
1257         https://bugs.webkit.org/show_bug.cgi?id=204562
1258
1259         Reviewed by Daniel Bates.
1260
1261         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
1262         Added a new test WTF_OptionSet.HashSet.
1263
1264 2019-11-25  Philippe Normand  <pnormand@igalia.com>
1265
1266         [JHBuild] xserver build fails
1267         https://bugs.webkit.org/show_bug.cgi?id=204577
1268
1269         Reviewed by Žan Doberšek.
1270
1271         * gtk/jhbuild.modules: Bump libdrm and add implicit dependency to
1272         it via mesa for the xserver recipe.
1273
1274 2019-11-25  Charlie Turner  <cturner@igalia.com>
1275
1276         [GStreamer] Flatten MediaPlayerPrivateGStreamer into MediaPlayerPrivateGStreamerBase
1277         https://bugs.webkit.org/show_bug.cgi?id=204352
1278
1279         Reviewed by Philippe Normand.
1280
1281         * Scripts/webkitpy/style/checker.py: The base class no longer
1282         exists, perform the check on the player private.
1283
1284 2019-11-25  Zan Dobersek  <zdobersek@igalia.com>
1285
1286         [GTK][WPE] libgpg-error fails to build with gawk 5
1287         https://bugs.webkit.org/show_bug.cgi?id=204568
1288
1289         Reviewed by Frédéric Wang.
1290
1291         Gawk 5 throws errors when compiling libgpg-error. To avoid those, we
1292         have to bump libgpg-error to the latest 1.36 version and have the
1293         upstream fix applied on top of that.
1294
1295         Autoreconf has to be invoked to regenerate automake files. Because
1296         autogen.sh script (which is present in the release tarballs) falters
1297         under jhbuild, we invoke autoreconf directly for libgpg-error builds.
1298
1299         * gtk/jhbuild.modules:
1300         * gtk/patches/libgpg-error-prepare-for-gawk-5-0.patch: Added.
1301         * wpe/jhbuild.modules:
1302         * wpe/patches/libgpg-error-prepare-for-gawk-5-0.patch: Added.
1303
1304 2019-11-23  John Wilander  <wilander@apple.com>
1305
1306         Resource Load Statistics: Allow multiple third-party cookie blocking settings
1307         https://bugs.webkit.org/show_bug.cgi?id=204389
1308         <rdar://problem/57344054>
1309
1310         Reviewed by Brent Fulgham.
1311
1312         This change allows the existing TestRunner function
1313         setStatisticsShouldBlockThirdPartyCookies() to set an optional boolean
1314         parameter onlyOnSitesWithoutUserInteraction to opt in to that behavior.
1315
1316         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1317         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1318         (WTR::TestRunner::setStatisticsShouldBlockThirdPartyCookies):
1319         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1320         * WebKitTestRunner/TestController.cpp:
1321         (WTR::TestController::setStatisticsShouldBlockThirdPartyCookies):
1322         * WebKitTestRunner/TestController.h:
1323         * WebKitTestRunner/TestInvocation.cpp:
1324         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1325
1326 2019-11-23  Commit Queue  <commit-queue@webkit.org>
1327
1328         Unreviewed, rolling out r252805.
1329         https://bugs.webkit.org/show_bug.cgi?id=204553
1330
1331         Caused test failures and ASan crashes (Requested by ap on
1332         #webkit).
1333
1334         Reverted changeset:
1335
1336         "Cross-thread version StorageQuotaManager"
1337         https://bugs.webkit.org/show_bug.cgi?id=203971
1338         https://trac.webkit.org/changeset/252805
1339
1340 2019-11-23  Per Arne Vollan  <pvollan@apple.com>
1341
1342         Archive step is failing after r252827
1343         https://bugs.webkit.org/show_bug.cgi?id=204548
1344
1345         Reviewed by Alexey Proskuryakov.
1346
1347         After https://trac.webkit.org/changeset/252827/webkit, the archive step is failing.
1348
1349         * BuildSlaveSupport/built-product-archive:
1350         (createZip):
1351
1352 2019-11-23  Andres Gonzalez  <andresg_22@apple.com>
1353
1354         Run LayoutTests/accessibility/mac/primary-screen-height.html on secondary accessibility thread.
1355         https://bugs.webkit.org/show_bug.cgi?id=204391
1356
1357         Reviewed by Chris Fleizach.
1358
1359         Added AccessibilityController::execute to execute any
1360         AccessibilityUIElement call into AccessibilityObjectWrapper on the
1361         secondary accessibility thread.
1362
1363         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
1364         (WTR::AccessibilityController::rootElement): leftover from previous review.
1365         (WTR::AccessibilityController::execute): added this to execute any AccessibilityUIElement method on the appropriate thread.
1366         * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
1367         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1368         (WTR::AccessibilityUIElement::getChildrenWithRange): Runs on secondary thread.
1369         (WTR::AccessibilityUIElement::numberAttributeValue): Runs on secondary thread.
1370
1371 2019-11-22  Per Arne Vollan  <pvollan@apple.com>
1372
1373         Set 64-bit as default architecture on Windows
1374         https://bugs.webkit.org/show_bug.cgi?id=204477
1375
1376         Reviewed by Ross Kirsling.
1377
1378         This will make 64-bit building and testing the default.
1379
1380         * Scripts/webkitdirs.pm:
1381         (determineIsWin64):
1382         * Scripts/webkitpy/port/win.py:
1383         (WinPort):
1384
1385 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
1386
1387         run-javascriptcore-tests: Failure to determine configuration for reporting is fatal
1388         https://bugs.webkit.org/show_bug.cgi?id=204526
1389
1390         Reviewed by Aakash Jain.
1391
1392         * Scripts/run-javascriptcore-tests:
1393         (configurationForUpload): Use uname as the default upload configuration 
1394
1395 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
1396
1397         results.webkit.org/api/failures should return an error when no test-run is found for specified criteria
1398         https://bugs.webkit.org/show_bug.cgi?id=204385
1399         <rdar://problem/57334389>
1400
1401         Rubber-stamped by Aakash Jain.
1402
1403         * resultsdbpy/resultsdbpy/controller/failure_controller.py:
1404         (FailureController.failures): Return a 404 error if no test runs are found.
1405         * resultsdbpy/resultsdbpy/controller/failure_controller_unittest.py:
1406         (FailureControllerTest):
1407         (FailureControllerTest.test_no_runs):
1408         * resultsdbpy/resultsdbpy/model/failure_context.py:
1409         (FailureContext._failures): Return 'None' if no test runs are found.
1410         * resultsdbpy/resultsdbpy/model/failure_context_unittest.py:
1411         (FailureContextTest):
1412         (FailureContextTest.test_no_test_runs):
1413
1414 2019-11-22  Chris Dumez  <cdumez@apple.com>
1415
1416         HTTPHeaderMap's operator== is not fully correct
1417         https://bugs.webkit.org/show_bug.cgi?id=204361
1418
1419         Reviewed by Alex Christensen.
1420
1421         Add API test coverage.
1422
1423         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1424         * TestWebKitAPI/Tests/WebCore/HTTPHeaderMap.cpp: Added.
1425         (TestWebKitAPI::TEST):
1426
1427 2019-11-22  Sihui Liu  <sihui_liu@apple.com>
1428
1429         Cross-thread version StorageQuotaManager
1430         https://bugs.webkit.org/show_bug.cgi?id=203971
1431         <rdar://problem/57290349>
1432
1433         Reviewed by Chris Dumez.
1434
1435         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1436         * TestWebKitAPI/Tests/WebCore/StorageQuotaManager.cpp: Removed as we have a different StorageQuotaManager 
1437         implementation now.
1438         * WebKitTestRunner/TestController.cpp: reset StorageQuotaManager's quota between tests.
1439         (WTR::TestController::resetStateToConsistentValues):
1440         (WTR::TestController::resetQuota):
1441         * WebKitTestRunner/TestController.h:
1442
1443 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
1444
1445         Unreviewed, rolling out r252791.
1446
1447         Cannot use key on scalar in some perl versions
1448
1449         Reverted changeset:
1450
1451         "run-javascriptcore-tests: Failure to determine configuration
1452         for reporting is fatal"
1453         https://bugs.webkit.org/show_bug.cgi?id=204526
1454         https://trac.webkit.org/changeset/252791
1455
1456 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
1457
1458         run-javascriptcore-tests: Failure to determine configuration for reporting is fatal
1459         https://bugs.webkit.org/show_bug.cgi?id=204526
1460
1461         Reviewed by Aakash Jain.
1462
1463         * Scripts/run-javascriptcore-tests:
1464         (configurationForUpload): Return empty hash if no configuration is available.
1465         (uploadResults): Soft-fail upload if configuration is empty.
1466
1467 2019-11-22  Aakash Jain  <aakash_jain@apple.com>
1468
1469         Setup EWS queue for JSConly i386
1470         https://bugs.webkit.org/show_bug.cgi?id=204523
1471
1472         Reviewed by Jonathan Bedard.
1473
1474         * BuildSlaveSupport/ews-build/config.json:
1475
1476 2019-11-22  Aakash Jain  <aakash_jain@apple.com>
1477
1478         [ews] Add KillOldProcesses step before running JSC tests
1479         https://bugs.webkit.org/show_bug.cgi?id=204525
1480
1481         Reviewed by Jonathan Bedard.
1482
1483         * BuildSlaveSupport/ews-build/factories.py:
1484
1485 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
1486
1487         run-javascriptcore-tests: Hide the output of binaries behind --verbose
1488         https://bugs.webkit.org/show_bug.cgi?id=204386
1489
1490         Reviewed by Aakash Jain.
1491
1492         * Scripts/run-javascriptcore-tests:
1493         (runTest): Do not log binary output by default, always log test failures.
1494
1495 2019-11-22  Aakash Jain  <aakash_jain@apple.com>
1496
1497         [ews] Add basic commit-queue support in new EWS
1498         https://bugs.webkit.org/show_bug.cgi?id=204517
1499
1500         Reviewed by Jonathan Bedard.
1501
1502         * BuildSlaveSupport/ews-build/config.json:
1503         * BuildSlaveSupport/ews-build/factories.py:
1504         * BuildSlaveSupport/ews-build/loadConfig.py:
1505
1506 2019-11-22  Jonathan Bedard  <jbedard@apple.com>
1507
1508         run-webkit-tests: Failing to run spindump shouldn't be fatal
1509         https://bugs.webkit.org/show_bug.cgi?id=204518
1510         <rdar://problem/57397417>
1511
1512         Reviewed by Aakash Jain.
1513
1514         * Scripts/webkitpy/port/darwin.py:
1515         (DarwinPort.sample_process): Catch script error.
1516
1517 2019-11-22  Paulo Matos  <pmatos@igalia.com>
1518
1519         Remove JSC 32bit ARMv7 and MipsEl old EWS queues
1520         https://bugs.webkit.org/show_bug.cgi?id=204344
1521
1522         Reviewed by Aakash Jain.
1523
1524         Remove JSC armv7 and mips from old EWS queue and fix bubbles
1525         by removing them from old ews and adding them to new ews.
1526
1527         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1528         (BubbleQueueServer):
1529         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1530         (StatusBubble):
1531         * QueueStatusServer/config/queues.py:
1532
1533 2019-11-22  Paulo Matos  <pmatos@igalia.com>
1534
1535         Support JSCOnly platform in test reporting
1536         https://bugs.webkit.org/show_bug.cgi?id=204495
1537
1538         Reviewed by Carlos Garcia Campos.
1539
1540         Add JSCOnly to possible platforms.
1541
1542         * Scripts/run-javascriptcore-tests:
1543         (configurationForUpload):
1544
1545 2019-11-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1546
1547         [GTK][WPE] RemoteInspector: use sockets instead of DBus
1548         https://bugs.webkit.org/show_bug.cgi?id=204503
1549
1550         Reviewed by Žan Doberšek.
1551
1552         Update the unit tests to not use DBus.
1553
1554         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
1555
1556 2019-11-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1557
1558         [iOS] Web process crashes when attempting to request document context in a textarea
1559         https://bugs.webkit.org/show_bug.cgi?id=204455
1560         <rdar://problem/57383975>
1561
1562         Reviewed by Tim Horton.
1563
1564         Add a test to verify that we don't crash (and are still able to retrieve character rects).
1565
1566         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
1567         (-[UIWKDocumentContext markedTextRects]):
1568         (-[UIWKDocumentContext textRects]):
1569         * TestWebKitAPI/ios/UIKitSPI.h:
1570
1571 2019-11-21  Matt Lewis  <jlewis3@apple.com>
1572
1573         Fix triggers for catalina debug and webgl testers.
1574         https://bugs.webkit.org/show_bug.cgi?id=204456
1575
1576         Reviewed by Jonathan Bedard.
1577
1578         * BuildSlaveSupport/build.webkit.org-config/config.json:
1579
1580 2019-11-21  Jonathan Bedard  <jbedard@apple.com>
1581
1582         build.webkit.org: Forward results database credentials to jsc test runs
1583         https://bugs.webkit.org/show_bug.cgi?id=204453
1584
1585         Reviewed by Aakash Jain.
1586
1587         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1588         (RunJavaScriptCoreTests.__init__): Do not log environment with credentials in it.
1589         (RunJavaScriptCoreTests.start): Add results database API key to environment.
1590         (RunLLINTCLoopTests.__init__): Do not log environment with credentials in it.
1591         (RunLLINTCLoopTests.start): Add results database API key to environment.
1592         (Run32bitJSCTests.__init__): Do not log environment with credentials in it.
1593         (Run32bitJSCTests.start): Add results database API key to environment.
1594
1595 2019-11-21  Jonathan Bedard  <jbedard@apple.com>
1596
1597         run-webkit-tests: Clean-up simulator processes after tearing down simulators
1598         https://bugs.webkit.org/show_bug.cgi?id=204416
1599
1600         Reviewed by Simon Fraser.
1601
1602         * Scripts/webkitpy/common/system/executive_mock.py:
1603         (MockExecutive.running_pids): Make function Python 3 compatible.
1604         * Scripts/webkitpy/xcode/simulated_device.py:
1605         (SimulatedDeviceManager.tear_down): Kill any CoreSimulator processes.
1606
1607 2019-11-21  Pablo Saavedra  <psaavedra@igalia.com>
1608
1609         Fix Tools/Scripts/run-javascriptcore-tests after r252490
1610         https://bugs.webkit.org/show_bug.cgi?id=204452
1611
1612         Rubber-stamped by Philippe Normand
1613
1614         Regression introduced in:
1615
1616           results.webkit.org: Report JSC tests to the results database
1617           https://bugs.webkit.org/show_bug.cgi?id=204091
1618           <rdar://problem/49778900>
1619
1620         WebKitGTK and WPE build environment is defined by the dependencies
1621         policy document [1] as a Debian Stable. For Debian the `uname` binary
1622         is installed in the `/bin/` directory and this directory is included
1623         in the `$PATH` for any regular or system user. This fix removes the
1624         path for the `uname` command in the run-javascriptcore-tests script.
1625         
1626         [1] https://trac.webkit.org/wiki/WebKitGTK/DependenciesPolicy
1627
1628         * Scripts/run-javascriptcore-tests:
1629         (configurationForUpload):
1630
1631 2019-11-20  Jonathan Bedard  <jbedard@apple.com>
1632
1633         run-webkit-tests: Make usability test on booting simulators more robust
1634         https://bugs.webkit.org/show_bug.cgi?id=204423
1635         <rdar://problem/57364735>
1636
1637         Reviewed by Alexey Proskuryakov.
1638
1639         * Scripts/webkitpy/xcode/simulated_device.py:
1640         (SimulatedDevice.is_usable): Use regular expressions to find home-screen service.
1641
1642 2019-11-20  Jonathan Bedard  <jbedard@apple.com>
1643
1644         run-webkit-tests: Do not create global SystemHost objects
1645         https://bugs.webkit.org/show_bug.cgi?id=204426
1646
1647         Reviewed by Aakash Jain.
1648
1649         If created, SystemHost objects should be created on-demand, not globally
1650         shared between all instances of a function.
1651
1652         * Scripts/webkitpy/xcode/simulated_device.py:
1653         (SimulatedDeviceManager.populate_available_devices):
1654         (SimulatedDeviceManager.available_devices):
1655         (SimulatedDeviceManager.device_by_filter):
1656         (SimulatedDeviceManager._create_or_find_device_for_request):
1657         (SimulatedDeviceManager._boot_device):
1658         (SimulatedDeviceManager.device_count_for_type):
1659         (SimulatedDeviceManager.initialize_devices):
1660         (SimulatedDeviceManager.max_supported_simulators):
1661         (SimulatedDeviceManager.swap):
1662         (SimulatedDeviceManager.tear_down):
1663
1664 2019-11-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1665
1666         Correct argument types in UIScriptController::activateDataListSuggestion after r252062
1667         https://bugs.webkit.org/show_bug.cgi?id=203116
1668
1669         Reviewed by Tim Horton.
1670
1671         Use `unsigned` to represent `unsigned long` arguments declared in the IDL.
1672
1673         * DumpRenderTree/mac/UIScriptControllerMac.h:
1674         * DumpRenderTree/mac/UIScriptControllerMac.mm:
1675         (WTR::UIScriptControllerMac::activateDataListSuggestion):
1676         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1677         (WTR::UIScriptController::activateDataListSuggestion):
1678         * WebKitTestRunner/ios/UIScriptControllerIOS.h:
1679         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1680         (WTR::UIScriptControllerIOS::activateDataListSuggestion):
1681         * WebKitTestRunner/mac/UIScriptControllerMac.h:
1682         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1683         (WTR::UIScriptControllerMac::activateDataListSuggestion):
1684
1685 2019-11-20  Fujii Hironori  <Hironori.Fujii@sony.com>
1686
1687         run-api-tests reports AssertionError os.pathsep not in value in _append_value_colon_separated in Cygwin Python
1688         https://bugs.webkit.org/show_bug.cgi?id=204400
1689
1690         Reviewed by Jonathan Bedard.
1691
1692         r249500 changed Port.environment_for_api_tests to use
1693         Port._append_value_colon_separated to append a build path to some
1694         enviroment variables. _append_value_colon_separated has a
1695         assertion to ensure the given value doesn't iclude ':'. However,
1696         Port._build_path contains ':' on Cygwin Python.
1697
1698         Those enviroment variables are only for macOS and iOS. Move the code to darwin.py.
1699
1700         * Scripts/webkitpy/port/base.py:
1701         (Port.environment_for_api_tests):
1702         * Scripts/webkitpy/port/darwin.py:
1703         (DarwinPort.environment_for_api_tests):
1704
1705 2019-11-20  Jonathan Bedard  <jbedard@apple.com>
1706
1707         [WebGL] Add `--webgl-test-suite` flag for run-webkit-tests
1708         https://bugs.webkit.org/show_bug.cgi?id=204327
1709
1710         Rubber-stamped by Aakash Jain.
1711
1712         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1713         (parse_args): Add the --webgl macro command, which is the equivalent of:
1714         'Run-webkit-tests --additional-expectations=LayoutTests/webgl/TestExpectations webgl'
1715
1716 2019-11-20  ChangSeok Oh  <changseok@webkit.org>
1717
1718         Reactivate my committer status.
1719
1720         Unreviewed.
1721
1722         * Scripts/webkitpy/common/config/contributors.json:
1723
1724 2019-11-20  Matt Lewis  <jlewis3@apple.com>
1725
1726         Add trigger for WebGL bot to config.
1727
1728         RS config fix by Jonathan Bedard.
1729
1730         * BuildSlaveSupport/build.webkit.org-config/config.json:
1731
1732 2019-11-19  Matt Lewis  <jlewis3@apple.com>
1733
1734         Bring up WebGL Test Queue.
1735         https://bugs.webkit.org/show_bug.cgi?id=204374
1736
1737         Reviewed by Jonathan Bedard.
1738
1739         * BuildSlaveSupport/build.webkit.org-config/config.json:
1740         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1741
1742 2019-11-20  Jonathan Bedard  <jbedard@apple.com>
1743
1744         [EWS] iOS layout-tests fails with 30+ failures on re-run and on clean-tree
1745         https://bugs.webkit.org/show_bug.cgi?id=204409
1746
1747         Reviewed by Aakash Jain.
1748
1749         * BuildSlaveSupport/ews-build/steps.py:
1750         (RunWebKitPerlTests.evaluateCommand): Add killOldProcesses before running test suite.
1751         (RunJavaScriptCoreTests.evaluateCommand): Ditto.
1752         (ReRunJavaScriptCoreTests.evaluateCommand): Ditto.
1753         (RunWebKitTests.evaluateCommand): Ditto.
1754         (ReRunWebKitTests.evaluateCommand): Ditto.
1755         (RunAPITests.evaluateCommand): Ditto.
1756         (ReRunAPITests.evaluateCommand): Ditto.
1757
1758 2019-11-20  Jonathan Bedard  <jbedard@apple.com>
1759
1760         kill-old-processes: Log currently running processes
1761         https://bugs.webkit.org/show_bug.cgi?id=204415
1762
1763         Unreviewed infrastructure management.
1764
1765         * BuildSlaveSupport/kill-old-processes:
1766         (main): Log 'ps aux' for Mac and Linux.
1767
1768 2019-11-19  Saam Barati  <sbarati@apple.com>
1769
1770         Remove runNullishAwareOperatorsEnabled
1771
1772         Rubber-stamped by Keith Miller.
1773
1774         * Scripts/run-jsc-stress-tests:
1775
1776 2019-11-19  Jonathan Bedard  <jbedard@apple.com>
1777
1778         results.webkit.org: Have build.webkit.org report JSC tests
1779         https://bugs.webkit.org/show_bug.cgi?id=204364
1780
1781         Reviewed by Aakash Jain.
1782
1783         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1784         (RunJavaScriptCoreTests):
1785         (RunWebKitTests):
1786         (RunAPITests):
1787         (RunPythonTests):
1788         (RunLLINTCLoopTests):
1789         (Run32bitJSCTests):
1790
1791 2019-11-19  Aakash Jain  <aakash_jain@apple.com>
1792
1793         Disable reporting EWS test failures from clean-tree to results.webkit.org
1794         https://bugs.webkit.org/show_bug.cgi?id=204369
1795
1796         Reviewed by Jonathan Bedard.
1797
1798         * BuildSlaveSupport/ews-build/steps.py:
1799         (RunWebKitTestsWithoutPatch):
1800         (RunAPITestsWithoutPatch.evaluateCommand):
1801         (RunWebKitTestsWithoutPatch.start): Deleted.
1802         (RunAPITestsWithoutPatch.start): Deleted.
1803         * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
1804         * BuildSlaveSupport/ews-build/loadConfig.py:
1805
1806 2019-11-19  Brian Burg  <bburg@apple.com>
1807
1808         [Cocoa] Add WKUIDelegate SPI to inform clients when a _WKInspector attaches to a WKWebView
1809         https://bugs.webkit.org/show_bug.cgi?id=204300
1810         <rdar://problem/57136993>
1811
1812         Reviewed by Devin Rousso.
1813
1814         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
1815         (-[InspectorDelegate _webView:didAttachInspector:]):
1816         (TEST): Add new test to ensure the delegate is called as expected.
1817
1818 2019-11-19  Sihui Liu  <sihui_liu@apple.com>
1819
1820         Update expectations for bufferedAmount-unchanged-by-sync-xhr.any.worker.html
1821         https://bugs.webkit.org/show_bug.cgi?id=204313
1822
1823         Reviewed by Alex Christensen.
1824
1825         * DumpRenderTree/mac/DumpRenderTree.mm:
1826         (resetWebViewToConsistentStateBeforeTesting):
1827
1828 2019-11-19  Paulo Matos  <pmatos@igalia.com>
1829
1830         Setup EWS queues for JSConly 32bits ARMv7 and MIPSel
1831         https://bugs.webkit.org/show_bug.cgi?id=203946
1832
1833         Reviewed by Aakash Jain.
1834
1835         Naming of queues follow old EWS: jsc-mips for MIPSel
1836         and jsc-armv7 for ARMv7.
1837
1838         * BuildSlaveSupport/ews-build/config.json:
1839         * BuildSlaveSupport/ews-build/steps.py:
1840         (RunJavaScriptCoreTests.start):
1841         (PrintConfiguration.run):
1842         * BuildSlaveSupport/ews-build/steps_unittest.py:
1843         (TestRunJavaScriptCoreTests.test_remote_success):
1844
1845 2019-11-18  John Wilander  <wilander@apple.com>
1846
1847         Check if ITP is on before applying third-party cookie blocking
1848         https://bugs.webkit.org/show_bug.cgi?id=204322
1849         <rdar://problem/57120772>
1850
1851         Reviewed by Chris Dumez and Alexey Proskuryakov.
1852
1853         This is test infrastructure to allow a layout test to
1854         disable ITP in the network process.
1855
1856         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1857         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1858         (WTR::TestRunner::setStatisticsEnabled):
1859         (WTR::TestRunner::setStatisticsDebugMode):
1860         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1861         * WebKitTestRunner/TestController.cpp:
1862         (WTR::TestController::setStatisticsEnabled):
1863         * WebKitTestRunner/TestController.h:
1864         * WebKitTestRunner/TestInvocation.cpp:
1865         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1866
1867 2019-11-18  Fujii Hironori  <Hironori.Fujii@sony.com>
1868
1869         [Win] kill-old-processes should kill WebKitWebProcess.exe and WebKitNetworkProcess.exe
1870         https://bugs.webkit.org/show_bug.cgi?id=204337
1871
1872         Reviewed by Ross Kirsling.
1873
1874         * BuildSlaveSupport/kill-old-processes:
1875         (main): Removed WebKit2WebProcess.exe, and added WebKitWebProcess.exe and WebKitNetworkProcess.exe to
1876         tasksToKillWin.
1877
1878 2019-11-18  Jonathan Bedard  <jbedard@apple.com>
1879
1880         Python 3: Support run-api-tests
1881         https://bugs.webkit.org/show_bug.cgi?id=204252
1882
1883         Rubber-stamped by Aakash Jain.
1884
1885         * Scripts/webkitpy/api_tests/manager.py:
1886         (Manager._collect_tests): Use items over iteritems.
1887         (Manager._print_tests_result_with_status): Use compatible iteritems.
1888         (Manager.run): Use range over xrange, use compatible iteritems.
1889         * Scripts/webkitpy/api_tests/runner.py:
1890         (Runner.run): Use compatible iteritems.
1891         (Runner.result_map_by_status): Ditto.
1892         (_Worker._run_single_test): Server process returns byte arrays, not strings.
1893         (_Worker.handle): Use items over iteritems, use range over xrange.
1894         * Scripts/webkitpy/common/message_pool.py:
1895         (_MessagePool.run): Use range over xrange.
1896         (_MessagePool._start_workers): Ditto.
1897         * Scripts/webkitpy/common/multiprocessing_bootstrap.py: Remove version check.
1898         * Scripts/webkitpy/port/base.py:
1899         (Port.check_api_test_build):Use items over iteritems.
1900         (Port.commits_for_upload): Ditto.
1901         * Scripts/webkitpy/port/server_process.py:
1902         (ServerProcess._reset): Use byte array over string.
1903         (ServerProcess._pop_stdout_line_if_ready): Check for bytes newline.
1904         (ServerProcess._pop_stderr_line_if_ready): Ditto.
1905
1906 2019-11-18  Andres Gonzalez  <andresg_22@apple.com>
1907
1908         Run AccessibilityController::rootElement on secondary thread to simulate HIServices during LayoutTests.
1909         https://bugs.webkit.org/show_bug.cgi?id=204226
1910
1911         Reviewed by Chris Fleizach.
1912
1913         HIServices _AXUIElementUseSecondaryAXThread and _AXUIElementRequestServicedBySecondaryAXThread
1914         do not work for WebKitTestRunner since this is calling directly into
1915         WebCore/accessibility via JavaScript without going through HIServices.
1916         Thus to simulate the behavior of HIServices, AccessibilityController is
1917         spawning a secondary thread to service the JavaScript requests.
1918         The very first request needs to be serviced in the main thread,
1919         and all subsequent requests in the secondary thread. this is what
1920         the behavior would be if using HIServices.
1921         Once the IsolatedTree would be enabled, the first request has to be
1922         served in the main thread in order to build the AXIsolatedTree.
1923
1924         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
1925         (WTR::AccessibilityController::rootElement):
1926         (WTR::AXThread::AXThread):
1927         (WTR::AXThread::isCurrentThread):
1928         (WTR::AXThread::dispatch):
1929         (WTR::AXThread::dispatchBarrier):
1930         (WTR::AXThread::singleton):
1931         (WTR::AXThread::createThreadIfNeeded):
1932         (WTR::AXThread::dispatchFunctionsFromAXThread):
1933         (WTR::AXThread::initializeRunLoop):
1934         (WTR::AXThread::wakeUpRunLoop):
1935         (WTR::AXThread::threadRunLoopSourceCallback):
1936         * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
1937         * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
1938         (WTR::AXThread::initializeRunLoop):
1939         (WTR::AXThread::wakeUpRunLoop):
1940         (WTR::AXThread::threadRunLoopSourceCallback):
1941
1942 2019-11-18  Jonathan Bedard  <jbedard@apple.com>
1943
1944         results.webkit.org: Uncollapsed failures shouldn't include runs with no failures
1945         https://bugs.webkit.org/show_bug.cgi?id=204315
1946
1947         Rubber-stamped by Aakash Jain.
1948
1949         * resultsdbpy/resultsdbpy/model/failure_context.py:
1950         (FailureContext): Do not include test runs which have no failed tests.
1951         * resultsdbpy/resultsdbpy/model/failure_context_unittest.py:
1952         (FailureContextTest):
1953         (FailureContextTest.test_no_failures):
1954
1955 2019-11-18  Aakash Jain  <aakash_jain@apple.com>
1956
1957         Dedicate ews116 to macOS-High-Sierra-Debug-Build-EWS queue
1958         https://bugs.webkit.org/show_bug.cgi?id=204256
1959
1960         Reviewed by Jonathan Bedard.
1961
1962         * BuildSlaveSupport/ews-build/config.json:
1963
1964 2019-11-18  Chris Dumez  <cdumez@apple.com>
1965
1966         TestWebKitAPI.ProcessSwap.QuickBackForwardNavigationWithPSON is a flaky crash
1967         https://bugs.webkit.org/show_bug.cgi?id=199645
1968         <rdar://problem/52856112>
1969
1970         Reviewed by Alex Christensen.
1971
1972         Make sure the test waits for the history navigations to complete before checking the
1973         back/forward list.
1974
1975         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1976
1977 2019-11-18  Keith Rollin  <krollin@apple.com>
1978
1979         Move jsc from Resources to Helpers
1980         https://bugs.webkit.org/show_bug.cgi?id=203970
1981         <rdar://problem/55917748>
1982
1983         Reviewed by Keith Miller.
1984
1985         'jsc' is a supporting application or tool, not a resource. As such, it
1986         should go into Helpers, per
1987         <https://developer.apple.com/library/archive/technotes/tn2206/_index.html#//apple_ref/doc/uid/DTS40007919-CH1-TNTAG201>
1988
1989         * Scripts/run-jsc-stress-tests:
1990         * Scripts/run-layout-jsc:
1991         * Scripts/sunspider-compare-results:
1992         (pathToSystemJSC):
1993         * Scripts/test262/Runner.pm:
1994         (getBuildPath):
1995         * Scripts/webkitdirs.pm:
1996         (jscPath):
1997
1998 2019-11-18  Jonathan Bedard  <jbedard@apple.com>
1999
2000         Python 3: Add support in webkitpy.layout_tests.views
2001         https://bugs.webkit.org/show_bug.cgi?id=204227
2002
2003         Reviewed by Aakash Jain.
2004
2005         * Scripts/test-webkitpy-python3: Add webkitpy.layout_tests.views.
2006         * Scripts/webkitpy/layout_tests/views/buildbot_results.py:
2007         (BuildBotPrinter.print_unexpected_results): Use compatible iteritems.
2008         * Scripts/webkitpy/layout_tests/views/buildbot_results_unittest.py:
2009         (BuildBotPrinterTests.get_printer): Use compatible StringIO object.
2010         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
2011         (MeteredStream.__init__): Use maxsize instead of maxint.
2012         * Scripts/webkitpy/layout_tests/views/metered_stream_unittest.py:
2013         (RegularTest.setUp): Use compatible StringIO, remove buflist.
2014         (RegularTest.test_logging_not_included): Ditto.
2015         (RegularTest._basic): Remove buflist.
2016         (RegularTest.test_basic): Compare against stream value instead of buflist.
2017         (RegularTest._log_after_update): Remove buflist.
2018         (RegularTest.test_log_after_update): Compare against stream value
2019         instead of buflist.
2020         (RegularTest.test_log_args): Ditto.
2021         (RegularTest.test_unicode): We can't join unicode strings and standard strings
2022         in Python 2.
2023         (RegularTest.test_stream_with_encoding): Use compatible StringIO, Python 3 uses
2024         unicode strings.
2025         (TtyTest.test_basic): Compare against stream value instead of buflist.
2026         (TtyTest.test_log_after_update): Ditto.
2027         (VerboseTest.test_basic): Ditto.
2028         (VerboseTest.test_log_after_update): Ditto.
2029         (VerboseTest.test_log_args): Ditto.
2030         (VerboseWithOutTimestamp.test_basic): Ditto.
2031         * Scripts/webkitpy/layout_tests/views/printing_unittest.py:
2032         (Testprinter.assertWritten): Use stream value instead of buflist.
2033         (Testprinter.reset): Use Python 3 compatible steam reset.
2034         (Testprinter.get_printer): Use compatible StringIO.
2035         (Testprinter.test_print_one_line_summary): Compare against stream value instead
2036         of buflist.
2037         (Testprinter.test_test_status_line): Ditto.
2038         (Testprinter.test_print_found): Ditto.
2039
2040 2019-11-18  Simon Fraser  <simon.fraser@apple.com>
2041
2042         Fix alpha value rounding to match the CSS Color spec
2043         https://bugs.webkit.org/show_bug.cgi?id=203597
2044         <rdar://problem/56728546>
2045
2046         Reviewed by Tim Horton.
2047
2048         Fix the test for rounding.
2049
2050         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
2051         (TestWebKitAPI::TEST):
2052
2053 2019-11-16  Wenson Hsieh  <wenson_hsieh@apple.com>
2054
2055         [iOS] [UIWKDocumentContext] Add the ability to request all marked text rects
2056         https://bugs.webkit.org/show_bug.cgi?id=204278
2057         <rdar://problem/56527803>
2058
2059         Reviewed by Tim Horton.
2060
2061         Add an API test to exercise the new request option.
2062
2063         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
2064         (-[UIWKDocumentContext markedTextRects]):
2065         * TestWebKitAPI/ios/UIKitSPI.h:
2066
2067 2019-11-15  Eric Carlson  <eric.carlson@apple.com>
2068
2069         [iOS] Audio capture fails when a track is unmuted
2070         https://bugs.webkit.org/show_bug.cgi?id=204202
2071         <rdar://problem/57005820>
2072
2073         Reviewed by Jer Noble.
2074         
2075         Make WebKit2.CaptureMute failures easier to diagnose.
2076
2077         * TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
2078         (TestWebKitAPI::wkMediaCaptureStateString):
2079         (TestWebKitAPI::waitUntilCaptureState):
2080         (TestWebKitAPI::TEST):
2081
2082 2019-11-15  Myles C. Maxfield  <mmaxfield@apple.com>
2083
2084         [Apple] Enable variation fonts on all Apple platforms
2085         https://bugs.webkit.org/show_bug.cgi?id=198100
2086
2087         Reviewed by Simon Fraser.
2088
2089         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2090
2091 2019-11-15  Aakash Jain  <aakash_jain@apple.com>
2092
2093         [EWS] Update windows bots in config.json
2094         https://bugs.webkit.org/show_bug.cgi?id=204245
2095
2096         Reviewed by Jonathan Bedard.
2097
2098         * BuildSlaveSupport/ews-build/config.json:
2099
2100 2019-11-15  Aakash Jain  <aakash_jain@apple.com>
2101
2102         Windows EWS should not upload archives
2103         https://bugs.webkit.org/show_bug.cgi?id=204229
2104
2105         Reviewed by Jonathan Bedard.
2106
2107         * BuildSlaveSupport/ews-build/factories.py:
2108
2109 2019-11-15  Jonathan Bedard  <jbedard@apple.com>
2110
2111         results.webkit.org: Report JSC tests to the results database
2112         https://bugs.webkit.org/show_bug.cgi?id=204091
2113         <rdar://problem/49778900>
2114
2115         Reviewed by Aakash Jain.
2116
2117         Upload results to the specified results database.
2118
2119         DEMONSTRATION OF FAILURE IN EWS BEHAVIOR, DO NOT LAND!
2120
2121         * Scripts/run-javascriptcore-tests:
2122         (runTest): Parse binary output to mark individual tests as passing
2123         or failing.
2124         (uploadConfiguration): Return a hash map representing the configuration
2125         For this specific test run.
2126         (uploadResults): If a report URL is defined, upload test results to that URL.
2127         * Scripts/webkitdirs.pm:
2128         (splitVersionString): splitVersionString is supposed to be a generally used
2129         function, so should not set a global variable.
2130         (determineOSXVersion): Remove newline from version number.
2131
2132 2019-11-15  Jonathan Bedard  <jbedard@apple.com>
2133
2134         run-webkit-tests loads committers.py 4 times, taking about 40ms
2135         https://bugs.webkit.org/show_bug.cgi?id=204211
2136
2137         Reviewed by Aakash Jain.
2138
2139         * Scripts/webkitpy/common/checkout/changelog.py:
2140         (ChangeLogEntry): Don't create CommitterList on import.
2141         * Scripts/webkitpy/common/checkout/commitinfo.py:
2142         (CommitInfo.__init__): Ditto.
2143
2144 2019-11-15  Aakash Jain  <aakash_jain@apple.com>
2145
2146         [ews] Perform validation of patch before retrying JSC tests
2147         https://bugs.webkit.org/show_bug.cgi?id=204222
2148
2149         Reviewed by Jonathan Bedard.
2150
2151         * BuildSlaveSupport/ews-build/steps.py:
2152         (RunJavaScriptCoreTests.evaluateCommand): Add a ValidatePatch step before retrying.
2153         (ReRunJavaScriptCoreTests.evaluateCommand): Ditto.
2154
2155 2019-11-14  Jonathan Bedard  <jbedard@apple.com>
2156
2157         Python 3: Add support in webkitpy.layout_tests.layout_package
2158         https://bugs.webkit.org/show_bug.cgi?id=204212
2159
2160         Reviewed by Stephanie Lewis.
2161
2162         * Scripts/test-webkitpy-python3: Add webkitpy.layout_tests.layout_package.
2163         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2164         (convert_trie_to_flat_paths): Use compatible iteritems.
2165         (JSONResultsGenerator._insert_failure_summaries): Use compatible iterkeys.
2166         (JSONResultsGenerator._convert_json_to_current_version): Use compatible iteritems.
2167         (JSONResultsGenerator._convert_tests_to_trie): Use compatible iterkeys.
2168         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:
2169         (JSONGeneratorTest._verify_json_results): Use items instead of iteritems.
2170         (JSONGeneratorTest.test_test_timings_trie): Python 3's json decoder is sensitive to ordering.
2171
2172 2019-11-14  Alex Christensen  <achristensen@webkit.org>
2173
2174         Flaky API Test TestWebKitAPI.ServiceWorkers.ThrottleCrash
2175         https://bugs.webkit.org/show_bug.cgi?id=203734
2176
2177         Reviewed by Youenn Fablet.
2178
2179         Some API tests using TCPServer have multiple concurrent HTTP requests in flight at the same time.
2180         When this happens, sometimes NSURLSession will make multiple TCP connections to the same server.
2181         TCPServer is not the right tool for this because it handles all its connections manually.
2182         To make the test server agnostic to how many connections are initiated, I introduce HTTPServer,
2183         which uses the Network framework to handle as many responses and as many connections as happen.
2184
2185         * TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
2186         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2187         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2188         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2189         (TEST):
2190         * TestWebKitAPI/cocoa/HTTPServer.h: Added.
2191         (TestWebKitAPI::HTTPServer::HTTPResponse::HTTPResponse):
2192         * TestWebKitAPI/cocoa/HTTPServer.mm: Added.
2193         (TestWebKitAPI::HTTPServer::HTTPServer):
2194         (TestWebKitAPI::HTTPServer::respondToRequests):
2195         (TestWebKitAPI::HTTPServer::port const):
2196         (TestWebKitAPI::HTTPServer::request const):
2197         * TestWebKitAPI/config.h:
2198
2199 2019-11-14  Jonathan Bedard  <jbedard@apple.com>
2200
2201         Python 3: Add support in webkitpy.layout_tests.servers
2202         https://bugs.webkit.org/show_bug.cgi?id=204209
2203
2204         Reviewed by Stephanie Lewis.
2205
2206         * Scripts/test-webkitpy-python3: Add webkitpy.layout_tests.servers.
2207         * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
2208         (LayoutTestApacheHttpd.__init__): Use compatible iteritems.
2209         * Scripts/webkitpy/layout_tests/servers/http_server.py:
2210         (Lighttpd._prepare_config): Ditto.
2211
2212 2019-11-14  Megan Gardner  <megan_gardner@apple.com>
2213
2214         Fix another build error from r252449
2215         https://bugs.webkit.org/show_bug.cgi?id=204173
2216
2217         Unreviewed Build Fix for r252449
2218
2219         * TestWebKitAPI/ios/UIKitSPI.h:
2220
2221 2019-11-14  Jonathan Bedard  <jbedard@apple.com>
2222
2223         Python 3: Add support in webkitpy.style
2224         https://bugs.webkit.org/show_bug.cgi?id=203762
2225
2226         Reviewed by Stephanie Lewis.
2227
2228         * Scripts/check-webkit-style: Remove Python 2 version check.
2229         * Scripts/test-webkitpy-python3: Add webkitpy.style.
2230         * Scripts/webkitpy/style/checker.py: Use explicit imports.
2231         * Scripts/webkitpy/style/checker_unittest.py:
2232         (GlobalVariablesTest.test_max_reports_per_category): Use keys() over iterkeys.
2233         * Scripts/webkitpy/style/checkers/contributors.py: Use explicit imports.
2234         * Scripts/webkitpy/style/checkers/test_expectations.py:
2235         (TestExpectationsChecker._should_log_linter_warning): Use compatible iteritems.
2236         * Scripts/webkitpy/style/error_handlers_unittest.py: Use explicit imports.
2237         * Scripts/webkitpy/style/filter.py:
2238         (FilterConfiguration._get_path_specific_lower): Return list instead of iterator.
2239         (FilterConfiguration._filter_from_path): Avoid confusion with filter builtin.
2240         * Scripts/webkitpy/style/filter_unittest.py: Use explicit imports.
2241         * Scripts/webkitpy/style/main.py:
2242         (CheckWebKitStyle._engage_awesome_stderr_hacks): No reason to apply encoding to stderr
2243         in Python 3.
2244         * Scripts/webkitpy/style/main_unittest.py: Use explicit imports.
2245         * Scripts/webkitpy/style/patchreader.py:
2246         (PatchReader.check): Ensure that the provided patch is a string, use items over iteritems.
2247
2248 2019-11-14  Megan Gardner  <megan_gardner@apple.com>
2249
2250         Fix build error from r252449
2251         https://bugs.webkit.org/show_bug.cgi?id=204173
2252
2253         Reviewed by Wenson Hsieh.
2254
2255         Include needed header for all platforms, not just iPhone.
2256
2257         * TestWebKitAPI/ios/UIKitSPI.h:
2258
2259 2019-11-14  Brady Eidson  <beidson@apple.com>
2260
2261         Summary: WKWebView is missing an equivalent to WebKit 1's API to set the media style.
2262         <rdar://problem/49862107> and https://bugs.webkit.org/show_bug.cgi?id=203974
2263
2264         Reviewed by Alex Christensen.
2265
2266         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2267         * TestWebKitAPI/Tests/WebKitCocoa/MediaType.mm: Added.
2268         (TEST):
2269         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2270
2271 2019-11-14  Brady Eidson  <beidson@apple.com>
2272
2273         pageZoom/setPageZoom: should not be in a Mac-only part of WKWebView.mm
2274         https://bugs.webkit.org/show_bug.cgi?id=204128
2275
2276         Reviewed by Alex Christensen.
2277
2278         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2279         * TestWebKitAPI/Tests/WebKitCocoa/PageZoom.mm: Added.
2280         (TestWebKitAPI::getClientWidth):
2281         * TestWebKitAPI/cocoa/TestWKWebView.h:
2282         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2283         (-[WKWebView waitUntilClientWidthIs:]):
2284
2285 2019-11-14  Jonathan Bedard  <jbedard@apple.com>
2286
2287         webkitpy: Clarify webkitpy/style/optparser_unittest.py by removing parse variables
2288         https://bugs.webkit.org/show_bug.cgi?id=204183
2289
2290         Reviewed by Stephanie Lewis.
2291
2292         * Scripts/webkitpy/style/optparser_unittest.py:
2293         (ArgumentParserTest.test_parse_documentation): Remove parse variable.
2294         (ArgumentParserTest.test_parse_bad_values): Ditto.
2295         (ArgumentParserTest.test_parse_default_arguments): Ditto.
2296         (ArgumentParserTest.test_parse_explicit_arguments): Ditto.
2297         (ArgumentParserTest.test_parse_files): Ditto.
2298
2299 2019-11-14  Aakash Jain  <aakash_jain@apple.com>
2300
2301         Add support for remotes file for EWS builders (follow-up fix)
2302         https://bugs.webkit.org/show_bug.cgi?id=203899
2303
2304         Unreviewed follow-up fix.
2305
2306         * BuildSlaveSupport/ews-build/factories.py:
2307         (JSCTestsFactory.__init__): Passed remotes parameter to JSCTestsFactory as well.
2308         * BuildSlaveSupport/ews-build/loadConfig_unittest.py: Updated unit-test.
2309
2310 2019-11-14  Aakash Jain  <aakash_jain@apple.com>
2311
2312         [ews] Enable JSC queue on new EWS
2313         https://bugs.webkit.org/show_bug.cgi?id=204179
2314
2315         Reviewed by Jonathan Bedard.
2316
2317         * BuildSlaveSupport/ews-build/config.json: Enabled the scheduler for JSC queue.
2318         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py: Enabled JSC queue bubble on new EWS.
2319         * QueueStatusServer/config/queues.py: Removed JSC queue from old EWS.
2320         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
2321         (BubbleQueueServer): Removed JSC queue from bot-watcher's dashboard.
2322
2323 2019-11-13  Wenson Hsieh  <wenson_hsieh@apple.com>
2324
2325         [Clipboard API] Add support for Clipboard.write()
2326         https://bugs.webkit.org/show_bug.cgi?id=204078
2327         <rdar://problem/57087756>
2328
2329         Reviewed by Ryosuke Niwa.
2330
2331         Make the LocalPasteboard in WebKitTestRunner compatible with calls to -writeObjects: with a list of pasteboard
2332         items. Currently, attempts to -writeObjects: result in a crash, since NSPasteboard code will attempt to
2333         communicate with pasted and fail. We fix this by implementing -writeObjects: and storing the array of
2334         NSPasteboardItems in LocalPasteboard, the same way we do in DumpRenderTree's LocalPasteboard implementation.
2335
2336         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
2337         (-[LocalPasteboard declareTypes:owner:]):
2338         (-[LocalPasteboard _clearContentsWithoutUpdatingChangeCount]):
2339
2340         Factor out logic to clear the pasteboard's content into a separate helper, and clear out the list of saved
2341         pasteboard items here as well.
2342
2343         (-[LocalPasteboard clearContents]):
2344
2345         Implement -clearContents in DumpRenderTree's LocalPasteboard, so that we can test Clipboard.write() in WebKit1.
2346
2347         (-[LocalPasteboard writeObjects:]):
2348
2349         Also make it so that we save any NSPasteboardItems we write to the local pasteboard, so that we can return them
2350         later in -pasteboardItems.
2351
2352         (-[LocalPasteboard pasteboardItems]):
2353         * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
2354         (-[LocalPasteboard initWithName:]):
2355
2356         Clean up this code a bit by replacing manual reference counting for `typesArray` and its neighboring data
2357         structures with `RetainPtr`. Additionally, underscore-prefix the instance variables on LocalPasteboard to match
2358         most of the other Objective-C objects in WebKit.
2359
2360         (-[LocalPasteboard name]):
2361         (-[LocalPasteboard _clearContentsWithoutUpdatingChangeCount]):
2362
2363         Clear out the NSPasteboardItem list here too.
2364
2365         (-[LocalPasteboard clearContents]):
2366         (-[LocalPasteboard declareTypes:owner:]):
2367         (-[LocalPasteboard addTypes:owner:]):
2368         (-[LocalPasteboard _addTypesWithoutUpdatingChangeCount:owner:]):
2369         (-[LocalPasteboard changeCount]):
2370         (-[LocalPasteboard types]):
2371         (-[LocalPasteboard availableTypeFromArray:]):
2372         (-[LocalPasteboard setData:forType:]):
2373         (-[LocalPasteboard dataForType:]):
2374         (-[LocalPasteboard pasteboardItems]):
2375         (-[LocalPasteboard writeObjects:]):
2376
2377         Implement this by porting over the implementation that currently exists in DumpRenderTree. Like in
2378         DumpRenderTree, we want to also save the NSPasteboardItem array we're given here, so that we can return it in
2379         -pasteboardItems.
2380
2381         (-[LocalPasteboard dealloc]): Deleted.
2382
2383 2019-11-13  Megan Gardner  <megan_gardner@apple.com>
2384
2385         Cleanup UIKitSPI for Testing
2386         https://bugs.webkit.org/show_bug.cgi?id=204173
2387
2388         Reviewed by Simon Fraser.
2389
2390         Remove old staging for UIKit APIs that should not be needed now.
2391
2392         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
2393         (TestWebKitAPI::TEST):
2394         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
2395         (TestWebKitAPI::TEST):
2396         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
2397         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
2398         * TestWebKitAPI/ios/UIKitSPI.h:
2399
2400 2019-11-13  Aakash Jain  <aakash_jain@apple.com>
2401
2402         [ews] Add build step to Analyze JSC Tests Results
2403         https://bugs.webkit.org/show_bug.cgi?id=204174
2404
2405         Reviewed by Jonathan Bedard.
2406
2407         * BuildSlaveSupport/ews-build/steps.py:
2408         (ReRunJavaScriptCoreTests.evaluateCommand): invoke AnalyzeJSCTestsResults step.
2409         (AnalyzeJSCTestsResults): Build step to analyze layout-test results.
2410         * BuildSlaveSupport/ews-build/steps_unittest.py:
2411         (TestAnalyzeJSCTestsResults):
2412         (TestAnalyzeJSCTestsResults.test_single_new_stress_failure): Added unit-test.
2413         (TestAnalyzeJSCTestsResults.test_single_new_binary_failure): Ditto.
2414         (TestAnalyzeJSCTestsResults.test_multiple_new_stress_failure): Ditto.
2415         (TestAnalyzeJSCTestsResults.test_multiple_new_binary_failure): Ditto.
2416         (TestAnalyzeJSCTestsResults.test_new_stress_and_binary_failure): Ditto.
2417         (TestAnalyzeJSCTestsResults.test_stress_failure_on_clean_tree): Ditto.
2418         (TestAnalyzeJSCTestsResults.test_binary_failure_on_clean_tree): Ditto.
2419         (TestAnalyzeJSCTestsResults.test_stress_and_binary_failure_on_clean_tree): Ditto.
2420         (TestAnalyzeJSCTestsResults.test_flaky_stress_and_binary_failures): Ditto.
2421         (TestAnalyzeJSCTestsResults.test_flaky_and_consistent_stress_failures): Ditto.
2422         (TestAnalyzeJSCTestsResults.test_flaky_and_consistent_failures_with_clean_tree_failures): Ditto.
2423
2424 2019-11-13  Jonathan Bedard  <jbedard@apple.com>
2425
2426         Python 3: Add support in webkitpy.layout_tests.controllers
2427         https://bugs.webkit.org/show_bug.cgi?id=204180
2428
2429         Reviewed by Stephanie Lewis.
2430
2431         * Scripts/test-webkitpy-python3: Add webkitpy.layout_tests.controllers.
2432         * Scripts/webkitpy/common/message_pool.py:
2433         (_MessagePool.__init__): Use Python 3 queue syntax.
2434         (_MessagePool._can_pickle): Use Python 3 pickle syntax.
2435         (_MessagePool._loop): Use Python 3 queue syntax.
2436         (_Worker.run): Use Python 3 queue syntax.
2437         (_Worker._raise): Python 2 and Python 3 have different semantics for raising an exception
2438         With a stack trace. However, 'raise' will raise the exception we are in the process of capturing,
2439         Which is exactly what we want in this case.
2440         * Scripts/webkitpy/common/read_checksum_from_png.py:
2441         (read_checksum): Standardize checksum as a string.
2442         * Scripts/webkitpy/common/system/filesystem.py:
2443         (FileSystem.write_binary_file): Binary files should be written with bytes, not strings.
2444         * Scripts/webkitpy/common/system/filesystem_mock.py:
2445         (MockFileSystem.write_binary_file): Binary files should be written with bytes, not strings.
2446         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder_unittest.py: assertItemsEqual is not
2447         Defined in Python 3.
2448         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2449         (Worker._do_post_tests_work): Use compatible iteritems.
2450         (Sharder._shard_by_directory): Ditto.
2451         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2452         (Manager.run): Use compatible itervalues.
2453         (Manager._look_for_new_crash_logs): Use Python 3 item iteration.
2454         (Manager._results_to_upload_json_trie): Use compatible itervalues.
2455         (Manager._stats_trie): Use compatible iteritems.
2456         * Scripts/webkitpy/port/base.py:
2457         (Port.expected_text): Be explicit about decoding text expectations.
2458         * Scripts/webkitpy/port/mock_drt.py:
2459         (MockDRT.write_test_output):
2460
2461 2019-11-13  Per Arne Vollan  <pvollan@apple.com>
2462
2463         REGRESSION: WKWebView navigation fails when navigating from about:blank
2464         https://bugs.webkit.org/show_bug.cgi?id=203852
2465
2466         Reviewed by Brent Fulgham.
2467
2468         * TestWebKitAPI/Tests/WebKitCocoa/LoadFileURL.mm:
2469         (TEST):
2470
2471 2019-11-13  Fujii Hironori  <Hironori.Fujii@sony.com>
2472
2473         [Win][DumpRenderTree][WebKitTestRunner] eventSender.keyDown should support function keys
2474         https://bugs.webkit.org/show_bug.cgi?id=204146
2475
2476         Reviewed by Ross Kirsling.
2477
2478         Changed eventSender.keyDown of DRT and WTR to support sending
2479         function keys.
2480
2481         In addition to that, this change set correct scan code to LPARAM
2482         for all key events. Unfortunately, there is no API to get a
2483         correct extended scan code from a virtual key because
2484         MapVirtualKey and MapVirtualKeyEx doesn't work as expected.
2485         makeKeyDataForScanCode turns on KF_EXTENDED flag for some keys
2486         explicitly for the workaround.
2487         <http://www.setnode.com/blog/mapvirtualkey-getkeynametext-and-a-story-of-how-to/>
2488
2489         * DumpRenderTree/win/EventSender.cpp:
2490         (makeKeyDataForScanCode):
2491         (keyDownCallback):
2492         * WebKitTestRunner/win/EventSenderProxyWin.cpp:
2493         (WTR::makeKeyDataForScanCode):
2494         (WTR::EventSenderProxy::keyDown):
2495
2496 2019-11-13  Jonathan Bedard  <jbedard@apple.com>
2497
2498         Python 3: Add support in webkitpy.style.checkers
2499         https://bugs.webkit.org/show_bug.cgi?id=203761
2500
2501         Rubber-stamped by Stephanie Lewis.
2502
2503         * Scripts/test-webkitpy-python3: Add webkitpy.style.checkers.
2504         * Scripts/webkitpy/port/builders.py:
2505         (all_port_names): Convert map to a list before concatenating.
2506         * Scripts/webkitpy/style/checkers/changelog.py: Use explicit imports.
2507         * Scripts/webkitpy/style/checkers/changelog_unittest.py: Ditto.
2508         * Scripts/webkitpy/style/checkers/cmake.py: Ditto.
2509         * Scripts/webkitpy/style/checkers/cmake_unittest.py: Ditto.
2510         * Scripts/webkitpy/style/checkers/common_unittest.py: Ditto.
2511         * Scripts/webkitpy/style/checkers/contributors.py: Ditto.
2512         * Scripts/webkitpy/style/checkers/cpp.py:
2513         (Position): Add rich comparison functions.
2514         (check_for_copyright): Use range instead of xrange.
2515         (detect_functions): Ditto.
2516         (check_language): Use r-string.
2517         (check_for_include_what_you_use): Use range instead of xrange.
2518         (_process_lines): Convert iterator to list, use range instead of xrange.
2519         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2520         (CppStyleTest): Be explicit about bytes vs strings.
2521         * Scripts/webkitpy/style/checkers/js.py: Use explicit imports.
2522         * Scripts/webkitpy/style/checkers/js_unittest.py: Ditto.
2523         * Scripts/webkitpy/style/checkers/jsonchecker.py: Ditto.
2524         (JSONFeaturesChecker.check):
2525         * Scripts/webkitpy/style/checkers/jsonchecker_unittest.py: Ditto.
2526         (JSONCheckerTest.test_conflict_marker): Differentiate between Python 2 and 3
2527         json parsers.
2528         * Scripts/webkitpy/style/checkers/jstest_unittest.py: Use explicit imports.
2529         * Scripts/webkitpy/style/checkers/messagesin.py: Ditto.
2530         * Scripts/webkitpy/style/checkers/messagesin_unittest.py: Ditto.
2531         * Scripts/webkitpy/style/checkers/png_unittest.py: Ditto.
2532         * Scripts/webkitpy/style/checkers/python.py:
2533         (PythonChecker.check): Only run pylint in Python 2.
2534         (PythonChecker._check_pylint): Use r string.
2535         (Pylinter.run): Surpress logging from Pylint.
2536         * Scripts/webkitpy/style/checkers/python_unittest.py: Use explicit imports.
2537         (PythonCheckerTest.test_check): Add FIXME for running pylint in Python 3.
2538         * Scripts/webkitpy/style/checkers/python_unittest_falsepositives.py:
2539         * Scripts/webkitpy/style/checkers/python_unittest_input.py:
2540         * Scripts/webkitpy/style/checkers/test_expectations.py: Use explicit imports.
2541         * Scripts/webkitpy/style/checkers/test_expectations_unittest.py: Ditto.
2542         * Scripts/webkitpy/style/checkers/text.py: Ditto.
2543         * Scripts/webkitpy/style/checkers/text_unittest.py: Ditto.
2544         * Scripts/webkitpy/style/checkers/watchlist_unittest.py: Ditto.
2545         * Scripts/webkitpy/style/checkers/xcodeproj_unittest.py: Ditto.
2546         * Scripts/webkitpy/style/checkers/xml_unittest.py: Ditto.
2547         * Scripts/webkitpy/thirdparty/__init__.py:
2548         (AutoinstallImportHook._install_pep8): Update pep8 version.
2549
2550 2019-11-13  Jer Noble  <jer.noble@apple.com>
2551
2552         Link mediaDataLoadsAutomatically setting to AutoplayPolicy
2553         https://bugs.webkit.org/show_bug.cgi?id=201738
2554         <rdar://problem/55315194>
2555
2556         Reviewed by Eric Carlson.
2557
2558         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2559         * TestWebKitAPI/Tests/WebKit/media-loading.html: Added.
2560         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2561         (TEST):
2562
2563 2019-11-13  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2564
2565         test262-runner: use NUMBER_OF_PROCESSORS and stop multiplying the number of cores.
2566         https://bugs.webkit.org/show_bug.cgi?id=204154
2567
2568         Reviewed by Ross Kirsling.
2569
2570         We have enabled running test262 on GTK and WPE test bots on r252362
2571         But it seems this test262 runner is not respecting the environment
2572         variable NUMBER_OF_PROCESSORS. We set that on the bot environments
2573         to tell each worker how much parallelism it should use.
2574
2575         Instead this runner was using all the system cores (which on some
2576         cases is 256) and that was causing issues on other containers/workloads
2577         running on the same system at the same time.
2578
2579         This environment variable is understood by all webkit-related test scripts.
2580         It should be accepted also by this test262 runner script.
2581
2582         On top of that, this patch removes the multiplication that is done
2583         when the number of parallel jobs is not specified and its calculated
2584         from the available cores of the system. On one hand there is no
2585         written motivation for this multiplication behaviour, and on the other
2586         hand there is evidence that it doesn't improve performance.
2587
2588         * Scripts/test262/Runner.pm:
2589         (getProcesses):
2590
2591 2019-11-13  Myles C. Maxfield  <mmaxfield@apple.com>
2592
2593         [Mac] Fix build
2594         https://bugs.webkit.org/show_bug.cgi?id=204136
2595
2596         Reviewed by Alex Christensen.
2597
2598         Remove deprecation warnings.
2599
2600         * MiniBrowser/mac/SettingsController.m:
2601         (-[SettingsController validateMenuItem:]):
2602         * MiniBrowser/mac/WK1BrowserWindowController.m:
2603         (-[WK1BrowserWindowController validateMenuItem:]):
2604         * MiniBrowser/mac/WK2BrowserWindowController.m:
2605         (-[WK2BrowserWindowController validateMenuItem:]):
2606         * TestWebKitAPI/Tests/mac/LegacyDragAndDropTests.mm:
2607         (-[DragInfo ALLOW_DEPRECATED_IMPLEMENTATIONS_END]):
2608         (-[DragInfo draggedImage]): Deleted.
2609
2610 2019-11-13  Megan Gardner  <megan_gardner@apple.com>
2611
2612         check-webkit-style: fix false errors for obj-c method calls in range-based for statements using colon syntax
2613         https://bugs.webkit.org/show_bug.cgi?id=204142
2614
2615         Reviewed by Jonathan Bedard.
2616
2617         Allow for the existance of an obj-c method call in a range-based for statement that also uses colons.
2618         Do not allow colons between square brackets to trigger the error.
2619         Also add a test for this specific case.
2620
2621         * Scripts/webkitpy/style/checkers/cpp.py:
2622         (check_spacing):
2623         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2624         (WebKitStyleTest.test_spacing):
2625
2626 2019-11-13  Aakash Jain  <aakash_jain@apple.com>
2627
2628         [EWS] Parse jsc_results.json for JSC tests
2629         https://bugs.webkit.org/show_bug.cgi?id=204090
2630
2631         Reviewed by Jonathan Bedard.
2632
2633         * BuildSlaveSupport/ews-build/steps.py:
2634         (RunJavaScriptCoreTests):
2635         (RunJavaScriptCoreTests.start): Initialize log_observer for json.
2636         (RunJavaScriptCoreTests.commandComplete): Parse jsc_results.json and set properties accordingly.
2637         (RunJavaScriptCoreTests.getResultSummary): Update the build-step summary string.
2638         (ReRunJavaScriptCoreTests):
2639         (RunJSCTestsWithoutPatch):
2640         * BuildSlaveSupport/ews-build/steps_unittest.py:
2641         (TestRunJavaScriptCoreTests.setUp): Added sample json files for testing.
2642         (TestRunJavaScriptCoreTests.configureStep):
2643         (TestRunJavaScriptCoreTests.test_single_stress_test_failure): Added unit-tests.
2644         (TestRunJavaScriptCoreTests.test_lot_of_stress_test_failure): Ditto.
2645         (TestRunJavaScriptCoreTests.test_masm_failure): Ditto.
2646         (TestRunJavaScriptCoreTests.test_b3_and_stress_test_failure): Ditto.
2647         (TestRunJavaScriptCoreTests.test_dfg_air_and_stress_test_failure): Ditto.
2648
2649 2019-11-13  Youenn Fablet  <youenn@apple.com>
2650
2651         Take service worker assertions based on client processes assertion states
2652         https://bugs.webkit.org/show_bug.cgi?id=204119
2653
2654         Reviewed by Chris Dumez.
2655
2656         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2657         Add tests checking service worker process assertion state.
2658
2659 2019-11-13  Aakash Jain  <aakash_jain@apple.com>
2660
2661         Make webkitperl EWS robust against flakiness in webkitperl tests
2662         https://bugs.webkit.org/show_bug.cgi?id=204155
2663
2664         Reviewed by Jonathan Bedard.
2665
2666         * BuildSlaveSupport/ews-build/steps.py:
2667         (RunWebKitPerlTests): Set haltOnFailure and flunkOnFailure to false.
2668         (RunWebKitPerlTests.evaluateCommand): Add re-run step in case of failure.
2669         (ReRunWebKitPerlTests):
2670         (ReRunWebKitPerlTests.evaluateCommand): Overrided this to avoid running this step again.
2671         * BuildSlaveSupport/ews-build/steps_unittest.py:
2672         (TestReRunJavaScriptCoreTests): Added unit-tests.
2673
2674 2019-11-13  Aakash Jain  <aakash_jain@apple.com>
2675
2676         Flaky API Test TestWebKitAPI.ServiceWorkers.ThrottleCrash
2677         https://bugs.webkit.org/show_bug.cgi?id=203734
2678         <rdar://problem/56814638>
2679
2680         Unreviewed test gardening.
2681
2682         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm: Disabled the flaky test for now.
2683
2684 2019-11-13  Aakash Jain  <aakash_jain@apple.com>
2685
2686         Flaky API Test TestWebKitAPI.WebKit.ApplicationCacheDirectories
2687         https://bugs.webkit.org/show_bug.cgi?id=203732
2688         <rdar://problem/56814641>
2689
2690         Unreviewed test gardening.
2691
2692         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm: Disabled the flaky test for now.
2693
2694 2019-11-13  Rob Buis  <rbuis@igalia.com>
2695
2696         Support stale-while-revalidate cache strategy
2697         https://bugs.webkit.org/show_bug.cgi?id=201461
2698
2699         Reviewed by Youenn Fablet.
2700
2701         Enable stale-while-revalidate for the test runner.
2702
2703         * WebKitTestRunner/TestController.cpp:
2704         (WTR::TestController::websiteDataStore):
2705
2706 2019-11-12  Wenson Hsieh  <wenson_hsieh@apple.com>
2707
2708         [iOS] WKWebView does not respect system spellchecking preference
2709         https://bugs.webkit.org/show_bug.cgi?id=204100
2710         <rdar://problem/56653808>
2711
2712         Reviewed by Tim Horton.
2713
2714         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2715         * DumpRenderTree/cocoa/UIScriptControllerCocoa.h:
2716         * DumpRenderTree/cocoa/UIScriptControllerCocoa.mm:
2717         (WTR::UIScriptControllerCocoa::UIScriptControllerCocoa):
2718         (WTR::UIScriptControllerCocoa::setContinuousSpellCheckingEnabled):
2719
2720         Add a new UIScriptControllerCocoa subclass for DumpRenderTree. For now, this will just contain the cross-
2721         platform implementation of setContinuousSpellCheckingEnabled.
2722
2723         * DumpRenderTree/ios/UIScriptControllerIOS.h:
2724         (WTR::UIScriptControllerIOS::UIScriptControllerIOS):
2725         * DumpRenderTree/mac/UIScriptControllerMac.h:
2726         (WTR::UIScriptControllerMac::UIScriptControllerMac):
2727
2728         Make both -IOS and -Mac subclasses inherit from UIScriptControllerCocoa.
2729
2730         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2731         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2732         (WTR::UIScriptController::setContinuousSpellCheckingEnabled):
2733
2734         Add a new script controller method to change the platform spell checking preference during a layout test.
2735
2736         * WebKitTestRunner/TestController.cpp:
2737         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2738         (WTR::TestController::cocoaResetStateToConsistentValues):
2739
2740         Adjust this to explicitly turn continuous spellchecking on or off based on the `shouldShowSpellCheckingDots`
2741         test option flag, instead of toggling it on and then off when resetting state before and after the layout test.
2742
2743         * WebKitTestRunner/cocoa/UIScriptControllerCocoa.h:
2744         * WebKitTestRunner/cocoa/UIScriptControllerCocoa.mm:
2745         (WTR::UIScriptControllerCocoa::setContinuousSpellCheckingEnabled):
2746
2747 2019-11-12  Aakash Jain  <aakash_jain@apple.com>
2748
2749         Update unit-tests for JSC EWS
2750         https://bugs.webkit.org/show_bug.cgi?id=204123
2751
2752         Reviewed by Jonathan Bedard.
2753
2754         * BuildSlaveSupport/ews-build/steps_unittest.py:
2755         (TestRunJavaScriptCoreTests.configureStep):
2756         (TestRunJavaScriptCoreTests.test_success): Updated platform to mac-highsierra.
2757         (TestRunJavaScriptCoreTests.test_failure): Ditto.
2758         (TestRunJavaScriptCoreTests.test_remote_success): Unit-test for jsc-only platform.
2759         (TestReRunJavaScriptCoreTests): Automatically run all unit-tests from TestRunJavaScriptCoreTests class.
2760
2761 2019-11-12  Diego Pino Garcia  <dpino@igalia.com>
2762
2763         [GTK] Add 'test262-test' step to GTK and WPE build bots
2764         https://bugs.webkit.org/show_bug.cgi?id=204063
2765
2766         Reviewed by Carlos Alberto Lopez Perez.
2767
2768         * BuildSlaveSupport/build.webkit.org-config/factories.py:
2769         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2770
2771 2019-11-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2772
2773         Unreviewed. Update W3C WebDriver imported tests.
2774
2775         * Scripts/webkitpy/thirdparty/__init__.py:
2776         (AutoinstallImportHook._install_mozlog): Update the mozlog version and add mozterm that is ow required by mozlog.
2777         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
2778         (WebDriverW3CExecutor.__init__): Add alternate domain for cross-origin checks.
2779
2780 2019-11-12  Fujii Hironori  <Hironori.Fujii@sony.com>
2781
2782         [Win] UIScriptController::zoomToScale not implemented
2783         https://bugs.webkit.org/show_bug.cgi?id=180424
2784
2785         Reviewed by Alex Christensen.
2786
2787         * DumpRenderTree/PlatformWin.cmake:
2788         * DumpRenderTree/win/UIScriptControllerWin.cpp: Added.
2789         (WTR::UIScriptController::create):
2790         (WTR::UIScriptControllerWin::doAsyncTask):
2791         (WTR::UIScriptControllerWin::zoomToScale):
2792         (WTR::UIScriptControllerWin::zoomScale const):
2793         * DumpRenderTree/win/UIScriptControllerWin.h: Added.
2794         (WTR::UIScriptControllerWin::UIScriptControllerWin):
2795         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2796         * WebKitTestRunner/PlatformWin.cmake:
2797         * WebKitTestRunner/win/UIScriptControllerWin.cpp: Added.
2798         (WTR::UIScriptController::create):
2799         (WTR::UIScriptControllerWin::doAsyncTask):
2800         (WTR::UIScriptControllerWin::zoomToScale):
2801         (WTR::UIScriptControllerWin::zoomScale const):
2802         * WebKitTestRunner/win/UIScriptControllerWin.h: Added.
2803         (WTR::UIScriptControllerWin::UIScriptControllerWin):
2804
2805 2019-11-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2806
2807         [GTK] WebDriver: implement new window command
2808         https://bugs.webkit.org/show_bug.cgi?id=203994
2809
2810         Reviewed by Carlos Alberto Lopez Perez.
2811
2812         Add support for new window command to MiniBrowser and a test case to check the new API to unit tests.
2813
2814         * MiniBrowser/gtk/BrowserWindow.c:
2815         (findActiveWindow):
2816         (browser_window_get_or_create_web_view_for_automation):
2817         (browser_window_create_web_view_in_new_tab_for_automation):
2818         * MiniBrowser/gtk/BrowserWindow.h:
2819         * MiniBrowser/gtk/main.c:
2820         (createWebViewForAutomationInWindowCallback):
2821         (createWebViewForAutomationInTabCallback):
2822         (automationStartedCallback):
2823         (createWebViewForAutomationCallback): Deleted.
2824         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
2825         (testAutomationSessionRequestSession):
2826
2827 2019-11-11  Alex Christensen  <achristensen@webkit.org>
2828
2829         Add SPI to access a WebsiteDataStore without instantiating it, and its configuration
2830         https://bugs.webkit.org/show_bug.cgi?id=204089
2831
2832         Reviewed by Tim Horton.
2833
2834         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2835         (TEST):
2836
2837 2019-11-11  Ross Kirsling  <ross.kirsling@sony.com>
2838
2839         UTC offset for Samoa is miscalculated when !HAVE(TIMEGM)
2840         https://bugs.webkit.org/show_bug.cgi?id=204032
2841
2842         Reviewed by Yusuke Suzuki.
2843
2844         * Scripts/run-jsc-stress-tests:
2845         Allow environment variables to be passed to "complex" tests.
2846
2847 2019-11-11  Dean Jackson  <dino@apple.com>
2848
2849         Regression r252309: API Test TestWebKitAPI._WKActivatedElementInfo.InfoForLinkAroundImage is failing consistently
2850         https://bugs.webkit.org/show_bug.cgi?id=204058
2851         <rdar://problem/57056000>
2852
2853         Unreviewed.
2854
2855         Remove test that looks at screen dimensions, because it fails on iPad.
2856
2857         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
2858         (TestWebKitAPI::TEST):
2859
2860 2019-11-11  Aakash Jain  <aakash_jain@apple.com>
2861
2862         [EWS] Use named arguments in factories.py
2863         https://bugs.webkit.org/show_bug.cgi?id=204071
2864
2865         Reviewed by Jonathan Bedard.
2866
2867         * BuildSlaveSupport/ews-build/factories.py:
2868         (Factory.__init__):
2869         (StyleFactory.__init__):
2870         (WatchListFactory.__init__):
2871         (BindingsFactory.__init__):
2872         (WebKitPerlFactory.__init__):
2873         (WebKitPyFactory.__init__):
2874         (BuildFactory.__init__):
2875         (TestFactory.__init__):
2876         (JSCTestsFactory.__init__):
2877         (WindowsFactory.__init__):
2878         (WinCairoFactory.__init__):
2879         (GTKFactory.__init__):
2880         (WPEFactory.__init__):
2881         (ServicesFactory.__init__):
2882
2883 2019-11-11  Aakash Jain  <aakash_jain@apple.com>
2884
2885         EWS should retry build in case of kill-old-processes failure
2886         https://bugs.webkit.org/show_bug.cgi?id=203858
2887
2888         Reviewed by Jonathan Bedard.
2889
2890         * BuildSlaveSupport/ews-build/steps.py:
2891         (KillOldProcesses.evaluateCommand): Retry the build in case of failure.
2892         (KillOldProcesses.getResultSummary): Update the build-step summary string.
2893         * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
2894
2895 2019-11-09  Dean Jackson  <dino@apple.com>
2896
2897         Clicky Orbing support.apple.com categories shows a PNG instead of the web page preview, tapping loads image asset only instead of web page
2898         https://bugs.webkit.org/show_bug.cgi?id=204037
2899         <rdar://55614939>
2900
2901         Reviewed by Simon Fraser.
2902
2903         New tests for a link wrapping an image, and the ordering of API and SPI.
2904
2905         Rename these tests so that they are much easier to filter on the command line.
2906
2907         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2908         * TestWebKitAPI/Tests/WebKitCocoa/ContextMenus.mm:
2909         (TEST):
2910         (-[TestContextMenuAPIBeforeSPIUIDelegate webView:contextMenuConfigurationForElement:completionHandler:]):
2911         (-[TestContextMenuAPIBeforeSPIUIDelegate _webView:contextMenuConfigurationForElement:completionHandler:]):
2912         (-[TestContextMenuAPIBeforeSPIUIDelegate webView:contextMenuWillPresentForElement:]):
2913         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
2914         (TestWebKitAPI::TEST):
2915         * TestWebKitAPI/Tests/WebKitCocoa/image.html: Added.
2916         * TestWebKitAPI/Tests/WebKitCocoa/link-with-image.html: Added.
2917
2918 2019-11-08  Brady Eidson  <beidson@apple.com>
2919
2920         WKWebView Find-in-page API.
2921         <rdar://problem/46971112> and https://bugs.webkit.org/show_bug.cgi?id=203872
2922
2923         Reviewed by Tim Horton.
2924
2925         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2926         * TestWebKitAPI/Tests/WebKitCocoa/FindInPageAPI.mm: Added.
2927         (TEST):
2928         * TestWebKitAPI/cocoa/TestWKWebView.h:
2929         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2930         (-[TestWKWebView selectionRangeHasStartOffset:endOffset:]):
2931
2932 2019-11-08  Jonathan Bedard  <jbedard@apple.com>
2933
2934         Simulators having trouble launching apps after booting
2935         <rdar://problem/57032042>
2936
2937         Unreviewed infrastructure fix.
2938
2939         * Scripts/webkitpy/port/simulator_process.py:
2940         (SimulatorProcess._start): Temporarily increase timeout to help out bots.
2941
2942 2019-11-08  Jonathan Bedard  <jbedard@apple.com>
2943
2944         results.webkit.org: List failing tests for criteria
2945         https://bugs.webkit.org/show_bug.cgi?id=203905
2946
2947         Rubber-stamped by Aakash Jain.
2948
2949         * resultsdbpy/resultsdbpy/controller/api_routes.py:
2950         (APIRoutes.__init__): Add FailureController and /failures endpoint.
2951         * resultsdbpy/resultsdbpy/controller/failure_controller.py: Added.
2952         (FailureController): Added FailureController object to drive /failure endpoint.
2953         (FailureController.__init__):
2954         (FailureController.failures): Return a json list of failures for a range.
2955         * resultsdbpy/resultsdbpy/controller/failure_controller_unittest.py: Added.
2956         (FailureControllerTest): Test the /failure API.
2957         (FailureControllerTest.setup_webserver):
2958         (FailureControllerTest.test_failures_collapsed):
2959         (FailureControllerTest.test_unexpected_failures_collapsed):
2960         (FailureControllerTest.test_failures):
2961         (FailureControllerTest.test_unexpected_failures):
2962         (FailureControllerTest.test_failure_by_time):
2963         * resultsdbpy/resultsdbpy/model/failure_context.py: Added.
2964         (FailureContext): Database access to tables recording test failures.
2965         (FailureContext.TestFailuresBase):
2966         (FailureContext.TestFailuresBase.unpack):
2967         (FailureContext.TestFailuresByCommit): Save test failures sorted by commit.
2968         (FailureContext.TestFailuresByStartTime): Save test failures sorted by start time.
2969         (FailureContext.UnexpectedTestFailuresByCommit): Save unexpected test failures
2970         sorted by commit.
2971         (FailureContext.UnexpectedTestFailuresByStartTime): Save unexpected test failures
2972         sorted by commit.
2973         (FailureContext.__init__):
2974         (FailureContext.register): Register test failures to each of the 4 tables for an upload.
2975         (FailureContext._failures): Return a list of test failures from a table.
2976         (FailureContext.failures_by_commit): Return a list of test failures from a table sorted
2977         by commit.
2978         (FailureContext.failures_by_start_time): Return a list of test failures from a table
2979         sorted by commit.
2980         * resultsdbpy/resultsdbpy/model/failure_context_unittest.py: Added.
2981         (FailureContextTest):
2982         (FailureContextTest.init_database):
2983         (FailureContextTest.test_failures_collapsed):
2984         (FailureContextTest.test_unexpected_failures_collapsed):
2985         (FailureContextTest.test_failures):
2986         (FailureContextTest.test_unexpected_failures):
2987         * resultsdbpy/resultsdbpy/model/model.py:
2988         (Model.__init__):
2989         * resultsdbpy/resultsdbpy/view/templates/documentation.html: Add documentation
2990         for the /failure endpoint.
2991
2992 2019-11-08  Alex Christensen  <achristensen@webkit.org>
2993
2994         Fix flaky tests in http/tests/cache/disk-cache
2995         https://bugs.webkit.org/show_bug.cgi?id=203822
2996
2997         Reviewed by Youenn Fablet.
2998
2999         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3000         (WTR::InjectedBundle::setCacheModel):
3001         * WebKitTestRunner/TestInvocation.cpp:
3002         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
3003         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3004
3005 2019-11-08  Aakash Jain  <aakash_jain@apple.com>
3006
3007         Clicking on EWS status-bubble should open the results in new tab
3008         https://bugs.webkit.org/show_bug.cgi?id=204012
3009
3010         Reviewed by Alexey Proskuryakov.
3011
3012         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
3013
3014 2019-11-06  Jiewen Tan  <jiewen_tan@apple.com>
3015
3016         [WebAuthn] Return NotAllowedError immediately for UI cancellations
3017         https://bugs.webkit.org/show_bug.cgi?id=203937
3018         <rdar://problem/56962420>
3019
3020         Reviewed by Brent Fulgham.
3021
3022         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
3023         (TestWebKitAPI::TEST):
3024
3025 2019-11-08  Aakash Jain  <aakash_jain@apple.com>
3026
3027         [ews] Prioritize builders over testers when a bot is shared over multiple queues
3028         https://bugs.webkit.org/show_bug.cgi?id=204007
3029
3030         Reviewed by Jonathan Bedard.
3031
3032         * BuildSlaveSupport/ews-build/loadConfig.py:
3033         (loadBuilderConfig):
3034         (prioritizeBuilders): Method to prioritize builder queues over tester queues.
3035
3036 2019-11-08  Alex Christensen  <achristensen@webkit.org>
3037
3038         Build fix for platforms without WebRTC's SSL after r252185
3039         https://bugs.webkit.org/show_bug.cgi?id=203934
3040
3041         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
3042         The new test uses TLS with the HTTPS proxy.  Don't compile it if we can't compile it.
3043
3044 2019-11-08  Carlos Garcia Campos  <cgarcia@igalia.com>
3045
3046         [GTK] Add pointer lock permission request API
3047         https://bugs.webkit.org/show_bug.cgi?id=203896
3048
3049         Reviewed by Adrian Perez de Castro.
3050
3051         Handle pointer lock permission requests in MiniBrowser and add a new tests case to check the new API.
3052
3053         * MiniBrowser/gtk/BrowserTab.c:
3054         (pointerLockMessageTimeoutCallback):
3055         (decidePermissionRequest):
3056         (browserTabFinalize):
3057         (browserTabConstructed):
3058         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
3059         (testWebViewPointerLockPermissionRequest):
3060         (beforeAll):
3061
3062 2019-11-07  Chris Dumez  <cdumez@apple.com>
3063
3064         TestController may reuse a view that used window.open(), which prevents process-swapping and causes flakiness
3065         https://bugs.webkit.org/show_bug.cgi?id=203981
3066
3067         Reviewed by Ryosuke Niwa.
3068
3069         Stop reusing WebViews that have created other WebViews (via window.open()) since this prevents process-swapping
3070         and may therefore cause flakiness (see Bug 203965).
3071
3072         * WebKitTestRunner/TestController.cpp:
3073         (WTR::TestController::createOtherPage):
3074         (WTR::TestController::ensureViewSupportsOptionsForTest):
3075         * WebKitTestRunner/TestController.h:
3076
3077 2019-11-07  Aakash Jain  <aakash_jain@apple.com>
3078
3079         [ews] rename RunJavaScriptCoreTestsToT to RunJSCTestsWithoutPatch
3080         https://bugs.webkit.org/show_bug.cgi?id=203959
3081
3082         Reviewed by Alexey Proskuryakov.
3083
3084         * BuildSlaveSupport/ews-build/steps.py:
3085         (RunJSCTestsWithoutPatch): Renamed.
3086         * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
3087
3088 2019-11-07  Alex Christensen  <achristensen@webkit.org>
3089
3090         Re-enable NSURLSession isolation after r252116
3091         https://bugs.webkit.org/show_bug.cgi?id=203934
3092         <rdar://problem/56921584>
3093
3094         Reviewed by Chris Dumez.
3095
3096         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
3097         (-[DataTaskIdentifierCollisionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3098         (-[DataTaskIdentifierCollisionDelegate waitForMessages:]):
3099         (-[DataTaskIdentifierCollisionDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
3100         (TEST):
3101
3102 2019-11-07  Paulo Matos  <pmatos@igalia.com>
3103
3104         Add support for remotes file for EWS builders
3105         https://bugs.webkit.org/show_bug.cgi?id=203899
3106
3107         Reviewed by Aakash Jain.
3108
3109         Require to support builders that cross-compile and run tests on native machines
3110         through the use of --remote-config-file.
3111
3112         * BuildSlaveSupport/ews-build/factories.py:
3113         (Factory.__init__):
3114         (StyleFactory.__init__):
3115         (WatchListFactory.__init__):
3116         * BuildSlaveSupport/ews-build/loadConfig.py:
3117         (loadBuilderConfig):
3118         * BuildSlaveSupport/ews-build/steps.py:
3119         (ConfigureBuild.__init__):
3120         (ConfigureBuild.start):
3121         (RunJavaScriptCoreTests.start):
3122         * BuildSlaveSupport/ews-build/steps_unittest.py:
3123         (TestRunJavaScriptCoreTests.test_remote_success):
3124
3125 2019-11-06  Antti Koivisto  <antti@apple.com>
3126
3127         REGRESSION: [ iOS ] ( r251015 ) Layout Test fast/text/whitespace/pre-wrap-overflow-selection.html is flaky
3128         https://bugs.webkit.org/show_bug.cgi?id=203366
3129         <rdar://problem/56580680>
3130
3131         Reviewed by Simon Fraser.
3132
3133         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3134         (WTR::InjectedBundlePage::dump):
3135
3136 2019-11-06  Fujii Hironori  <Hironori.Fujii@sony.com>
3137
3138         WEBCORE_TESTSUPPORT_EXPORT should be used only for WebCoreTestSupport, not for WebCore
3139         https://bugs.webkit.org/show_bug.cgi?id=203876
3140
3141         Reviewed by Ross Kirsling.
3142
3143         * TestWebKitAPI/win/TestWebKitAPIPrefix.h:
3144         * WebKitTestRunner/InjectedBundle/win/TestRunnerInjectedBundlePrefix.h:
3145         * WebKitTestRunner/WebKitTestRunnerPrefix.h:
3146         Define WEBCORE_TESTSUPPORT_EXPORT emtpy.
3147
3148 2019-11-06  Fujii Hironori  <Hironori.Fujii@sony.com>
3149
3150         [Win] DumpRenderTree.exe and WebKitTestRunner.exe shouldn't link with WebCoreTestSupport
3151         https://bugs.webkit.org/show_bug.cgi?id=203879
3152
3153         Reviewed by Ross Kirsling.
3154
3155         After r252086, WinCairo DumpRenderTree.exe and
3156         WebKitTestRunner.exe can't start because they are linked with
3157         WinCairoRequirements DLLs unexpectedly.
3158
3159         DumpRenderTree.exe and WebKitTestRunner.exe are just wrapper
3160         programs. They shouldn't link with WinCairoRequirements libs.
3161
3162         * DumpRenderTree/PlatformWin.cmake: Set DumpRenderTree_LIBRARIES only shlwapi.
3163         * WebKitTestRunner/PlatformWin.cmake: Set WebKitTestRunner_LIBRARIES only shlwapi.
3164
3165 2019-11-06  Kate Cheney  <katherine_cheney@apple.com>
3166
3167         Update entry in contributors.json to fix commit privileges.
3168
3169         * Scripts/webkitpy/common/config/contributors.json:
3170
3171 2019-11-06  Keith Rollin  <krollin@apple.com>
3172
3173         Unreviewed build fix: fix TestWebKitAPI in macCatalyst, tvOS, and
3174         watchOS builds by conditionalizing some code on HAVE_UIWEBVIEW and
3175         HAVE_PDFKIT. Follow-up to r251976.
3176
3177         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
3178         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
3179         * TestWebKitAPI/Tests/WebKitLegacy/ios/JSLockTakesWebThreadLock.mm:
3180         * TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollToRevealSelection.mm:
3181         * TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollingDoesNotPauseMedia.mm:
3182         * TestWebKitAPI/Tests/WebKitLegacy/ios/SnapshotViaRenderInContext.mm:
3183         * TestWebKitAPI/Tests/ios/SetTimeoutFunction.mm:
3184         * TestWebKitAPI/config.h:
3185
3186 2019-11-06  Aakash Jain  <aakash_jain@apple.com>
3187
3188         All EWS status-bubbles shows #1 on security patches when patch is uploaded with webkit-patch --no-review
3189         https://bugs.webkit.org/show_bug.cgi?id=203903
3190
3191         Reviewed by David Kilzer.
3192
3193         * BuildSlaveSupport/ews-app/ews/fetcher.py:
3194         (BugzillaPatchFetcher.fetch):
3195
3196 2019-11-06  Aakash Jain  <aakash_jain@apple.com>
3197
3198         [ews] Increase timeout for svn-apply
3199         https://bugs.webkit.org/show_bug.cgi?id=203909
3200
3201         Reviewed by Jonathan Bedard.
3202
3203         * BuildSlaveSupport/ews-build/steps.py:
3204
3205 2019-11-06  Aakash Jain  <aakash_jain@apple.com>
3206
3207         Add watchlist category for BuildSlaveSupport
3208         https://bugs.webkit.org/show_bug.cgi?id=203900
3209
3210         Reviewed by Jonathan Bedard.
3211
3212         * Scripts/webkitpy/common/config/watchlist:
3213
3214 2019-11-06  Philippe Normand  <philn@igalia.com>
3215
3216         [GTK][WPE] Add libfdk-aac-dev to the install-dependencies script
3217         https://bugs.webkit.org/show_bug.cgi?id=203812
3218
3219         Reviewed by Carlos Garcia Campos.
3220
3221         * gtk/install-dependencies:
3222         * wpe/install-dependencies:
3223
3224 2019-11-06  Carlos Garcia Campos  <cgarcia@igalia.com>
3225
3226         [GTK] Implement support for Pointer Lock API
3227         https://bugs.webkit.org/show_bug.cgi?id=202956
3228
3229         Reviewed by Carlos Alberto Lopez Perez.
3230
3231         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3232         (WTR::getGDKKeySymForKeyRef): Handle escape key.
3233
3234 2019-11-05  Chris Dumez  <cdumez@apple.com>
3235
3236         [iOS] Scroll position does not get restored when doing a history navigation while the reader view is shown
3237         https://bugs.webkit.org/show_bug.cgi?id=203871
3238         <rdar://problem/56564603>
3239
3240         Reviewed by Tim Horton.
3241
3242         Add API test coverage.
3243
3244         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3245         * TestWebKitAPI/Tests/WebKit/simple-tall.html:
3246         * TestWebKitAPI/Tests/WebKitCocoa/RestoreScrollPosition.mm: Added.
3247         (TestWebKitAPI::TEST):
3248
3249 2019-11-05  Jonathan Bedard  <jbedard@apple.com>
3250
3251         REGRESSION(r252031): layout tests fail to run in non apple ports after r252031 (Follow-up fix)
3252         https://bugs.webkit.org/show_bug.cgi?id=203844
3253
3254         Rubber-stamped by Aakash Jain.
3255
3256         Remove infinite loop for Windows.
3257
3258         * Scripts/webkitpy/port/win.py:
3259         (WinPort._path_to_default_image_diff):
3260         (WinPort._path_to_image_diff): Deleted.
3261
3262 2019-11-05  Aakash Jain  <aakash_jain@apple.com>
3263
3264         EWS should report test failures from clean-tree to results.webkit.org
3265         https://bugs.webkit.org/show_bug.cgi?id=203829
3266
3267         Reviewed by Jonathan Bedard.
3268
3269         * BuildSlaveSupport/ews-build/loadConfig.py:
3270         (loadBuilderConfig):
3271         * BuildSlaveSupport/ews-build/steps.py:
3272         (RunWebKitTests.__init__):
3273         (RunWebKitTestsWithoutPatch.start):
3274         (RunAPITestsWithoutPatch.start):
3275         * BuildSlaveSupport/ews-build/steps_unittest.py: Added and updated unit-tests.
3276
3277 2019-11-05  Wenson Hsieh  <wenson_hsieh@apple.com>
3278
3279         Native text substitutions interfere with HTML <datalist> options resulting in crash
3280         https://bugs.webkit.org/show_bug.cgi?id=203116
3281         <rdar://problem/49875932>
3282
3283         Reviewed by Tim Horton.
3284
3285         Add a new testing hook to wait for datalist suggestions to show up and choose the suggestion at the given index.
3286
3287         * DumpRenderTree/mac/UIScriptControllerMac.h:
3288         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3289         (WTR::UIScriptControllerMac::activateDataListSuggestion):
3290         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3291         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3292         (WTR::UIScriptController::activateDataListSuggestion):
3293         * WebKitTestRunner/ios/UIScriptControllerIOS.h:
3294         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3295         (WTR::UIScriptControllerIOS::activateDataListSuggestion):
3296         * WebKitTestRunner/mac/UIScriptControllerMac.h:
3297         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3298         (WTR::UIScriptControllerMac::isShowingDataListSuggestions const):
3299         (WTR::UIScriptControllerMac::activateDataListSuggestion):
3300
3301         Dig through the view hierarchy of the NSWindow subclass used to show datalist suggestions for the table view
3302         containing the suggestions; then, select the given row, and invoke the action on the target.
3303
3304         (WTR::UIScriptControllerMac::dataListSuggestionsTableView const):
3305
3306 2019-11-05  Daniel Bates  <dabates@apple.com>
3307
3308         TestWebKitAPI.WebKit.DocumentEditingContext is failing on iPad
3309         https://bugs.webkit.org/show_bug.cgi?id=203828
3310         <rdar://problem/55854631>
3311
3312         Reviewed by Myles Maxfield.
3313
3314         Specify both a font size and line height when using Ahem as per [1]. Otherwise, text may be
3315         rendered inconsistently. Plus, disable text-autosizing and fix viewport to make test result
3316         consistent on both iPhone and iPad. 
3317
3318         [1] <https://web-platform-tests.org/writing-tests/ahem.html>
3319
3320         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3321         (applyStyle): Remove unused style for <iframe>s and fix up parameter name to conform to style guide.
3322         (applyAhemStyle): Set -webkit-text-size-adjust to 100% to disable auto-sizing. Fix viewport width
3323         and initial scale to ensure the result is the same on both iPhone and iPad. Also remove unused style
3324         for <iframe>s and renamed parameter name to conform to style guide.
3325         (TEST):
3326
3327 2019-11-05  Sihui Liu  <sihui_liu@apple.com>
3328
3329         REGRESSION (r250754): web page using IDBIndex doesn't load occasionally
3330         https://bugs.webkit.org/show_bug.cgi?id=203431
3331
3332         Reviewed by Brady Eidson.
3333
3334         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3335         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBInPageCache.html: Added.
3336         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBInPageCache.mm: Added.
3337         (-[IndexedDBInPageCacheMessageHandler userContentController:didReceiveScriptMessage:]):
3338         (TEST):
3339         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBNotInPageCache.html: Added.
3340
3341 2019-11-05  Jonathan Bedard  <jbedard@apple.com>
3342
3343         webkitpy: Build ImageDiff if it is missing (Follow-fix)
3344         https://bugs.webkit.org/show_bug.cgi?id=183422
3345
3346         Unreviewed infrastructure fix.
3347
3348         * Scripts/webkitpy/port/base.py:
3349         (Port._path_to_image_diff): Use the host build directory.
3350         * Scripts/webkitpy/port/config.py:
3351         (Config.build_directory): Allow the caller to ignore the port argument, which will return the default
3352         build directory for the host running the script.
3353         * Scripts/webkitpy/port/port_testcase.py:
3354         (PortTestCase.make_port):
3355
3356 2019-11-05  Chris Lord  <clord@igalia.com>
3357
3358         [WPE] WebKit.NewFirstVisuallyNonEmptyLayout* unexpected pass
3359         https://bugs.webkit.org/show_bug.cgi?id=203846
3360
3361         Reviewed by Žan Doberšek.
3362
3363         * TestWebKitAPI/glib/TestExpectations.json:
3364
3365 2019-11-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3366
3367         REGRESSION(r252031): layout tests fail to run in non apple ports after r252031
3368         https://bugs.webkit.org/show_bug.cgi?id=203844
3369
3370         Reviewed by Žan Doberšek.
3371
3372         Since r252032 Port.check_image_diff() assumes that ImageDiff binary is built in the build path, which is not
3373         true for all ports. This patch adds Port._path_to_default_image_diff() to be used instead of the build_path()
3374         and overriden by ports not building the ImageDiff in the build path.
3375
3376         * Scripts/webkitpy/port/base.py:
3377         (Port.check_image_diff):
3378         (Port._path_to_default_image_diff):
3379         (Port._path_to_image_diff):
3380         * Scripts/webkitpy/port/gtk.py:
3381         (GtkPort._path_to_default_image_diff):
3382         * Scripts/webkitpy/port/win.py:
3383         (WinPort._path_to_default_image_diff):
3384         * Scripts/webkitpy/port/wpe.py:
3385         (WPEPort._path_to_default_image_diff):
3386
3387 2019-11-05  Chris Lord  <clord@igalia.com>
3388
3389         [WPE] Geolocation API tests are consistently passing
3390         https://bugs.webkit.org/show_bug.cgi?id=203845
3391
3392         Reviewed by Žan Doberšek.
3393
3394         * TestWebKitAPI/glib/TestExpectations.json:
3395
3396 2019-11-05  youenn fablet  <youenn@apple.com>
3397
3398         Enforce user gesture for getUserMedia in case a previous getUserMedia call was denied
3399         https://bugs.webkit.org/show_bug.cgi?id=203362
3400
3401         Reviewed by Eric Carlson.
3402
3403         * TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
3404         (TestWebKitAPI::TEST_F):
3405         Update test to take into account the ability to ask again for permission.
3406         * TestWebKitAPI/Tests/WebKit/getDisplayMedia.html:
3407         Update to make sure we notify test if internals is not available.
3408
3409 2019-11-04  Aakash Jain  <aakash_jain@apple.com>
3410
3411         [ews] Perform validation of patch before retrying API and layout tests
3412         https://bugs.webkit.org/show_bug.cgi?id=203756
3413
3414         Reviewed by Jonathan Bedard.
3415
3416         * BuildSlaveSupport/ews-build/steps.py:
3417         (ValidatePatch.__init__): Added parameters to optionally skip certain validations.
3418         (ValidatePatch.start): Skip certain validations based on the parameters.
3419         (RunWebKitTests.evaluateCommand): Add a ValidatePatch step before retrying.
3420         (ReRunWebKitTests.evaluateCommand): Ditto.
3421         (RunAPITests.evaluateCommand): Ditto.
3422         (ReRunAPITests.evaluateCommand): Ditto.
3423
3424 2019-11-04  Jiewen Tan  <jiewen_tan@apple.com>
3425
3426         [WebAuthn] Guard against unexpected -[_WKWebAuthenticationPanel cancel]
3427         https://bugs.webkit.org/show_bug.cgi?id=203830
3428         <rdar://problem/56797134>
3429
3430         Reviewed by Brent Fulgham .
3431
3432         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
3433         (-[TestWebAuthenticationPanelDelegate panel:updateWebAuthenticationPanel:]):
3434         (-[TestWebAuthenticationPanelDelegate panel:dismissWebAuthenticationPanelWithResult:]):
3435         (TestWebKitAPI::TEST):
3436
3437 2019-11-04  Jonathan Bedard  <jbedard@apple.com>
3438
3439         webkitpy: Build ImageDiff if it is missing
3440         https://bugs.webkit.org/show_bug.cgi?id=183422
3441
3442         Reviewed by Alexey Proskuryakov.
3443
3444         ImageDiff is built with a different SDK than the rest of the WebKit
3445         stack, and this frequently causes infrastructure failures where ImageDiff
3446         is missing on testers. To address this, we should automatically build
3447         ImageDiff if it is missing.
3448
3449         * Scripts/webkitpy/port/base.py:
3450         (Port.check_build): Unconditionally build ImageDiff if it is missing.
3451         (Port.check_image_diff): Use _build_path since _path_to_image_diff will
3452         attempt to use a back-up location.
3453         (Port._path_to_image_diff): If the provided path to ImageDiff does not
3454         exist, use the path of the one we built.
3455
3456 2019-11-04  Daniel Bates  <dabates@apple.com>
3457
3458         Add Googletest assertion support for CGRect and NSRect
3459         https://bugs.webkit.org/show_bug.cgi?id=203817
3460
3461         Reviewed by Myles C. Maxfield.
3462
3463         Add operator== and operator<< overloads for CGRect and NSRect so that these types can be
3464         passed to EXPECT_EQ() and other Googletest assertions.
3465
3466         To make use of these overloads Cocoa tests should include #import "TestCocoa.h" instead of
3467         "Test.h". TestCocoa.h imports Test.h. With these overloads an assertion like this:
3468
3469             EXPECT_EQ(CGRectMake(0, 0, 23, 24), rects[0].CGRectValue);
3470
3471         will produce output like this when it fails:
3472
3473             Expected equality of these values:
3474               CGRectMake(138, 0, 23, 24)
3475                 Which is: (origin = (x = 138, y = 0), size = (width = 23, height = 24))
3476               rects.firstObject.CGRectValue
3477                 Which is: (origin = (x = 96, y = 0), size = (width = 16, height = 17))
3478
3479         * TestWebKitAPI/SourcesCocoa.txt:
3480         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3481         Add source files.
3482
3483         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3484         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
3485         Write in terms of EXPECT_EQ() now that it just works when passed CGRects.
3486
3487         * TestWebKitAPI/cocoa/TestCocoa.h: Added.
3488         * TestWebKitAPI/cocoa/TestCocoa.mm: Added.
3489         (ostreamRectCommon):
3490         (operator<<):
3491         (operator==):
3492
3493 2019-11-04  Aakash Jain  <aakash_jain@apple.com>
3494
3495         [ews] Status bubble should be white for CANCELLED builds
3496         https://bugs.webkit.org/show_bug.cgi?id=201204
3497
3498         Reviewed by Jonathan Bedard.
3499
3500         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3501
3502 2019-11-04  John Wilander  <wilander@apple.com>
3503
3504         Resource Load Statistics: Flush the shared ResourceLoadObserver when the webpage is closed by JavaScript
3505         https://bugs.webkit.org/show_bug.cgi?id=203623
3506         <rdar://problem/56756427>
3507
3508         Reviewed by Alex Christensen.
3509
3510         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
3511         (TEST):
3512
3513 2019-11-04  Wenson Hsieh  <wenson_hsieh@apple.com>
3514
3515         Consolidate forEachViewInHierarchy and findAllViewsInHierarchyOfType into common helper file
3516         https://bugs.webkit.org/show_bug.cgi?id=203777
3517
3518         Reviewed by Tim Horton.
3519
3520         * TestRunnerShared/cocoa/PlatformViewHelpers.h: Added.
3521         * TestRunnerShared/cocoa/PlatformViewHelpers.mm: Added.
3522
3523         Add a new Cocoa helper file, PlatformViewHelpers, to make it easier to traverse platform view hierarchies
3524         (NSView and UIView) for testing purposes. This is minor refactoring, before I try to create some new testing
3525         primitives to make webkit.org/b/203116 testable.
3526
3527         (forEachViewInHierarchy):
3528         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3529         * WebKitTestRunner/ios/UIScriptControllerIOS.h:
3530         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3531         (WTR::UIScriptControllerIOS::findEditableImageCanvas const):
3532         (WTR::forEachViewInHierarchy): Deleted.
3533         (WTR::findEditableImageCanvas): Deleted.
3534
3535 2019-11-04  Alex Christensen  <achristensen@webkit.org>
3536
3537         Flaky API Test TestWebKitAPI.WebKit.UploadDirectory
3538         https://bugs.webkit.org/show_bug.cgi?id=203652
3539
3540         Reviewed by Alexey Proskuryakov.
3541
3542         It is not important that the directory to upload does not exist before the test starts.
3543         Make the test more robust to state left behind by previous iterations of this test by removing the check.
3544         The important check in this test is the uploaded body size.
3545
3546         * TestWebKitAPI/Tests/WebKitCocoa/UploadDirectory.mm:
3547         (TEST):
3548
3549 2019-11-04  Kate Cheney  <katherine_cheney@apple.com>
3550
3551         updated email in contributors.json to match bugzilla.
3552
3553         * Scripts/webkitpy/common/config/contributors.json:
3554
3555 2019-11-04  Andy Estes  <aestes@apple.com>
3556
3557         REGRESSION (r251623): When downloading a QuickLook file, the web view navigates to a "The URL can't be shown" error page instead of staying on the current page
3558         https://bugs.webkit.org/show_bug.cgi?id=203790
3559         <rdar://problem/56795440>
3560
3561         Reviewed by Alex Christensen.
3562
3563         Tested that "download" and "cancel" policy decisions for QuickLook files result in a
3564         provisional navigation failure with error code WebKitErrorFrameLoadInterruptedByPolicyChange.
3565
3566         * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
3567         (-[QuickLookDelegate navigationError]):
3568         (-[QuickLookDelegate _webView:didFailNavigation:withError:userInfo:]):
3569         (-[QuickLookDelegate webView:didFailProvisionalNavigation:withError:]):
3570         (TEST):
3571
3572 2019-11-04  Peng Liu  <peng.liu6@apple.com>
3573
3574         Cannot run WebKit layout tests on iOS devices
3575         https://bugs.webkit.org/show_bug.cgi?id=203796
3576
3577         Reviewed by Jonathan Bedard.
3578
3579         Fix the error to parse iOS version numbers like "xx.yy".
3580
3581         * Scripts/webkitpy/common/system/platforminfo.py:
3582         (PlatformInfo.__init__):
3583
3584 2019-11-03  Tim Horton  <timothy_horton@apple.com>
3585
3586         WKWebView can get stuck blank (Web Content process thinks the app is backgrounded)
3587         https://bugs.webkit.org/show_bug.cgi?id=203774
3588         <rdar://problem/53399054>
3589
3590         Reviewed by Chris Dumez.
3591
3592         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3593         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm: Added.
3594         (TEST):
3595         (isBackground):
3596         (createHostViewForExtensionIdentifier):
3597         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFViewResizeCrash.mm: Removed.
3598         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFViewStablePresentationUpdateCallback.mm: Removed.
3599         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
3600         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
3601         (-[WKWebView _test_waitForDidFinishNavigationWithoutPresentationUpdate]):
3602         Merge existing WKPDFView tests into one file, and add one for this bug.
3603
3604 2019-11-02  Devin Rousso  <drousso@apple.com>
3605
3606         Web Inspector: Add diagnostic logging for frontend feature usage
3607         https://bugs.webkit.org/show_bug.cgi?id=203579
3608         <rdar://problem/56717410>
3609
3610         Reviewed by Brian Burg.
3611
3612         Original patch by Matt Baker <mattbaker@apple.com>.
3613
3614         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3615         Add `ENABLE_INSPECTOR_TELEMETRY`, which is only enabled for macOS.
3616
3617 2019-11-01  Jonathan Bedard  <jbedard@apple.com>
3618
3619         Python 3: Add support in webkitpy.layout_tests.model
3620         https://bugs.webkit.org/show_bug.cgi?id=203702
3621
3622         Reviewed by Stephanie Lewis.
3623
3624         * Scripts/test-webkitpy-python3: Add webkitpy.layout_tests.model.
3625         * Scripts/webkitpy/layout_tests/models/test_configuration.py:
3626         (SpecifierSorter.sort_specifiers): Convert iterator to list.
3627         (TestConfigurationConverter.to_config_set): Use reduce from functors.
3628         (TestConfigurationConverter.intersect_combination): Ditto.
3629         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
3630         (TestExpectationsModel.get_test_set_for_keyword): Use iterators in both Python 2
3631         and Python 3.
3632         (TestExpectationsModel._remove_from_sets): Ditto.
3633         (TestExpectations.parse_generic_expectations): Covert iterators to lists for indexing.
3634         (TestExpectations.parse_default_port_expectations): Ditto.
3635         (TestExpectations.parse_override_expectations): Ditto.
3636         (TestExpectations.remove_configuration_from_test): Use any instead of just checking the
3637         first element in the set.
3638         * Scripts/webkitpy/layout_tests/models/test_run_results.py:
3639         (summarize_results): Use items instead of iteritems.
3640
3641 2019-11-01  Devin Rousso  <drousso@apple.com>
3642
3643         Web Inspector: Timelines: add a timeline that shows information about any recorded CSS animation/transition
3644         https://bugs.webkit.org/show_bug.cgi?id=203651
3645         <rdar://problem/56128726>
3646
3647         Reviewed by Brian Burg.
3648
3649         * TestWebKitAPI/Tests/WTF/Markable.cpp:
3650         (TestWebKitAPI::TEST):
3651         Add tests for extra utility operators.
3652
3653 2019-11-01  Brady Eidson  <beidson@apple.com>
3654
3655         Promote "_getWebArchive" to API.
3656         <rdar://problem/17317547> and https://bugs.webkit.org/show_bug.cgi?id=203767
3657
3658         Reviewed by Andy Estes.
3659
3660         * MiniBrowser/mac/BrowserWindowController.h:
3661         * MiniBrowser/mac/BrowserWindowController.m:
3662         (-[BrowserWindowController saveAsPDF:]):
3663         (-[BrowserWindowController saveAsWebArchive:]):
3664         * MiniBrowser/mac/MainMenu.xib:
3665         * MiniBrowser/mac/WK1BrowserWindowController.m:
3666         (-[WK1BrowserWindowController validateMenuItem:]):
3667         * MiniBrowser/mac/WK2BrowserWindowController.m:
3668         (-[WK2BrowserWindowController validateMenuItem:]):
3669         (-[WK2BrowserWindowController saveAsWebArchive:]):
3670
3671 2019-11-01  Jonathan Bedard  <jbedard@apple.com>
3672
3673         Python 3: Add support in webkitpy.common
3674         https://bugs.webkit.org/show_bug.cgi?id=202462
3675
3676         Reviewed by Stephanie Lewis.
3677
3678         * Scripts/test-webkitpy-python3: Add webkitpy.common.
3679         * Scripts/webkitpy/common/find_files_unittest.py: Use full import path.
3680         * Scripts/webkitpy/common/lru_cache_unittest.py:
3681         (LRUCacheTest.test_size_one_pop): Convert iterator to list
3682         * Scripts/webkitpy/common/prettypatch_unittest.py: Check for byte array explicitly.
3683         * Scripts/webkitpy/common/read_checksum_from_png_unittest.py: Use unicode compatible
3684         StringIO.
3685         (ReadChecksumFromPngTest.test_read_checksum):
3686         * Scripts/webkitpy/common/timeout_context.py:
3687         (Timeout.__enter__): Use range instead of xrange.
3688
3689 2019-11-01  Tim Horton  <timothy_horton@apple.com>
3690
3691         macCatalyst: Get TestWebKitAPI building
3692         https://bugs.webkit.org/show_bug.cgi?id=203728
3693
3694         Reviewed by Alexey Proskuryakov.
3695
3696         * Makefile:
3697         Only build gtest and TestWebKitAPI for macCatalyst.
3698
3699         * TestWebKitAPI/Configurations/Base.xcconfig:
3700         * TestWebKitAPI/Configurations/TestWebKitAPI.xcconfig:
3701         Make use of WK_COCOA_TOUCH instead of SDK conditionals.
3702
3703         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
3704         * TestWebKitAPI/Tests/WebKitCocoa/DragAndDropTests.mm:
3705         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
3706         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
3707         Fix some #ifdefs for macCatalyst.
3708
3709         * TestWebKitAPI/Tests/WebKitLegacy/ios/ScrollToRevealSelection.mm:
3710         (-[LegacyLoadingDelegate webViewDidFinishLoad:]):
3711         * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
3712         (-[AsyncPolicyDelegateForInsetTest webView:didFinishNavigation:]):
3713         (TestWebKitAPI::TEST):
3714         Util::runUntil wants a bool, not a BOOL.
3715