bd56bdf658f29d40f928084d5ca28162360c128f
[WebKit-https.git] / Tools / ChangeLog
1 2019-10-24  Jiewen Tan  <jiewen_tan@apple.com>
2
3         Unreviewed, a test fix after r251498
4
5         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
6
7 2019-10-24  Brady Eidson  <beidson@apple.com>
8
9         Expose pageZoom as API.
10         https://bugs.webkit.org/show_bug.cgi?id=203381
11
12         Reviewed by Andy Estes.
13
14         * MiniBrowser/mac/WK2BrowserWindowController.m:
15         (-[WK2BrowserWindowController toggleZoomMode:]):
16         (-[WK2BrowserWindowController resetZoom:]):
17         (-[WK2BrowserWindowController canResetZoom]):
18         (-[WK2BrowserWindowController currentZoomFactor]):
19         (-[WK2BrowserWindowController setCurrentZoomFactor:]):
20
21 2019-10-23  Ryosuke Niwa  <rniwa@webkit.org>
22
23         Add a mechanism to find and manipulate text by paragraphs
24         https://bugs.webkit.org/show_bug.cgi?id=203286
25
26         Reviewed by Wenson Hsieh.
27
28         Added basic API tests for the new SPI.
29
30         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
31         * TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm: Added.
32         (-[TextManipulationDelegate init]):
33         (-[TextManipulationDelegate _webView:didFindItem:forFrame:]):
34         (-[TextManipulationDelegate items]):
35         (TestWebKitAPI::createItem):
36
37 2019-10-24  Brady Eidson  <beidson@apple.com>
38
39         Formalize PDF snapshot API.
40         https://bugs.webkit.org/show_bug.cgi?id=203374
41
42         Reviewed by Tim Horton.
43
44         * MiniBrowser/mac/WK2BrowserWindowController.m:
45         (-[WK2BrowserWindowController saveAsPDF:]):
46
47         * TestWebKitAPI/Tests/WebKitCocoa/PDFSnapshot.mm:
48         (TestWebKitAPI::TEST):
49
50 2019-10-24  Andy Estes  <aestes@apple.com>
51
52         [Cocoa] Make it possible to convert SharedBuffer segments and data views to NSData without copying
53         https://bugs.webkit.org/show_bug.cgi?id=203348
54
55         Reviewed by Alex Christensen.
56
57         * TestWebKitAPI/Tests/WebCore/cocoa/SharedBuffer.mm:
58         (TestWebKitAPI::TEST_F):
59
60 2019-10-23  Wenson Hsieh  <wenson_hsieh@apple.com>
61
62         [iOS 13] imported/mozilla/svg/text/textpath-selection.svg is flaky
63         https://bugs.webkit.org/show_bug.cgi?id=203247
64         <rdar://problem/52124292>
65
66         Reviewed by Tim Horton.
67
68         Roughly 1 in 3000 runs, this test fails due to an image diff, where only the expectation or test page shows a
69         native selection view on iOS. Both the test and expectation create DOM selections on the page, which is then
70         followed by a native selection view on the page at some point in the future.
71
72         This "point in the future" depends on both WebKit implementation details (i.e. when the next remote layer tree
73         commit happens) as well as UIKit implementation details (for example, many methods in UITextSelectionView and
74         UIWKTextInteractionAssistant will schedule changes to UIView geometry using a runloop timer, instead of applying
75         the updates immediately). Because of the latter, it's impractical to expect native selection views on iOS to
76         always appear or not appear after finishing this layout test.
77
78         To mitigate this rare source of flakiness, we hide these native text selection views when snapshotting iOS
79         WKWebViews for the purposes of ref and pixel testing.
80
81         Note that we still have a considerable number of layout tests that inspect these native selection views on iOS,
82         but they work by waiting until the native selection views reach a particular state (e.g. by polling for the
83         number of ranged selection subviews, or the presence of selection handles, or waiting for a caret selection with
84         a given geometry, etc.), which ensures that they are robust against subtle changes to the timing of selection
85         updates in the UI process.
86
87         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
88         (WTR::PlatformWebView::windowSnapshotImage):
89
90 2019-10-23  Chris Dumez  <cdumez@apple.com>
91
92         WebBackForwardCache::removeEntriesMatching() may re-enter and crash
93         https://bugs.webkit.org/show_bug.cgi?id=203341
94         <rdar://problem/56553939>
95
96         Reviewed by Geoffrey Garen.
97
98         Add API test coverage.
99
100         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
101
102 2019-10-23  Megan Gardner  <megan_gardner@apple.com>
103
104         Rename force-press-related functions to refer to context menus, and fix a former force-press test
105         https://bugs.webkit.org/show_bug.cgi?id=202663
106         <rdar://problem/52699530>
107
108         Reviewed by Dean Jackson.
109
110         Rename all relevant fuctions to more correctly reflect that this does not specifically
111         require a force press to activate any longer.
112
113         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
114         * TestRunnerShared/UIScriptContext/UIScriptContext.h:
115         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
116         (WTR::UIScriptController::setDidShowContextMenuCallback):
117         (WTR::UIScriptController::didShowContextMenuCallback const):
118         (WTR::UIScriptController::setDidDismissContextMenuCallback):
119         (WTR::UIScriptController::didDismissContextMenuCallback const):
120         (WTR::UIScriptController::setDidShowForcePressPreviewCallback): Deleted.
121         (WTR::UIScriptController::didShowForcePressPreviewCallback const): Deleted.
122         (WTR::UIScriptController::setDidDismissForcePressPreviewCallback): Deleted.
123         (WTR::UIScriptController::didDismissForcePressPreviewCallback const): Deleted.
124         * TestRunnerShared/UIScriptContext/UIScriptController.h:
125         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
126         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
127         (-[TestRunnerWKWebView resetInteractionCallbacks]):
128         (-[TestRunnerWKWebView _didShowContextMenu]):
129         (-[TestRunnerWKWebView _didDismissContextMenu]):
130         (-[TestRunnerWKWebView _didShowForcePressPreview]): Deleted.
131         (-[TestRunnerWKWebView _didDismissForcePressPreview]): Deleted.
132         * WebKitTestRunner/ios/UIScriptControllerIOS.h:
133         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
134         (WTR::UIScriptControllerIOS::setDidShowContextMenuCallback):
135         (WTR::UIScriptControllerIOS::setDidDismissContextMenuCallback):
136         (WTR::UIScriptControllerIOS::setDidShowForcePressPreviewCallback): Deleted.
137         (WTR::UIScriptControllerIOS::setDidDismissForcePressPreviewCallback): Deleted.
138
139 2019-10-23  Aakash Jain  <aakash_jain@apple.com>
140
141         [EWS] Multiple builds are triggered for one patch sometimes in new EWS
142         https://bugs.webkit.org/show_bug.cgi?id=199417
143
144         Reviewed by Jonathan Bedard.
145
146         * BuildSlaveSupport/ews-app/ews/fetcher.py:
147         (BugzillaPatchFetcher.fetch): Set the flag before sending the patch to buildbot. Unset it in case of failure. 
148         Also added additional check for sent_to_buildbot flag before processing patch.
149         * BuildSlaveSupport/ews-app/ews/models/patch.py:
150         (Patch.save_patch): Improved logging.
151         (Patch.set_sent_to_buildbot): Modified to accept sent_to_buildbot paramater, and set the value accordingly.
152
153 2019-10-23  Truitt Savell  <tsavell@apple.com>
154
155         Unreviewed, rolling out r251261.
156
157         This broke multiple tests
158
159         Reverted changeset:
160
161         "Using version 1 CFRunloopSource for faster task dispatch"
162         https://bugs.webkit.org/show_bug.cgi?id=202874
163         https://trac.webkit.org/changeset/251261
164
165 2019-10-21  Jiewen Tan  <jiewen_tan@apple.com>
166
167         [WebAuthn] Warn users when multiple NFC tags present
168         https://bugs.webkit.org/show_bug.cgi?id=200932
169         <rdar://problem/54890736>
170
171         Reviewed by Brent Fulgham.
172
173         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
174         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
175         (-[TestWebAuthenticationPanelDelegate panel:updateWebAuthenticationPanel:]):
176         (TestWebKitAPI::TEST):
177         Adds a new test for -[_WKWebAuthenticationPanelDelegate panel:updateWebAuthenticationPanel:].
178         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-nfc-multiple-tags.html: Added.
179
180 2019-10-22  Jiewen Tan  <jiewen_tan@apple.com>
181
182         [WebAuthn] Add more information to _WKWebAuthenticationPanel
183         https://bugs.webkit.org/show_bug.cgi?id=202561
184         <rdar://problem/55973910>
185
186         Reviewed by Youenn Fablet.
187
188         Adds new API tests.
189
190         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
191         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
192         (-[TestWebAuthenticationPanelUIDelegate _webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]):
193         (-[TestWebAuthenticationPanelUIDelegate panel]):
194         (TestWebKitAPI::TEST):
195         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-make-credential-hid.html: Added.
196
197 2019-10-23  Aakash Jain  <aakash_jain@apple.com>
198
199         [ews] iOS-13-Simulator-WK2-Tests-EWS is failing with an KeyError exception
200         https://bugs.webkit.org/show_bug.cgi?id=203281
201
202         Reviewed by Jonathan Bedard.
203
204         * BuildSlaveSupport/ews-build/layout_test_failures.py:
205         (LayoutTestFailures.results_from_string.get_failing_tests): Gracefully handle the case of missing 'report' key.
206
207 2019-10-23  Jonathan Bedard  <jbedard@apple.com>
208
209         Python 3: Add support in webkitpy.results
210         https://bugs.webkit.org/show_bug.cgi?id=202478
211
212         Reviewed by Carlos Alberto Lopez Perez.
213
214         * Scripts/test-webkitpy-python3: Add webkitpy.results.
215         * Scripts/webkitpy/results/upload.py:
216         (Upload.Encoder.default): Use range instead of xrange.
217         (Upload.create_configuration): Support items iteration for Python 3.
218         (Upload.create_run_stats): Change iteritems to items.
219         (Upload.create_test_result): Ditto.
220         * Scripts/webkitpy/results/upload_unittest.py:
221         (UploadTest.Options.__init__): Change iteritems to items.
222         (UploadTest.normalize): Ditto.
223
224 2019-10-22  Jiewen Tan  <jiewen_tan@apple.com>
225
226         [WebAuthn] Supply FrameInfo in -[WKUIDelegatePrivate _webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]
227         https://bugs.webkit.org/show_bug.cgi?id=202563
228         <rdar://problem/55973968>
229
230         Reviewed by Brent Fulgham.
231
232         Adds new test contents into existing tests.
233
234         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
235         (-[TestWebAuthenticationPanelUIDelegate init]):
236         (-[TestWebAuthenticationPanelUIDelegate _webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]):
237         (-[TestWebAuthenticationPanelUIDelegate frame]):
238         (TestWebKitAPI::TEST):
239
240 2019-10-23  Wenson Hsieh  <wenson_hsieh@apple.com>
241
242         Unreviewed, fix tvOS and watchOS engineering builds after r251377
243
244         -[UIPasteboard itemProviders] is only available on iOS.
245
246         * TestWebKitAPI/Tests/WebKitCocoa/ClipboardTests.mm:
247         (writeMultipleObjectsToPlatformPasteboard):
248
249 2019-10-23  Jonathan Bedard  <jbedard@apple.com>
250
251         Python 3: 2to3 script may not be in a user's path
252         https://bugs.webkit.org/show_bug.cgi?id=203213
253
254         Reviewed by Dewei Zhu.
255
256         * Scripts/webkitpy/thirdparty/__init__.py:
257         (AutoinstallImportHook.__init__): Remove executive dependencies.
258         (AutoinstallImportHook._install_beautifulsoup): Use multiprocess because 2to3 sets
259         Some undesirable global logging state.
260
261 2019-10-23  Tim Horton  <timothy_horton@apple.com>
262
263         prepare-ChangeLog should whine about not having tests in WebKit-only patches
264         https://bugs.webkit.org/show_bug.cgi?id=203027
265
266         Reviewed by Ryosuke Niwa.
267
268         * Scripts/prepare-ChangeLog:
269         (generateNewChangeLogs):
270         Put the "No new tests" or list of newly added tests in the deeper
271         of the WebCore or WebKit ChangeLogs, depending on which directories
272         the patch touches.
273
274         This is mostly intended to encourage tests for WebKit-only changes.
275
276 2019-10-22  Aakash Jain  <aakash_jain@apple.com>
277
278         [ews] Status bubble should show previous failures if any in case patch is skipped
279         https://bugs.webkit.org/show_bug.cgi?id=203261
280
281         Reviewed by Jonathan Bedard.
282
283         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
284         (StatusBubble._build_bubble): Display build information from previous builds for skipped patch in
285         case there are multiple builds.
286
287 2019-10-22  Alex Christensen  <achristensen@webkit.org>
288
289         Re-enable legacy TLS by default, keep runtime switch
290         https://bugs.webkit.org/show_bug.cgi?id=203253
291
292         Reviewed by Geoffrey Garen.
293
294         * TestWebKitAPI/Tests/WebKitCocoa/TLSDeprecation.mm:
295         (TestWebKitAPI::TEST):
296         (TestWebKitAPI::getWebSocketEventWebKitLegacy):
297
298 2019-10-22  Aakash Jain  <aakash_jain@apple.com>
299
300         [ews] Download the build archive from master when download from S3 fails
301         https://bugs.webkit.org/show_bug.cgi?id=203263
302
303         Reviewed by Jonathan Bedard.
304
305         * BuildSlaveSupport/ews-build/steps.py:
306         (DownloadBuiltProduct.evaluateCommand):
307         (DownloadBuiltProductFromMaster): Build step to download the archive from build master.
308         (DownloadBuiltProductFromMaster.getResultSummary): Added custom failure message.
309         (DownloadBuiltProductFromMaster.evaluateCommand): Overrided to ensure it doesn't use this method from base
310         class DownloadBuiltProduct.
311         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
312
313 2019-10-22  youenn fablet  <youenn@apple.com>
314
315         Remove mayHaveServiceWorkerRegisteredForOrigin
316         https://bugs.webkit.org/show_bug.cgi?id=203055
317
318         Reviewed by Alex Christensen.
319
320         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
321         Remove obsolete test.
322
323 2019-10-22  Antti Koivisto  <antti@apple.com>
324
325         operator==(Vector, Vector) should work with different inline capacities
326         https://bugs.webkit.org/show_bug.cgi?id=203245
327
328         Reviewed by Alex Christensen.
329
330         * TestWebKitAPI/Tests/WTF/Vector.cpp:
331         (TestWebKitAPI::TEST):
332
333 2019-10-22  Carlos Alberto Lopez Perez  <clopez@igalia.com>
334
335         Add a script to run ImageDiff manually
336         https://bugs.webkit.org/show_bug.cgi?id=203226
337
338         Reviewed by Adrian Perez de Castro.
339
340         This allows to manually run the ImageDiff tool more easily, that
341         is sometimes useful when debugging problems with it.
342
343         * Scripts/run-imagediff: Added.
344
345 2019-10-21  Yusuke Suzuki  <ysuzuki@apple.com>
346
347         [JSC] Thread JSGlobalObject* instead of ExecState*
348         https://bugs.webkit.org/show_bug.cgi?id=202392
349
350         Reviewed by Geoffrey Garen.
351
352         * DumpRenderTree/TestRunner.cpp:
353
354 2019-10-22  Dirk Schulze  <krit@webkit.org>
355
356         Restore my committer status.
357
358         Uneviewed.
359
360         * Scripts/webkitpy/common/config/contributors.json:
361
362 2019-10-21  Zhifei Fang  <zhifei_fang@apple.com>
363
364         [results.webkit.org] Change dot and lengend dot use same mechanism to center text and image
365         https://bugs.webkit.org/show_bug.cgi?id=203216
366
367         Reviewed by Jonathan Bedard.
368
369         * resultsdbpy/resultsdbpy/view/static/library/css/docs.yaml:
370         * resultsdbpy/resultsdbpy/view/static/library/css/index.html:
371         * resultsdbpy/resultsdbpy/view/static/library/css/webkit.css:
372         (.dot *):
373         (.dot img, .dot .text):
374         (.dot>img, .dot>.text):
375         (.dot.small img, .dot.small .text):
376         (.dot.small>img, .dot.small>.text):
377         (.dot.medium img, .dot.medium .text):
378         (.dot.medium>img, .dot.medium>.text):
379         (.dot.large img, .dot.large .text):
380         (.dot.large>img, .dot.large>.text):
381         (.lengend>.item .dot):
382         (.lengend>.item .dot img, .lengend>.item .dot .text):
383         (.lengend>.item .dot>img, .lengend>.item .dot>.text):
384         (.dot.small *): Deleted.
385         (.dot img, .dot.small img): Deleted.
386         (.dot.medium *): Deleted.
387         (.dot.medium img): Deleted.
388         (.dot.large *): Deleted.
389         (.dot.large img): Deleted.
390         (.lengend>.item .dot .text): Deleted.
391         (.lengend>.item .dot img): Deleted.
392
393 2019-10-21  youenn fablet  <youenn@apple.com>
394
395         Move service worker registration matching for navigation loads to network process
396         https://bugs.webkit.org/show_bug.cgi?id=203144
397
398         Reviewed by Chris Dumez.
399
400         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
401         We are now creating a WebSWClientConnection whenever receiving a WebSWClientConnection message
402         from NetworkProcess. It is free to do so given it no longer requires sending some IPC.
403         Update the tests accordingly.
404         A future patch will remove the service worker registration bit feature and corresponding test.
405
406 2019-10-21  Simon Fraser  <simon.fraser@apple.com>
407
408         TestWebKitAPI.ScrollViewScrollabilityTests.ScrollableWithOverflowHiddenAndInputView is failing on iPad simulator
409         https://bugs.webkit.org/show_bug.cgi?id=203053
410
411         Reviewed by Wenson Hsieh.
412         
413         Make ScrollableWithOverflowHiddenAndInputView only test the results on iPhones. Test is not designed for ipad.
414
415         * TestWebKitAPI/Tests/ios/ScrollViewScrollabilityTests.mm:
416         (TestWebKitAPI::TEST):
417
418 2019-10-21  Jonathan Bedard  <jbedard@apple.com>
419
420         results.webkit.org: Add ability to display time on bubbles
421         https://bugs.webkit.org/show_bug.cgi?id=203202
422         <rdar://problem/56436621>
423
424         Rubber-stamped by Aakash Jain.
425
426         * resultsdbpy/resultsdbpy/view/static/js/timeline.js: Add switch to show times under each bubble.
427         * resultsdbpy/resultsdbpy/view/templates/search.html: Correctly update timeline on callback.
428
429 2019-10-21  Dean Jackson  <dino@apple.com>
430
431         Dispatch AR event on the originating anchor element
432         https://bugs.webkit.org/show_bug.cgi?id=203198
433         <rdar://55743929>
434
435         Reviewed by Simon Fraser.
436
437         Improve this test, most importantly so that it
438         actually works :)
439
440         Retrieve the ElementIdentifier for the <a> element,
441         and trigger a system preview action on it.
442
443         * TestWebKitAPI/Tests/WebKitCocoa/SystemPreview.mm:
444         (-[TestSystemPreviewTriggeredHandler userContentController:didReceiveScriptMessage:]):
445         (TestWebKitAPI::TEST):
446         * TestWebKitAPI/Tests/WebKitCocoa/system-preview-trigger.html:
447
448 2019-10-21  Alex Christensen  <achristensen@webkit.org>
449
450         ServiceWorker tests should use TCPServer instead of WKURLSchemeHandler
451         https://bugs.webkit.org/show_bug.cgi?id=203141
452
453         Reviewed by Youenn Fablet.
454
455         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
456         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
457         (-[SWMessageHandlerForRestoreFromDiskTest userContentController:didReceiveScriptMessage:]):
458         (-[SWSchemes handledRequests]): Deleted.
459         (-[SWSchemes webView:startURLSchemeTask:]): Deleted.
460         (-[SWSchemes webView:stopURLSchemeTask:]): Deleted.
461         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerTCPServer.h: Added.
462         (ServiceWorkerTCPServer::ServiceWorkerTCPServer):
463         (ServiceWorkerTCPServer::request):
464         (ServiceWorkerTCPServer::requestWithLocalhost):
465         (ServiceWorkerTCPServer::requestWithFragment):
466         (ServiceWorkerTCPServer::userAgentsChecked):
467         (ServiceWorkerTCPServer::requestWithFormat):
468         * TestWebKitAPI/Tests/WebKitCocoa/StorageQuota.mm:
469         (-[StorageSchemes webView:startURLSchemeTask:]): Deleted.
470         (-[StorageSchemes webView:stopURLSchemeTask:]): Deleted.
471
472 2019-10-21  Jonathan Bedard  <jbedard@apple.com>
473
474         Python 3: Add support in webkitpy.common.config
475         https://bugs.webkit.org/show_bug.cgi?id=202463
476
477         Reviewed by Dewei Zhu.
478
479         * Scripts/test-webkitpy-python3: Add webkitpy.common.config to the test list.
480         * Scripts/webkitpy/common/config/committers.py:
481         (Contributor.__init__): Convert lists to maps.
482         (Contributor.__str__): __str__ will always return the native string type.
483         (Contributor.__unicode__): Use .format() string.
484         (CommitterList._exclusive_contributors): Convert filter to list.
485         (CommitterList._exclusive_committers): Ditto.
486         (CommitterList.contributors_by_search_string): Ditto.
487         * Scripts/webkitpy/common/config/committervalidator_unittest.py: Use full import paths.
488         * Scripts/webkitpy/common/config/contributionareas_unittest.py: Use full import paths.
489         * Scripts/webkitpy/common/config/ports.py:
490         (DeprecatedPort.makeArgs): Use 'in' instead of has_key.
491         * Scripts/webkitpy/common/config/urls_unittest.py:
492         * Scripts/webkitpy/common/unicode_compatibility.py:
493         (encode_for): Encode string for type.
494         * Scripts/webkitpy/thirdparty/BeautifulSoup.py: Make html5lib import auto-install compatible.
495         * Scripts/webkitpy/thirdparty/__init__.py:
496         (AutoinstallImportHook.find_module): Add html5lib.
497         (AutoinstallImportHook._install_html5lib): Make html5lib a stand-alone installed package.
498         (AutoinstallImportHook._install_mechanize): Install html5lib.
499         (AutoinstallImportHook._install_beautifulsoup): Ditto.
500
501 2019-10-21  Wenson Hsieh  <wenson_hsieh@apple.com>
502
503         [Clipboard API] Implement ClipboardItem.getType() for platform clipboard items
504         https://bugs.webkit.org/show_bug.cgi?id=203168
505
506         Reviewed by Tim Horton.
507
508         Add support for the new layout tests, as well as a new API test.
509
510         * DumpRenderTree/ios/UIScriptControllerIOS.h:
511         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
512         (WTR::UIScriptControllerIOS::copyText):
513
514         Implement UIScriptController.copyText in WebKit1. This is used in one of the new layout tests, which passes in
515         WebKit1 on macOS and iOS.
516
517         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
518         (-[LocalPasteboard declareTypes:owner:]):
519         (-[LocalPasteboard addTypes:owner:]):
520         (-[LocalPasteboard _addTypesWithoutUpdatingChangeCount:owner:]):
521
522         Adjust logic when declaring types on the platform pasteboard, such that it behaves more like the platform; when
523         declaring types, even if the owner doesn't change, the change count should still get bumped up by 1.
524
525         * DumpRenderTree/mac/UIScriptControllerMac.h:
526         * DumpRenderTree/mac/UIScriptControllerMac.mm:
527         (WTR::UIScriptControllerMac::copyText):
528         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
529         * TestWebKitAPI/Tests/WebKitCocoa/ClipboardTests.mm: Added.
530         (-[TestWKWebView readClipboard]):
531         (createWebViewForClipboardTests):
532         (writeMultipleObjectsToPlatformPasteboard):
533
534         Add a new API test to verify that clipboard items contain the right data when writing multiple items (each with
535         different sets of types) to the platform pasteboard using native APIs.
536
537         * TestWebKitAPI/Tests/WebKitCocoa/clipboard.html: Added.
538         * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
539         (-[LocalPasteboard declareTypes:owner:]):
540         (-[LocalPasteboard addTypes:owner:]):
541         (-[LocalPasteboard _addTypesWithoutUpdatingChangeCount:owner:]):
542
543 2019-10-21  Jonathan Bedard  <jbedard@apple.com>
544
545         Python 3: Add support in webkitpy.common.net
546         https://bugs.webkit.org/show_bug.cgi?id=202464
547
548         Reviewed by Dewei Zhu.
549
550         * Scripts/test-webkitpy-python3: Add webkitpy.common.net.
551         * Scripts/webkitpy/common/net/credentials_unittest.py: Replace raw_input with input for Python3.
552         * Scripts/webkitpy/common/net/ewsserver.py:
553         * Scripts/webkitpy/common/net/resultsjsonparser.py:
554         (ParsedJSONResults.__init__): Sort results by test name.
555         * Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:
556         (test_basic): Sort results by test name.
557         * Scripts/webkitpy/common/net/statusserver.py:
558         (StatusServer._fetch_url):
559         * Scripts/webkitpy/common/net/unittestresults_unittest.py:
560
561 2019-10-18  Aakash Jain  <aakash_jain@apple.com>
562
563         EWS should have a way to retry a patch
564         https://bugs.webkit.org/show_bug.cgi?id=196599
565
566         Reviewed by Jonathan Bedard.
567
568         * BuildSlaveSupport/ews-app/ews/models/build.py:
569         (Build): Add the retried field to keep track of whether a build is requested to be retried or not.
570         (Build.set_retried): Method to set the retried field.
571         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html: Added the 'Retry failed builds' button.
572         * BuildSlaveSupport/ews-app/ews/views/retrypatch.py:
573         (RetryPatch.post): Added a check if the build is already retried. Also, set the retried flag appropriately.
574         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
575         (StatusBubble._build_bubble): Updated the status-bubble to in-progress while waiting for build to be retried.
576         (StatusBubble._build_bubbles_for_patch): Display the retry button only if there are failed builds.
577         * BuildSlaveSupport/ews-app/ews/migrations/0002_build_retried.py: Added database migration.
578
579 2019-10-21  Alicia Boya García  <aboya@igalia.com>
580
581         [MSE][GStreamer] Revert WebKitMediaSrc rework temporarily
582         https://bugs.webkit.org/show_bug.cgi?id=203078
583
584         Reviewed by Carlos Garcia Campos.
585
586         * Scripts/webkitpy/style/checker.py:
587
588 2019-10-21  Carlos Garcia Campos  <cgarcia@igalia.com>
589
590         Unreviewed. Mark some more WTF unit tests as slow for GTK and WPE
591
592         * TestWebKitAPI/glib/TestExpectations.json:
593
594 2019-10-21  Carlos Garcia Campos  <cgarcia@igalia.com>
595
596         [GTK][WPE] Check we don't leak the WebKitWebContext in all tests
597         https://bugs.webkit.org/show_bug.cgi?id=202981
598
599         Reviewed by Žan Doberšek.
600
601         Also include the number of references left in leaks report.
602
603         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
604         (Test::Test):
605         (Test::~Test):
606
607 2019-10-18  Jiewen Tan  <jiewen_tan@apple.com>
608
609         [WebAuthn] Warn users when no credentials are found
610         https://bugs.webkit.org/show_bug.cgi?id=203147
611         <rdar://problem/55931123>
612
613         Reviewed by Brent Fulgham.
614
615         Adds new tests for _WKWebAuthenticationPanelUpdateNoCredentialsFound.
616
617         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
618         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
619         (-[TestWebAuthenticationPanelDelegate panel:updateWebAuthenticationPanel:]):
620         (TestWebKitAPI::TEST):
621         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid-cancel.html:
622         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid-no-credentials.html: Added.
623         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid.html:
624         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-nfc.html:
625         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-u2f-no-credentials.html: Added.
626
627 2019-10-18  Wenson Hsieh  <wenson_hsieh@apple.com>
628
629         [Clipboard API] Refactor Pasteboard::read() to take an optional item index
630         https://bugs.webkit.org/show_bug.cgi?id=203161
631
632         Reviewed by Tim Horton.
633
634         Add a couple of new API tests to verify that the web archive type identifier ("com.apple.webarchive") is (1)
635         written to the pasteboard when copying a rich text selection, and (2) is read when attempting to paste web
636         content.
637
638         * TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm:
639         * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
640
641 2019-10-18  Jonathan Bedard  <jbedard@apple.com>
642
643         Python 3: Add support in webkitpy.common.watchlist
644         https://bugs.webkit.org/show_bug.cgi?id=202473
645
646         Reviewed by Dewei Zhu.
647
648         * Scripts/test-webkitpy-python3: Add webkitpy.common.watchlist.
649         * Scripts/webkitpy/common/watchlist/watchlist.py:
650         (WatchList.find_matching_definitions): Use items instead of iteritems.
651         * Scripts/webkitpy/common/watchlist/watchlist_unittest.py:
652         (WatchListTest.test_filename_definition_no_matches): Back-slash needs to be escaped.
653         (WatchListTest.test_filename_definition): Ditto.
654         (WatchListTest.test_cc_rules_simple): Ditto.
655         (WatchListTest.test_cc_rules_complex): Ditto.
656         (WatchListTest.test_cc_and_message_rules_complex): Ditto.
657         (WatchListTest.test_cc_and_message_rules_no_matches): Ditto.
658         (WatchListTest.test_more_and_less_match): Ditto.
659         (WatchListTest.test_complex_match): Ditto.
660         * Scripts/webkitpy/common/watchlist/watchlistparser_unittest.py:
661         (WatchListParserTest.test_bad_definition): Back-slash needs to be escaped.
662         (WatchListParserTest.test_bad_filename_regex): Ditto.
663         (WatchListParserTest.test_bad_more_regex): Ditto.
664         (WatchListParserTest.test_bad_match_type): Ditto.
665         (WatchListParserTest.test_match_type_typo): Ditto.
666         (WatchListParserTest.test_empty_cc_rule): Ditto.
667         (WatchListParserTest.test_cc_rule_with_invalid_email): Ditto.
668         (WatchListParserTest.test_cc_rule_with_secondary_email): Ditto.
669         (WatchListParserTest.test_empty_message_rule): Ditto.
670         (WatchListParserTest.test_unused_defintion): Ditto.
671         (WatchListParserTest.test_cc_rule_with_undefined_defintion_with_suggestion): Ditto.
672
673 2019-10-18  Raphael Kubo da Costa  <rakuco@webkit.org>
674
675         Remove myself from the CMake watchlist
676         https://bugs.webkit.org/show_bug.cgi?id=203166
677
678         Reviewed by Aakash Jain.
679
680         * Scripts/webkitpy/common/config/watchlist:
681
682 2019-10-18  Wenson Hsieh  <wenson_hsieh@apple.com>
683
684         Unreviewed, remove an extraneous header import after r251279
685
686         Address a post-landing review comment.
687
688         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
689
690 2019-10-18  Jiewen Tan  <jiewen_tan@apple.com>
691
692         [WebAuthn] Implement AuthenticatorCancel
693         https://bugs.webkit.org/show_bug.cgi?id=191523
694         <rdar://problem/55920204>
695
696         Reviewed by Brent Fulgham.
697
698         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
699         * TestWebKitAPI/Tests/WebCore/FidoHidMessageTest.cpp:
700         (TestWebKitAPI::TEST):
701         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
702         (-[TestWebAuthenticationPanelUIDelegate webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]):
703         (TestWebKitAPI::TEST):
704         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid-cancel.html: Copied from Tools/TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid.html.
705         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid.html:
706         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-nfc.html:
707         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion.html:
708
709 2019-10-18  Brian Burg  <bburg@apple.com>
710
711         Cleanup: Stop setting -ApplePersistenceIgnoreState when running debug Mac WebKit
712         https://bugs.webkit.org/show_bug.cgi?id=203156
713
714         Reviewed by Jonathan Bedard.
715
716         This is no longer needed. The new value has been supported since 2014.
717
718         * Scripts/webkitdirs.pm:
719         (argumentsForRunAndDebugMacWebKitApp):
720
721 2019-10-17  Wenson Hsieh  <wenson_hsieh@apple.com>
722
723         [Clipboard API] Support navigator.clipboard.read()
724         https://bugs.webkit.org/show_bug.cgi?id=203021
725
726         Reviewed by Ryosuke Niwa.
727
728         Make adjustments to WebKitTestRunner and DumpRenderTree to support the new layout tests. See below for more
729         details.
730
731         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
732         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
733         (-[LocalPasteboard pasteboardItems]):
734
735         Fixes an existing issue with the mock NSPasteboard used for layout tests. Currently, our logic for converting
736         the contents of the platform pasteboard to NSPasteboardItem simply writes the pasteboard data as-is to
737         NSPasteboardItems. However, these pasteboard types may be legacy pasteboard types, in which case
738         NSPasteboardItem will simply handle the call to `-setData:forType:` as a no-op. AppKit has logic in this
739         scenario to canonicalize these legacy pasteboard types to their modern counterparts, but this is absent in
740         DumpRenderTreePasteboard and WebKitTestRunnerPasteboard.
741
742         Address this by teaching the mock pasteboards to convert legacy types to modern types when generating platform
743         pasteboard items.
744
745         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
746         * TestRunnerShared/UIScriptContext/UIScriptController.h:
747         (WTR::UIScriptController::copyText):
748
749         Add a new UIScriptController method to write a string to the platform pasteboard. This patch adds support for
750         this new testing hook on macOS and iOS, in WebKit2 (WebKitTestRunner).
751
752         * TestRunnerShared/mac/NSPasteboardAdditions.h: Copied from Tools/WebKitTestRunner/mac/UIScriptControllerMac.h.
753         * TestRunnerShared/mac/NSPasteboardAdditions.mm: Added.
754         (+[NSPasteboard _modernPasteboardType:]):
755
756         Add a helper to convert legacy pasteboard types (and dynamic UTIs that map to legacy pasteboard types) to
757         modern pasteboard types, suitable for writing to NSPasteboardItems on macOS.
758
759         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
760         * WebKitTestRunner/ios/UIScriptControllerIOS.h:
761         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
762         (WTR::UIScriptControllerIOS::copyText):
763         * WebKitTestRunner/mac/UIScriptControllerMac.h:
764         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
765         (WTR::UIScriptControllerMac::copyText):
766         * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
767
768         Apply the same fix for WebKitTestRunner's mock NSPasteboard.
769
770         (-[LocalPasteboard _clearContentsWithoutUpdatingChangeCount]):
771         (-[LocalPasteboard clearContents]):
772
773         Make -clearContents clear out all the contents on the mock pasteboard, instead of crashing in AppKit.
774
775         (-[LocalPasteboard declareTypes:owner:]):
776         (-[LocalPasteboard pasteboardItems]):
777
778 2019-10-17  Mark Lam  <mark.lam@apple.com>
779
780         Use constexpr in more places and remove some unnecessary external linkage.
781         https://bugs.webkit.org/show_bug.cgi?id=203115
782
783         Reviewed by Yusuke Suzuki.
784
785         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
786         (TestWebKitAPI::TEST):
787         * TestWebKitAPI/Tests/mac/IsNavigationActionTrusted.mm:
788
789 2019-10-17  Sihui Liu  <sihui_liu@apple.com>
790
791         Using version 1 CFRunloopSource for faster task dispatch
792         https://bugs.webkit.org/show_bug.cgi?id=202874
793
794         Reviewed by Geoffrey Garen.
795
796         Fix a flaky test.
797
798         * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
799
800 2019-10-17  Jonathan Bedard  <jbedard@apple.com>
801
802         Python 3: Add support in webkitpy.common.net.buildbot 
803         https://bugs.webkit.org/show_bug.cgi?id=202466
804
805         Reviewed by Stephanie Lewis.
806
807         * Scripts/test-webkitpy-python3: Add webkitpy.common.net.buildbot to the test list.
808         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
809         (Builder.url_encoded_name): Call compatible urllib quote.
810         (Builder.revision_build_pairs_with_results): Convert iterator to list before returning.
811         (Build.results_url): Call compatible urllib quote.
812         (BuildBot._parse_last_build_cell):renderContents needs to be decoded in Python 3.
813         (BuildBot._parse_current_build_cell): BeautifulSoup and bs4 render breaks differently.
814         (BuildBot._fetch_build_dictionary): Call compatible urllib quote.
815         * Scripts/webkitpy/common/net/regressionwindow.py:
816         (RegressionWindow.revisions): Convert range(...) to list.
817
818 2019-10-17  Aakash Jain  <aakash_jain@apple.com>
819
820         [ews] status bubbles should show details from all the builds in case build is retried
821         https://bugs.webkit.org/show_bug.cgi?id=203117
822
823         Reviewed by Jonathan Bedard.
824
825         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
826         (StatusBubble._build_bubble): Display messages from all the builds (including retried builds) for a patch on a queue.
827         (StatusBubble._steps_messages_from_multiple_builds): Method to generate status using information from all the retried builds. 
828         (StatusBubble.get_all_builds_for_queue): Method to get all the builds instead of just the latest one.
829         (StatusBubble.get_latest_build_for_queue): Modified to use the new get_all_builds_for_queue() method.
830
831 2019-10-17  Emilio Cobos Álvarez  <emilio@crisal.io>
832
833         [GTK] Explicitly use Python 2 in jhbuild-wrapper
834         https://bugs.webkit.org/show_bug.cgi?id=202790
835
836         Reviewed by Adrian Perez de Castro.
837
838         jhbuildutils.py requires Python 2 for the moment, so using just
839         `python` fails in distros where Python 3 is the default.
840
841         * jhbuild/jhbuild-wrapper:
842
843 2019-10-17  Paulo Matos  <pmatos@igalia.com>
844
845         Check values of variables before extracting index in perl
846         https://bugs.webkit.org/show_bug.cgi?id=202333
847
848         Reviewed by Jonathan Bedard.
849
850         If compiler doesn't properly report the host and target it was
851         compiled for, lacking better information we just go ahead and assume
852         there is no cross compilation involved.
853         
854         * Scripts/webkitdirs.pm:
855         (isCrossCompilation):
856
857 2019-10-17  Pablo Saavedra  <psaavedra@igalia.com>
858
859         Add a driver for MiniBrowser running with WPE for
860         benchmark_runner
861         https://bugs.webkit.org/show_bug.cgi?id=202994
862
863         Reviewed by Žan Doberšek.
864
865         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_minibrowserwpe_driver.py: Added.
866         (WPEMiniBrowserDriver):
867         (WPEMiniBrowserDriver.launch_url):
868         (WPEMiniBrowserDriver.launch_driver):
869
870 2019-10-17  Carlos Alberto Lopez Perez  <clopez@igalia.com>
871
872         run-buildbot-test: sqlalchemy exception when upgrading the database
873         https://bugs.webkit.org/show_bug.cgi?id=202927
874
875         Reviewed by Adrian Perez de Castro.
876
877         Update the version of sqlalchemy-migrate for pip used for the test.
878         That fixes the exception when upgrading the database.
879
880         * BuildSlaveSupport/build.webkit.org-config/run-buildbot-test.py:
881
882 2019-10-16  Andy Estes  <aestes@apple.com>
883
884         [Quick Look] Test that legacy web views load previews before deciding content policy
885         https://bugs.webkit.org/show_bug.cgi?id=202971
886
887         Reviewed by Alex Christensen.
888
889         * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
890         (-[QuickLookLegacyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]):
891         (TEST):
892         (-[QuickLookFrameLoadDelegate webView:didFinishLoadForFrame:]): Deleted.
893
894 2019-10-16  Chris Dumez  <cdumez@apple.com>
895
896         Rename PageCache to BackForwardCache
897         https://bugs.webkit.org/show_bug.cgi?id=203048
898
899         Reviewed by Alex Christensen.
900
901         Rename PageCache to BackForwardCache for clarity and consistency with the UIProcess's WebBackForwardCache.
902
903         * DumpRenderTree/TestOptions.cpp:
904         (TestOptions::TestOptions):
905         * DumpRenderTree/TestOptions.h:
906         * DumpRenderTree/TestRunner.cpp:
907         (overridePreferenceCallback):
908         * DumpRenderTree/mac/DumpRenderTree.mm:
909         (setWebPreferencesForTestOptions):
910         * DumpRenderTree/win/DumpRenderTree.cpp:
911         (resetWebPreferencesToConsistentValues):
912         (setWebPreferencesForTestOptions):
913         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
914         (TestWebKitAPI::TEST):
915         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache.cpp:
916         (TestWebKitAPI::TEST):
917         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache_Bundle.cpp:
918         (TestWebKitAPI::DOMWindowExtensionNoCache::willDisconnectDOMWindowExtensionFromGlobalObject):
919         (TestWebKitAPI::DOMWindowExtensionNoCache::didReconnectDOMWindowExtensionToGlobalObject):
920         * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache.cpp:
921         (TestWebKitAPI::TEST):
922         * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp:
923         (TestWebKitAPI::DidRemoveFrameFromHiearchyInBackForwardCacheTest::DidRemoveFrameFromHiearchyInBackForwardCacheTest):
924         (TestWebKitAPI::DidRemoveFrameFromHiearchyInBackForwardCacheTest::didCreatePage):
925         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
926         (TestWebKitAPI::TEST):
927         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
928         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
929         (testWebKitSettings):
930         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
931         (WTR::TestRunner::overridePreference):
932         * WebKitTestRunner/TestController.cpp:
933         (WTR::TestController::resetPreferencesToConsistentValues):
934         (WTR::updateTestOptionsFromTestHeader):
935         * WebKitTestRunner/TestOptions.h:
936         (WTR::TestOptions::hasSameInitializationOptions const):
937         * lldb/lldb_webkit.py:
938         (WebCoreFrame_SummaryProvider):
939         (WebCoreDocument_SummaryProvider):
940         (WebCoreDocumentProvider.page_cache_state):
941
942 2019-10-16  Jonathan Bedard  <jbedard@apple.com>
943
944         Python 3: Add support in webkitpy.common.net.bugzilla
945         https://bugs.webkit.org/show_bug.cgi?id=202468
946
947         Reviewed by Stephanie Lewis.
948
949         Make the irc library we use Python 3 compatible.
950
951         * Scripts/test-webkitpy-python3: Add webkitpy.common.net.bugzilla to the test list.
952         * Scripts/webkitpy/thirdparty/irc/ircbot.py: Use full import paths.
953         * Scripts/webkitpy/thirdparty/irc/irclib.py: Fix exceptions, printing for Python 3.
954         (Connection._get_socket): 
955         (ServerConnection.connect):
956         (ServerConnection.process_data):
957         (ServerConnection.disconnect):
958         (ServerConnection.send_raw):
959         (DCCConnection.connect):
960         (DCCConnection.listen):
961         (DCCConnection.disconnect):
962         (DCCConnection.process_data):
963         (DCCConnection.privmsg):
964
965 2019-10-16  John Wilander  <wilander@apple.com>
966
967         Resource Load Statistics (experimental): Block all third-party cookies on websites without prior user interaction
968         https://bugs.webkit.org/show_bug.cgi?id=203017
969         <rdar://problem/56262708>
970
971         Reviewed by Alex Christensen.
972
973         These changes are test infrastructure to be able to toggle the function
974         through testRunner.setStatisticsShouldBlockThirdPartyCookies().
975
976         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
977         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
978         (WTR::InjectedBundle::didReceiveMessageToPage):
979         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
980         (WTR::TestRunner::setStatisticsShouldBlockThirdPartyCookies):
981         (WTR::TestRunner::statisticsCallDidSetShouldBlockThirdPartyCookiesCallback):
982         * WebKitTestRunner/InjectedBundle/TestRunner.h:
983         * WebKitTestRunner/TestController.cpp:
984         (WTR::TestController::setStatisticsShouldBlockThirdPartyCookies):
985         * WebKitTestRunner/TestController.h:
986         * WebKitTestRunner/TestInvocation.cpp:
987         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
988         (WTR::TestInvocation::didSetShouldBlockThirdPartyCookies):
989         * WebKitTestRunner/TestInvocation.h:
990
991 2019-10-16  Kate Cheney  <katherine_cheney@apple.com>
992
993         WKWebsiteDataStoreStatisticsResetToConsistentState() should call store.setUseITPDatabase(false)
994         https://bugs.webkit.org/show_bug.cgi?id=203020
995         <rdar://problem/56314484>
996
997         Reviewed by Chris Dumez.
998
999         Added a completion handler to setUseITPDatabase() to avoid race
1000         conditions.
1001
1002         * WebKitTestRunner/TestController.cpp:
1003         (WTR::TestController::setUseITPDatabase):
1004
1005 2019-10-16  Fujii Hironori  <Hironori.Fujii@sony.com>
1006
1007         DumpRenderTree should clear WTFLogChannelState::OnWithAccumulation state set by testRunner.accummulateLogsForChannel
1008         https://bugs.webkit.org/show_bug.cgi?id=203024
1009
1010         Reviewed by Alex Christensen.
1011
1012         If a test case calls testRunner.accummulateLogsForChannel("IndexedDB"),
1013         all subsequent IndexedDB tests also dump the log.
1014         This is unnecessarily bloating DumpRenderTree log because
1015         DumpRenderTree is run with --debug-rwt-logging switch on Buildbot.
1016
1017         Add a function to clear WTFLogChannelState::OnWithAccumulation
1018         state, and call it for every test execution.
1019
1020         * DumpRenderTree/mac/DumpRenderTree.mm:
1021         (resetWebViewToConsistentStateBeforeTesting):
1022         * DumpRenderTree/win/DumpRenderTree.cpp:
1023         (resetWebViewToConsistentStateBeforeTesting):
1024         Call WebCoreTestSupport::clearAllLogChannelsToAccumulate.
1025
1026 2019-10-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1027
1028         Remove an API test workaround that is no longer needed
1029         https://bugs.webkit.org/show_bug.cgi?id=203037
1030
1031         Reviewed by Tim Horton.
1032
1033         This worked around <rdar://problem/51510554> by avoiding codepaths that resulted in failure to read dropped
1034         content from NSItemProviders on iOS. <rdar://problem/51510554> is fixed in iOS 13, so we can remove this hack.
1035
1036         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1037         (-[TestWKWebView initWithFrame:configuration:addToWindow:]):
1038         (applyWorkaroundToAllowWritingAttributedStringsToItemProviders): Deleted.
1039
1040 2019-10-16  Pablo Saavedra  <psaavedra@igalia.com>
1041
1042         [Tools] Add a driver for cog for benchmark_runner.py
1043         https://bugs.webkit.org/show_bug.cgi?id=202995
1044
1045         Reviewed by Žan Doberšek.
1046
1047         * Scripts/webkitpy/benchmark_runner/browser_driver/linux_cog_driver.py: Added.
1048         (CogBrowserDriver):
1049         (CogBrowserDriver.launch_url):
1050         (CogBrowserDriver.launch_driver):
1051         (CogFdoBrowserDriver):
1052         (CogFdoBrowserDriver.launch_url):
1053
1054 2019-10-16  Youenn Fablet  <youenn@apple.com>
1055
1056         WebAudioSourceProviderAVFObjC::provideInput should set its WebAudioBufferList parameters correctly
1057         https://bugs.webkit.org/show_bug.cgi?id=202930
1058         <rdar://problem/56006776>
1059
1060         Reviewed by Eric Carlson.
1061
1062         Add a test that has an audio track that goes from 1 to 2 channels while being piped to a WebAudio pipeline.
1063
1064         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1065         * TestWebKitAPI/Tests/WebKit/GetUserMedia.mm:
1066         (-[GUMMessageHandler userContentController:didReceiveScriptMessage:]):
1067         (TestWebKitAPI::TEST):
1068         * TestWebKitAPI/Tests/WebKit/getUserMedia-webaudio.html: Added.
1069
1070 2019-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1071
1072         [GTK][WPE] Add user messages API
1073         https://bugs.webkit.org/show_bug.cgi?id=202847
1074
1075         Reviewed by Adrian Perez de Castro.
1076
1077         Add a test to check the new API.
1078
1079         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
1080         (UserMessageTest::webViewUserMessageReceivedCallback):
1081         (UserMessageTest::webContextUserMessageReceivedCallback):
1082         (UserMessageTest::UserMessageTest):
1083         (UserMessageTest::~UserMessageTest):
1084         (UserMessageTest::sendMessage):
1085         (UserMessageTest::sendMedssageToAllExtensions):
1086         (UserMessageTest::viewUserMessageReceived):
1087         (UserMessageTest::contextUserMessageReceived):
1088         (UserMessageTest::waitUntilViewMessageReceived):
1089         (UserMessageTest::waitUntilContextMessageReceived):
1090         (readFileDescritpor):
1091         (testWebExtensionUserMessages):
1092         (beforeAll):
1093         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
1094         (documentLoadedCallback):
1095         (pageMessageReceivedCallback):
1096         (pageCreatedCallback):
1097         (extensionMessageReceivedCallback):
1098         (webkit_web_extension_initialize_with_user_data):
1099
1100 2019-10-15  Aakash Jain  <aakash_jain@apple.com>
1101
1102         Improve summary for WebKitPerl Tests build step
1103         https://bugs.webkit.org/show_bug.cgi?id=203006
1104
1105         Reviewed by Jonathan Bedard.
1106
1107         * BuildSlaveSupport/ews-build/steps.py:
1108         (RunWebKitPerlTests.getResultSummary): Override method to customize summary.
1109         * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
1110
1111 2019-10-15  Zhifei Fang  <zhifei_fang@apple.com>
1112
1113         Tool to mark jsc test skip/enable
1114         https://bugs.webkit.org/show_bug.cgi?id=202063
1115
1116         Reviewed by Keith Miller.
1117
1118         * Scripts/run-javascriptcore-tests:
1119         (runJSCStressTests):
1120         * Scripts/run-jsc-stress-tests:
1121
1122 2019-10-15  Peng Liu  <peng.liu6@apple.com>
1123
1124         [Picture-in-Picture Web API] Implement HTMLVideoElement.requestPictureInPicture() / Document.exitPictureInPicture()
1125         https://bugs.webkit.org/show_bug.cgi?id=201024
1126
1127         Reviewed by Eric Carlson.
1128
1129         Add configurations for Picture-in-Picture API and enable it in the test runner.
1130
1131         * Scripts/webkitperl/FeatureList.pm:
1132         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1133         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1134         (WTR::InjectedBundle::beginTesting):
1135         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1136         (WTR::TestRunner::setPictureInPictureAPIEnabled):
1137         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1138
1139 2019-10-15  Jiewen Tan  <jiewen_tan@apple.com>
1140
1141         [WebAuthn] Rename -[WKUIDelegatePrivate webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:] to -[WKUIDelegatePrivate _webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]
1142         https://bugs.webkit.org/show_bug.cgi?id=202564
1143         <rdar://problem/55974027>
1144
1145         Reviewed by Brent Fulgham.
1146
1147         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
1148         (-[TestWebAuthenticationPanelUIDelegate _webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]):
1149         (-[TestWebAuthenticationPanelUIDelegate webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]): Deleted.
1150
1151 2019-10-15  Aakash Jain  <aakash_jain@apple.com>
1152
1153         [ews] Use python 3 compatible way to represent octal in buildbot code
1154         https://bugs.webkit.org/show_bug.cgi?id=202999
1155
1156         Reviewed by Jonathan Bedard.
1157
1158         * BuildSlaveSupport/ews-build/buildbot.tac:
1159         * BuildSlaveSupport/ews-build/steps.py:
1160
1161 2019-10-15  Jonathan Bedard  <jbedard@apple.com>
1162
1163         results.webkit.org: Add os version to various unix ports
1164         https://bugs.webkit.org/show_bug.cgi?id=202955
1165
1166         Rubber-stamped by Aakash Jain.
1167
1168         * Scripts/webkitpy/common/system/platforminfo.py:
1169         (PlatformInfo.__init__): Use platform.release() to defined the os_version.
1170
1171 2019-10-15  Wenson Hsieh  <wenson_hsieh@apple.com>
1172
1173         REGRESSION: editing/async-clipboard/clipboard-interfaces.html is failing in WebKit1
1174         https://bugs.webkit.org/show_bug.cgi?id=202940
1175         <rdar://problem/56262298>
1176
1177         Reviewed by Ryosuke Niwa.
1178
1179         Add some plumbing to support the async clipboard API experimental test option in Windows.
1180
1181         * DumpRenderTree/win/DumpRenderTree.cpp:
1182         (setWebPreferencesForTestOptions):
1183
1184 2019-10-15  Jiewen Tan  <jiewen_tan@apple.com>
1185
1186         [WebAuthn] Write more tests for _WKWebAuthenticationPanel
1187         https://bugs.webkit.org/show_bug.cgi?id=202565
1188         <rdar://problem/55974128>
1189
1190         Reviewed by Brent Fulgham.
1191
1192         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1193         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:
1194         (-[TestWebAuthenticationPanelDelegate panel:dismissWebAuthenticationPanelWithResult:]):
1195         (-[TestWebAuthenticationPanelUIDelegate init]):
1196         (-[TestWebAuthenticationPanelUIDelegate webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]):
1197         (TestWebKitAPI::TEST):
1198         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-hid.html: Added.
1199         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion-nfc.html: Added.
1200
1201 2019-10-15  Alex Christensen  <achristensen@webkit.org>
1202
1203         Pass CORS-enabled schemes through WebProcess instead of having them NetworkProcess-global
1204         https://bugs.webkit.org/show_bug.cgi?id=202891
1205
1206         Reviewed by Youenn Fablet.
1207
1208         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1209         (-[SWMessageHandlerWithExpectedMessage userContentController:didReceiveScriptMessage:]):
1210         Use EXPECT_WK_STREQ so I can see what is going on on EWS.
1211
1212 2019-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1213
1214         Unreviewed. Fix several GTK tests in /WebKit2Gtk/TestUIClient crashing since r241988
1215
1216         This was not caused by r241988, but revealed the existing bug. We were not creating the new WebKitWebView in
1217         UIClientTest with the related WebKitWebView. Since r241988, the new WebPageProxy drawing area is passed to
1218         creationParameters(), but it's nullptr because the WebPageProxy hasn't been initialized yet. When using related
1219         views, the new WebPageProxy is already initialized because it has running processes on creation.
1220
1221         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
1222         (testWebViewCreateNavigationData):
1223
1224 2019-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1225
1226         Unreviewed. Fix GTK test /WebKit2Gtk/TestWebViewEditor
1227
1228         It's failing since we delay the web process launch until the first load. Load about:blank in the test
1229         constructor to fix it.
1230
1231         * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
1232
1233 2019-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1234
1235         Unreviewed. Fix GTK test /webkit/Authentication/authentication-storage after r249962
1236
1237         The test was still using the legacy private browsing API that is a no-op since r249962. This partch updates the
1238         test to use a ephemeral WebView instead.
1239
1240         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp:
1241         (EphemeralAuthenticationTest::setup):
1242         (EphemeralAuthenticationTest::teardown):
1243         (testWebViewAuthenticationEphemeral):
1244         (testWebViewAuthenticationStorage):
1245         (beforeAll):
1246         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1247         (WebViewTest::initializeWebView):
1248         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1249
1250 2019-10-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1251
1252         Unreviewed. Fix GTK test /webkit/WebKitSettings/webkit-settings after r249962.
1253
1254         Stop testing WebKitSettings:enable-private-browsing.
1255
1256         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
1257         (testWebKitSettings):
1258
1259 2019-10-15  Alicia Boya García  <aboya@igalia.com>
1260
1261         gdb webkit.py: Fix iterator error in Python3
1262         https://bugs.webkit.org/show_bug.cgi?id=202926
1263
1264         Reviewed by Jonathan Bedard.
1265
1266         Some distros use Python3 for gdb, so the script needs to be compatible with both versions for it to work.
1267
1268         * gdb/webkit.py:
1269         (WTFVectorPrinter.Iterator.__next__):
1270
1271 2019-10-14  Zhifei FANG  <zhifei_fang@apple.com>
1272
1273         results.webkit.org: TypeError when evaluating empty commits
1274         https://bugs.webkit.org/show_bug.cgi?id=202936
1275
1276         Reviewed by Jonathan Bedard.
1277
1278         *resultsdbpy/resultsdbpy/view/static/library/js/components/TimelineComponents.js: Draw empty line when invaild scales or dots state pass in
1279
1280 2019-10-14  Jonathan Bedard  <jbedard@apple.com>
1281
1282         Python 3: Add support in webkitpy.common.net.bugzilla
1283         https://bugs.webkit.org/show_bug.cgi?id=202465
1284
1285         Reviewed by Dewei Zhu.
1286
1287         * Scripts/test-webkitpy-python3: Add webkitpy.common.net.bugzilla to the test list.
1288         * Scripts/webkitpy/common/net/bugzilla/__init__.py: Use full import paths.
1289         * Scripts/webkitpy/common/net/bugzilla/attachment_unittest.py: Ditto.
1290         * Scripts/webkitpy/common/net/bugzilla/bug.py: Ditto.
1291         (Bug.commit_revision): Dictionary sorting is no longer well defined in Python 3.
1292         * Scripts/webkitpy/common/net/bugzilla/bug_unittest.py: Use full import paths.
1293         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py: Ditto.
1294         (EditUsersParser.login_userid_pairs_from_edit_user_results): Return list, not an iterator.
1295         (EditUsersParser.user_dict_from_edit_user_page): HTML_ENTITIES is logically connected to BeautifulSoup, not
1296         BeautifulStoneSoup. 
1297         (BugzillaQueries._parse_attachment_ids_request_query): Explicitly cast date_tag to unicode.
1298         (Bugzilla._parse_attachment_element): Legacy BeautifulSoup and bs4 Elements have different function calls.
1299         (Bugzilla._file_object_for_upload): Use BytesIO instead of StringIO.
1300         (Bugzilla.create_bug):
1301         (reopen_bug): Access map as list, not iterator.
1302         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py: Use full import paths.
1303         * Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py: Ditto.
1304         * Scripts/webkitpy/common/net/bugzilla/test_expectation_updater.py:
1305         (TestExpectationUpdater._update_from_generic_attachment): Use items over iteritems().
1306         (TestExpectationUpdater._update_from_platform_specific_attachment): Ditto.
1307         (TestExpectationUpdater.do_update): Ditto.
1308         * Scripts/webkitpy/common/net/buildbot/buildbot.py: Use Python 2/3 compatible urllib.
1309         * Scripts/webkitpy/common/net/credentials.py: Use import statement to force autoinstall logic.
1310         * Scripts/webkitpy/common/net/file_uploader.py: Use Python 2/3 compatible urllib.
1311         (FileUploader._upload_data.callback):
1312         (FileUploader):
1313         * Scripts/webkitpy/common/net/resultsjsonparser.py:
1314         (JSONTestResult._tokenize): Force map() call to return a list.
1315         * Scripts/webkitpy/common/net/web_mock.py: Use Python 2/3 compatible urllib.
1316         * Scripts/webkitpy/common/system/autoinstall.py:
1317         (AutoInstaller.install): Return True if install was required, otherwise, return False.
1318         * Scripts/webkitpy/common/system/filesystem_mock.py:
1319         (MockFileSystem.__init__): Encode strings before writing them to the filesystem.
1320         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py: Use Python 2/3 compatible urllib.
1321         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1322         (TestExpectationParser): Use items over iteritems().
1323         * Scripts/webkitpy/layout_tests/models/test_failures.py: Use Python 3 compatible Pickle library.
1324         * Scripts/webkitpy/layout_tests/models/test_results.py: Ditto.
1325         * Scripts/webkitpy/port/darwin_testcase.py:
1326         (DarwinTest.test_crashlog_path): Use dictionary for files.
1327         * Scripts/webkitpy/test/main.py:
1328         (Tester._run_tests): Update directories excluded from testing.
1329         * Scripts/webkitpy/thirdparty/BeautifulSoup.py: Replaced.
1330         (BeautifulSoup):Wrapper class making bs4 BeautifulSoup compatible with legacy BeautifulSoup calls.
1331         (BeautifulStoneSoup): Ditto.
1332         * Scripts/webkitpy/thirdparty/BeautifulSoup_legacy.py: Copied from Tools/Scripts/webkitpy/thirdparty/BeautifulSoup.py.
1333         * Scripts/webkitpy/thirdparty/__init__.py:
1334         (AutoinstallImportHook.__init__): Accept executive.
1335         (AutoinstallImportHook.find_module): Add beautifulsoup.
1336         (AutoinstallImportHook._install_beautifulsoup): bs4 must be converted via 2to3 before use in Python 3.
1337         (AutoinstallImportHook._install): Return result from installer.
1338         * Scripts/webkitpy/thirdparty/mock.py:
1339         (Mock.reset_mock): Use values() instead of itervalues().
1340
1341 2019-10-14  Matt Mokary  <mmokary@apple.com>
1342
1343         FindController::findString always updates foundStringMatchIndex even if match is the same as before
1344         https://bugs.webkit.org/show_bug.cgi?id=201775
1345         <rdar://problem/55352425>
1346
1347         Reviewed by Tim Horton.
1348
1349         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewFindString.mm:
1350         (TestWebKitAPI::TEST):
1351         _WKFindOptionsNoIndexChange test
1352
1353 2019-10-14  Andy Estes  <aestes@apple.com>
1354
1355         REGRESSION (r243682): Quick Look previews loaded from the memory cache render with the wrong content type
1356         https://bugs.webkit.org/show_bug.cgi?id=202935
1357         <rdar://problem/54318133>
1358
1359         Reviewed by Tim Horton.
1360
1361         * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
1362         (TEST):
1363         * TestWebKitAPI/cocoa/TestWKWebView.h:
1364         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1365         (-[WKWebView synchronouslyGoBack]):
1366         (-[WKWebView synchronouslyGoForward]):
1367
1368 2019-10-14  Alex Christensen  <achristensen@webkit.org>
1369
1370         REGRESSION: [iOS 13?] TestWebKitAPI.SharedBufferTest.tryCreateArrayBufferLargeSegments is failing
1371         https://bugs.webkit.org/show_bug.cgi?id=201902
1372
1373         Reviewed by Ryosuke Niwa.
1374
1375         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
1376         (TestWebKitAPI::TEST_F):
1377
1378 2019-10-14  Saam Barati  <sbarati@apple.com>
1379
1380         Canonicalize how we prepare the prototype chain for inline caching
1381         https://bugs.webkit.org/show_bug.cgi?id=202827
1382         <rdar://problem/56193919>
1383
1384         Reviewed by Yusuke Suzuki.
1385
1386         * Scripts/run-jsc-stress-tests:
1387
1388 2019-10-14  Nikolas Zimmermann  <nzimmermann@igalia.com>
1389
1390         Update my nickname.
1391
1392         Unreviewed.
1393
1394         * Scripts/webkitpy/common/config/contributors.json:
1395
1396 2019-10-14  Nikolas Zimmermann  <nzimmermann@igalia.com>
1397
1398         Fix Tools/Scripts/update-webkitgtk-libs build failure in 'gst-plugins-bad'
1399         https://bugs.webkit.org/show_bug.cgi?id=202931
1400
1401         Reviewed by Philippe Normand.
1402
1403         OpenEXR dependency is not required and causes a build failure on Ubuntu
1404         19.04 with OpenEXR 2.2.1, as described here:
1405         https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/1089
1406
1407         * gstreamer/jhbuild.modules: Disable openexr in meson build options.
1408
1409 2019-10-14  Jonathan Bedard  <jbedard@apple.com>
1410
1411         results.webkit.org: Make recent=False more usable
1412         https://bugs.webkit.org/show_bug.cgi?id=202873
1413
1414         Rubber-stamped by Aakash Jain.
1415
1416         * resultsdbpy/resultsdbpy/model/configuration_context.py:
1417         (ConfigurationContext.search_for_configuration): If no configuration is specified,
1418         use a set of configurations defined by recent platform.
1419         * resultsdbpy/resultsdbpy/model/configuration_context_unittest.py:
1420         (ConfigurationContextTest.test_expired_configurations): Test that recent=False works.
1421
1422 2019-10-14  Adrian Perez de Castro  <aperez@igalia.com>
1423
1424         Unreviewed, set Adrian Perez de Castro as WebKit Reviewer
1425
1426         * Scripts/webkitpy/common/config/contributors.json:
1427
1428 2019-10-14  youenn fablet  <youenn@apple.com>
1429
1430         Reuse existing web processes for running service workers
1431         https://bugs.webkit.org/show_bug.cgi?id=202195
1432
1433         Reviewed by Chris Dumez.
1434
1435         Add support for enforcing a separate process for service workers.
1436         This is useful for tests trying to crash the service worker process.
1437
1438         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1439         Update test to use serviceWorkerProcessCount.
1440         Add test to check for in process and out of process service workers.
1441         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1442         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1443         (WTR::TestRunner::setUseSeparateServiceWorkerProcess):
1444         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1445         * WebKitTestRunner/TestController.cpp:
1446         (WTR::TestController::resetStateToConsistentValues):
1447         * WebKitTestRunner/TestInvocation.cpp:
1448         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1449
1450 2019-10-12  Chris Dumez  <cdumez@apple.com>
1451
1452         Back/Forward cache does not work after doing a favorite navigation
1453         https://bugs.webkit.org/show_bug.cgi?id=202762
1454         <rdar://problem/56126911>
1455
1456         Reviewed by Antti Koivisto.
1457
1458         Add API test coverage.
1459
1460         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1461
1462 2019-10-12  Ryosuke Niwa  <rniwa@webkit.org>
1463
1464         requestIdleCallback cannot be enabled in DumpRenderTree on Windows
1465         https://bugs.webkit.org/show_bug.cgi?id=202876
1466
1467         Reviewed by Wenson Hsieh.
1468
1469         Added the missing plumbing for Windows port.
1470
1471         * DumpRenderTree/win/DumpRenderTree.cpp:
1472         (setWebPreferencesForTestOptions):
1473
1474 2019-10-11  Aakash Jain  <aakash_jain@apple.com>
1475
1476         Update build.webkit.org basedir
1477         https://bugs.webkit.org/show_bug.cgi?id=202856
1478
1479         Reviewed by Jonathan Bedard.
1480
1481         * BuildSlaveSupport/build.webkit.org-config/buildbot.tac: Updated basedir. Also increased the
1482         size of twistd.log files and reduced number of files for easier maintenance.
1483
1484 2019-10-11  Aakash Jain  <aakash_jain@apple.com>
1485
1486         [ews] Services EWS should also run build.webkit.org unit tests
1487         https://bugs.webkit.org/show_bug.cgi?id=202864
1488
1489         Reviewed by Jonathan Bedard.
1490
1491         * BuildSlaveSupport/ews-build/factories.py:
1492         (ServicesFactory.__init__): Added new RunBuildWebKitUnitTests step.
1493         * BuildSlaveSupport/ews-build/steps.py:
1494         (CheckPatchRelevance): Added paths for build.webkit.org code.
1495         (RunBuildWebKitUnitTests): Build step to run build.webkit.org unit tests.
1496         (RunBuildWebKitUnitTests.__init__): Set workdir, timeout and logEnviron.
1497         (RunBuildWebKitUnitTests.getResultSummary): Customize Buildbot messages for this build step.
1498         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1499
1500 2019-10-11  Chris Dumez  <cdumez@apple.com>
1501
1502         Move SuspendedPage logic from WebProcessPool to new WebBackForwardCache class
1503         https://bugs.webkit.org/show_bug.cgi?id=202660
1504
1505         Reviewed by Antti Koivisto.
1506
1507         Drop test that relied on reusing a SuspendedPage's process from a loadHTMLStringLoad (optimization).
1508         This no longer works now that SuspendedPages are owned by their associated back/forward item because
1509         we currently do not create a back/forward item for loadHTMLString requests. Suspending a page for a
1510         loadHTMLString was also wasteful since there was no way to restore that page (given that there was
1511         no WebBackForwardListItem to go back to).
1512
1513         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1514
1515 2019-10-11  Brian Burg  <bburg@apple.com>
1516
1517         Remove some dead code in webkitpy's mac.py
1518         https://bugs.webkit.org/show_bug.cgi?id=202853
1519
1520         Reviewed by Alexey Proskuryakov.
1521
1522         - Remove _build_java_test_support as it no longer does anything.
1523         - Remove _check_port_build as it's only used to build Java test support.
1524         - Remove unused is_mavericks() function.
1525         - Remove a log stripping pattern that was fixed several releases ago.
1526
1527         * Scripts/webkitpy/port/base.py:
1528         (Port.check_build):
1529         (Port.check_api_test_build):
1530         (Port._check_driver):
1531         (Port._check_port_build): Deleted.
1532         * Scripts/webkitpy/port/mac.py:
1533         (MacPort.operating_system):
1534         (MacPort.default_child_processes):
1535         (MacPort.logging_patterns_to_strip):
1536         (MacPort.is_mavericks): Deleted.
1537         (MacPort._build_java_test_support): Deleted.
1538         (MacPort._check_port_build): Deleted.
1539
1540 2019-10-11  Aakash Jain  <aakash_jain@apple.com>
1541
1542         [build.webkit.org] API tests should output result summary in json format
1543         https://bugs.webkit.org/show_bug.cgi?id=202854
1544
1545         Reviewed by Jonathan Bedard.
1546
1547         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1548         (RunAPITests): Output results in json format as well.
1549
1550 2019-10-11  Jonathan Bedard  <jbedard@apple.com>
1551
1552         Unreviewed, rolling out r250945.
1553
1554         Broke 18 Debug API tests
1555
1556         Reverted changeset:
1557
1558         "Add support for CompactPointerTuple<..., OptionSet<...>>"
1559         https://bugs.webkit.org/show_bug.cgi?id=201316
1560         https://trac.webkit.org/changeset/250945
1561
1562 2019-10-10  Fujii Hironori  <Hironori.Fujii@sony.com>
1563
1564         [WinCairo] auto-installing raises exception "Inner message: global name 'urllib2' is not defined" since r250869
1565         https://bugs.webkit.org/show_bug.cgi?id=202839
1566
1567         Reviewed by Jonathan Bedard.
1568
1569         * Scripts/webkitpy/common/system/autoinstall.py:
1570         (AutoInstaller._download_to_stream): Replaced urllib2.urlopen with urlopen.
1571
1572 2019-10-10  Kenneth Russell  <kbr@chromium.org>
1573
1574         New html5lib requires newer version of six.py than that shipped in macOS 10.14.6
1575         https://bugs.webkit.org/show_bug.cgi?id=202830
1576
1577         Autoinstall six along with html5lib.
1578
1579         Reviewed by Jonathan Bedard.
1580
1581         * Scripts/webkitpy/thirdparty/__init__.py:
1582         (AutoinstallImportHook._install_mechanize):
1583         (AutoinstallImportHook._install_pytest):
1584
1585 2019-10-10  Jonathan Bedard  <jbedard@apple.com>
1586
1587         results.webkit.org: Sort out certificates on Catalina
1588         https://bugs.webkit.org/show_bug.cgi?id=202837
1589
1590         Unreviewed infrastructure repair.
1591
1592         This is a temporary strategy until we sort out our certificates on the newly
1593         deployed Catalina bots.
1594
1595         * Scripts/webkitpy/results/upload.py:
1596         (Upload.upload):
1597         (Upload.upload_archive):
1598         * Scripts/webkitpy/results/upload_unittest.py:
1599         (UploadTest.test_upload):
1600         (UploadTest.test_archive_upload):
1601
1602 2019-10-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1603
1604         W3C test importer breaks svg files.
1605         https://bugs.webkit.org/show_bug.cgi?id=202806
1606
1607         Reviewed by Jonathan Bedard.
1608
1609         The WebKit W3C importer tries to rewrite the xml/html/css files
1610         when importing the tests to rewrite paths and such.
1611
1612         The issue is that to decide if rewrite the file or not uses the
1613         mimetype and the current code was comparing for something like
1614         if "xml" in str(mimetype[0])
1615
1616         But svg files have mimetype "image/svg+xml" so the previous code
1617         was trying to rewrite svg files, breaking them.
1618
1619         This patches changes that code to only rewrite if the mimetype
1620         also contains the "application/" or "text/" string.
1621
1622         It also adds an info log (printed when verbose enabled) to tell
1623         that a file has been rewritten.
1624
1625         * Scripts/webkitpy/w3c/test_importer.py:
1626         (TestImporter.import_tests):
1627
1628 2019-10-10  Jonathan Bedard  <jbedard@apple.com>
1629
1630         results.webkit.org: Serve correct exit codes when aborting
1631         https://bugs.webkit.org/show_bug.cgi?id=202817
1632
1633         Rubber-stamped by Aakash Jain.
1634
1635         * resultsdbpy/resultsdbpy/view/view_routes.py:
1636         (ViewRoutes.error): Return exit code along with html string.
1637
1638 2019-10-10  Matt Lewis  <jlewis3@apple.com>
1639
1640         Emergency unittest fix for wkbuild.
1641
1642         Unreviewed test fix.
1643
1644         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
1645         (ShouldBuildTest):
1646
1647 2019-10-10  Aakash Jain  <aakash_jain@apple.com>
1648
1649         Updated new Catalina queues names as per new Buildbot naming scheme
1650         https://bugs.webkit.org/show_bug.cgi?id=202816
1651
1652         Reviewed by Jonathan Bedard.
1653
1654         * BuildSlaveSupport/build.webkit.org-config/config.json: Renamed builder name and removed spaces.
1655         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js: Ditto.
1656         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Ditto.
1657
1658 2019-10-10  Matt Lewis  <jlewis3@apple.com>
1659
1660         Fixing build scheduling for Catalina queues.
1661         https://bugs.webkit.org/show_bug.cgi?id=202814
1662
1663         Reviewed by Aakash Jain.
1664
1665         * BuildSlaveSupport/build.webkit.org-config/config.json: Drive By fix of Trigger.
1666         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
1667         (_should_file_trigger_build):
1668
1669 2019-10-10  Sihui Liu  <sihui_liu@apple.com>
1670
1671         Add a unit test for StorageQuotaManager
1672         https://bugs.webkit.org/show_bug.cgi?id=202755
1673
1674         Reviewed by Youenn Fablet.
1675
1676         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1677         * TestWebKitAPI/Tests/WebCore/StorageQuotaManager.cpp: Added.
1678         (TestWebKitAPI::TEST):
1679
1680 2019-10-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1681
1682         Support programmatic paste requests on macOS
1683         https://bugs.webkit.org/show_bug.cgi?id=202773
1684         <rdar://problem/48957166>
1685
1686         Reviewed by Tim Horton.
1687
1688         Adds new testing support to enable us to test programmatic paste requests on macOS.
1689
1690         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1691
1692         Add a few new UIScriptController methods:
1693         - activateAtPoint(x, y, callback): used to activate content underneath at (x, y), in root view coordinates
1694           (WKWebView on macOS, and WKContentView on iOS). On macOS, this moves the mouse to the given location and
1695           clicks.
1696         - chooseMenuAction(action, callback): used to select a menu item with the given title.
1697         - dismissMenu(): dismisses the platform menu.
1698
1699         Note that dismissMenu and chooseMenuAction currently only work for the DOM paste menu, but could be extended in
1700         the future to handle the system context menu.
1701
1702         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1703         (WTR::UIScriptController::dismissMenu):
1704         (WTR::UIScriptController::chooseMenuAction):
1705         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1706         (WTR::UIScriptController::activateAtPoint):
1707         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1708         (WTR::TestController::cocoaResetStateToConsistentValues):
1709         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
1710         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1711         (-[TestRunnerWKWebView initWithFrame:configuration:]):
1712         (-[TestRunnerWKWebView _didShowMenu]):
1713         (-[TestRunnerWKWebView _didHideMenu]):
1714
1715         Make these present across both macOS and iOS. On macOS, we listen for NSMenuDidBeginTrackingNotification and
1716         NSMenuDidEndTrackingNotification to know when a menu has been shown or dismissed.
1717
1718         (-[TestRunnerWKWebView dismissActiveMenu]):
1719         (-[TestRunnerWKWebView resetInteractionCallbacks]):
1720
1721         Make these available on both iOS and macOS. The only interaction callbacks on macOS are currently
1722         didShowMenuCallback and didHideMenuCallback.
1723
1724         (-[TestRunnerWKWebView _willHideMenu]):
1725         * WebKitTestRunner/cocoa/UIScriptControllerCocoa.h:
1726         * WebKitTestRunner/cocoa/UIScriptControllerCocoa.mm:
1727         (WTR::UIScriptControllerCocoa::setDidShowMenuCallback):
1728         (WTR::UIScriptControllerCocoa::setDidHideMenuCallback):
1729         (WTR::UIScriptControllerCocoa::dismissMenu):
1730         (WTR::UIScriptControllerCocoa::isShowingMenu const):
1731
1732         Move these implementations into UIScriptControllerCocoa, from UIScriptControllerIOS.
1733
1734         * WebKitTestRunner/ios/TestControllerIOS.mm:
1735         (WTR::TestController::platformResetStateToConsistentValues):
1736
1737         Instead of clearing all interaction callbacks in TestControllerIOS, do it in TestControllerCocoa where it
1738         affects both macOS and iOS.
1739
1740         * WebKitTestRunner/ios/UIScriptControllerIOS.h:
1741         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1742         (WTR::UIScriptControllerIOS::activateAtPoint):
1743         (WTR::UIScriptControllerIOS::singleTapAtPointWithModifiers):
1744         (WTR::UIScriptControllerIOS::chooseMenuAction):
1745         (WTR::UIScriptControllerIOS::rectForMenuAction const):
1746         (WTR::UIScriptControllerIOS::setDidShowMenuCallback): Deleted.
1747         (WTR::UIScriptControllerIOS::setDidHideMenuCallback): Deleted.
1748         (WTR::UIScriptControllerIOS::isShowingMenu const): Deleted.
1749
1750         Abstract rectForMenuAction and singleTapAtPointWithModifiers out into private helper methods, such that they can
1751         be used from within other script controller methods.
1752
1753         * WebKitTestRunner/mac/UIScriptControllerMac.h:
1754         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
1755
1756         Implement the new script controller hooks on macOS.
1757
1758         (WTR::UIScriptControllerMac::clearAllCallbacks):
1759         (WTR::UIScriptControllerMac::chooseMenuAction):
1760         (WTR::UIScriptControllerMac::activateAtPoint):
1761
1762 2019-10-10  Jonathan Bedard  <jbedard@apple.com>
1763
1764         results.webkit.org: Increase default limit for test results (Follow-up fix)
1765         https://bugs.webkit.org/show_bug.cgi?id=202757
1766
1767         Unreviewed follow-up fix.
1768
1769         * resultsdbpy/resultsdbpy/view/templates/commits.html: Switch default and maximum limits.
1770
1771 2019-10-10  Jonathan Bedard  <jbedard@apple.com>
1772
1773         results.webkit.org: Start reporting results
1774         https://bugs.webkit.org/show_bug.cgi?id=202639
1775
1776         Reviewed by Dewei Zhu.
1777
1778         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
1779         (loadBuilderConfig): Load API key for results.webkit.org.
1780         * BuildSlaveSupport/build.webkit.org-config/make_passwords_json.py:
1781         (create_mock_slave_passwords_dict): Add mock for API key.
1782         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1783         (RunWebKitTests): Start reporting to results.webkit.org.
1784         (RunWebKitTests.__init__): Do not print the environment to hide the API key.
1785         (RunWebKitTests.start): Add the API key to the environment.
1786         (RunAPITests): Start reporting to results.webkit.org.
1787         (RunAPITests.__init__): Do not print the environment to hide the API key.
1788         (RunAPITests.start): Add the API key to the environment.
1789         (RunPythonTests): Start reporting to results.webkit.org.
1790         (RunPythonTests.__init__): Do not print the environment to hide the API key.
1791         (RunPythonTests.start): Add the API key to the environment.
1792         * Scripts/webkitpy/results/upload.py:
1793         (Upload):
1794         (Upload.upload): Add API_KEY, if it exists, to the request.
1795         (Upload.upload_archive): Ditto.
1796
1797 2019-10-09  Russell Epstein  <repstein@apple.com>
1798
1799         Unreviewed, rolling out r250930.
1800
1801         Broke watchOS Builds
1802
1803         Reverted changeset:
1804
1805         "Add support for CompactPointerTuple<..., OptionSet<...>>"
1806         https://bugs.webkit.org/show_bug.cgi?id=201316
1807         https://trac.webkit.org/changeset/250930
1808
1809 2019-10-09  Jiewen Tan  <jiewen_tan@apple.com>
1810
1811         [WebAuthn] Move the mock testing entrance to Internals
1812         https://bugs.webkit.org/show_bug.cgi?id=202560
1813         <rdar://problem/55973793>
1814
1815         Reviewed by Chris Dumez.
1816
1817         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1818         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1819         (WTR::TestRunner::setWebAuthenticationMockConfiguration): Deleted.
1820         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1821         * WebKitTestRunner/TestController.cpp:
1822         (WTR::TestController::setWebAuthenticationMockConfiguration): Deleted.
1823         * WebKitTestRunner/TestController.h:
1824         * WebKitTestRunner/TestInvocation.cpp:
1825         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1826
1827 2019-10-09  Daniel Bates  <dabates@apple.com>
1828
1829         Add support for CompactPointerTuple<..., OptionSet<...>>
1830         https://bugs.webkit.org/show_bug.cgi?id=201316
1831
1832         Reviewed by Yusuke Suzuki.
1833
1834         Add a test to ensure we encode and decode a compact pointer tuple correctly when an uint8_t and
1835         a OptionSet<> as the byte value portion of the tuple.
1836
1837         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1838         * TestWebKitAPI/Tests/WTF/CompactPointerTuple.cpp: Added.
1839         (TestWebKitAPI::TEST):
1840
1841 2019-10-09  Simon Fraser  <simon.fraser@apple.com>
1842
1843         Rename WheelEventTestTrigger and improve naming in related code
1844         https://bugs.webkit.org/show_bug.cgi?id=202772
1845
1846         Reviewed by Tim Horton.
1847
1848         Change the "test trigger" terminology to "monitor wheel events"; after all, tests
1849         call monitorWheelEvents() and callAfterScrollingCompletes(), and this is not triggering
1850         a test.
1851
1852         * DumpRenderTree/mac/DumpRenderTree.mm:
1853         (resetWebViewToConsistentStateBeforeTesting):
1854         * WebKitTestRunner/TestController.cpp:
1855         (WTR::TestController::resetStateToConsistentValues):
1856
1857 2019-10-09  Daniel Bates  <dabates@apple.com>
1858
1859         Add support for CompactPointerTuple<..., OptionSet<...>>
1860         https://bugs.webkit.org/show_bug.cgi?id=201316
1861
1862         Reviewed by Yusuke Suzuki.
1863
1864         Add a test to ensure we encode and decode a compact pointer tuple correctly when an uint8_t and
1865         a OptionSet<> as the byte value portion of the tuple.
1866
1867         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1868         * TestWebKitAPI/Tests/WTF/CompactPointerTuple.cpp: Added.
1869         (TestWebKitAPI::TEST):
1870
1871 2019-10-09  Jonathan Bedard  <jbedard@apple.com>
1872
1873         results.webkit.org: Increase default limit for test results
1874         https://bugs.webkit.org/show_bug.cgi?id=202757
1875
1876         Rubber-stamped by Aakash Jain.
1877
1878         * resultsdbpy/resultsdbpy/controller/suite_controller.py:
1879         (SuiteController): Increase DEFAULT_LIMIT.
1880         * resultsdbpy/resultsdbpy/controller/test_controller.py:
1881         (TestController): Ditto.
1882         * resultsdbpy/resultsdbpy/view/static/js/commit.js:
1883         (_CommitBank.prototype._load): Make commit shards larger.
1884         * resultsdbpy/resultsdbpy/view/static/js/drawer.js: Increase default slider size.
1885         * resultsdbpy/resultsdbpy/view/templates/commits.html: Keep smaller slider size.
1886
1887 2019-10-09  Dean Jackson  <dino@apple.com>
1888
1889         Provide an alternate command-line flag for timeout in run-webkit-tests
1890         https://bugs.webkit.org/show_bug.cgi?id=202758
1891         <rdar://problem/56124032>
1892
1893         Reviewed by Tim Horton.
1894
1895         I always get the flag "--time-out-ms" wrong.
1896         Everywhere else we use the single-word version of "timeout", including
1897         the documentation for --time-out-ms!
1898
1899         Add an alternate that is just "--timeout", and update the documentation
1900         to mention it is measured in milliseconds.
1901
1902         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1903         (parse_args):
1904
1905 2019-10-09  youenn fablet  <youenn@apple.com>
1906
1907         Remove testRunner.setWebRTCUnifiedPlanEnabled
1908         https://bugs.webkit.org/show_bug.cgi?id=202700
1909
1910         Reviewed by Eric Carlson.
1911
1912         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1913         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1914         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1915
1916 2019-10-09  Carlos Garcia Campos  <cgarcia@igalia.com>
1917
1918         REGRESSION(r250597): [GTK][WPE] 2.27.1 shows HTML content as text/plain in custom protocols when passing a charset in content type
1919         https://bugs.webkit.org/show_bug.cgi?id=202633
1920
1921         Reviewed by Žan Doberšek.
1922
1923         Add a test case.
1924
1925         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
1926         (testWebContextURIScheme):
1927
1928 2019-10-08  Jiewen Tan  <jiewen_tan@apple.com>
1929
1930         Partially undo r250811
1931         https://bugs.webkit.org/show_bug.cgi?id=202715
1932         <rdar://problem/56084287>
1933
1934         Reviewed by Chris Dumez.
1935
1936         * TestWebKitAPI/Tests/WebKit/navigation-client-default-crypto.html:
1937         Modified to crash if SerializedScriptValue doesn't wrap CryptoKey objects.
1938
1939 2019-10-08  Jonathan Bedard  <jbedard@apple.com>
1940
1941         REGRESSION (r250375): [old EWS] JSC EWS is always marking Patches as success
1942         https://bugs.webkit.org/show_bug.cgi?id=202419
1943
1944         Rubber-stamped by Aakash Jain.
1945
1946         * Scripts/webkitpy/common/system/executive.py:
1947         (Executive._run_command_with_teed_output): Return exit code.
1948         * Scripts/webkitpy/common/system/executive_unittest.py:
1949         (ExecutiveTest.test_run_command_with_bad_command): Test that exceptions are raised
1950         For non-zero exit codes.
1951
1952 2019-10-08  Jonathan Bedard  <jbedard@apple.com>
1953
1954         Python 3: Add support to auto-importer
1955         https://bugs.webkit.org/show_bug.cgi?id=201955
1956
1957         Reviewed by Aakash Jain.
1958
1959         * Scripts/test-webkitpy-python3: Auto-install everything.
1960         * Scripts/webkitpy/common/system/autoinstall.py: Import urlopen and urlparse for Python3.
1961         * Scripts/webkitpy/thirdparty/__init__.py:
1962         (AutoinstallImportHook.find_module): Update function definition for Python3.
1963         (AutoinstallImportHook._install_mechanize): Use Python 2/3 compatible version of mechanize.
1964         (AutoinstallImportHook._install_requests): Update urllib3 and requests version.
1965         (AutoinstallImportHook._install_coverage): Use Python 2/3 compatible version of coverage.
1966         (AutoinstallImportHook.greater_than_equal_to_version): Use range instead of xrange.
1967         (AutoinstallImportHook._install_selenium): Update urllib3 version.
1968         (AutoinstallImportHook.install_chromedriver): 
1969         (AutoinstallImportHook.install_geckodriver):
1970         (AutoinstallImportHook.get_latest_pypi_url):
1971         (AutoinstallImportHook.install_binary):
1972         * Scripts/webkitpy/thirdparty/__init___unittest.py:
1973         (ThirdpartyTest):
1974         (ThirdpartyTest.test_import_hook): Deleted.
1975
1976 2019-10-08  Yury Semikhatsky  <yurys@chromium.org>
1977
1978         Restore my committer status.
1979
1980         Uneviewed.
1981
1982         * Scripts/webkitpy/common/config/contributors.json:
1983
1984 2019-10-08  Kate Cheney  <katherine_cheney@apple.com>
1985
1986         Implement Telemetry and Dumping Routines for SQLite backend (195088)
1987         https://bugs.webkit.org/show_bug.cgi?id=195088
1988         <rdar://problem/54213407>
1989
1990         Reviewed by John Wilander.
1991
1992         Updated the current testing for telemetry which only tested 3
1993         statistics. With this patch it now tests 10 statistics.
1994         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1995         (WTR::InjectedBundle::didReceiveMessageToPage):
1996         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1997         (WTR::TestRunner::statisticsDidRunTelemetryCallback):
1998         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1999
2000 2019-10-08  Timothy Hatcher  <timothy@apple.com>
2001
2002         Copying white text from dark mode WebKit apps and pasting in a light mode app results in white (invisible) text.
2003         https://bugs.webkit.org/show_bug.cgi?id=202662
2004         rdar://problem/48677354
2005
2006         Reviewed by Megan Gardner.
2007
2008         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2009         * TestWebKitAPI/Tests/WebKitCocoa/CopyRTF.mm: Added.
2010         (readRTFDataFromPasteboard):
2011         (copyAttributedStringFromHTML):
2012         (checkColor):
2013         (TEST):
2014
2015 2019-10-08  Brady Eidson  <beidson@apple.com>
2016
2017         Service Worker Fetch events should time out.
2018         https://bugs.webkit.org/show_bug.cgi?id=202188
2019
2020         Reviewed by Alex Christensen.
2021
2022         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2023         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2024         (WTR::TestRunner::setServiceWorkerFetchTimeout):
2025         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2026         * WebKitTestRunner/TestController.cpp:
2027         (WTR::TestController::resetStateToConsistentValues):
2028         (WTR::TestController::setServiceWorkerFetchTimeoutForTesting):
2029         * WebKitTestRunner/TestController.h:
2030         * WebKitTestRunner/TestInvocation.cpp:
2031         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2032
2033 2019-10-08  Matt Lewis  <jlewis3@apple.com>
2034
2035         Unreviewed, rolling out r250784.
2036
2037         Broke running layout tests.
2038
2039         Reverted changeset:
2040
2041         "results.webkit.org: Start reporting results"
2042         https://bugs.webkit.org/show_bug.cgi?id=202639
2043         https://trac.webkit.org/changeset/250784
2044
2045 2019-10-08  Matt Lewis  <jlewis3@apple.com>
2046
2047         Make iPhone simulators pass --iPhone-simulator instead of --iOS
2048         https://bugs.webkit.org/show_bug.cgi?id=202701
2049
2050         Reviewed by Aakash Jain.
2051
2052         * BuildSlaveSupport/build.webkit.org-config/steps.py:
2053         (appendCustomTestingFlags):
2054
2055 2019-10-08  Aakash Jain  <aakash_jain@apple.com>
2056
2057         [ews-build] Do not print worker environment variables in each build step [part 3]
2058         https://bugs.webkit.org/show_bug.cgi?id=202698
2059
2060         Reviewed by Jonathan Bedard.
2061
2062         * BuildSlaveSupport/ews-build/steps.py:
2063         (RunJavaScriptCoreTests.__init__): Disabled logging of environment variables.
2064         (ExtractTestResults.__init__): Ditto.
2065         * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
2066
2067 2019-10-08  Matt Lewis  <jlewis3@apple.com>
2068
2069         Fixing the triggerable templates in the config for catalina.
2070         https://bugs.webkit.org/show_bug.cgi?id=202652
2071
2072         Reviewed by Jonathan Bedard.
2073
2074         * BuildSlaveSupport/build.webkit.org-config/config.json:
2075
2076 2019-10-07  Ryosuke Niwa  <rniwa@webkit.org>
2077
2078         Add IDL for requestIdleCallback
2079         https://bugs.webkit.org/show_bug.cgi?id=202653
2080
2081         Reviewed by Geoffrey Garen.
2082
2083         * DumpRenderTree/TestOptions.cpp:
2084         (TestOptions::TestOptions):
2085         * DumpRenderTree/TestOptions.h:
2086         * DumpRenderTree/mac/DumpRenderTree.mm:
2087         (setWebPreferencesForTestOptions):
2088
2089 2019-10-07  Jiewen Tan  <jiewen_tan@apple.com>
2090
2091         Only wrapping CryptoKeys for IDB during serialization
2092         https://bugs.webkit.org/show_bug.cgi?id=202500
2093         <rdar://problem/52445927>
2094
2095         Reviewed by Chris Dumez.
2096
2097         Modifies IndexedDB.StructuredCloneBackwardCompatibility test to include CryptoKeys.
2098
2099         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibility.mm:
2100         (-[StructuredCloneBackwardCompatibilityNavigationDelegate _webCryptoMasterKeyForWebView:]):
2101         (TEST):
2102         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3:
2103         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3-shm:
2104         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibility.sqlite3-wal:
2105         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibilityRead.html:
2106         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBStructuredCloneBackwardCompatibilityWrite.html:
2107
2108 2019-10-07  Dean Jackson  <dino@apple.com>
2109
2110         Various filter-build-webkit updates
2111         https://bugs.webkit.org/show_bug.cgi?id=202558
2112
2113         Reviewed by Tim Horton.
2114
2115         Add rules for:
2116         - RuleScriptExecution
2117         - tapi
2118         - plutil
2119         - A postprocessing ANGLE script
2120         - "Prepare build"
2121         - Signing Identity
2122
2123         * Scripts/filter-build-webkit:
2124
2125 2019-10-07  Saam Barati  <sbarati@apple.com>
2126
2127         Allow OSR exit to the LLInt
2128         https://bugs.webkit.org/show_bug.cgi?id=197993
2129
2130         Reviewed by Tadeu Zagallo.
2131
2132         * Scripts/run-jsc-stress-tests:
2133
2134 2019-10-07  Kate Cheney  <katherine_cheney@apple.com>
2135
2136         Domain relationships in the ITP Database should be inserted in a single query and ignore repeat insert attempts. (202604)
2137         https://bugs.webkit.org/show_bug.cgi?id=202604
2138         <rdar://problem/55995831>
2139
2140         Reviewed by Chris Dumez. 
2141
2142         Updates to testing infrastructure to test successful list-merging of
2143         top domains into the ITP SQLite database and test against repeat
2144         inserts.
2145         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2146         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2147         (WTR::TestRunner::setStatisticsMergeStatistic):
2148         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
2149         (WTR::TestRunner::isStatisticsOnlyInDatabaseOnce):
2150         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2151         * WebKitTestRunner/TestController.cpp:
2152         (WTR::TestController::setStatisticsMergeStatistic):
2153         (WTR::TestController::isStatisticsOnlyInDatabaseOnce):
2154         * WebKitTestRunner/TestController.h:
2155         * WebKitTestRunner/TestInvocation.cpp:
2156         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2157
2158 2019-10-07  Matt Lewis  <jlewis3@apple.com>
2159
2160         Bring up queues for Catalina
2161         https://bugs.webkit.org/show_bug.cgi?id=202652
2162
2163         Reviewed by Jonathan Bedard.
2164
2165         * BuildSlaveSupport/build.webkit.org-config/config.json:
2166         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2167         (WebKitBuildbot):
2168         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2169
2170 2019-10-07  Antoine Quint  <graouts@apple.com>
2171
2172         Crash in WebKitTestRunnerApp: invocation function for block in WTR::UIScriptControllerIOS::sendEventStream
2173         https://bugs.webkit.org/show_bug.cgi?id=202646
2174         <rdar://problem/54576522>
2175
2176         Reviewed by Tim Horton.
2177
2178         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2179         (WTR::UIScriptControllerIOS::sendEventStream):
2180
2181 2019-10-07  Jonathan Bedard  <jbedard@apple.com>
2182
2183         results.webkit.org: Start reporting results
2184         https://bugs.webkit.org/show_bug.cgi?id=202639
2185
2186         Reviewed by Dewei Zhu.
2187
2188         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
2189         (loadBuilderConfig): Load API key for results.webkit.org.
2190         * BuildSlaveSupport/build.webkit.org-config/make_passwords_json.py:
2191         (create_mock_slave_passwords_dict): Add mock for API key.
2192         * BuildSlaveSupport/build.webkit.org-config/steps.py:
2193         (RunWebKitTests): Start reporting to results.webkit.org.
2194         (RunWebKitTests.__init__): Do not print the environment to hide the API key.
2195         (RunWebKitTests.start): Add the API key to the environment.
2196         (RunAPITests): Start reporting to results.webkit.org.
2197         (RunAPITests.__init__): Do not print the environment to hide the API key.
2198         (RunAPITests.start): Add the API key to the environment.
2199         (RunPythonTests): Start reporting to results.webkit.org.
2200         (RunPythonTests.__init__): Do not print the environment to hide the API key.
2201         (RunPythonTests.start): Add the API key to the environment.
2202         * Scripts/webkitpy/results/upload.py:
2203         (Upload):
2204         (Upload.upload): Add API_KEY, if it exists, to the request.
2205         (Upload.upload_archive): Ditto.
2206
2207 2019-10-07  Matt Lewis  <jlewis3@apple.com>
2208
2209         Unreviewed, rolling out r250750.
2210
2211         Reverting change as this broke interal test over the weekend.
2212
2213         Reverted changeset:
2214
2215         "Allow OSR exit to the LLInt"
2216         https://bugs.webkit.org/show_bug.cgi?id=197993
2217         https://trac.webkit.org/changeset/250750
2218
2219 2019-10-07  youenn fablet  <youenn@apple.com>
2220
2221         [iOS] Unmuting capture of a page is not working
2222         https://bugs.webkit.org/show_bug.cgi?id=202627
2223
2224         Reviewed by Eric Carlson.
2225
2226         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2227         * TestWebKitAPI/Tests/WebKit/GetUserMedia.mm: Added.
2228         (-[GetUserMediaCaptureUIDelegate _webView:requestMediaCaptureAuthorization:decisionHandler:]):
2229         (-[GetUserMediaCaptureUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
2230         (-[GetUserMediaTestView haveStream:]):
2231         (TestWebKitAPI::waitUntilCaptureState):
2232         (TestWebKitAPI::TEST):
2233         * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
2234
2235 2019-10-07  Philippe Normand  <pnormand@igalia.com>
2236
2237         [GStreamer][JHBuild] Update to 1.16.1
2238         https://bugs.webkit.org/show_bug.cgi?id=202619
2239
2240         Reviewed by Žan Doberšek.
2241
2242         * flatpak/org.webkit.CommonModules.yaml:
2243         * gstreamer/jhbuild.modules:
2244         * gstreamer/patches/gst-plugins-bad-do-not-retry-downloads-during-shutdown.patch: Removed.
2245         * gstreamer/patches/gst-plugins-good-glibc-2.30-compat.patch: Removed.
2246         * gstreamer/patches/gst-plugins-good-scaletempo-Advertise-interleaved-layout-in-caps-temp.patch: Removed.
2247
2248 2019-10-04  Saam Barati  <sbarati@apple.com>
2249
2250         Allow OSR exit to the LLInt
2251         https://bugs.webkit.org/show_bug.cgi?id=197993
2252
2253         Reviewed by Tadeu Zagallo.
2254
2255         * Scripts/run-jsc-stress-tests:
2256
2257 2019-10-04  Matt Lewis  <jlewis3@apple.com>
2258
2259         Fix iPad testers platform for downloading build product and fixing tests to run
2260         https://bugs.webkit.org/show_bug.cgi?id=202365
2261
2262         Reviewed by Jonathan Bedard.
2263
2264         * BuildSlaveSupport/build.webkit.org-config/config.json: Added device_model.
2265         * BuildSlaveSupport/build.webkit.org-config/factories.py: Added device_model property.
2266         (Factory.__init__):
2267         (BuildFactory.__init__):
2268         (TestFactory.__init__):
2269         (BuildAndTestFactory.__init__):
2270         (BuildAndTestLLINTCLoopFactory.__init__):
2271         (BuildAndTest32bitJSCFactory.__init__):
2272         (BuildAndRemoteJSCTestsFactory.__init__):
2273         (TestWebKit1LeaksFactory.__init__):
2274         (TestJSCFactory.__init__):
2275         (Test262Factory.__init__):
2276         (BuildAndPerfTestFactory.__init__):
2277         (DownloadAndPerfTestFactory.__init__):
2278         * BuildSlaveSupport/build.webkit.org-config/loadConfig.py: Added device_model to loaded properties.
2279         (loadBuilderConfig):
2280         * BuildSlaveSupport/build.webkit.org-config/steps.py: Added ability to run based on device_model to
2281         WebKit Tests and API tests for iPad and iPhone simulators.
2282         (ConfigureBuild.__init__):
2283         (ConfigureBuild.start):
2284         (appendCustomTestingFlags):
2285         (RunWebKitTests.start):
2286         (RunAPITests.start):
2287
2288 2019-10-04  Jonathan Bedard  <jbedard@apple.com>
2289
2290         results.webkit.org: Remove percentages from bubbles
2291         https://bugs.webkit.org/show_bug.cgi?id=202591
2292
2293         Rubber-stamped by Aakash Jain.
2294
2295         * resultsdbpy/resultsdbpy/view/static/js/timeline.js:
2296         (inPlaceCombine): Add 'worst' key to combined results.
2297         (TimelineFromEndpoint.constructor): Use the 'worst' key to populate the tag
2298         instead of a percentage.
2299
2300 2019-10-04  Aakash Jain  <aakash_jain@apple.com>
2301
2302         [EWS] Assign webkit-misc to various queues
2303         https://bugs.webkit.org/show_bug.cgi?id=202584
2304
2305         Reviewed by Jonathan Bedard.
2306
2307         * BuildSlaveSupport/ews-build/config.json:
2308
2309 2019-10-03  Aakash Jain  <aakash_jain@apple.com>
2310
2311         [ews] wincairo queue should use del instead of rm command (follow-up fix)
2312         https://bugs.webkit.org/show_bug.cgi?id=202477
2313
2314         Reviewed by Jonathan Bedard.
2315
2316         * BuildSlaveSupport/ews-build/steps.py:
2317         (CleanUpGitIndexLock.start): Use regular 'rm' command on windows as it use cygwin.
2318         * BuildSlaveSupport/ews-build/steps_unittest.py:
2319         (TestCleanUpGitIndexLock.test_success_windows): Added unit-test for windows.
2320
2321 2019-10-04  Jiewen Tan  <jiewen_tan@apple.com>
2322
2323         [WebAuthn] Implement _WKWebAuthenticationPanel SPI
2324         https://bugs.webkit.org/show_bug.cgi?id=202559
2325         <rdar://problem/55932094>
2326
2327         Reviewed by Brent Fulgham.
2328
2329         This patch adds a very limited test case to _WKWebAuthenticationPanel.
2330         Bug 202560 and Bug 202565 will follow up to write more tests.
2331
2332         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2333         * TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm: Added.
2334         (-[TestWebAuthenticationPanelDelegate panel:dismissWebAuthenticationPanelWithResult:]):
2335         (-[TestWebAuthenticationPanelUIDelegate webView:runWebAuthenticationPanel:initiatedByFrame:completionHandler:]):
2336         (TestWebKitAPI::TEST):
2337         * TestWebKitAPI/Tests/WebKitCocoa/web-authentication-get-assertion.html: Added.
2338         * WebKitTestRunner/TestController.cpp:
2339         (WTR::runWebAuthenticationPanel):
2340         (WTR::TestController::createWebViewWithOptions):
2341
2342 2019-10-04  Alex Christensen  <achristensen@webkit.org>
2343
2344         Move WKProcessPool._registerURLSchemeServiceWorkersCanHandle to _WKWebsiteDataStoreConfiguration
2345         https://bugs.webkit.org/show_bug.cgi?id=202553
2346
2347         Reviewed by Youenn Fablet.
2348
2349         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2350         * TestWebKitAPI/Tests/WebKitCocoa/StorageQuota.mm:
2351
2352 2019-10-04  Alex Christensen  <achristensen@webkit.org>
2353
2354         Simplify sandbox enabling macros
2355         https://bugs.webkit.org/show_bug.cgi?id=202536
2356
2357         Reviewed by Brent Fulgham.
2358
2359         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2360
2361 2019-10-04  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2362
2363         [GTK][WPE] Print the revision number on command "--version" of the MiniBrowser
2364         https://bugs.webkit.org/show_bug.cgi?id=202581
2365
2366         Reviewed by Carlos Garcia Campos.
2367
2368         When WebKit its build from source repository instead of a tarball
2369         we can print the SVN revision to be more precise about the version
2370         of WebKit when the option --version is passed to the MiniBrowser.
2371
2372         * MiniBrowser/gtk/main.c:
2373         (main):
2374         * MiniBrowser/wpe/main.cpp:
2375         (main):
2376
2377 2019-10-04  Carlos Garcia Campos  <cgarcia@igalia.com>
2378
2379         Unreviewed. Fix GTK distcheck
2380
2381         * gtk/manifest.txt.in: Add Source/WebKit/Resources/gtk to the tarball.
2382
2383 2019-10-03  Per Arne Vollan  <pvollan@apple.com>
2384
2385         REGRESSION(249649): Unable to open local files in MiniBrowser on macOS
2386         https://bugs.webkit.org/show_bug.cgi?id=201798
2387
2388         Reviewed by Brent Fulgham.
2389
2390         Added API test WKWebView.LoadFileWithLoadRequest.
2391
2392         * TestWebKitAPI/Tests/WebKitCocoa/LoadFileURL.mm:
2393
2394 2019-10-03  Jonathan Bedard  <jbedard@apple.com>
2395
2396         Add myself to various tools watchlists
2397         https://bugs.webkit.org/show_bug.cgi?id=202532
2398
2399         Reviewed by Aakash Jain.
2400
2401         * Scripts/webkitpy/common/config/watchlist: Add myself to the watchlist of
2402         PerformanceTests, SVNScripts, webkitperl and webkitpy.
2403
2404 2019-10-03  Jiewen Tan  <jiewen_tan@apple.com>
2405
2406         Support googleLegacyAppidSupport extension
2407         https://bugs.webkit.org/show_bug.cgi?id=202427
2408         <rdar://problem/55887473>
2409
2410         Reviewed by Brent Fulgham.
2411
2412         Adds an API test for googleLegacyAppidSupport extension.
2413
2414         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
2415         * TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp:
2416         (TestWebKitAPI::constructMakeCredentialRequest):
2417         (TestWebKitAPI::constructMakeCredentialRequestWithGoogleLegacyAppidSupport):
2418         (TestWebKitAPI::TEST):
2419
2420 2019-10-03  Thibault Saunier  <tsaunier@igalia.com>
2421
2422         REGRESSION(r249428): [GStreamer] VP9 video rendered green
2423         https://bugs.webkit.org/show_bug.cgi?id=201422
2424
2425         Adding patches in -base to fix the issue.
2426
2427         Reviewed by Philippe Normand.
2428
2429         * gstreamer/jhbuild.modules:
2430         * gstreamer/patches/base-0001-glupload-Add-VideoMetas-and-GLSyncMeta-to-the-raw-up.patch: Added.
2431
2432 2019-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2433
2434         [GTK] Make PSON optional
2435         https://bugs.webkit.org/show_bug.cgi?id=200967
2436
2437         Reviewed by Michael Catanzaro.
2438
2439         Enable PSON in MiniBrowser and unit tests. Also add more tests to page-id to check that we can still talk to the
2440         right web process after cross-site history navigation.
2441
2442         * MiniBrowser/gtk/main.c:
2443         (main):
2444         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
2445         (testWebExtensionPageID):
2446         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2447         (Test::Test):
2448
2449 2019-10-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2450
2451         [GTK][WPE] Add WebKitWebView:page-id property
2452         https://bugs.webkit.org/show_bug.cgi?id=201642
2453
2454         Reviewed by Michael Catanzaro.
2455
2456         Add a test case to check the new property.
2457
2458         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
2459         (checkTitle):
2460         (testWebExtensionGetTitle):
2461         (webViewPageIDChanged):
2462         (testWebExtensionPageID):
2463         (beforeAll):
2464
2465 2019-10-02  Jonathan Bedard  <jbedard@apple.com>
2466
2467         results.webkit.org: Only automatically search when multiple lines are pasted
2468         https://bugs.webkit.org/show_bug.cgi?id=202496
2469
2470         Rubber-stamped by Aakash Jain.
2471
2472         * resultsdbpy/resultsdbpy/view/static/js/search.js:
2473         (SearchBar): If only a single line has been pasted, do not automatically dispatch
2474         the search.
2475
2476 2019-10-02  Jonathan Bedard  <jbedard@apple.com>
2477
2478         Python 3: Add test-webkitpy for Python 3 (Follow-up fix)
2479         https://bugs.webkit.org/show_bug.cgi?id=201954
2480
2481         Unreviewed follow-up fix.
2482
2483         * Scripts/test-webkitpy-python3: Add copyright.
2484
2485 2019-10-02  Thibault Saunier  <tsaunier@igalia.com>
2486
2487         [GSTreamer] Let playbin handle redirects for us when appropriate
2488         https://bugs.webkit.org/show_bug.cgi?id=195326
2489
2490         Added required patche in GStreamer
2491
2492         Reviewed by Xabier Rodriguez-Calvar.
2493
2494         * gstreamer/patches/base-0001-playbin-Handle-error-message-with-redirection-indica.patch: Added.
2495         * gstreamer/patches/good-0001-qtdemux-Specify-REDIRECT-information-in-error-messag.patch: Added.
2496
2497 2019-10-01  Aakash Jain  <aakash_jain@apple.com>
2498
2499         [ews] Add API endpoint to retry failed builds for a patch
2500         https://bugs.webkit.org/show_bug.cgi?id=202424
2501
2502         Reviewed by Jonathan Bedard.
2503
2504         * BuildSlaveSupport/ews-app/ews/urls.py: Added url mapping for /retry.
2505         * BuildSlaveSupport/ews-app/ews/views/retrypatch.py: Added.
2506         (RetryPatch.get): Display the web-form to retry the patch. Retry button which will be added soon will 
2507         use this form.
2508         (RetryPatch.post): Handle the post request and retry the patch.
2509         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2510         (StatusBubble.find_failed_builds_for_patch): Method to find failed builds for a patch.
2511         * BuildSlaveSupport/ews-app/ews/templates/retry.html: Added, similar to submittoews.html. This
2512         allows to retry a patch through a web-form as well.
2513
2514 2019-10-02  Kate Cheney  <katherine_cheney@apple.com>
2515
2516         Updated resource load statistics are never merged into the SQLite Database backend (202372).
2517         https://bugs.webkit.org/show_bug.cgi?id=202372
2518         <rdar://problem/55854542>
2519
2520         Reviewed by Brent Fulgham. 
2521
2522         Added testing functionality to the mergeStatistics() function of the 
2523         SQLite backend.
2524
2525         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2526         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2527         (WTR::InjectedBundle::didReceiveMessageToPage):
2528         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2529         (WTR::TestRunner::setStatisticsMergeStatistic):
2530         (WTR::TestRunner::statisticsCallDidSetMergeStatisticCallback):
2531         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2532         * WebKitTestRunner/TestController.cpp:
2533         (WTR::TestController::setStatisticsMergeStatistic):
2534         * WebKitTestRunner/TestController.h:
2535         * WebKitTestRunner/TestInvocation.cpp:
2536         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2537         (WTR::TestInvocation::didMergeStatistic):
2538         * WebKitTestRunner/TestInvocation.h:
2539
2540 2019-10-02  Aakash Jain  <aakash_jain@apple.com>
2541
2542         [ews] windows or wincairo queue should use del instead of rm command
2543         https://bugs.webkit.org/show_bug.cgi?id=202477
2544
2545         Reviewed by Jonathan Bedard.
2546
2547         * BuildSlaveSupport/ews-build/steps.py:
2548         (CleanUpGitIndexLock.start): Use 'del' command instead of rm for windows and wincairo.
2549         * BuildSlaveSupport/ews-build/steps_unittest.py:
2550         (TestCleanUpGitIndexLock.test_success_wincairo): Added unit-test.
2551
2552 2019-10-02  youenn fablet  <youenn@apple.com>
2553
2554         Add a test to check the case of launching two service worker processes shortly one after the other
2555         https://bugs.webkit.org/show_bug.cgi?id=202450
2556
2557         Reviewed by Chris Dumez.
2558
2559         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2560
2561 2019-10-02  Aakash Jain  <aakash_jain@apple.com>
2562
2563         [ews] Dedicate a bot for macOS-High-Sierra-Debug-Build-EWS queue
2564         https://bugs.webkit.org/show_bug.cgi?id=202469
2565
2566         Reviewed by Jonathan Bedard.
2567
2568         * BuildSlaveSupport/ews-build/config.json: Dedicate ews112 to macOS debug builder queue.
2569
2570 2019-10-01  Jonathan Bedard  <jbedard@apple.com>
2571
2572         Python 3: Add test-webkitpy for Python 3
2573         https://bugs.webkit.org/show_bug.cgi?id=201954
2574
2575         Reviewed by Aakash Jain.
2576
2577         * Scripts/test-webkitpy-python3: Added.
2578
2579 2019-10-02  Carlos Garcia Campos  <cgarcia@igalia.com>
2580
2581         [GTK][WPE] Stop using legacy custom protocol implementation
2582         https://bugs.webkit.org/show_bug.cgi?id=202407
2583
2584         Reviewed by Žan Doberšek.
2585
2586         Remove the tests to check failure after committed, because it's not possible to test it with current code.
2587
2588         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
2589         (testWebContextURIScheme):
2590
2591 2019-10-01  Alexey Shvayka  <shvaikalesh@gmail.com>
2592
2593         [win-ews] No such file or directory: u'/cygdrive/C/cygwin/home/buildbot/WebKit/WebKitBuild/Release/bin32/layout-test-results/pywebsocket.ws.log-out.txt'
2594         https://bugs.webkit.org/show_bug.cgi?id=188640
2595
2596         Reviewed by Alex Christensen.
2597
2598         1. Properly shutdown WebSocket server so that port 8880 is released.
2599         2. Prevent failure of WebSocket tests when launched in freshly cloned repository.
2600
2601         * Scripts/new-run-webkit-websocketserver:
2602         (main): Tweak import and use class constants of PyWebSocket directly.
2603         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
2604         (PyWebSocket._prepare_config): Create test output directory if it doesn't exist.
2605
2606 2019-10-01  Alex Christensen  <achristensen@webkit.org>
2607
2608         Progress towards a functioning CMake build on Mac
2609         https://bugs.webkit.org/show_bug.cgi?id=202443
2610
2611         Rubber-stamped by Tim Horton.
2612
2613         * DumpRenderTree/PlatformMac.cmake:
2614         * MiniBrowser/mac/CMakeLists.txt:
2615         * TestRunnerShared/cocoa/ClassMethodSwizzler.mm:
2616         * TestWebKitAPI/CMakeLists.txt:
2617         * TestWebKitAPI/PlatformMac.cmake:
2618         * WebKitTestRunner/PlatformMac.cmake:
2619
2620 2019-10-01  John Wilander  <wilander@apple.com>
2621
2622         Storage Access API: document.hasStorageAccess() should return true when the cookie policy allows access
2623         https://bugs.webkit.org/show_bug.cgi?id=202435
2624         <rdar://problem/55718526>
2625
2626         Reviewed by Brent Fulgham.
2627
2628         This change makes sure topPrivatelyControlledDomain() correctly handles domains
2629         with leading dots, as often used in cookie domains.
2630
2631         * TestWebKitAPI/Tests/WebCore/PublicSuffix.cpp:
2632         (TestWebKitAPI::TEST_F):
2633
2634 2019-10-01  Jonathan Bedard  <jbedard@apple.com>
2635
2636         results.webkit.org: Standardize styles in the drawer
2637         https://bugs.webkit.org/show_bug.cgi?id=202428
2638
2639         Rubber-stamped by Aakash Jain.
2640
2641         * resultsdbpy/resultsdbpy/view/static/css/search.css: Rename boldInverseColor.
2642         * resultsdbpy/resultsdbpy/view/static/css/tooltip.css: Ditto.
2643         * resultsdbpy/resultsdbpy/view/static/js/drawer.js: Move style specifications into webkit.css.
2644         * resultsdbpy/resultsdbpy/view/static/js/timeline.js: Ditto.
2645         * resultsdbpy/resultsdbpy/view/static/library/css/webkit.css:
2646         (.input>label): Use the boldInverseColor instead of grey.
2647         (.input>input[type="text"][required], .input>input[type="number"][required],): Darken the border,
2648         decrease the font weight.
2649         (.input>input[type="text"][required]~label, .input>input[type="number"][required]~label,): Use the inverseColor instead of grey.
2650
2651 2019-10-01  Antti Koivisto  <antti@apple.com>
2652
2653         [CSS Shadow Parts] Parse 'part' attribute
2654         https://bugs.webkit.org/show_bug.cgi?id=202409
2655
2656         Reviewed by Ryosuke Niwa.
2657
2658         * DumpRenderTree/mac/DumpRenderTree.mm:
2659         (enableExperimentalFeatures):
2660
2661 2019-10-01  Aakash Jain  <aakash_jain@apple.com>
2662
2663         Follow-up fix to r250572 to fix a typo.
2664         [ews] Add method to retry a build using Buildbot API
2665         https://bugs.webkit.org/show_bug.cgi?id=202408
2666
2667         Unreviewed follow-up fix.
2668
2669         * BuildSlaveSupport/ews-app/ews/common/buildbot.py:
2670
2671 2019-10-01  Aakash Jain  <aakash_jain@apple.com>
2672
2673         [ews] Add method to retry a build using Buildbot API
2674         https://bugs.webkit.org/show_bug.cgi?id=202408
2675
2676         Reviewed by Jonathan Bedard.
2677
2678         * BuildSlaveSupport/ews-app/ews/common/buildbot.py:
2679         (Buildbot.retry_build): Method to retry given build using Buildbot API.
2680
2681 2019-10-01  David Kilzer  <ddkilzer@apple.com>
2682
2683         clang-tidy: Fix unnecessary copying/ref churn of for loop variables in Tools
2684         <https://webkit.org/b/202387>
2685
2686         Reviewed by Darin Adler.
2687
2688         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2689         (WTR::TestController::setAllowedMenuActions): Make loop variable
2690         a reference to fix unnecessary copying/ref churn.
2691
2692 2019-10-01  Nikolas Zimmermann  <nzimmermann@igalia.com>
2693
2694         Update my affiliation - since today I work for Igalia.
2695
2696         Unreviewed.
2697
2698         * Scripts/webkitpy/common/config/contributors.json:
2699
2700 2019-10-01  Keith Miller  <keith_miller@apple.com>
2701
2702         Add support for the Wasm multi-value proposal
2703         https://bugs.webkit.org/show_bug.cgi?id=202250
2704
2705         Reviewed by Saam Barati.
2706
2707         * Scripts/run-jsc-stress-tests:
2708
2709 2019-10-01  youenn fablet  <youenn@apple.com>
2710
2711         Remove races condition when validating capture sandbox extension revocation
2712         https://bugs.webkit.org/show_bug.cgi?id=202133
2713         <rdar://problem/55660905>
2714
2715         Reviewed by Eric Carlson.
2716
2717         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2718         Updated test to not use page cache so that on going back, the page is reloaded and will call getUserMedia again.
2719
2720 2019-09-30  Alex Christensen  <achristensen@webkit.org>
2721
2722         Resurrect Mac CMake build
2723         https://bugs.webkit.org/show_bug.cgi?id=202384
2724
2725         Rubber-stamped by Tim Horton.
2726
2727         * DumpRenderTree/PlatformMac.cmake:
2728         * TestWebKitAPI/PlatformMac.cmake:
2729
2730 2019-09-30  Zhifei Fang  <zhifei_fang@apple.com>
2731
2732         [results.webkit.org Timeline] New axis style
2733         https://bugs.webkit.org/show_bug.cgi?id=202292
2734
2735         Reviewed by Jonathan Bedard.
2736
2737         * resultsdbpy/resultsdbpy/view/static/library/js/components/TimelineComponents.js:
2738
2739 2019-09-30  Alex Christensen  <achristensen@webkit.org>
2740
2741         Move DownloadMonitor test speed multiplier from WebProcessPool to WebsiteDataStoreConfiguration
2742         https://bugs.webkit.org/show_bug.cgi?id=202339
2743
2744         Reviewed by Youenn Fablet.
2745
2746         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
2747         (TestWebKitAPI::webViewWithDownloadMonitorSpeedMultiplier):
2748
2749 2019-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
2750
2751         [GTK] IconDatabase is not thread-safe
2752         https://bugs.webkit.org/show_bug.cgi?id=201303
2753
2754         Reviewed by Žan Doberšek.
2755
2756         Rewrite the WebKitFaviconDatabase tests, splitting tests cases again and making them independent to each other.
2757
2758         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
2759         (testFaviconDatabaseInitialization):
2760         (testFaviconDatabaseGetFavicon):
2761         (ephemeralViewFaviconChanged):
2762         (testFaviconDatabaseEphemeral):
2763         (testFaviconDatabaseClear):
2764         (beforeAll):
2765         (afterAll):
2766         * TestWebKitAPI/glib/TestExpectations.json: TestWebKitFaviconDatabase shouls always pass now.
2767
2768 2019-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
2769
2770         [GTK][WPE] Add about:gpu
2771         https://bugs.webkit.org/show_bug.cgi?id=202305
2772
2773         Reviewed by Žan Doberšek.
2774
2775         Allow to use about:gpu in MiniBrowser. Add a script to get the current svn revision.
2776
2777         * MiniBrowser/gtk/BrowserTab.c:
2778         (getInternalURI):
2779         * MiniBrowser/gtk/main.c:
2780         (argumentToURL):
2781         * MiniBrowser/wpe/main.cpp:
2782         (main):
2783         * glib/svn-revision: Added.
2784
2785 2019-09-27  Andres Gonzalez  <andresg_22@apple.com>
2786
2787         Support accessibility for <figure> element on iOS.
2788         https://bugs.webkit.org/show_bug.cgi?id=202272
2789         <rdar://problem/54789907>
2790
2791         Reviewed by Chris Fleizach.
2792
2793         Implemented titleUIElement and roleDescription properties for <figure> elements on iOS.
2794         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2795         (WTR::AccessibilityUIElement::titleUIElement):
2796         (WTR::AccessibilityUIElement::roleDescription):
2797
2798 2019-09-27  Alex Christensen  <achristensen@webkit.org>
2799
2800         Move shouldUseTestingNetworkSession from NetworkProcessCreationParameters to NetworkSessionCreationParameters
2801         https://bugs.webkit.org/show_bug.cgi?id=202327
2802
2803         Reviewed by Tim Horton.
2804
2805         * WebKitTestRunner/TestController.cpp:
2806         (WTR::TestController::websiteDataStore):
2807
2808 2019-09-27  Alex Christensen  <achristensen@webkit.org>
2809
2810         Move service worker process termination delay disabling from process pool to website data store
2811         https://bugs.webkit.org/show_bug.cgi?id=202308
2812
2813         Reviewed by Chris Dumez.
2814
2815         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2816
2817 2019-09-27  Alex Christensen  <achristensen@webkit.org>
2818
2819         Remove unused WebProcessPool::setCanHandleHTTPSServerTrustEvaluation
2820         https://bugs.webkit.org/show_bug.cgi?id=202285
2821
2822         Reviewed by Youenn Fablet.
2823
2824         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
2825         (-[ServerTrustDelegate webView:didFinishNavigation:]):
2826         (-[ServerTrustDelegate webView:didFailProvisionalNavigation:withError:]):
2827         (-[ServerTrustDelegate waitForDidFinishNavigation]):
2828         (-[ServerTrustDelegate waitForDidFailProvisionalNavigationError]):
2829         (-[ServerTrustDelegate authenticationChallengeCount]):
2830         (-[ServerTrustDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
2831         (TestWebKitAPI::TEST):
2832         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2833         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2834         (WTR::TestRunner::setCanHandleHTTPSServerTrustEvaluation): Deleted.
2835         (WTR::TestRunner::canDoServerTrustEvaluationInNetworkProcess): Deleted.
2836         (WTR::TestRunner::serverTrustEvaluationCallbackCallsCount): Deleted.
2837         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2838         * WebKitTestRunner/TestController.cpp:
2839         (WTR::TestController::resetStateToConsistentValues):
2840         (WTR::TestController::didReceiveAuthenticationChallenge):
2841         (WTR::TestController::canDoServerTrustEvaluationInNetworkProcess const): Deleted.
2842         * WebKitTestRunner/TestController.h:
2843         (WTR::TestController::serverTrustEvaluationCallbackCallsCount const): Deleted.
2844         * WebKitTestRunner/TestInvocation.cpp:
2845         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2846         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2847         (WTR::TestController::canDoServerTrustEvaluationInNetworkProcess const): Deleted.
2848
2849 2019-09-27  Alex Christensen  <achristensen@webkit.org>
2850
2851         Remove unused APIProcessPoolConfiguration::diskCacheSpeculativeValidationEnabled
2852         https://bugs.webkit.org/show_bug.cgi?id=202290
2853
2854         Reviewed by Carlos Garcia Campos.
2855
2856         * TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
2857         (TEST):
2858         * WebKitTestRunner/TestController.cpp:
2859         (WTR::TestController::websiteDataStore):
2860         (WTR::TestController::generatePageConfiguration):
2861
2862 2019-09-27  Youenn Fablet  <youenn@apple.com>
2863
2864         Make IsNSURLSessionWebSocketEnabled an experimental flag
2865         https://bugs.webkit.org/show_bug.cgi?id=202135
2866         <rdar://problem/55694721>
2867
2868         Reviewed by Geoff Garen.
2869
2870         * WebKitTestRunner/TestController.cpp:
2871         (WTR::TestController::resetPreferencesToConsistentValues):
2872         Set preference to false by default.
2873
2874 2019-09-27  Jiewen Tan  <jiewen_tan@apple.com>
2875
2876         SubFrameSOAuthorizationSession should ensure messages are posted in the right order to the parent frame
2877         https://bugs.webkit.org/show_bug.cgi?id=202061
2878         <rdar://problem/55485666>
2879
2880         Reviewed by Youenn Fablet.
2881
2882         Adds tests that check the order of messages posted by SubFrameSOAuthorizationSession.
2883
2884         * TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm:
2885         (-[TestSOAuthorizationScriptMessageHandler userContentController:didReceiveScriptMessage:]):
2886         (resetState):
2887         (TestWebKitAPI::TEST):
2888
2889 2019-09-26 Kate Cheney <katherine_cheney@apple.com>
2890
2891         Resource Load Statistics: Downgrade all third-party referrer headers
2892         https://bugs.webkit.org/show_bug.cgi?id=201353
2893         <rdar://problem/54895650>
2894
2895         Majority of this patch was written by John Wilander <wilander@apple.com>.
2896
2897         Reviewed by Brent Fulgham. 
2898
2899         The changes to the TestRunner facilitates an opt-out for test cases
2900         that either test the referrer mechanism explicitly or tests that
2901         rely on the full referrer to be sent. 
2902
2903         The new boolean variable and early return in 
2904         TestRunner::setStatisticsShouldDowngradeReferrer() prevent the same
2905         event from trying to set multiple TestRunner callbacks.
2906
2907         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2908         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2909         (WTR::InjectedBundle::didReceiveMessageToPage):
2910         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2911         (WTR::TestRunner::setStatisticsShouldDowngradeReferrer):
2912         (WTR::TestRunner::statisticsCallDidSetShouldDowngradeReferrerCallback):
2913         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2914         * WebKitTestRunner/TestController.cpp:
2915         (WTR::TestController::setStatisticsShouldDowngradeReferrer):
2916         * WebKitTestRunner/TestController.h:
2917         * WebKitTestRunner/TestInvocation.cpp:
2918         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2919         (WTR::TestInvocation::didSetShouldDowngradeReferrer):
2920         * WebKitTestRunner/TestInvocation.h:
2921
2922 2019-09-26  Dean Jackson  <dino@apple.com>
2923
2924         Build fix.
2925
2926         * TestWebKitAPI/Tests/WebKitCocoa/ContextMenus.mm:
2927         (-[TestContextMenuImageWithoutConfigurationUIDelegate webView:contextMenuConfigurationForElement:completionHandler:]): Deleted.
2928         (-[TestContextMenuImageWithoutConfigurationUIDelegate webView:contextMenuWillPresentForElement:]): Deleted.
2929         (-[TestContextMenuImageWithoutConfigurationUIDelegate webView:contextMenuForElement:willCommitWithAnimator:]): Deleted.
2930         (-[TestContextMenuImageWithoutConfigurationUIDelegate webView:contextMenuDidEndForElement:]): Deleted.
2931
2932 2019-09-26  Dean Jackson  <dino@apple.com>
2933
2934         ContextMenu on a link in an email no longer shows web preview
2935         https://bugs.webkit.org/show_bug.cgi?id=201120
2936         <rdar://54353617>
2937
2938         Reviewed by Wenson Hsieh.
2939
2940         Test context menus on a link that is also an image.
2941
2942         * TestWebKitAPI/Tests/WebKitCocoa/ContextMenus.mm:
2943         (contextMenuWebViewDriver):
2944         (-[TestContextMenuImageWithoutConfigurationUIDelegate webView:contextMenuConfigurationForElement:completionHandler:]):
2945         (-[TestContextMenuImageWithoutConfigurationUIDelegate webView:contextMenuWillPresentForElement:]):
2946         (-[TestContextMenuImageWithoutConfigurationUIDelegate webView:contextMenuForElement:willCommitWithAnimator:]):
2947         (-[TestContextMenuImageWithoutConfigurationUIDelegate webView:contextMenuDidEndForElement:]):
2948         (TEST):
2949
2950 2019-09-26  Frederic Wang  <fwang@igalia.com>
2951
2952         run-safari --ios-simulator is no longer working with Xcode 11
2953         https://bugs.webkit.org/show_bug.cgi?id=199852
2954
2955         Path of MobileSafari.app has changed in Xcode 11. This patch updates
2956         the run-safari script to use the new path. This removes support for
2957         running Safari on iOS < 13, see discussions on bug 177595.
2958
2959         Reviewed by Jonathan Bedard.
2960
2961         * Scripts/webkitdirs.pm:
2962         (iosSimulatorApplicationsPath):
2963
2964 2019-09-26  Zhifei Fang  <zhifei_fang@apple.com>
2965
2966         [results.webkit.org] Timeline support Image inner label
2967         https://bugs.webkit.org/show_bug.cgi?id=202180
2968
2969         Reviewed by Jonathan Bedard.
2970
2971         * resultsdbpy/resultsdbpy/view/static/js/expectations.js:
2972         * resultsdbpy/resultsdbpy/view/static/library/css/webkit.css:
2973         (.lengend>.item .dot img): support img symbol for lengend and dot
2974         * resultsdbpy/resultsdbpy/view/static/library/js/components/TimelineComponents.js:
2975         (Timeline.CanvasSeriesComponent): Support user pass a Image object or a image url as inner label
2976
2977 2019-09-26  Chris Dumez  <cdumez@apple.com>
2978
2979         Stop using testRunner.overridePreference() to turn on Page Cache
2980         https://bugs.webkit.org/show_bug.cgi?id=202274
2981
2982         Reviewed by Alex Christensen.
2983
2984         * DumpRenderTree/TestRunner.cpp:
2985         (overridePreferenceCallback):
2986         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2987         (WTR::TestRunner::overridePreference):
2988
2989 2019-09-26  Jonathan Bedard  <jbedard@apple.com>
2990
2991         results.webkit.org: Use cursor: pointer for clickable elements
2992         https://bugs.webkit.org/show_bug.cgi?id=202268
2993
2994         Rubber-stamped by Aakash Jain.
2995
2996         * resultsdbpy/resultsdbpy/view/static/js/drawer.js: Give collapse button a pointer for cursor.
2997         * resultsdbpy/resultsdbpy/view/templates/search.html: Make 'X' to close test timeline a link-button.
2998
2999 2019-09-26  Kate Cheney  <katherine_cheney@apple.com>
3000
3001         Enable LayoutTests using ResourceLoadStatistics SQLite backend (195420) 
3002         https://bugs.webkit.org/show_bug.cgi?id=195420                          
3003         <rdar://problem/54213551>                                               
3004
3005         Reviewed by Brent Fulgham.                                             
3006
3007         Added in logic to send a message from the UIProcess to the Network      
3008         Process which will initalize the ITP Database backend to allow for      
3009         layout testing.                                                         
3010         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3011         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3012         (WTR::TestRunner::setUseITPDatabase):
3013         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3014         * WebKitTestRunner/TestController.cpp:
3015         (WTR::TestController::setUseITPDatabase):
3016         * WebKitTestRunner/TestController.h:
3017         * WebKitTestRunner/TestInvocation.cpp:
3018         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3019
3020 2019-09-26  Wenson Hsieh  <wenson_hsieh@apple.com>
3021
3022         TestWebKitAPI.WebKit.ReloadWithDifferingInitialScale is failing consistently
3023         https://bugs.webkit.org/show_bug.cgi?id=202273
3024
3025         Reviewed by Aakash Jain.
3026
3027         The content width scaling limits added in r250361 prevent this test from scaling down the content width (2000px
3028         wide) to fit the viewport (375px). To avoid this issue, change the content width from 2000px to 1500px, which is
3029         still a very wide content width for a web page.
3030
3031         * TestWebKitAPI/Tests/WebKitCocoa/ReloadWithDifferingInitialScale.mm:
3032
3033 2019-09-26  Alexey Shvayka  <shvaikalesh@gmail.com>
3034
3035         toExponential, toFixed, and toPrecision should allow arguments up to 100
3036         https://bugs.webkit.org/show_bug.cgi?id=199163
3037
3038         Reviewed by Ross Kirsling.
3039
3040         Adjust StringNumberFixedWidth test due to lowering kMaxFixedDigitsBeforePoint.
3041
3042         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
3043
3044 2019-09-26  Jiewen Tan  <jiewen_tan@apple.com>
3045
3046         TestWebKitAPI.SOAuthorizationSubFrame.AuthorizationOptions is failing consistently on iOS API tests EWS
3047         https://bugs.webkit.org/show_bug.cgi?id=202249
3048
3049         Reviewed by Alex Christensen.
3050
3051         Swizzles +[AKAuthorizationController isURLFromAppleOwnedDomain:] following other tests.
3052
3053         * TestWebKitAPI/Tests/WebKitCocoa/TestSOAuthorization.mm:
3054         (TestWebKitAPI::TEST):
3055
3056 2019-09-25  Alex Christensen  <achristensen@webkit.org>
3057
3058         Add replacement SPI on _WKWebsiteDataStoreConfiguration for enabling speculative cache validation and IPC-free server trust evaluation
3059         https://bugs.webkit.org/show_bug.cgi?id=202251
3060
3061         Reviewed by Tim Horton.
3062
3063         Adopt new SPI instead of deprecated SPI.
3064
3065         * MiniBrowser/mac/AppDelegate.m:
3066         (persistentDataStore):
3067         (defaultConfiguration):
3068         (-[BrowserAppDelegate fetchDefaultStoreWebsiteData:]):
3069         (-[BrowserAppDelegate fetchAndClearDefaultStoreWebsiteData:]):
3070         (-[BrowserAppDelegate clearDefaultStoreWebsiteData:]):
3071
3072 2019-09-25  Jonathan Bedard  <jbedard@apple.com>
3073
3074         Python 3: Add support in webkitpy.common.system
3075         https://bugs.webkit.org/show_bug.cgi?id=201826
3076         <rdar://problem/55452671>
3077
3078         Reviewed by Stephanie Lewis.
3079
3080         Tested compatibility by running 'python3 -m unittest webkitpy.common.system.<_unittest>' on
3081         each of the effected files.
3082
3083         * Scripts/webkitpy/common/checkout/changelog.py: Import StringIO from io module.
3084         (set_reviewer):
3085         (set_short_description_and_bug_url):
3086         * Scripts/webkitpy/common/checkout/checkout.py:  Import StringIO from io module.
3087         (Checkout._latest_entry_for_changelog_at_revision):
3088         * Scripts/webkitpy/common/config/committers.py:
3089         (CommitterList.load_json): iteritems -> items.
3090         * Scripts/webkitpy/common/net/networktransaction.py:
3091         (NetworkTransaction.run): urllib2 is urllib in Python3. 
3092         * Scripts/webkitpy/common/system/abstractexecutive.py:
3093         (AbstractExecutive._stringify_args):
3094         (AbstractExecutive.command_for_printing): The str type is unicode in Python3.
3095         * Scripts/webkitpy/common/system/crashlogs_unittest.py: Explicitly encode and decode binary crashlogs.
3096         * Scripts/webkitpy/common/system/environment_unittest.py: Use absolute imports.
3097         * Scripts/webkitpy/common/system/executive.py:
3098         (ScriptError.message_with_output): The str type is unicode in Python3.
3099         (Executive.WrappedPopen): Python3's Popen object is a context manager. To allow us to use it as one,
3100         our Python2 Popen needs to be one as well.
3101         (Executive.WrappedPopen.__init__):
3102         (Executive.WrappedPopen.__enter__):
3103         (Executive.WrappedPopen.__exit__):
3104         (Executive._run_command_with_teed_output): Simplify loop, decode unicode strings.
3105         (Executive.run_and_throw_if_fail): The child output file should not be unicode strings.
3106         (Executive.running_pids): Use the Popen context manager to guarantee clean-up.
3107         (Executive._compute_stdin):
3108         (Executive.run_command): Use the Popen context manager to guarantee clean-up.
3109         (Executive._stringify_args): The str type is unicode in Python3.
3110         (Executive.popen): Return a context manager if the Popen object is not one.
3111         * Scripts/webkitpy/common/system/executive_mock.py:
3112         (MockProcess.__init__): StringIO -> BytesIO.
3113         (MockProcess.__enter__):
3114         (MockProcess):
3115         (MockProcess.__exit__):
3116         * Scripts/webkitpy/common/system/executive_unittest.py:
3117         (ExecutiveTest.test_auto_stringify_args): Use the Popen context manager to guarantee clean-up.
3118         (ExecutiveTest.test_popen_args): Ditto.
3119         (ExecutiveTest.serial_test_kill_process): Ditto.
3120         (ExecutiveTest.serial_test_kill_all): Ditto.
3121         * Scripts/webkitpy/common/system/filesystem.py:
3122         (FileSystem.read_binary_file): Use 'open' instead of 'file'.
3123         (FileSystem.write_binary_file): Ditto.
3124         (FileSystem.write_text_file): The str type is unicode in Python3. 
3125         (FileSystem.relpath):
3126         (FileSystem.remove): The WindowsError is just anther OSError in Python3.
3127         (FileSystem._WindowsError): Deleted.
3128         * Scripts/webkitpy/common/system/filesystem_mock.py:
3129         (MockFileSystem.glob): filter returns a generator instead of a list.
3130         (WritableBinaryFileObject.__init__): Binary files are comprised of bytes, not string in Python3.
3131         (WritableBinaryFileObject.write): Ditto.
3132         (ReadableTextFileObject.__init__): Ditto.
3133         * Scripts/webkitpy/common/system/filesystem_mock_unittest.py:
3134         (MockFileSystemTest.test_normpath):
3135         (MockFileSystemTest.test_dirs_under): assertEquals -> assertEqual.
3136         * Scripts/webkitpy/common/system/filesystem_unittest.py:
3137         (RealFileSystemTest.test_read_and_write_file): Explicitly define byte arrays instead of strings.
3138         (RealFileSystemTest.test_remove_file_with_retry.remove_with_exception): The WindowsError is just
3139         anther OSError in Python3.
3140         * Scripts/webkitpy/common/system/outputcapture.py:
3141         * Scripts/webkitpy/common/system/outputtee_unittest.py:
3142         (SimpleTeeTest.test_simple_tee):
3143         * Scripts/webkitpy/common/system/path.py:
3144         (_escape): urllib library has been broken into parts.
3145         * Scripts/webkitpy/common/system/pemfile.py:
3146         (_parse_pem_format.find_end): Python3 does not define a maxint.
3147         * Scripts/webkitpy/common/system/pemfile_unittest.py:
3148         * Scripts/webkitpy/common/system/platforminfo.py:
3149         (PlatformInfo.total_bytes_memory): Not 'long' type in Python3.
3150         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
3151         (TestPlatformInfo.test_real_code): assertNotEquals -> assertNotEqual.
3152         (TestPlatformInfo.test_display_name): Ditto.
3153         * Scripts/webkitpy/common/system/profiler.py:
3154         (ProfilerFactory.create_profiler): Manually implement ifilter.
3155         * Scripts/webkitpy/common/system/profiler_unittest.py: Use absolute imports.
3156         * Scripts/webkitpy/common/system/stack_utils_unittest.py:
3157         (current_thread_id): items() returns a generator in Python3.
3158         * Scripts/webkitpy/common/system/systemhost.py: Use absolute imports.
3159         * Scripts/webkitpy/common/system/urlfetcher.py: Removed.
3160         * Scripts/webkitpy/common/system/urlfetcher_mock.py: Removed.
3161         * Scripts/webkitpy/common/system/user.py:
3162         (User.prompt): Use absolute imports, raw_input -> input.
3163         (User.prompt_with_multiple_lists):
3164         (User.prompt_with_list):
3165         (User.confirm):
3166         * Scripts/webkitpy/common/unicode.py: Tooling to manage compatibility between Python 2
3167         and Python 3 unicode handling.
3168         * Scripts/webkitpy/common/system/user_mock.py:
3169         (MockUser.prompt): raw_input -> input.
3170         (MockUser.prompt_with_list): Ditto.
3171         * Scripts/webkitpy/common/version.py:
3172         (Version.from_iterable): xrange -> range.
3173         (Version.from_name): Use absolute import path.
3174         (Version.__contains__): xrange -> range.
3175         (Version.__str__): xrange -> range.
3176         (Version.__cmp__): amp is no longer an operator in Python3, but versions are comprised
3177         Of integers, so subtraction has the same effect.
3178         (Version):
3179         (Version.__eq__): __cmp__ operator is no longer respected, so we need to implement
3180         each comparison.
3181         (Version.__ne__): Ditto.
3182         (Version.__lt__): Ditto.
3183         (Version.__le__): Ditto.
3184         (Version.__gt__): Ditto.
3185         (Version.__ge__): Ditto.
3186         * Scripts/webkitpy/common/version_name_map.py:
3187         (VersionNameMap._automap_to_major_version):
3188         (VersionNameMap.to_name): xrange -> range.
3189         (VersionNameMap.from_name): iteritems -> items.
3190         * Scripts/webkitpy/common/version_name_map_unittest.py: Use absolute imports.
3191         * Scripts/webkitpy/common/version_unittest.py: Ditto.
3192         * Scripts/webkitpy/common/wavediff.py:
3193         (WaveDiff.__init__): StringIO -> BytesIO.
3194         * Scripts/webkitpy/port/__init__.py:
3195         (outside):
3196
3197 2019-09-25  Aakash Jain  <aakash_jain@apple.com>
3198
3199         [EWS] RunJavaScriptCoreTestsToT should use the same command as RunJavaScriptCoreTests
3200         https://bugs.webkit.org/show_bug.cgi?id=202216
3201
3202         Reviewed by Jonathan Bedard.
3203
3204         * BuildSlaveSupport/ews-build/steps.py:
3205         (RunJavaScriptCoreTestsToT): Removed the command so as to use the command from base class.
3206         * BuildSlaveSupport/ews-build/steps_unittest.py: Updatd unit-tests.
3207
3208 2019-09-25  Aakash Jain  <aakash_jain@apple.com>
3209
3210         [ews] JSC queues should run or skip tests based on runTests key from config.json
3211         https://bugs.webkit.org/show_bug.cgi?id=202223
3212
3213         Reviewed by Jonathan Bedard.
3214
3215         * BuildSlaveSupport/ews-build/config.json: Added the runTests key.
3216         * BuildSlaveSupport/ews-build/factories.py:
3217         (JSCTestsFactory.__init__): Add RunJavaScriptCoreTests step based on runTests key.
3218         * BuildSlaveSupport/ews-build/loadConfig.py:
3219         (loadBuilderConfig): Pass the runTests key to the factory.
3220         * BuildSlaveSupport/ews-build/loadConfig_unittest.py:
3221         (ConfigDotJSONTest.test_builder_keys): Added the runTests key.
3222
3223 2019-09-25  Jonathan Bedard  <jbedard@apple.com>
3224
3225         results.webkit.org: Add investigation drawer
3226         https://bugs.webkit.org/show_bug.cgi?id=202106
3227
3228         Reviewed by Dewei Zhu.
3229
3230         * resultsdbpy/resultsdbpy/view/static/js/drawer.js: Support multiple 'main' classes.
3231         * resultsdbpy/resultsdbpy/view/static/js/expectations.js: Added.
3232         (Expectations.colorMap): Return a dictionary mapping type strings to colors.
3233         (Expectations.stringToStateId): Map a string to a state ID for sorting.
3234         (Expectations.typeForId): Return a type string given an ID.
3235         (Expectations.symbolForId): Return a symbol for a type given an ID.
3236         (Expectations.colorForId): Return a color given an ID.
3237         (Expectations.unexpectedResults): Given a list of actual results and expected results,
3238         return a state.
3239         (Expectations):
3240         * resultsdbpy/resultsdbpy/view/static/js/investigate.js: Added.
3241         (commitsForUuid):
3242         (testRunLink):
3243         (elapsed):
3244         (percentage):
3245         (contentForAgregateData):
3246         (contentForData):
3247         (_InvestigateDrawer):
3248         (_InvestigateDrawer.prototype.isRendered):
3249         (_InvestigateDrawer.prototype.expand): Expand the investigation drawer.
3250         (_InvestigateDrawer.prototype.collapse): Collapse the investigation drawer.
3251         (_InvestigateDrawer.prototype.select): Select an element to investigate.
3252         * resultsdbpy/resultsdbpy/view/static/js/timeline.js:
3253         (statsForSingleResult): Move Expectation constants.
3254         (TimelineFromEndpoint.prototype.render): Investigate specific data points instead
3255         of jumping to the build.
3256         (Expectations.stringToStateId): Deleted.
3257         (Expectations.unexpectedResults): Deleted.
3258         (Expectations): Deleted.
3259         * resultsdbpy/resultsdbpy/view/static/library/css/webkit.css:
3260         (.drawer.display): Make minimum height.
3261         (@media screen and (min-width: 600px)): Move main and sidebar so they override drawer.
3262         (@media screen and (min-width: 768px)): Ditto.
3263         * resultsdbpy/resultsdbpy/view/templates/commits.html:
3264         * resultsdbpy/resultsdbpy/view/templates/search.html:
3265         * resultsdbpy/resultsdbpy/view/templates/suite_results.html:
3266
3267 2019-09-25  Alex Christensen  <achristensen@webkit.org>
3268
3269         Remove duplicate WebsiteDataStoreConfiguration copying code
3270         https://bugs.webkit.org/show_bug.cgi?id=202215
3271
3272         Reviewed by Tim Horton.
3273
3274         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
3275         (TEST):
3276
3277 2019-09-25  Alex Christensen  <achristensen@webkit.org>
3278
3279         Replace WebsiteDataStoreParameters::privateSessionParameters with re-initializing all sessions immediately upon NetworkProcess resumption
3280         https://bugs.webkit.org/show_bug.cgi?id=202211
3281
3282         Reviewed by Tim Horton.
3283
3284         * TestWebKitAPI/Tests/WebKitCocoa/NetworkProcessCrashNonPersistentDataStore.mm:
3285         (checkRecoveryAfterCrash):
3286         (TEST):
3287
3288 2019-09-25  Aakash Jain  <aakash_jain@apple.com>
3289
3290         [EWS] JSC queues should dynamically add required build steps for re-testing the patch
3291         https://bugs.webkit.org/show_bug.cgi?id=202170
3292
3293         Reviewed by Jonathan Bedard.
3294
3295         * BuildSlaveSupport/ews-build/factories.py:
3296         (JSCTestsFactory.__init__): Do not add ReRunJavaScriptCoreTests and related steps here, as
3297         these are dynamically added (if required) in steps.py.
3298         * BuildSlaveSupport/ews-build/steps.py:
3299         (CompileJSCToT): Remove doStepIf() and hideStepIf() method, these are no longer required as we add
3300         this step dynamically only if required. We don't need an extra property ('patchFailedToBuild') to be set.
3301         (RunJavaScriptCoreTests.evaluateCommand): Dynamically add ReRunJavaScriptCoreTests step if required.
3302         (ReRunJavaScriptCoreTests): Removed doStepIf() and hideStepIf() method.
3303         (ReRunJavaScriptCoreTests.evaluateCommand): Dynamically add UnApplyPatchIfRequired(), CompileJSCToT() and RunJavaScriptCoreTestsToT steps.
3304         (RunJavaScriptCoreTestsToT.evaluateCommand): Overriden to avoid caling the base-class method which dynamically adds
3305         more steps.
3306         * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests accordingly.
3307
3308 2019-09-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3309
3310         [iPadOS] [DataActivation] Focus moves away after focusing input fields on www.att.com
3311         https://bugs.webkit.org/show_bug.cgi?id=202167
3312         <rdar://problem/55185021>
3313
3314         Reviewed by Tim Horton.
3315
3316         Rebaseline an API test.
3317
3318         * TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
3319         (TestWebKitAPI::TEST):
3320
3321 2019-09-25  Jonathan Bedard  <jbedard@apple.com>
3322
3323         Unreviewed, rolling out r250324.
3324
3325         Tools/ChangeLog
3326
3327         Reverted changeset:
3328
3329         "Enable LayoutTests using ResourceLoadStatistics SQLite
3330         backend (195420)"
3331         https://bugs.webkit.org/show_bug.cgi?id=195420
3332         https://trac.webkit.org/changeset/250324
3333
3334 2019-09-24  Fujii Hironori  <Hironori.Fujii@sony.com>
3335
3336         [Windows][webkitpy] _apache_config_file_name_for_platform should take the system PHP version into account
3337         https://bugs.webkit.org/show_bug.cgi?id=202134
3338
3339         Reviewed by Jonathan Bedard.
3340
3341         _apache_config_file_name_for_platform always returns a config file
3342         name for PHP5 on Cygwin Python, one for PHP7 on Win32 Python. It
3343         should detect the system PHP version as Linux ports do.
3344
3345         Both AppleWin and WinCairo are using XAMPP Apache. Unify the code
3346         paths for them. And, remove a stale conf file.
3347
3348         This change makes it possible to use Cygwin Python with PHP7.
3349
3350         * Scripts/webkitpy/port/base.py:
3351         (Port._win_php_version): Added.
3352         (Port._apache_config_file_name_for_platform): Unified cygwin and
3353         win32 code path by using _win_php_version.
3354         * Scripts/webkitpy/port/port_testcase.py:
3355         (test_apache_config_file_name_for_platform): Updated cygwin and
3356         win32 test cases.
3357
3358 2019-09-24  Matt Lewis  <jlewis3@apple.com>
3359
3360         Bring up queues for iPadOS Simulator Tests
3361         https://bugs.webkit.org/show_bug.cgi?id=202151
3362
3363         Reviewed by Jonathan Bedard.
3364
3365         * BuildSlaveSupport/build.webkit.org-config/config.json:
3366         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
3367         (WebKitBuildbot):
3368         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
3369
3370 2019-09-24  Kate Cheney  <katherine_cheney@apple.com>
3371
3372         Enable LayoutTests using ResourceLoadStatistics SQLite backend (195420) 
3373         https://bugs.webkit.org/show_bug.cgi?id=195420                          
3374         <rdar://problem/54213551>                                               
3375
3376         Reviewed by Brent Fulgham.                                             
3377
3378         Added in logic to send a message from the UIProcess to the Network      
3379         Process which will initalize the ITP Database backend to allow for      
3380         layout testing.                                                         
3381         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3382         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3383         (WTR::TestRunner::setUseITPDatabase):
3384         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3385         * WebKitTestRunner/TestController.cpp:
3386         (WTR::TestController::setUseITPDatabase):
3387         * WebKitTestRunner/TestController.h:
3388         * WebKitTestRunner/TestInvocation.cpp:
3389         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3390
3391 2019-09-24  Patrick Griffis  <pgriffis@igalia.com>
3392
3393         Add Patrick Griffis to contributors.json
3394
3395         Unreviewed.
3396
3397         * Scripts/webkitpy/common/config/contributors.json:
3398
3399 2019-09-24  Aakash Jain  <aakash_jain@apple.com>
3400
3401         [ews-build] Improve summary for Validate Patch step
3402         https://bugs.webkit.org/show_bug.cgi?id=202163
3403
3404         Reviewed by Jonathan Bedard.
3405
3406         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py: Remove the redundant message saying:
3407         'Some messages were logged while the patch was still eligible'.
3408         * BuildSlaveSupport/ews-build/steps.py:
3409         (ValidatePatch.skip_build): Updated the descritionDone with the reason to skip the patch.
3410         (ValidatePatch.getResultSummary): Overrode this method so as to prevent buildbot from automatically
3411         appending '(failure)' at the end of the summary string.
3412
3413 2019-09-24  Keith Rollin  <krollin@apple.com>
3414
3415         Coalesce or remove PLATFORM(MAC) || PLATFORM(IOS_FAMILY)
3416         https://bugs.webkit.org/show_bug.cgi?id=202119
3417         <rdar://problem/55638792>
3418
3419         Reviewed by Alex Christensen.
3420
3421         After refactoring and other code evolution, some platform checks have
3422         ended up looking like PLATFORM(MAC) || PLATFORM(IOS_FAMILY) (or
3423         vice-versa). These can be converted into the equivalent
3424         PLATFORM(COCOA). Where the instance occurs in a Cocoa-only file, the
3425         check can be removed altogether (along with any "#else" branches).
3426
3427         * DumpRenderTree/AccessibilityTextMarker.h:
3428         * DumpRenderTree/AccessibilityUIElement.cpp:
3429         (AccessibilityUIElement::setValue):
3430
3431 2019-09-24  Zhifei Fang  <zhifei_fang@apple.com>
3432
3433         Add tests for Ref.js.
3434         https://bugs.webkit.org/show_bug.cgi?id=201778.
3435
3436         Reviewed by Jonathan Bedard.
3437
3438         * resultsdbpy/resultsdbpy/view/static/library/js/Ref.js:
3439         (applyStateDiff): null, 0, false are all valid state
3440         (Ref.prototype.setState): We should do nothing for undefined stateDiff
3441         * resultsdbpy/resultsdbpy/view/static/library/js/Test.js: Added.
3442         (AssertFailedError):
3443         (Expect): Perform assertions during unit tests.
3444         (Expect.prototype.isType):
3445         (Expect.prototype.equalToValue):
3446         (Expect.prototype.equalToHtmlWithoutRef):
3447         (Expect.prototype.notEqualToValue):
3448         (Expect.prototype.greaterThan):
3449         (Expect.prototype.greaterThanOrEqualTo):
3450         (Expect.prototype.lessThan):
3451         (Expect.prototype.lessThanOrEqualTo):
3452         (TestSuite): Common TestSuite class for user to extend. 
3453         (TestSuite.prototype.expect):
3454         (TestSuite.prototype.sleep): Test will sleep for certain ms
3455         (TestSuite.prototype.waitForSignal): Wait until we receive a certain signal with timeout
3456         (TestSuite.prototype.waitForRefMounted): Wait until we receive ref object's onElementMount signal with timeout
3457         (TestSuite.prototype.waitForRefUnmounted): Wait until we receive ref object's onElementUnmount signal with timeout
3458         (TestSuite.prototype.waitForStateUpdated):Wait until we receive ref object's onStateUpdate signal with timeout
3459         (TestSuite.prototype.async.setup): Common interface for setup a test suite
3460         (TestSuite.prototype.async.clearUp): Common interface for clear up a test suite
3461         (getTestFucntionNames): Collect all the test method of a test instance.
3462         (TestResult):
3463         (TestResult.prototype.catchException):
3464         (async.getTestResult): Run the test and generate a TestResult object
3465         (TestController):
3466         (TestController.prototype.addResultHandler): Test controller will send notification of a test result to result handler
3467         (TestController.prototype.addSetupArgs): This gives some additional args for the common setup method for each test class, 
3468         it is the best place to setup something like a root element, a fake data source, etc
3469         (TestController.prototype.collect): This method used for collect the test classes.
3470         (TestController.prototype.async.collectFile): It will import the file as a module dynamicly and collect all the test classes that module export
3471         (TestController.prototype.async.runTest): It will run a test method of a test class
3472         (TestController.prototype.async.run): It will run all test or a test class or a test method
3473         * resultsdbpy/resultsdbpy/view/static/library/js/components/TestComponents.js: components for test app.
3474         * resultsdbpy/resultsdbpy/view/static/library/js/test/RefTest.js: Ref.js test cases.
3475         * resultsdbpy/resultsdbpy/view/static/library/js/test/index.html: Test app entry.
3476
3477 2019-09-24  Wenson Hsieh  <wenson_hsieh@apple.com>
3478
3479         FocusPreservationTests.ChangingFocusedNodeResetsFocusPreservationState triggers a debug assertion
3480         https://bugs.webkit.org/show_bug.cgi?id=202145
3481         <rdar://problem/51273128>
3482
3483         Reviewed by Tim Horton.
3484
3485         Fixes this API test to work on iPad as well as iPhone. Importantly, we show a popover when focusing
3486         select elements on iPad, which means that there is no -inputView present on WKContentView, and upon
3487         dismissing the form accessory view, the select element is still focused.
3488
3489         * TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
3490
3491 2019-09-25  Cathie Chen  <cathiechen@igalia.com>
3492
3493         Add Cathie Chen as WebKit committer
3494
3495         Unreviewed.
3496
3497         * Scripts/webkitpy/common/config/contributors.json:
3498
3499 2019-09-24  Alex Christensen  <achristensen@webkit.org>
3500
3501         Require a WebsiteDataStore when creating or resuming downloads
3502         https://bugs.webkit.org/show_bug.cgi?id=202081
3503
3504         Reviewed by Youenn Fablet.
3505
3506         * TestWebKitAPI/Tests/WebKitCocoa/DownloadProgress.mm:
3507         (-[DownloadProgressTestRunner startDownload:expectedLength:]):
3508
3509 2019-09-23  Zan Dobersek  <zdobersek@igalia.com>
3510
3511         run-web-platform-tests: remove support for in-repository manifest, expectation management
3512         https://bugs.webkit.org/show_bug.cgi?id=202037
3513
3514         Reviewed by Carlos Alberto Lopez Perez.
3515
3516         Instead of keeping wpt metadata inside the WebKit repository or have it
3517         generated on-the-fly, provide additional option flags for the
3518         run-web-platform-tests script that allows detailed specification of the
3519         metadata, manifest and include manifest locations, if necessary.
3520
3521         If the metadata location is not provided, the wptrunner tool will simply
3522         not rely on any metadata to adjust expected results. With no manifest
3523         path specified, the manifest will be generated inside the wpt checkout.
3524         If no include manifest is specified, all the tests will be initially
3525         selected for running (until they're possibly filtered through additional
3526         command line arguments).
3527
3528         * Scripts/webkitpy/common/config/ports_mock.py:
3529         (MockPort.run_bindings_tests_command):
3530         (MockPort.wpt_metadata_directory): Deleted.
3531         (MockPort.wpt_manifest_file): Deleted.
3532         * Scripts/webkitpy/port/base.py:
3533         (Port.default_results_directory):
3534         (Port.wpt_metadata_directory): Deleted.
3535         (Port.wpt_manifest_file): Deleted.
3536         * Scripts/webkitpy/w3c/wpt_runner.py:
3537         (parse_args):
3538         (WPTRunner.prepare_wpt_checkout):
3539         (WPTRunner.run):
3540         (WPTRunner._generate_metadata_directory): Deleted.
3541         (WPTRunner._wpt_run_paths): Deleted.
3542         * Scripts/webkitpy/w3c/wpt_runner_unittest.py:
3543         (WPTRunnerTest.TestInstance.__init__):
3544         (WPTRunnerTest.test_prepare_wpt_checkout_specified_path):
3545         (WPTRunnerTest.test_run):
3546         (WPTRunnerTest.test_run_with_specified_options):
3547         (WPTRunnerTest.test_run_with_args):
3548         (WPTRunnerTest.TestInstance.prepare_mock_files_for_run): Deleted.
3549         (WPTRunnerTest.test_generate_metadata_directory): Deleted.
3550
3551 2019-09-23  Fujii Hironori  <Hironori.Fujii@sony.com>
3552
3553         [Win][WebKitTestRunner] Implement EventSenderProxy::keyDown
3554         https://bugs.webkit.org/show_bug.cgi?id=201913
3555
3556         Reviewed by Ross Kirsling.
3557
3558         Implemented eventSender.keyDown for Windows WebKitTestRunner based
3559         on DumpRenderTree implementation.
3560
3561         There is a difference between them. Only WTR truns KF_UP and
3562         KF_REPEAT flags on for WM_KEYUP event.
3563         EventSenderProxy::dispatchMessage is used in WTR. It calls
3564         TranslateMessage, this introduces the difference. If I didn't turn
3565         those bits, TranslateMessage posts WM_CHAR even for WM_KEYUP.
3566         According the spec, WM_KEYUP needs those bits.
3567         <https://docs.microsoft.com/en-us/windows/win32/inputdev/wm-keyup>
3568         DRT doesn't need the those bits becasuse it doesn't use
3569         TranslateMessage for WM_KEYUP.
3570
3571         * WebKitTestRunner/win/EventSenderProxyWin.cpp:
3572         (WTR::makeKeyDataForScanCode): Added.
3573         (WTR::pumpMessageQueue): Added.
3574         (WTR::EventSenderProxy::keyDown): Implemented by using DRT code.
3575
3576 2019-09-23  Aakash Jain  <aakash_jain@apple.com>
3577
3578         [EWS] Rename CompileJSCOnly to CompileJSC
3579         https://bugs.webkit.org/show_bug.cgi?id=202118
3580
3581         Reviewed by Jonathan Bedard.
3582
3583         * BuildSlaveSupport/ews-build/factories.py:
3584         (JSCTestsFactory.__init__): Renamed CompileJSCOnly to CompileJSC.
3585         * BuildSlaveSupport/ews-build/steps.py:
3586         (CompileWebKit.evaluateCommand): Ditto.
3587         (AnalyzeCompileWebKitResults.start): Ditto.
3588         (CompileJSC): Changed step-name to 'compile-jsc' to better match with similar steps like 'compile-webkit'. 
3589         (CompileJSCToT): Ditto for 'compile-jsc-tot'.
3590         * BuildSlaveSupport/ews-build/steps_unittest.py: Renamed CompileJSCOnly to CompileJSC and CompileJSCOnlyToT to CompileJSCToT.
3591
3592 2019-09-23  Wenson Hsieh  <wenson_hsieh@apple.com>
3593
3594         [iOS] Drop animation when dragging images from Photos to WebKit2 Mail compose is incorrect
3595         https://bugs.webkit.org/show_bug.cgi?id=201674
3596         <rdar://problem/51250952>
3597
3598         Reviewed by Tim Horton.
3599
3600         Add a couple of new API tests to exercise the new image placeholder drop codepath, in addition to testing
3601         infrastructure to simulate the timing of drop animation delegate calls.
3602
3603         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3604         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3605         (-[NSArray _attachmentWithName:]):
3606         (-[TestWKWebView allBoundingClientRects:]):
3607
3608         Add some new API testing helper methods.
3609
3610         (TestWebKitAPI::targetedImageDragPreview):
3611         (TestWebKitAPI::TEST):
3612
3613         Add two new tests, to:
3614         (1) verify that images are dropped as attachment-backed placeholder image elements when the web view is editable
3615             and enables attachment elements, and
3616         (2) verify that when dropping an image taller than the web view, the bottom portion of the drop preview is
3617             clipped using the targeted preview parameter's visiblePath.
3618
3619         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
3620         (-[NSItemProvider registerDataRepresentationForTypeIdentifier:withData:]): Deleted.
3621         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
3622         * TestWebKitAPI/cocoa/NSItemProviderAdditions.h: Added.
3623         * TestWebKitAPI/cocoa/NSItemProviderAdditions.mm: Added.
3624
3625         Move some common helpers for registering data on a NSItemProvider to a separate file, so that it can be used in
3626         both WKAttachmentTests and DragAndDropTests.
3627
3628         (-[NSItemProvider registerDataRepresentationForTypeIdentifier:withData:]):
3629         (-[NSItemProvider registerDataRepresentationForTypeIdentifier:withData:loadingDelay:]):
3630         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
3631         (-[DragAndDropSimulator initWithWebView:]):
3632         (-[DragAndDropSimulator _concludeDropAndPerformOperationIfNecessary]):
3633         (-[DragAndDropSimulator clearExternalDragInformation]):
3634         (-[DragAndDropSimulator setExternalItemProviders:defaultDropPreviews:]):
3635
3636         Add a new method to allow tests to specify both a list of externally dragged item providers, as well as default
3637         targeted previews for each of the corresponding items. These default previews are used when invoking the drop
3638         interaction delegate's preview generation methods.
3639
3640         (-[DragAndDropSimulator addAnimations:]):
3641
3642         Not implemented yet; for now, this simply asserts.
3643
3644         (-[DragAndDropSimulator addCompletion:]):
3645
3646         Queues a completion handler, which is invoked when the drop animation for each item completes. Depending on the
3647         value of DragAndDropSimulator's -dropAnimationTiming, this may occur either before or after handling the drop.
3648         By default, these will be invoked after the drop completes, which represents the common case where data can be
3649         loaded quickly relative to the drop animation.
3650
3651         (-[DragAndDropSimulator _invokeDropAnimationCompletionBlocksAndConcludeDrop]):
3652         (-[DragAndDropSimulator _webView:dataInteractionOperationWasHandled:forSession:itemProviders:]):
3653
3654 2019-09-23  Jonathan Bedard  <jbedard@apple.com>
3655
3656         results.webkit.org: Collapse results with the same version name (Follow-up fix)
3657         https://bugs.webkit.org/show_bug.cgi?id=201779
3658
3659         Rubber-stamped by Aakash Jain.
3660
3661         * resultsdbpy/resultsdbpy/view/static/js/configuration.js:
3662         (Configuration.prototype.compare): Correctly compare constructed version names.
3663
3664 2019-09-16  Jiewen Tan  <jiewen_tan@apple.com>
3665
3666         [WebAuthn] LocalAuthenticator tests are failing on internal bots
3667         https://bugs.webkit.org/show_bug.cgi?id=201844
3668         <rdar://problem/54278693>
3669
3670         Reviewed by Brent Fulgham.
3671
3672         LocalAuthenticator tests utilize Keychain for mock testing. Unlike iOS simulator tests which
3673         each test runner is running in different simulator containers, all test runners are running
3674         in the same macOS container in macOS. Therefore, Keychain is shared among all test runners
3675         in macOS while it is not in iOS simulators. And therefore, race conditions would happen in
3676         macOS which make the current tests flaky given they don't consider race conditions.
3677
3678         This patch then makes each test generate a random credential, and thus no other tests would
3679         be able to access it, and therefore eliminate any race condition. To support this, a few new
3680         functionalities are introduced to the mock test infrastructure as well:
3681         1) TestRunner.cleanUpKeychain accepts a new parameter to more precisely identify an item.
3682         2) WebAuthenticationMockConfiguration.Local has a new member to uniquely select a credential
3683         for getAssertion ceremony when multiple presents.
3684
3685         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3686         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3687         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
3688         (WTR::TestRunner::cleanUpKeychain):
3689         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3690         * WebKitTestRunner/TestController.h:
3691         * WebKitTestRunner/TestInvocation.cpp:
3692         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3693         * WebKitTestRunner/TestController.cpp:
3694         (WTR::TestController::cleanUpKeychain):
3695         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3696         (WTR::TestController::cleanUpKeychain):
3697
3698 2019-09-20  Aakash Jain  <aakash_jain@apple.com>
3699
3700         [EWS] JSC queues should re-build ToT and compare results on build failure
3701         https://bugs.webkit.org/show_bug.cgi?id=201999
3702
3703         Reviewed by Jonathan Bedard.
3704
3705         * BuildSlaveSupport/ews-build/factories.py:
3706         (JSCTestsFactory.__init__): Do not add the UnApplyPatchIfRequired and CompileJSCOnlyToT step here, as
3707         these are dynamically added (if required) in steps.py in CompileWebKit.evaluateCommand() using addStepsAfterCurrentStep().
3708         Also setting skipUpload=False since we don't need to upload the archive for this queue. Building and testing is done in same build.
3709         * BuildSlaveSupport/ews-build/steps.py:
3710         (CompileWebKit.evaluateCommand): Add CompileJSCOnlyToT or CompileWebKitToT build-step based on 'group' property.
3711         (AnalyzeCompileWebKitResults.start): Ditto.
3712         (CompileJSCOnly.start): Set the 'group' property to 'jsc'.
3713         (CompileJSCOnlyToT.evaluateCommand): Over-ride evaluateCommand, so that base-class' (CompileWebKit) evaluateCommand is 
3714         not used, base class evaluateCommand adds build-steps dynamically.
3715
3716 2019-09-20  Keith Rollin  <krollin@apple.com>
3717
3718         Remove some support for < iOS 13
3719         https://bugs.webkit.org/show_bug.cgi?id=201967
3720         <rdar://problem/55504738>
3721
3722         Reviewed by Andy Estes.
3723
3724         Remove some support for iOS versions less than 13.0.
3725
3726         Update conditionals that reference __IPHONE_OS_VERSION_MIN_REQUIRED
3727         and __IPHONE_OS_VERSION_MAX_ALLOWED, assuming that they both have
3728         values >= 130000. This means that expressions like
3729         "__IPHONE_OS_VERSION_MIN_REQUIRED < 101300" are always False and
3730         "__IPHONE_OS_VERSION_MIN_REQUIRED >= 101300" are always True.
3731
3732         After version checks have been removed, there are some cases where the
3733         preprocessor conditional looks like "#if PLATFORM(MAC) ||
3734         PLATFORM(IOS_FAMILY)". These can be collapsed into "#if
3735         PLATFORM(COCOA)". This additional cleanup will be performed in a
3736         subsequent patch.
3737
3738         This removal is part of a series of patches effecting the removal of
3739         dead code for old versions of iOS. This particular pass involves
3740         changes in which Andy Estes was involved. These changes are isolated
3741         from other similar changes in order to facilitate the reviewing
3742         process.
3743
3744         * TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm: Removed.
3745
3746 2019-09-20  Alex Christensen  <achristensen@webkit.org>
3747
3748         Begin moving WebsiteDataStore setters to WebsiteDataStoreConfiguration
3749         https://bugs.webkit.org/show_bug.cgi?id=202025
3750
3751         Reviewed by Chris Dumez.
3752
3753         One expected change in behavior is that the resource load statistics directory is not created on startup with an ephemeral session any more
3754         because we call the constructor of WebsiteDataStoreConfiguration inside _WKWebsiteDataStoreConfiguration and set the default directory like we do the other directories.
3755
3756         * TestWebKitAPI/Tests/WebKitCocoa/StorageQuota.mm:
3757         * WebKitTestRunner/TestController.cpp:
3758         (WTR::TestController::websiteDataStore):
3759         (WTR::TestController::generatePageConfiguration):
3760
3761 2019-09-20  Keith Rollin  <krollin@apple.com>
3762
3763         Remove some support for < iOS 13
3764         https://bugs.webkit.org/show_bug.cgi?id=201973
3765         <rdar://problem/55506966>
3766
3767         Reviewed by Alex Christensen.
3768
3769         Remove some support for iOS versions less than 13.0.
3770
3771         Update conditionals that reference __IPHONE_OS_VERSION_MIN_REQUIRED
3772         and __IPHONE_OS_VERSION_MAX_ALLOWED, assuming that they both have
3773         values >= 130000. This means that expressions like
3774         "__IPHONE_OS_VERSION_MIN_REQUIRED < 101300" are always False and
3775         "__IPHONE_OS_VERSION_MIN_REQUIRED >= 101300" are always True.
3776
3777         This removal is part of a series of patches effecting the removal of
3778         dead code for old versions of iOS. This particular pass involves
3779         changes in which Chris Dumez was involved. These changes are isolated
3780         from other similar changes in order to facilitate the reviewing
3781         process.
3782
3783         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3784
3785 2019-09-19  Brent Fulgham  <bfulgham@apple.com>
3786
3787         [FTW] Enable WebKitTestRunner build
3788         https://bugs.webkit.org/show_bug.cgi?id=201996
3789
3790         Reviewed by Fujii Hironori.
3791
3792         It's time to start getting the test system up and running for FTW.
3793
3794         This patch does the following:
3795
3796         1. Adds relevant CMake changes to get things building.
3797         2. Adds a "--ftw" flag to the build scripts that will trigger a relevant build.
3798         3. Updates 'webkitpy' to recognize the 'ftw' port.
3799
3800         Note: Pixel tests are not yet supported.
3801
3802         * PlatformFTW.cmake: Build the WK2 test runner.
3803         * Scripts/build-webkit: Update to recognize the FTW port.
3804         * Scripts/webkitdirs.pm: Ditto.
3805         * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl: Ditto.
3806         * Scripts/webkitpy/common/config/ports.py: Ditto.
3807         * Scripts/webkitpy/common/config/ports_unittest.py: Ditto.
3808         * Scripts/webkitpy/common/version_name_map.py: Ditto.
3809         * Scripts/webkitpy/port/factory.py: Ditto.
3810         * Scripts/webkitpy/port/win.py: Ditto.
3811         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
3812         (WTR::InjectedBundlePage::dumpDOMAsWebArchive): Don't build or run this method
3813         on Windows.
3814         * WebKitTestRunner/PlatformFTW.cmake: Added.
3815         * WebKitTestRunner/PlatformWebView.h:
3816         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
3817         * WebKitTestRunner/win/TestInvocationDirect2D.cpp: Added.
3818         (WTR::TestInvocation::dumpPixelsAndCompareWithExpected): Add stub implementation.
3819
3820 2019-09-19  Fujii Hironori  <Hironori.Fujii@sony.com>
3821
3822         [Win][MiniBrowser] Use _com_ptr_t methods instead of calling QueryInterface explictly
3823         https://bugs.webkit.org/show_bug.cgi?id=201976
3824
3825         Reviewed by Don Olmstead.
3826
3827         This change consists of three refactorings:
3828         1. Replaced explicit QueryInterface with _com_ptr_t methods
3829         2. Replaced typedef with _COM_SMARTPTR_TYPEDEF macro
3830         3. Replaced WebCore's COMPtr with _com_ptr_t because it is not a public WebKit API
3831
3832         * MiniBrowser/win/MiniBrowserWebHost.cpp:
3833         (MiniBrowserWebHost::didFirstLayoutInFrame): Deleted.
3834         * MiniBrowser/win/MiniBrowserWebHost.h:
3835         (MiniBrowserWebHost::didFirstLayoutInFrame):
3836         * MiniBrowser/win/PrintWebUIDelegate.cpp:
3837         (getHandleFromWebView):
3838         (PrintWebUIDelegate::webViewPrintingMarginRect):
3839         (PrintWebUIDelegate::runModal):
3840         (PrintWebUIDelegate::createModalDialog):
3841         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
3842         (WebKitLegacyBrowserWindow::init):
3843         (WebKitLegacyBrowserWindow::setToDefaultPreferences):
3844         (WebKitLegacyBrowserWindow::showLastVisitedSites):
3845         (WebKitLegacyBrowserWindow::reload):
3846         (WebKitLegacyBrowserWindow::resetZoom):
3847         (WebKitLegacyBrowserWindow::zoomIn):
3848         (WebKitLegacyBrowserWindow::zoomOut):
3849         (WebKitLegacyBrowserWindow::showLayerTree):
3850         (WebKitLegacyBrowserWindow::print):
3851         * MiniBrowser/win/WebKitLegacyBrowserWindow.h:
3852         (WebKitLegacyBrowserWindow::privatePreferences):
3853         * MiniBrowser/win/WinMain.cpp:
3854         (wWinMain):
3855         * MiniBrowser/win/stdafx.h:
3856
3857 2019-09-19  Joanmarie Diggs  <jdiggs@igalia.com>
3858
3859         [GTK] Dependency hunspell-en-gb cannot be found on Fedora 30
3860         https://bugs.webkit.org/show_bug.cgi?id=202009
3861
3862         Update package name to hunspell-en-GB.
3863
3864         Reviewed by Carlos Alberto Lopez Perez.
3865
3866         * gtk/install-dependencies:
3867
3868 2019-09-19  Jonathan Bedard  <jbedard@apple.com>
3869
3870         results.webkit.org: Collapse results with the same version name
3871         https://bugs.webkit.org/show_bug.cgi?id=201779
3872
3873         Rubber-stamped by Aakash Jain.
3874
3875         * resultsdbpy/resultsdbpy/view/static/js/configuration.js:
3876         (Configuration.prototype.const.ending.this.version_name.substring):
3877         (Configuration.prototype.toKey): Prefer version_name over version number in key.
3878         (Configuration.prototype.compare): version_name comparison should always override version comparison.
3879         (Configuration.prototype.compareSDKs): Make SDK regex global.
3880         (Configuration.prototype.toParams): Remove E tag on version_name.
3881         (Configuration): Append E tag on the version_name based on the SDK.
3882         * resultsdbpy/resultsdbpy/view/static/js/timeline.js:
3883         (TimelineFromEndpoint.prototype.toString): Print version number with SDK.
3884
3885 2019-09-19  Ryan Haddad  <ryanhaddad@apple.com>
3886
3887         REGRESSION: [iOS 13?] TestWebKitAPI.SharedBufferTest.tryCreateArrayBufferLargeSegments is failing
3888         https://bugs.webkit.org/show_bug.cgi?id=201902
3889
3890         Unreviewed test gardening.
3891
3892         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp: Disable the test on iOS.
3893
3894 2019-09-19  Aakash Jain  <aakash_jain@apple.com>
3895
3896         [ews] Fix platform for JSC EWS
3897         https://bugs.webkit.org/show_bug.cgi?id=201997
3898
3899         Reviewed by Jonathan Bedard.
3900
3901         * BuildSlaveSupport/ews-build/config.json:
3902
3903 2019-09-19  Brent Fulgham  <bfulgham@apple.com>
3904
3905         Create InjectedBundle SPI to better support NSSecureCoding
3906         https://bugs.webkit.org/show_bug.cgi?id=201810
3907         <rdar://problem/55265713>
3908
3909         The encoding/decoding routines used by WebKit’s InjectedBundles are based on NSCoding.
3910         While we have changed WebKit internals to use NSSecureCoding, there are a number of
3911         injected bundles that need to serialize custom classes between the InjectedBundle and
3912         the relevant WebKit UIProcess.
3913
3914         We need to lock down this communications channel by enforcing NSSecureCoding.
3915
3916         This patch creates new SPI to allow the UIProcess to specify classes that it will accept
3917         in messages from the WebContet Process (and Injected Bundle).
3918
3919         It adds the following property to the WKProcessPoolConfiguration:
3920
3921             @property (nonatomic, copy) NSSet<Class> *customClassesForParameterCoder;
3922
3923         If no custom classes are specified, the standard serialization primitives are supported:
3924             NSArray, NSData, NSDate, NSDictionary, NSNull, NSNumber, NSSet, NSString,
3925             NSTimeZone, NSURL, and NSUUID.
3926
3927         Reviewed by Brady Eidson.
3928
3929         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3930         * TestWebKitAPI/Tests/WebKitCocoa/BundleFormDelegate.mm: Added.
3931         (-[BundleFormDelegateRemoteObject didGetFocus]):
3932         (-[FormInputDelegate _webView:decidePolicyForFocusedElement:]):
3933         (TEST):
3934         * TestWebKitAPI/Tests/WebKitCocoa/BundleFormDelegatePlugIn.mm: Added.
3935         (-[BundleFormDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
3936         (-[BundleFormDelegatePlugIn _webProcessPlugInBrowserContextController:willBeginInputSessionForElement:inFrame:userIsInteracting:]):
3937         (-[BundleFormDelegatePlugIn _webProcessPlugInBrowserContextController:didFocusTextField:inFrame:]):
3938         * TestWebKitAPI/Tests/WebKitCocoa/BundleFormDelegateProtocol.h: Copied from Tools/TestWebKitAPI/WKWebViewConfigurationExtras.h.
3939         * TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
3940         (TEST):
3941         * TestWebKitAPI/WKWebViewConfigurationExtras.h:
3942         * TestWebKitAPI/WKWebViewConfigurationExtras.mm:
3943         (+[WKWebViewConfiguration _test_configurationWithTestPlugInClassName:configureJSCForTesting:]):
3944         (+[WKWebViewConfiguration _test_configurationWithTestPlugInClassName:configureJSCForTesting:andCustomParameterClasses:]):
3945
3946 2019-09-18  Zhifei Fang  <zhifei_fang@apple.com>
3947
3948         [results.webkit.org] fix missing col classes
3949         https://bugs.webkit.org/show_bug.cgi?id=201949
3950
3951         Reviewed by Jonathan Bedard.
3952
3953         * resultsdbpy/resultsdbpy/view/static/library/css/webkit.css:
3954         (@media screen and (min-width: 768px)):
3955         (.row):
3956         (.col-1):
3957         (.col-2):
3958         (.col-3):
3959         (.col-4):
3960         (.col-5):
3961         (.col-6):
3962         (.col-7):
3963         (.col-8):
3964         (.col-9):
3965         (.col-10):
3966         (.col-11):
3967         (.col-12):
3968         (@media screen and (min-width: 600px)):
3969
3970 2019-09-18  Ryan Haddad  <ryanhaddad@apple.com>
3971
3972         Update flakiness dashboard configuration for iOS 13 queues
3973         https://bugs.webkit.org/show_bug.cgi?id=201711
3974
3975         Reviewed by Jonathan Bedard.
3976
3977         * TestResultServer/static-dashboards/builders.jsonp:
3978
3979 2019-09-18  Adrian Perez de Castro  <aperez@igalia.com>
3980
3981         [WPE][GTK] Update build environments to use libwpe+WPEBackend-fdo 1.4.0
3982         https://bugs.webkit.org/show_bug.cgi?id=201915
3983
3984         Reviewed by Michael Catanzaro.
3985
3986         * flatpak/org.webkit.WPEModules.yaml: Bump versions of libwpe and WPEBackend-fdo to 1.4.0
3987         * gtk/jhbuild.modules: Ditto.
3988         * wpe/jhbuild.modules: Ditto.
3989
3990 2019-09-17  Fujii Hironori  <Hironori.Fujii@sony.com>
3991
3992         [Win][MiniBrowser] Remove unused DOMDefaultImpl.cpp
3993         https://bugs.webkit.org/show_bug.cgi?id=201867
3994
3995         Reviewed by Darin Adler.
3996
3997         * MiniBrowser/win/CMakeLists.txt: Removed DOMDefaultImpl.cpp.
3998         * MiniBrowser/win/DOMDefaultImpl.cpp: Removed.
3999         * MiniBrowser/win/DOMDefaultImpl.h: Removed.
4000         * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp:
4001
4002 2019-09-17  Dean Jackson  <dino@apple.com>
4003
4004         Remove the "Show Link Previews" and "Hide Link Previews" action menus in the preview platter
4005         https://bugs.webkit.org/show_bug.cgi?id=201864
4006         <rdar://55190038>
4007
4008         Reviewed by Simon Fraser.
4009
4010         Test for the suggested actions.
4011
4012         * TestWebKitAPI/Tests/WebKitCocoa/ContextMenus.mm:
4013         (-[TestContextMenuSuggestedActionsUIDelegate webView:contextMenuConfigurationForElement:completionHandler:]):
4014         (-[TestContextMenuSuggestedActionsUIDelegate webView:contextMenuWillPresentForElement:]):
4015         (TEST):
4016
4017 2019-09-17  Jonathan Bedard  <jbedard@apple.com>
4018
4019         results.webkit.org results bubbles' tooltips should include SDK information
4020         https://bugs.webkit.org/show_bug.cgi?id=201823
4021
4022         Rubber-stamped by Aakash Jain.
4023
4024         * resultsdbpy/resultsdbpy/view/static/js/configuration.js:
4025         (Configuration.prototype.compare): Like the Python instance of this class,
4026         support using null as a wildcard.
4027         (Configuration.prototype.compareSDKs): Ditto.
4028         * resultsdbpy/resultsdbpy/view/static/js/timeline.js:
4029         (TimelineFromEndpoint.prototype.render.onDotEnterFactory): Construct a configuration
4030         object from all bits of data used to construct a given bubble.
4031         (TimelineFromEndpoint.prototype.render):
4032
4033 2019-09-17  Keith Rollin  <krollin@apple.com>
4034
4035         Remove some support for < iOS 12
4036         https://bugs.webkit.org/show_bug.cgi?id=201851
4037         <rdar://problem/55422044>
4038
4039         Reviewed by Jiewen Tan and Alexey Proskuryakov.
4040
4041         Remove some support for iOS versions less than 12.0.
4042
4043         Update conditionals that reference __IPHONE_OS_VERSION_MIN_REQUIRED
4044         and __IPHONE_OS_VERSION_MAX_ALLOWED, assuming that they both have
4045         values >= 120000. This means that expressions like
4046         "__IPHONE_OS_VERSION_MIN_REQUIRED < 101200" are always False and
4047         "__IPHONE_OS_VERSION_MIN_REQUIRED >= 101200" are always True.
4048
4049         This removal is part of a series of patches effecting such removal.
4050
4051         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
4052         (WTR::installFakeHelvetica):
4053
4054 2019-09-17  David Kilzer  <ddkilzer@apple.com>
4055
4056         run-webkit-tests: Driver.do_post_tests_work() is never called when `stop_when_done` is true in Driver.run_test()
4057         <https://webkit.org/b/201873>
4058
4059         Reviewed by Jonathan Bedard.
4060
4061         * Scripts/webkitpy/port/driver.py:
4062         (Driver.run_test): Call self.do_post_tests_work() when a test
4063         shard has completed, but didn't crash or time out.
4064
4065 2019-09-17  Chris Dumez  <cdumez@apple.com>
4066
4067         REGRESSION (r249923): ASSERTION FAILED: sessionID == WebProcess::singleton().sessionID() in WebCore::SWClientConnection *WebKit::WebServiceWorkerProvider::existingServiceWorkerConnectionForSession(PAL::SessionID)
4068         https://bugs.webkit.org/show_bug.cgi?id=201859
4069         <rdar://problem/55426742>
4070
4071         Reviewed by Alex Christensen.
4072
4073         Update API test to use WKWebsiteDataStoreRef C API to do private browsing instead of using
4074         the legacy WKPreferencesSetPrivateBrowsingEnabled() C API.
4075
4076         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
4077         (TestWebKitAPI::TEST):
4078
4079 2019-09-17  Ryan Haddad  <ryanhaddad@apple.com>
4080
4081         Bring up queues for iOS 13
4082         https://bugs.webkit.org/show_bug.cgi?id=201710
4083
4084         Reviewed by Jonathan Bedard.
4085
4086         * BuildSlaveSupport/build.webkit.org-config/config.json: Move iOS 12 queues to iOS 13.
4087         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js: Ditto.
4088         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
4089         (WebKitBuildbot):
4090         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
4091         (table.queue-grid tr.platform.ios-simulator-12 img.logo): Deleted.
4092         (table.queue-grid tr.platform.ios-12 img.logo): Deleted.
4093         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Update unit tests.
4094         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
4095         (_should_file_trigger_build):
4096         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
4097         (ShouldBuildTest):
4098         (ShouldBuildTest.test_should_build):
4099         * BuildSlaveSupport/ews-build/config.json: Move iOS 12 queues to iOS 13.
4100
4101 2019-09-17  Truitt Savell  <tsavell@apple.com>
4102
4103         Unreviewed, rolling out r249950.
4104
4105         Broke the iOS build.
4106
4107         Reverted changeset:
4108
4109         "Remove the "Show Link Previews" and "Hide Link Previews"
4110         action menus in the preview platter"
4111         https://bugs.webkit.org/show_bug.cgi?id=201864
4112         https://trac.webkit.org/changeset/249950
4113
4114 2019-09-17  Dean Jackson  <dino@apple.com>
4115
4116         Remove the "Show Link Previews" and "Hide Link Previews" action menus in the preview platter
4117         https://bugs.webkit.org/show_bug.cgi?id=201864
4118         <rdar://55190038>
4119
4120         Reviewed by Simon Fraser.
4121
4122         Test for the suggested actions.
4123
4124         * TestWebKitAPI/Tests/WebKitCocoa/ContextMenus.mm:
4125         (-[TestContextMenuSuggestedActionsUIDelegate webView:contextMenuConfigurationForElement:completionHandler:]):
4126         (-[TestContextMenuSuggestedActionsUIDelegate webView:contextMenuWillPresentForElement:]):
4127         (TEST):
4128
4129 2019-09-16  Alex Christensen  <achristensen@webkit.org>
4130
4131         Remove "gopher" from list of special schemes in URLParser
4132         https://bugs.webkit.org/show_bug.cgi?id=201852
4133
4134         Reviewed by Simon Fraser.
4135
4136         * TestWebKitAPI/Tests/WTF/URLParser.cpp:
4137         (TestWebKitAPI::TEST_F):
4138         * TestWebKitAPI/Tests/WebCore/URLParserTextEncoding.cpp:
4139         (TestWebKitAPI::TEST_F):
4140         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
4141
4142 2019-09-16  Jonathan Bedard  <jbedard@apple.com>
4143
4144         results.webkit.org: Shard result archives
4145         https://bugs.webkit.org/show_bug.cgi?id=201734
4146
4147         Reviewed by Dewei Zhu.
4148
4149         Cassandra advertises being able to store up to 2 GB in a single blob-storage row.
4150         In practice, this usually doesn't work according to the Cassandra developers,
4151         large blobs should be broken up into shards of, at most, 10 MB.
4152
4153         * resultsdbpy/resultsdbpy/model/archive_context.py:
4154         (ArchiveContext):
4155         (ArchiveContext.ArchiveMetaDataByCommit): Point to the archive shards by hash.
4156         (ArchiveContext.ArchiveMetaDataByCommit.unpack):
4157         (ArchiveContext.ArchiveChunks): Store archive shards, indexed by hash.
4158         (ArchiveContext.__init__):
4159         (ArchiveContext.register): When saving archives, save a reference hash and then
4160         shard the actual archive data before saving.
4161         (ArchiveContext.find_archive): Search for archive by meta-data, then reconstruct
4162         the archive. Raise an exception if we determine that memory usage is a problem.
4163         (ArchiveContext.ArchivesByCommit): Deleted.
4164         (ArchiveContext.ArchivesByCommit.unpack): Deleted.
4165         * resultsdbpy/resultsdbpy/model/archive_context_unittest.py:
4166         (ArchiveContextTest.init_database): Allow configuration and archive to be specified.
4167         (ArchiveContextTest):
4168         (ArchiveContextTest.test_large_archive): Test archive sharding.
4169
4170 2019-09-16  Jiewen Tan  <jiewen_tan@apple.com>
4171
4172         [WebAuthn] Support more than two FIDO protocol versions
4173         https://bugs.webkit.org/show_bug.cgi?id=198408
4174         <rdar://problem/51292176>
4175
4176         Reviewed by Chris Dumez.
4177
4178         Adds a new test case that includes a FIDO_2_1_PRE version string.
4179
4180         * TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:
4181         (TestWebKitAPI::TEST):
4182         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
4183
4184 2019-09-16  Jonathan Bedard  <jbedard@apple.com>
4185
4186         results.webkit.org: Configurations should be branch specific
4187         https://bugs.webkit.org/show_bug.cgi?id=201561
4188
4189         Reviewed by Dewei Zhu.
4190
4191         Partition configurations by branch in both Redis and Cassandra.
4192
4193         * resultsdbpy/resultsdbpy/controller/upload_controller.py:
4194         (UploadController.suites): Allow the user to specify branches while listing suites.
4195         * resultsdbpy/resultsdbpy/model/archive_context.py:
4196         (ArchiveContext.register): Register each configuration with a branch.
4197         * resultsdbpy/resultsdbpy/model/configuration_context.py:
4198         (ConfigurationContext.ByPlatform): Index by branch.
4199         (ConfigurationContext.ByPlatformAndVersion): Ditto.
4200         (ConfigurationContext.ByArchitecture): Ditto.
4201         (ConfigurationContext.ByModel): Ditto.
4202         (ConfigurationContext.__init__): Populate Redis cache with branch.
4203         (ConfigurationContext._convert_to_redis_key): Accept branch in Redis key.
4204         (ConfigurationContext._register_in_redis): Register configuration with branch.
4205         (ConfigurationContext.register_configuration): Ditto.
4206         (ConfigurationContext.search_for_configuration): Search for configuration with branch.
4207         (ConfigurationContext.search_for_recent_configuration): Ditto.
4208         (ConfigurationContext.select_from_table_with_configurations): Ditto.
4209         * resultsdbpy/resultsdbpy/model/configuration_context_unittest.py:
4210         (ConfigurationContextTest.register_configurations): Register with branch.
4211         (ConfigurationContextTest.test_repopulate_recent): Construct ConfigurationContext with
4212         CommitContext object.
4213         * resultsdbpy/resultsdbpy/model/upload_context.py:
4214         (UploadContext.SuitesByConfiguration): Index by branch.
4215         (UploadContext.upload_test_results): Register each configuration with a branch.
4216         (UploadContext.find_suites): Pass branch to search for configurations.
4217         * resultsdbpy/resultsdbpy/view/static/js/drawer.js: Check for new configurations when the branch is changed.
4218         * resultsdbpy/resultsdbpy/view/templates/suite_results.html: Add branch to suites query.
4219
4220 2019-09-16  David Kilzer  <ddkilzer@apple.com>
4221
4222         check-webkit-style: Fix warning message for std::make_unique<typename[]>
4223         <https://webkit.org/b/201818>
4224
4225         Reviewed by Darin Adler.
4226
4227         * Scripts/webkitpy/style/checkers/cpp.py:
4228         (check_wtf_make_unique): Emit different error message when using
4229         std::make_unique<>() to create an array.  Personalize the error
4230         message by including the original type name, which also
4231         demonstrates that WTF::makeUniqueArray<>() does not need square
4232         brackets for its typename.
4233         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
4234         (WebKitStyleTest.test_wtf_make_unique): Add test.
4235         (WebKitStyleTest.test_wtf_make_unique_array): Ditto.
4236
4237 2019-09-16  Andres Gonzalez  <andresg_22@apple.com>
4238
4239         Rename [WebAccessibilityObjectWrapper _accessibilityInsertText] to accessibilityInsertText to match accessibility client.
4240         https://bugs.webkit.org/show_bug.cgi?id=201820
4241
4242         Reviewed by Chris Fleizach.
4243
4244         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
4245         (AccessibilityUIElement::insertText):
4246         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
4247         (AccessibilityUIElement::insertText):
4248         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
4249         (WTR::AccessibilityUIElement::insertText):
4250         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
4251         (WTR::AccessibilityUIElement::insertText):
4252
4253 2019-09-16  David Kilzer  <ddkilzer@apple.com>
4254