Create AVFoundationSoftLink.{h,mm} to reduce duplicate code
[WebKit-https.git] / Tools / ChangeLog
1 2019-04-23  Eric Carlson  <eric.carlson@apple.com>
2
3         Create AVFoundationSoftLink.{h,mm} to reduce duplicate code
4         https://bugs.webkit.org/show_bug.cgi?id=197171
5         <rdar://problem/47454979>
6
7         Reviewed by Youenn Fablet.
8
9         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
10         * TestWebKitAPI/Tests/WebCore/cocoa/AVFoundationSoftLinkTest.mm: Added.
11         (TestWebKitAPI::TEST):
12
13 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
14
15         [ews-build] Add unit tests for UnApplyPatchIfRequired
16         https://bugs.webkit.org/show_bug.cgi?id=197197
17
18         Reviewed by Lucas Forschler.
19
20         * BuildSlaveSupport/ews-build/steps_unittest.py:
21         (TestUnApplyPatchIfRequired):
22         (TestUnApplyPatchIfRequired.test_success):
23         (TestUnApplyPatchIfRequired.test_failure):
24         (TestUnApplyPatchIfRequired.test_skip):
25
26 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
27
28         [ews-build] Add unit tests for CleanWorkingDirectory
29         https://bugs.webkit.org/show_bug.cgi?id=197195
30
31         Reviewed by Lucas Forschler.
32
33         * BuildSlaveSupport/ews-build/steps_unittest.py:
34         (TestCleanWorkingDirectory):
35         (TestCleanWorkingDirectory.test_success):
36         (TestCleanWorkingDirectory.test_failure):
37
38 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
39
40         [ews-build] Use explicit imports instead of wildcard imports
41         https://bugs.webkit.org/show_bug.cgi?id=197194
42
43         Reviewed by Lucas Forschler.
44
45         * BuildSlaveSupport/ews-build/factories.py:
46         * BuildSlaveSupport/ews-build/loadConfig.py:
47         * BuildSlaveSupport/ews-build/steps_unittest.py:
48
49 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
50
51         [ews-build] Add unit tests for DownloadBuiltProduct
52         https://bugs.webkit.org/show_bug.cgi?id=197193
53
54         Reviewed by Lucas Forschler.
55
56         * BuildSlaveSupport/ews-build/steps_unittest.py:
57         (TestDownloadBuiltProduct):
58         (TestDownloadBuiltProduct.setUp):
59         (TestDownloadBuiltProduct.tearDown):
60         (TestDownloadBuiltProduct.test_success):
61         (TestDownloadBuiltProduct.test_failure):
62
63 2019-04-23  Aakash Jain  <aakash_jain@apple.com>
64
65         [ews-app] Exception while loading status-bubble when no build step has started
66         https://bugs.webkit.org/show_bug.cgi?id=196676
67
68         Reviewed by Lucas Forschler.
69
70         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
71         (StatusBubble.get_build_timestamp): Check if build step is present before accessing its timestamp.
72
73 2019-04-23  Stephan Szabo  <stephan.szabo@sony.com>
74
75         [PlayStation] Support running of JSC tests on remote playstation devices
76         https://bugs.webkit.org/show_bug.cgi?id=197170
77
78         Reviewed by Ross Kirsling.
79
80         Script changes
81
82         * Scripts/run-javascriptcore-tests:
83         (runJSCStressTests): Pass arguments for playstation to
84         run-jsc-stress-tests
85         * Scripts/run-jsc-stress-tests:
86         Handle $hostOS=="playstation" for determineArchitecture, turning
87         off $isFTLPlatform and runProfiler and defaulting test writer.
88         * Scripts/webkitdirs.pm:
89         (jscPath): PlayStation WebKit executables have .elf extension
90         (executableProductDir): PlayStation builds on Windows hosts but
91         uses bin directory rather than bin64/bin32 for executable output
92         location.
93         * Scripts/webkitruby/jsc-stress-test-writer-playstation.rb: Added.
94
95 2019-04-23  Don Olmstead  <don.olmstead@sony.com>
96
97         [CMake][Win] Use target oriented design for WebKit
98         https://bugs.webkit.org/show_bug.cgi?id=197173
99
100         Reviewed by Alex Christensen.
101
102         * TestWebKitAPI/PlatformWin.cmake: Add WebKitFrameworkHeaders as a dependency.
103         * TestWebKitAPI/Tests/WebKit/curl/Certificates.cpp: Remove unused header.
104
105 2019-04-23  Chris Dumez  <cdumez@apple.com>
106
107         [Process-Swap-On-Navigation] WebKit hangs when going back to a form submission's page due to Process-Swap-On-Navigation on iOS 12.2 and higher
108         https://bugs.webkit.org/show_bug.cgi?id=197097
109         <rdar://problem/50048318>
110
111         Reviewed by Alex Christensen.
112
113         Add API test coverage.
114
115         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
116         (-[PSONScheme webView:startURLSchemeTask:]):
117
118 2019-04-23  Carlos Garcia Campos  <cgarcia@igalia.com>
119
120         [ATK] Implement AtkComponentIface scroll_to methods
121         https://bugs.webkit.org/show_bug.cgi?id=196856
122
123         Reviewed by Michael Catanzaro.
124
125         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
126         (WTR::AccessibilityUIElement::scrollToMakeVisible): Call atk_component_scroll_to().
127         (WTR::AccessibilityUIElement::scrollToGlobalPoint): Call atk_component_scroll_to_point().
128         * gtk/jhbuild.modules: Bump atk, at-spi2-core and at-spi2-atk to their latest stable version.
129
130 2019-04-22  Aakash Jain  <aakash_jain@apple.com>
131
132         [ews-build] Improve summary for UploadBuiltProduct step
133         https://bugs.webkit.org/show_bug.cgi?id=197182
134
135         Reviewed by Lucas Forschler.
136
137         * BuildSlaveSupport/ews-build/steps.py:
138         (UploadBuiltProduct): Added descriptionDone.
139         (UploadBuiltProduct.getResultSummary): Overrided getResultSummary.
140         * BuildSlaveSupport/ews-build/steps_unittest.py:
141         (TestUploadBuiltProduct.test_success): Updated unit-test.
142         (TestUploadBuiltProduct.test_failure): Added unit-test for failure case.
143
144 2019-04-22  Aakash Jain  <aakash_jain@apple.com>
145
146         [ews-build] Trigger queues only after uploading the archive
147         https://bugs.webkit.org/show_bug.cgi?id=197180
148
149         Reviewed by Lucas Forschler.
150
151         * BuildSlaveSupport/ews-build/factories.py:
152         (Factory.__init__):
153         (BuildFactory.__init__): Remove trigger step from factories.
154         (BuildFactory.propertiesToPassToTriggers): Deleted.
155         * BuildSlaveSupport/ews-build/steps.py:
156         (ConfigureBuild.__init__): Confiure triggers property.
157         (Trigger): Step to trigger other queues.
158         (Trigger.propertiesToPassToTriggers): Method to construct properties to pass to triggerred builds.
159         (UploadBuiltProduct.finished): Trigger builds after upload is successful.
160
161 2019-04-22  Alex Christensen  <achristensen@webkit.org>
162
163         Deprecate WKContextCreateWithInjectedBundlePath
164         https://bugs.webkit.org/show_bug.cgi?id=197169
165
166         Reviewed by Youenn Fablet.
167
168         * TestWebKitAPI/PlatformUtilities.cpp:
169         (TestWebKitAPI::Util::createContextWithInjectedBundle):
170         Use WKContextCreateWithConfiguration instead of WKContextCreateWithInjectedBundlePath after having set its injected bundle path.
171
172 2019-04-22  Alex Christensen  <achristensen@webkit.org>
173
174         REGRESSION(r230681) Do not use stored credentials if WKBundlePageResourceLoadClient.shouldUseCredentialStorage returns false
175         https://bugs.webkit.org/show_bug.cgi?id=197093
176         <rdar://problem/49708268>
177
178         Reviewed by Chris Dumez.
179
180         Add a test that does two loads.  The first load shouldUseCredentialStorage returns true and we provide a persistent credential.
181         The second load shouldUseCredentialStorage returns false and we verify that a challenge is received with no suggested credential.
182         We also need to make the TCPServer able to handle more than one connection because we need these two loads to come from the same protection space,
183         and our current Cocoa implementation of NetworkSession uses two NSURLSessions that don't share a connection cache, one for loads with credentials
184         and one for loads without credentials, so there are two TCP connections to the same server in this test.
185
186         * TestWebKitAPI/TCPServer.cpp:
187         (TestWebKitAPI::TCPServer::TCPServer):
188         (TestWebKitAPI::TCPServer::~TCPServer):
189         (TestWebKitAPI::TCPServer::socketBindListen):
190         (TestWebKitAPI::TCPServer::waitForAndReplyToRequests): Deleted.
191         * TestWebKitAPI/TCPServer.h:
192         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
193         * TestWebKitAPI/Tests/WebKitCocoa/BasicProposedCredentialPlugIn.mm: Added.
194         (-[BasicProposedCredentialPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
195         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
196         (respondWithChallengeThenOK):
197         (TestWebKitAPI::TEST):
198         (-[ProposedCredentialDelegate webView:didFinishNavigation:]):
199         (-[ProposedCredentialDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
200         (TEST):
201
202 2019-04-22  Chris Dumez  <cdumez@apple.com>
203
204         Delayed WebProcessLaunch may break the _relatedWebView SPI
205         https://bugs.webkit.org/show_bug.cgi?id=197160
206
207         Reviewed by Alex Christensen.
208
209         Add API test coverage.
210
211         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
212
213 2019-04-22  Dean Johnson  <dean_johnson@apple.com>
214
215         Use curl to download packages for webkitpy autoinstaller
216         https://bugs.webkit.org/show_bug.cgi?id=197164
217
218         Reviewed by Darin Adler.
219
220         * Scripts/webkitpy/common/system/autoinstall.py:
221         (AutoInstaller._download): Use curl(1) to download packages necessary for
222         webkitpy/thirdparty/autoinstalled since Python2's urllib2 module can result in unnecessary
223         errors which are not present when using curl(1).
224
225 2019-04-22  Chris Dumez  <cdumez@apple.com>
226
227         Unreviewed, rolling out r244502.
228
229         Caused crashes on the bots
230
231         Reverted changeset:
232
233         "Delayed WebProcessLaunch may break the _relatedWebView SPI"
234         https://bugs.webkit.org/show_bug.cgi?id=197160
235         https://trac.webkit.org/changeset/244502
236
237 2019-04-22  Ryan Haddad  <ryanhaddad@apple.com>
238
239         Unreviewed, rolling out r244437.
240
241         Still breaks internal tests.
242
243         Reverted changeset:
244
245         "InjectedBundle parameters often need initialization function
246         called before unarchiving"
247         https://bugs.webkit.org/show_bug.cgi?id=189709
248         https://trac.webkit.org/changeset/244437
249
250 2019-04-22  Aakash Jain  <aakash_jain@apple.com>
251
252         [ews-build] Use singular verb in failure description in case of single api test failure
253         https://bugs.webkit.org/show_bug.cgi?id=197013
254
255         Reviewed by Lucas Forschler.
256
257         * BuildSlaveSupport/ews-build/steps.py:
258         (AnalyzeAPITestsResults.analyzeResults):
259
260 2019-04-22  Chris Dumez  <cdumez@apple.com>
261
262         Delayed WebProcessLaunch may break the _relatedWebView SPI
263         https://bugs.webkit.org/show_bug.cgi?id=197160
264
265         Reviewed by Alex Christensen.
266
267         Add API test coverage.
268
269         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
270
271 2019-04-22  Carlos Garcia Campos  <cgarcia@igalia.com>
272
273         REGRESSION(r241289): [GTK] accessibility/removed-continuation-element-causes-crash.html and accessibility/removed-anonymous-block-child-causes-crash.html crashes
274         https://bugs.webkit.org/show_bug.cgi?id=194630
275
276         Reviewed by Michael Catanzaro.
277
278         Return early from getAttributeSet() is passed in accessible is nullptr.
279
280         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
281
282 2019-04-21  Wenson Hsieh  <wenson_hsieh@apple.com>
283
284         Defer EditorState updates until the next layer tree flush in a few additional circumstances
285         https://bugs.webkit.org/show_bug.cgi?id=197145
286         <rdar://problem/50078170>
287
288         Reviewed by Darin Adler.
289
290         Adjusts several editing API tests to wait for a presentation update following a selection change, programmatic
291         focus, or showing the font manager.
292
293         * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
294         (TestWebKitAPI::TEST):
295         * TestWebKitAPI/Tests/WebKitCocoa/WKContentViewTargetForAction.mm:
296         (TEST):
297         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
298         (TestWebKitAPI::TEST):
299
300 2019-04-21  Brian Burg  <bburg@apple.com>
301
302         WebDriver: add hooks to make it possible to easily run WPT WebDriver web server by itself
303         https://bugs.webkit.org/show_bug.cgi?id=197125
304         <rdar://problem/50061468>
305
306         Reviewed by Darin Adler.
307
308         Sometimes I want to run wptserve independently of tests. Make it easier to script that
309         using this class rather than making our own ./wpt serve invocation.
310
311         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
312         (WebDriverW3CWebServer):
313         (WebDriverW3CWebServer.document_root): Expose this to clients.
314         (WebDriverW3CWebServer.wait): Add a method that blocks until the server dies.
315
316         (WebDriverW3CWebServer.__enter__):
317         (WebDriverW3CWebServer.__exit__):
318         Make it possible to use the web server with a 'with' statement.
319
320 2019-04-20  Don Olmstead  <don.olmstead@sony.com>
321
322         [CMake][Win] Use target oriented design for WebKitLegacy
323         https://bugs.webkit.org/show_bug.cgi?id=197112
324
325         Reviewed by Konstantin Tokarev.
326
327         Fix includes and libraries for DumpRenderTree after changes to WebKitLegacy targets.
328
329         * DumpRenderTree/CMakeLists.txt:
330         * DumpRenderTree/PlatformWin.cmake:
331         * DumpRenderTree/win/EventSender.cpp:
332
333 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
334
335         Update text for old EWS submit button
336         https://bugs.webkit.org/show_bug.cgi?id=197140
337
338         Reviewed by Alexey Proskuryakov.
339
340         * QueueStatusServer/templates/statusbubble.html:
341
342 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
343
344         [ews-app] New EWS should poll bugzilla more frequently
345         https://bugs.webkit.org/show_bug.cgi?id=197138
346
347         Reviewed by Alexey Proskuryakov.
348
349         * BuildSlaveSupport/ews-app/ews/fetcher.py:
350         (FetchLoop.__init__):
351
352 2019-04-20  Aakash Jain  <aakash_jain@apple.com>
353
354         [ews-app] Submit to EWS buttons are not aligned properly with status-bubbles
355         https://bugs.webkit.org/show_bug.cgi?id=197139
356
357         Reviewed by Alexey Proskuryakov.
358
359         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
360         * QueueStatusServer/templates/statusbubble.html:
361
362 2019-04-20  Chris Dumez  <cdumez@apple.com>
363
364         Unreviewed, fix iOS build with recent SDKs.
365
366         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
367
368 2019-04-19  Keith Miller  <keith_miller@apple.com>
369
370         Add script to merge run_benchmark jsons
371         https://bugs.webkit.org/show_bug.cgi?id=197107
372
373         Reviewed by Michael Saboff.
374
375         The script basically recursively decends through all json objects until it gets
376         to an array or JSON primitive and concats or takes the first value, respectively.
377
378         This patch also adds +x bits to the compare-results script so it
379         can be run directly from the command line. I had to add a new line so that svn
380         will accept the change... yay svn!
381
382         * Scripts/compare-results:
383         * Scripts/merge-result-jsons: Added.
384         (readJSONFile):
385         (deepAppend):
386         (mergeJSONs):
387         (main):
388
389 2019-04-18  Ryosuke Niwa  <rniwa@webkit.org>
390
391         Crash in FrameLoader::stopAllLoaders via [WebView dealloc] inside ~ObjCEventListener
392         https://bugs.webkit.org/show_bug.cgi?id=197079
393
394         Reviewed by Darin Adler.
395
396         Added a regression test. It hits a slightly different backtrace but of the same class of issues.
397
398         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
399         * TestWebKitAPI/Tests/WebKitLegacy/mac/DeallocWebViewInEventListener.mm: Added.
400
401 2019-04-18  Commit Queue  <commit-queue@webkit.org>
402
403         Unreviewed, rolling out r244434.
404         https://bugs.webkit.org/show_bug.cgi?id=197089
405
406         caused 1 API test failure (Requested by zalan on #webkit).
407
408         Reverted changeset:
409
410         "Regression (r244291): Broken API Test
411         AutoLayoutRenderingProgressRelativeOrdering"
412         https://bugs.webkit.org/show_bug.cgi?id=196948
413         https://trac.webkit.org/changeset/244434
414
415 2019-04-18  Wenson Hsieh  <wenson_hsieh@apple.com>
416
417         Add new compatibility mode API on WKNavigation
418         https://bugs.webkit.org/show_bug.cgi?id=197069
419         <rdar://problem/50025800>
420
421         Reviewed by Tim Horton.
422
423         Add a block property for -didCommitNavigation to TestNavigationDelegate.
424
425         * TestWebKitAPI/cocoa/TestNavigationDelegate.h:
426         * TestWebKitAPI/cocoa/TestNavigationDelegate.mm:
427         (-[TestNavigationDelegate webView:didCommitNavigation:]):
428
429 2019-04-18  Don Olmstead  <don.olmstead@sony.com>
430
431         [CMake] Make WebCore headers copies
432         https://bugs.webkit.org/show_bug.cgi?id=182512
433         <rdar://problem/37510435>
434
435         Reviewed by Alex Christensen.
436
437         Added WebCorePrivateFrameworkHeaders as a dependency of TestWebKitAPI for all
438         ports.
439
440         WebCore now uses WebCore_PRIVATE_INCLUDE_DIRECTORIES for all ports. Any includes
441         of WebCore headers using "*.h" were modified to <WebCore/*.h>
442
443         * DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt:
444         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npapi.h:
445         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npfunctions.h:
446         * DumpRenderTree/TestNetscapePlugIn/ForwardingHeaders/WebKit/npruntime.h:
447         * TestWebKitAPI/CMakeLists.txt:
448         * TestWebKitAPI/PlatformWin.cmake:
449         * TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:
450         * TestWebKitAPI/Tests/WebCore/gstreamer/GstMappedBuffer.cpp:
451         * WebKitTestRunner/win/PlatformWebViewWin.cpp:
452
453 2019-04-18  Jer Noble  <jer.noble@apple.com>
454
455         Add support for parsing FairPlayStreaming PSSH boxes.
456         https://bugs.webkit.org/show_bug.cgi?id=197064
457
458         Reviewed by Eric Carlson.
459
460         * TestWebKitAPI/Tests/WebCore/ISOBox.cpp:
461         (TestWebKitAPI::TEST):
462
463 2019-04-18  Brent Fulgham  <bfulgham@apple.com>
464
465         InjectedBundle parameters often need initialization function called before unarchiving
466         https://bugs.webkit.org/show_bug.cgi?id=189709
467         <rdar://problem/44573653>
468
469         Reviewed by Ryosuke Niwa.
470
471         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
472         (-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
473
474 2019-04-18  Zalan Bujtas  <zalan@apple.com>
475
476         Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
477         https://bugs.webkit.org/show_bug.cgi?id=196948
478         <rdar://problem/49927131>
479
480         Reviewed by Tim Horton.
481
482         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
483         (TEST): 
484         The expected order of incoming events is
485         1. didInvalidateIntrinsicContentSize
486         2. didFirstLayout
487         At setRenderingProgressDidChange, we already check if didInvalidateIntrinsicContentSize comes in first.
488         However it's not guaranteed that the milestone event is delayed until after TestWebKitAPI::Util::run() is finished
489         (and remember, all we care about is ordering).
490
491 2019-04-18  Ryan Haddad  <ryanhaddad@apple.com>
492
493         Unreviewed, rolling out r244299.
494
495         Breaks internal tests.
496
497         Reverted changeset:
498
499         "InjectedBundle parameters often need initialization function
500         called before unarchiving"
501         https://bugs.webkit.org/show_bug.cgi?id=189709
502         https://trac.webkit.org/changeset/244299
503
504 2019-04-18  Yusuke Suzuki  <ysuzuki@apple.com>
505
506         [WTF] StringBuilder should set correct m_is8Bit flag when merging
507         https://bugs.webkit.org/show_bug.cgi?id=197053
508
509         Reviewed by Saam Barati.
510
511         * TestWebKitAPI/Tests/WTF/StringBuilder.cpp:
512         (TestWebKitAPI::TEST):
513
514 2019-04-17  Tim Horton  <timothy_horton@apple.com>
515
516         [iOS Sim Debug] REGRESSION (r244151) TestWebKitAPI.WebKit.OverrideViewportArguments is failing (197028)
517         https://bugs.webkit.org/show_bug.cgi?id=197028
518         <rdar://problem/49985290>
519
520         Reviewed by Wenson Hsieh.
521
522         * TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm:
523         (TEST):
524         Liberal application of waitForNextPresentationUpdate works around a race
525         where if the page rapidly changes its viewport arguments (or an API client
526         rapidly changes its viewport arguments), we'd get stuck thinking that the
527         user had intentionally zoomed the page, and stop resetting the initial scale.
528         This deserves a separate bug, but no need to keep the test failing while
529         we think about it.
530
531 2019-04-17  Tim Horton  <timothy_horton@apple.com>
532
533         REGRESSION (r241988): Switching tabs is slow
534         https://bugs.webkit.org/show_bug.cgi?id=197037
535         <rdar://problem/49951473>
536
537         Reviewed by Simon Fraser.
538
539         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
540         * TestWebKitAPI/Tests/WebKitCocoa/ReparentWebViewTimeout.mm: Added.
541         (TEST):
542         * TestWebKitAPI/cocoa/TestWKWebView.h:
543         * TestWebKitAPI/cocoa/TestWKWebView.mm:
544         (-[TestWKWebView addToTestWindow]):
545         Add a test that hangs without this fix.
546
547 2019-04-17  Truitt Savell  <tsavell@apple.com>
548
549         Unreviewed, rolling out r244400.
550
551         Caused testing to exit early with assertionon Debug WK2
552
553         Reverted changeset:
554
555         "UI↔Web deadlock when printing with a JavaScript alert
556         visible"
557         https://bugs.webkit.org/show_bug.cgi?id=196839
558         https://trac.webkit.org/changeset/244400
559
560 2019-04-17  Brady Eidson  <beidson@apple.com>
561
562         Link clicks in PDFs shouldn't send referrer headers.
563         <rdar://problem/21142581> and https://bugs.webkit.org/show_bug.cgi?id=196980
564
565         Reviewed by Tim Horton.
566
567         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
568         * TestWebKitAPI/Tests/WebKitCocoa/PDFLinkReferrer.mm: Added.
569         (putPDFBytesCallback):
570         (emptyReleaseInfoCallback):
571         (createPDFWithLinkToURL):
572         (TEST):
573
574 2019-04-17  Tim Horton  <timothy_horton@apple.com>
575
576         UI↔Web deadlock when printing with a JavaScript alert visible
577         https://bugs.webkit.org/show_bug.cgi?id=196839
578         <rdar://problem/49157642>
579
580         Reviewed by Andy Estes.
581
582         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
583         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewPrintFormatter.mm: Added.
584         (-[PrintOnAlertUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
585         (TEST):
586
587 2019-04-17  Alex Christensen  <achristensen@webkit.org>
588
589         WKRetainPtr's adoption constructor should be private
590         https://bugs.webkit.org/show_bug.cgi?id=197019
591
592         Reviewed by Tim Horton.
593
594         * DumpRenderTree/mac/DumpRenderTree.mm:
595         (dumpFramesAsText):
596         * TestWebKitAPI/InjectedBundleController.cpp:
597         (TestWebKitAPI::InjectedBundleController::initialize):
598         * TestWebKitAPI/PlatformUtilities.cpp:
599         (TestWebKitAPI::Util::createContextWithInjectedBundle):
600         (TestWebKitAPI::Util::createInitializationDictionaryForInjectedBundleTest):
601         (TestWebKitAPI::Util::createContextForInjectedBundleTest):
602         (TestWebKitAPI::Util::toWK):
603         * TestWebKitAPI/Tests/CustomProtocolsSyncXHRTest.mm:
604         (TestWebKitAPI::TEST):
605         * TestWebKitAPI/Tests/WebKit/CloseFromWithinCreatePage.cpp:
606         (TestWebKitAPI::TEST):
607         * TestWebKitAPI/Tests/WebKit/CloseThenTerminate.cpp:
608         (TestWebKitAPI::TEST):
609         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
610         (TestWebKitAPI::TEST):
611         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic_Bundle.cpp:
612         (TestWebKitAPI::DOMWindowExtensionBasic::initialize):
613         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache.cpp:
614         (TestWebKitAPI::TEST):
615         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionNoCache_Bundle.cpp:
616         (TestWebKitAPI::DOMWindowExtensionNoCache::initialize):
617         * TestWebKitAPI/Tests/WebKit/DeferredViewInWindowStateChange.mm:
618         (TestWebKitAPI::TEST):
619         * TestWebKitAPI/Tests/WebKit/DidNotHandleKeyDown.cpp:
620         (TestWebKitAPI::TEST):
621         * TestWebKitAPI/Tests/WebKit/DidRemoveFrameFromHiearchyInPageCache_Bundle.cpp:
622         (TestWebKitAPI::didRemoveFrameFromHierarchyCallback):
623         * TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash.cpp:
624         (TestWebKitAPI::TEST):
625         * TestWebKitAPI/Tests/WebKit/DocumentStartUserScriptAlertCrash_Bundle.cpp:
626         (TestWebKitAPI::DocumentStartUserScriptAlertCrashTest::initialize):
627         * TestWebKitAPI/Tests/WebKit/EnumerateMediaDevices.cpp:
628         (TestWebKitAPI::TEST):
629         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
630         (TestWebKitAPI::TEST):
631         * TestWebKitAPI/Tests/WebKit/EvaluateJavaScript.cpp:
632         (TestWebKitAPI::TEST):
633         * TestWebKitAPI/Tests/WebKit/EventModifiers.cpp:
634         (TestWebKitAPI::TEST):
635         * TestWebKitAPI/Tests/WebKit/FailedLoad.cpp:
636         (TestWebKitAPI::TEST):
637         * TestWebKitAPI/Tests/WebKit/Find.cpp:
638         (TestWebKitAPI::TEST):
639         * TestWebKitAPI/Tests/WebKit/FindMatches.mm:
640         (TestWebKitAPI::TEST):
641         * TestWebKitAPI/Tests/WebKit/FirstMeaningfulPaintMilestone.cpp:
642         (TestWebKitAPI::TEST):
643         * TestWebKitAPI/Tests/WebKit/ForceRepaint.cpp:
644         (TestWebKitAPI::TEST):
645         * TestWebKitAPI/Tests/WebKit/FrameHandle.cpp:
646         (TestWebKitAPI::TEST):
647         * TestWebKitAPI/Tests/WebKit/FrameMIMETypeHTML.cpp:
648         (TestWebKitAPI::TEST):
649         * TestWebKitAPI/Tests/WebKit/FrameMIMETypePNG.cpp:
650         (TestWebKitAPI::TEST):
651         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
652         (TestWebKitAPI::TEST):
653         * TestWebKitAPI/Tests/WebKit/GetInjectedBundleInitializationUserDataCallback.cpp:
654         (TestWebKitAPI::TEST):
655         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle.cpp:
656         (TestWebKitAPI::TEST):
657         * TestWebKitAPI/Tests/WebKit/HitTestResultNodeHandle_Bundle.cpp:
658         (TestWebKitAPI::HitTestResultNodeHandleTest::getContextMenuFromDefaultMenu):
659         * TestWebKitAPI/Tests/WebKit/InjectedBundleBasic.cpp:
660         (TestWebKitAPI::TEST):
661         * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior.cpp:
662         (TestWebKitAPI::TEST):
663         * TestWebKitAPI/Tests/WebKit/InjectedBundleDisableOverrideBuiltinsBehavior_Bundle.cpp:
664         (TestWebKitAPI::InjectedBundleNoDisableOverrideBuiltinsBehaviorTest::initialize):
665         (TestWebKitAPI::InjectedBundleDisableOverrideBuiltinsBehaviorTest::initialize):
666         * TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest.cpp:
667         (TestWebKitAPI::TEST):
668         * TestWebKitAPI/Tests/WebKit/InjectedBundleFrameHitTest_Bundle.cpp:
669         (TestWebKitAPI::InjectedBundleFrameHitTestTest::frameLoadFinished):
670         * TestWebKitAPI/Tests/WebKit/InjectedBundleInitializationUserDataCallbackWins.cpp:
671         (TestWebKitAPI::TEST):
672         * TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen.cpp:
673         (TestWebKitAPI::TEST):
674         * TestWebKitAPI/Tests/WebKit/InjectedBundleMakeAllShadowRootsOpen_Bundle.cpp:
675         (TestWebKitAPI::InjectedBundleMakeAllShadowRootOpenTest::initialize):
676         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
677         (TestWebKitAPI::TEST):
678         * TestWebKitAPI/Tests/WebKit/LoadAlternateHTMLStringWithNonDirectoryURL.cpp:
679         (TestWebKitAPI::loadAlternateHTMLString):
680         (TestWebKitAPI::TEST):
681         * TestWebKitAPI/Tests/WebKit/LoadCanceledNoServerRedirectCallback.cpp:
682         (TestWebKitAPI::TEST):
683         * TestWebKitAPI/Tests/WebKit/LoadPageOnCrash.cpp:
684         (TestWebKitAPI::WebKit2CrashLoader::WebKit2CrashLoader):
685         * TestWebKitAPI/Tests/WebKit/MenuTypesForMouseEvents.cpp:
686         (TestWebKitAPI::buildAndPerformTest):
687         * TestWebKitAPI/Tests/WebKit/ModalAlertsSPI.cpp:
688         (TestWebKitAPI::TEST):
689         * TestWebKitAPI/Tests/WebKit/MouseMoveAfterCrash.cpp:
690         (TestWebKitAPI::TEST):
691         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayout.cpp:
692         (TestWebKitAPI::TEST):
693         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFails.cpp:
694         (TestWebKitAPI::TEST):
695         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutForImages.cpp:
696         (TestWebKitAPI::TEST):
697         * TestWebKitAPI/Tests/WebKit/NewFirstVisuallyNonEmptyLayoutFrames.cpp:
698         (TestWebKitAPI::TEST):
699         * TestWebKitAPI/Tests/WebKit/PageLoadBasic.cpp:
700         (TestWebKitAPI::TEST):
701         * TestWebKitAPI/Tests/WebKit/PageLoadDidChangeLocationWithinPageForFrame.cpp:
702         (TestWebKitAPI::TEST):
703         * TestWebKitAPI/Tests/WebKit/PasteboardNotifications.mm:
704         (TestWebKitAPI::TEST):
705         * TestWebKitAPI/Tests/WebKit/PendingAPIRequestURL.cpp:
706         (TestWebKitAPI::TEST):
707         * TestWebKitAPI/Tests/WebKit/PreventEmptyUserAgent.cpp:
708         (TestWebKitAPI::TEST):
709         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
710         (TestWebKitAPI::TEST):
711         * TestWebKitAPI/Tests/WebKit/ProcessDidTerminate.cpp:
712         (TestWebKitAPI::TEST):
713         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
714         (TestWebKitAPI::TEST):
715         * TestWebKitAPI/Tests/WebKit/ResizeReversePaginatedWebView.cpp:
716         (TestWebKitAPI::TEST):
717         * TestWebKitAPI/Tests/WebKit/ResizeWindowAfterCrash.cpp:
718         (TestWebKitAPI::TEST):
719         * TestWebKitAPI/Tests/WebKit/RestoreSessionState.cpp:
720         (TestWebKitAPI::TEST):
721         * TestWebKitAPI/Tests/WebKit/RestoreSessionStateContainingFormData.cpp:
722         (TestWebKitAPI::TEST):
723         * TestWebKitAPI/Tests/WebKit/ScrollPinningBehaviors.cpp:
724         (TestWebKitAPI::TEST):
725         * TestWebKitAPI/Tests/WebKit/ShouldKeepCurrentBackForwardListItemInList.cpp:
726         (TestWebKitAPI::TEST):
727         * TestWebKitAPI/Tests/WebKit/SpacebarScrolling.cpp:
728         (TestWebKitAPI::TEST):
729         * TestWebKitAPI/Tests/WebKit/StopLoadingDuringDidFailProvisionalLoad.cpp:
730         (TestWebKitAPI::TEST):
731         * TestWebKitAPI/Tests/WebKit/TerminateTwice.cpp:
732         (TestWebKitAPI::TEST):
733         * TestWebKitAPI/Tests/WebKit/UserMedia.cpp:
734         (TestWebKitAPI::TEST):
735         * TestWebKitAPI/Tests/WebKit/WKPageCopySessionStateWithFiltering.cpp:
736         (TestWebKitAPI::TEST):
737         * TestWebKitAPI/Tests/WebKit/WKPageGetScaleFactorNotZero.cpp:
738         (TestWebKitAPI::TEST):
739         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp:
740         (TestWebKitAPI::TEST):
741         * TestWebKitAPI/Tests/WebKit/WKPreferences.cpp:
742         (TestWebKitAPI::TEST):
743         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
744         (TestWebKitAPI::TEST):
745         * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
746         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
747         * TestWebKitAPI/Tests/WebKit/mac/AttributedSubstringForProposedRangeWithImage.mm:
748         (TestWebKitAPI::TEST):
749         * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
750         (TestWebKitAPI::TEST):
751         * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm:
752         (TestWebKitAPI::TEST):
753         * TestWebKitAPI/Tests/WebKit/mac/EditorCommands.mm:
754         (TestWebKitAPI::TEST):
755         * TestWebKitAPI/Tests/WebKit/mac/ForceLightAppearanceInBundle.mm:
756         (TestWebKitAPI::TEST):
757         * TestWebKitAPI/Tests/WebKit/mac/GetPIDAfterAbortedProcessLaunch.cpp:
758         (TestWebKitAPI::TEST):
759         * TestWebKitAPI/Tests/WebKit/mac/InjectedBundleAppleEvent.cpp:
760         (TestWebKitAPI::TEST):
761         * TestWebKitAPI/Tests/WebKit/mac/RestoreStateAfterTermination.mm:
762         (TestWebKitAPI::TEST):
763         * TestWebKitAPI/Tests/WebKitCocoa/FullscreenDelegate.mm:
764         (TestWebKitAPI::TEST):
765         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm:
766         (TestWebKitAPI::TEST):
767         * TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:
768         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSuspendMediaBuffering.mm:
769         (TEST):
770         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
771         (TEST):
772         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
773         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
774         (TEST):
775         * TestWebKitAPI/Tests/mac/FirstResponderScrollingPosition.mm:
776         (TestWebKitAPI::TEST):
777         * TestWebKitAPI/Tests/mac/FullscreenZoomInitialFrame.mm:
778         (TestWebKitAPI::FullscreenZoomInitialFrame::initializeView):
779         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
780         (WTR::getMenuItemTitleCallback):
781         (WTR::createMouseMessageBody):
782         (WTR::EventSendingController::mouseDown):
783         (WTR::EventSendingController::mouseUp):
784         (WTR::EventSendingController::mouseMoveTo):
785         (WTR::EventSendingController::mouseForceClick):
786         (WTR::EventSendingController::startAndCancelMouseForceClick):
787         (WTR::EventSendingController::mouseForceDown):
788         (WTR::EventSendingController::mouseForceUp):
789         (WTR::EventSendingController::mouseForceChanged):
790         (WTR::EventSendingController::leapForward):
791         (WTR::EventSendingController::scheduleAsynchronousClick):
792         (WTR::createKeyDownMessageBody):
793         (WTR::EventSendingController::keyDown):
794         (WTR::EventSendingController::scheduleAsynchronousKeyDown):
795         (WTR::EventSendingController::mouseScrollBy):
796         (WTR::EventSendingController::mouseScrollByWithWheelAndMomentumPhases):
797         (WTR::EventSendingController::continuousMouseScrollBy):
798         (WTR::EventSendingController::addTouchPoint):
799         (WTR::EventSendingController::updateTouchPoint):
800         (WTR::EventSendingController::setTouchModifier):
801         (WTR::EventSendingController::setTouchPointRadius):
802         (WTR::EventSendingController::touchStart):
803         (WTR::EventSendingController::touchMove):
804         (WTR::EventSendingController::touchEnd):
805         (WTR::EventSendingController::touchCancel):
806         (WTR::EventSendingController::clearTouchPoints):
807         (WTR::EventSendingController::releaseTouchPoint):
808         (WTR::EventSendingController::cancelTouchPoint):
809         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
810         (WTR::InjectedBundle::didCreatePage):
811         (WTR::InjectedBundle::didReceiveMessage):
812         (WTR::InjectedBundle::didReceiveMessageToPage):
813         (WTR::InjectedBundle::booleanForKey):
814         (WTR::InjectedBundle::done):
815         (WTR::InjectedBundle::dumpToStdErr):
816         (WTR::InjectedBundle::outputText):
817         (WTR::InjectedBundle::postNewBeforeUnloadReturnValue):
818         (WTR::InjectedBundle::postAddChromeInputField):
819         (WTR::InjectedBundle::postRemoveChromeInputField):
820         (WTR::InjectedBundle::postFocusWebView):
821         (WTR::InjectedBundle::postSetBackingScaleFactor):
822         (WTR::InjectedBundle::postSetWindowIsKey):
823         (WTR::InjectedBundle::postSetViewSize):
824         (WTR::InjectedBundle::postSimulateWebNotificationClick):
825         (WTR::InjectedBundle::postSetAddsVisitedLinks):
826         (WTR::InjectedBundle::setGeolocationPermission):
827         (WTR::InjectedBundle::setMockGeolocationPosition):
828         (WTR::InjectedBundle::setMockGeolocationPositionUnavailableError):
829         (WTR::InjectedBundle::isGeolocationProviderActive const):
830         (WTR::InjectedBundle::imageCountInGeneralPasteboard const):
831         (WTR::InjectedBundle::setUserMediaPersistentPermissionForOrigin):
832         (WTR::InjectedBundle::userMediaPermissionRequestCountForOrigin const):
833         (WTR::InjectedBundle::resetUserMediaPermissionRequestCountForOrigin):
834         (WTR::InjectedBundle::setCustomPolicyDelegate):
835         (WTR::InjectedBundle::setHidden):
836         (WTR::InjectedBundle::setCacheModel):
837         (WTR::InjectedBundle::shouldProcessWorkQueue const):
838         (WTR::InjectedBundle::processWorkQueue):
839         (WTR::InjectedBundle::queueBackNavigation):
840         (WTR::InjectedBundle::queueForwardNavigation):
841         (WTR::InjectedBundle::queueLoad):
842         (WTR::InjectedBundle::queueLoadHTMLString):
843         (WTR::InjectedBundle::queueReload):
844         (WTR::InjectedBundle::queueLoadingScript):
845         (WTR::InjectedBundle::queueNonLoadingScript):
846         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
847         (WTR::frameToStr):
848         (WTR::InjectedBundlePage::InjectedBundlePage):
849         (WTR::dumpFrameDescriptionSuitableForTestResult):
850         (WTR::dumpFrameScrollPosition):
851         (WTR::dumpDescendantFrameScrollPositions):
852         (WTR::dumpFrameText):
853         (WTR::dumpDescendantFramesText):
854         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
855         (WTR::TestRunner::shouldDumpPixels const):
856         (WTR::TestRunner::setDumpPixels):
857         (WTR::TestRunner::whatToDump const):
858         (WTR::TestRunner::setWhatToDump):
859         (WTR::TestRunner::setWaitUntilDone):
860         (WTR::TestRunner::shouldWaitUntilDone const):
861         (WTR::TestRunner::setShouldDumpFrameLoadCallbacks):
862         (WTR::TestRunner::shouldDumpFrameLoadCallbacks):
863         (WTR::TestRunner::clearAllDatabases):
864         (WTR::TestRunner::setIDBPerOriginQuota):
865         (WTR::TestRunner::originsWithApplicationCache):
866         (WTR::TestRunner::setCanOpenWindows):
867         (WTR::TestRunner::setXSSAuditorEnabled):
868         (WTR::TestRunner::setMediaDevicesEnabled):
869         (WTR::TestRunner::setWebRTCMDNSICECandidatesEnabled):
870         (WTR::TestRunner::setWebRTCUnifiedPlanEnabled):
871         (WTR::TestRunner::setCustomUserAgent):
872         (WTR::TestRunner::setWebAPIStatisticsEnabled):
873         (WTR::TestRunner::setModernMediaControlsEnabled):
874         (WTR::TestRunner::setWebGL2Enabled):
875         (WTR::TestRunner::setWritableStreamAPIEnabled):
876         (WTR::TestRunner::setReadableByteStreamAPIEnabled):
877         (WTR::TestRunner::setEncryptedMediaAPIEnabled):
878         (WTR::TestRunner::setAllowsAnySSLCertificate):
879         (WTR::TestRunner::setPluginsEnabled):
880         (WTR::TestRunner::setValueForUser):
881         (WTR::TestRunner::setAudioResult):
882         (WTR::TestRunner::didReceiveServerRedirectForProvisionalNavigation const):
883         (WTR::TestRunner::clearDidReceiveServerRedirectForProvisionalNavigation):
884         (WTR::TestRunner::setAlwaysAcceptCookies):
885         (WTR::TestRunner::setOnlyAcceptFirstPartyCookies):
886         (WTR::TestRunner::isDoingMediaCapture const):
887         (WTR::TestRunner::queueLoad):
888         (WTR::TestRunner::setRejectsProtectionSpaceAndContinueForAuthenticationChallenges):
889         (WTR::TestRunner::setHandlesAuthenticationChallenges):
890         (WTR::TestRunner::setShouldLogCanAuthenticateAgainstProtectionSpace):
891         (WTR::TestRunner::setShouldLogDownloadCallbacks):
892         (WTR::TestRunner::setAuthenticationUsername):
893         (WTR::TestRunner::setAuthenticationPassword):
894         (WTR::TestRunner::secureEventInputIsEnabled const):
895         (WTR::TestRunner::setBlockAllPlugins):
896         (WTR::TestRunner::setPluginSupportedMode):
897         (WTR::TestRunner::setShouldDecideNavigationPolicyAfterDelay):
898         (WTR::TestRunner::setShouldDecideResponsePolicyAfterDelay):
899         (WTR::TestRunner::setNavigationGesturesEnabled):
900         (WTR::TestRunner::setIgnoresViewportScaleLimits):
901         (WTR::TestRunner::setShouldDownloadUndisplayableMIMETypes):
902         (WTR::TestRunner::setShouldAllowDeviceOrientationAndMotionAccess):
903         (WTR::TestRunner::terminateNetworkProcess):
904         (WTR::TestRunner::terminateServiceWorkerProcess):
905         (WTR::TestRunner::runUIScript):
906         (WTR::TestRunner::setStatisticsDebugMode):
907         (WTR::TestRunner::setStatisticsPrevalentResourceForDebugMode):
908         (WTR::TestRunner::setStatisticsLastSeen):
909         (WTR::TestRunner::setStatisticsPrevalentResource):
910         (WTR::TestRunner::setStatisticsVeryPrevalentResource):
911         (WTR::TestRunner::dumpResourceLoadStatistics):
912         (WTR::TestRunner::isStatisticsPrevalentResource):
913         (WTR::TestRunner::isStatisticsVeryPrevalentResource):
914         (WTR::TestRunner::isStatisticsRegisteredAsSubresourceUnder):
915         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
916         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
917         (WTR::TestRunner::setStatisticsHasHadUserInteraction):
918         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
919         (WTR::TestRunner::setStatisticsGrandfathered):
920         (WTR::TestRunner::isStatisticsGrandfathered):
921         (WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
922         (WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
923         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
924         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectFrom):
925         (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectTo):
926         (WTR::TestRunner::setStatisticsTopFrameUniqueRedirectFrom):
927         (WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
928         (WTR::TestRunner::setStatisticsTimeToLiveUserInteraction):
929         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
930         (WTR::TestRunner::statisticsProcessStatisticsAndDataRecords):
931         (WTR::TestRunner::statisticsUpdateCookieBlocking):
932         (WTR::TestRunner::statisticsSubmitTelemetry):
933         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
934         (WTR::TestRunner::setStatisticsIsRunningTest):
935         (WTR::TestRunner::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
936         (WTR::TestRunner::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
937         (WTR::TestRunner::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
938         (WTR::TestRunner::setStatisticsGrandfatheringTime):
939         (WTR::TestRunner::setStatisticsMaxStatisticsEntries):
940         (WTR::TestRunner::setStatisticsPruneEntriesDownTo):
941         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
942         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
943         (WTR::TestRunner::statisticsClearThroughWebsiteDataRemoval):
944         (WTR::TestRunner::statisticsDeleteCookiesForHost):
945         (WTR::TestRunner::setStatisticsCacheMaxAgeCap):
946         (WTR::TestRunner::statisticsResetToConsistentState):
947         (WTR::TestRunner::setStorageAccessAPIEnabled):
948         (WTR::TestRunner::getAllStorageAccessEntries):
949         (WTR::TestRunner::addMockMediaDevice):
950         (WTR::TestRunner::clearMockMediaDevices):
951         (WTR::TestRunner::removeMockMediaDevice):
952         (WTR::TestRunner::resetMockMediaDevices):
953         (WTR::TestRunner::connectMockGamepad):
954         (WTR::TestRunner::disconnectMockGamepad):
955         (WTR::TestRunner::setMockGamepadDetails):
956         (WTR::TestRunner::setMockGamepadAxisValue):
957         (WTR::TestRunner::setMockGamepadButtonValue):
958         (WTR::TestRunner::removeAllSessionCredentials):
959         (WTR::TestRunner::clearDOMCache):
960         (WTR::TestRunner::clearDOMCaches):
961         (WTR::TestRunner::hasDOMCache):
962         (WTR::TestRunner::domCacheSize):
963         (WTR::TestRunner::setAllowStorageQuotaIncrease):
964         (WTR::TestRunner::getApplicationManifestThen):
965         (WTR::TestRunner::injectUserScript):
966         (WTR::TestRunner::sendDisplayConfigurationChangedMessageForTesting):
967         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
968         (WTR::TestRunner::addTestKeyToKeychain):
969         (WTR::TestRunner::cleanUpKeychain):
970         (WTR::TestRunner::keyExistsInKeychain):
971         (WTR::TestRunner::setCanHandleHTTPSServerTrustEvaluation):
972         (WTR::TestRunner::canDoServerTrustEvaluationInNetworkProcess):
973         (WTR::TestRunner::serverTrustEvaluationCallbackCallsCount):
974         (WTR::TestRunner::setShouldDismissJavaScriptAlertsAsynchronously):
975         (WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
976         (WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
977         * WebKitTestRunner/TestController.cpp:
978         (WTR::TestController::initialize):
979         (WTR::parseStringTestHeaderValueAsRelativePath):
980         (WTR::updateTestOptionsFromTestHeader):
981         (WTR::TestController::runTest):
982         (WTR::TestController::didReceiveLiveDocumentsList):
983         (WTR::TestController::didReceiveMessageFromInjectedBundle):
984         (WTR::TestController::didReceiveSynchronousMessageFromInjectedBundle):
985         (WTR::TestController::didFinishNavigation):
986         (WTR::TestController::didReceiveAuthenticationChallenge):
987         * WebKitTestRunner/TestInvocation.cpp:
988         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
989         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
990         (WTR::TestInvocation::uiScriptDidComplete):
991         (WTR::TestInvocation::didReceiveAllStorageAccessEntries):
992         * WebKitTestRunner/WebNotificationProvider.cpp:
993         (WTR::WebNotificationProvider::closeWebNotification):
994         * WebKitTestRunner/WorkQueueManager.cpp:
995         (WTR::ScriptItem::ScriptItem):
996         (WTR::WorkQueueManager::queueLoad):
997         (WTR::WorkQueueManager::queueLoadHTMLString):
998
999 2019-04-17  Alex Christensen  <achristensen@webkit.org>
1000
1001         Add a comment to make my test from r244139 less mysterious.
1002         https://bugs.webkit.org/show_bug.cgi?id=196744
1003
1004         As suggested by Darin Adler.
1005
1006         * TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
1007         (-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
1008
1009 2019-04-17  Chris Dumez  <cdumez@apple.com>
1010
1011         Remember device orientation permission for the duration of the browsing session
1012         https://bugs.webkit.org/show_bug.cgi?id=196992
1013         <rdar://problem/49946067>
1014
1015         Reviewed by Alex Christensen.
1016
1017         Add API test coverage.
1018
1019         * TestWebKitAPI/Tests/WebKitCocoa/DeviceOrientation.mm:
1020         (-[DeviceOrientationPermissionUIDelegate _webView:shouldAllowDeviceOrientationAndMotionAccessRequestedByFrame:decisionHandler:]):
1021         (TEST):
1022
1023 2019-04-17  Aakash Jain  <aakash_jain@apple.com>
1024
1025         [ews-app] Clicking 'submit to new ews' doesn't reload status-bubble
1026         https://bugs.webkit.org/show_bug.cgi?id=196675
1027
1028         Reviewed by Lucas Forschler.
1029
1030         * BuildSlaveSupport/ews-app/ews/views/submittoews.py:
1031         (SubmitToEWS): Added @xframe_options_exempt similar to statusbubble.py
1032
1033 2019-04-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1034
1035         [iOS] [WebKit2] Add support for honoring -[UIMenuItem dontDismiss]
1036         https://bugs.webkit.org/show_bug.cgi?id=196919
1037         <rdar://problem/41630459>
1038
1039         Reviewed by Tim Horton.
1040
1041         Add iOS support for several new testing hooks. See below for more detail.
1042
1043         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1044         (WTR::UIScriptController::isDismissingMenu const):
1045
1046         Add a new script controller method to query whether the platform menu (on iOS, the callout bar) is done
1047         dismissing. We consider the menu to be dismissing in between the `-WillHide` and `-DidHide` notifications sent
1048         by UIKit when dismissing the callout bar (i.e. UIMenuController).
1049
1050         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1051         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1052         (WTR::UIScriptController::isDismissingMenu const):
1053         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1054         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1055         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1056         (WTR::InjectedBundle::didReceiveMessageToPage):
1057         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1058         (WTR::TestRunner::setAllowedMenuActions):
1059
1060         Add a new helper method to specify a list of allowed actions when bringing up the menu. On iOS, in the case of
1061         actions supported by the platform, this matches against method selector names (for instance, "SelectAll", or
1062         "Copy", or "Paste"). In the case of the custom actions installed via `installCustomMenuAction`, we instead match
1063         against the name of the custom action.
1064
1065         (WTR::TestRunner::installCustomMenuAction):
1066
1067         Add a new helper method to install a custom action for the context menu (on iOS, this is the callout bar). This
1068         takes the name of the action (which appears in a button in the callout bar), whether the action should cause
1069         the callout bar to automatically dismiss, and finally, a JavaScript callback that is invoked when the action is
1070         triggered.
1071
1072         (WTR::TestRunner::performCustomMenuAction):
1073
1074         Invoked when the custom menu action is triggered.
1075
1076         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1077         * WebKitTestRunner/TestController.cpp:
1078         (WTR::TestController::installCustomMenuAction):
1079         (WTR::TestController::setAllowedMenuActions):
1080         * WebKitTestRunner/TestController.h:
1081         * WebKitTestRunner/TestInvocation.cpp:
1082         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
1083         (WTR::TestInvocation::performCustomMenuAction):
1084
1085         Add plumbing to call back into the injected bundle when performing the custom action.
1086
1087         * WebKitTestRunner/TestInvocation.h:
1088         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1089         (WTR::TestController::installCustomMenuAction):
1090         (WTR::TestController::setAllowedMenuActions):
1091         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
1092         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1093         (-[TestRunnerWKWebView initWithFrame:configuration:]):
1094         (-[TestRunnerWKWebView becomeFirstResponder]):
1095         (-[TestRunnerWKWebView _addCustomItemToMenuControllerIfNecessary]):
1096
1097         Helper method that converts web view's current custom menu action info into a UIMenuItem, and adds it to the
1098         shared menu controller. This is also invoked when the web view becomes first responder, which matches behavior
1099         in the Mail app on iOS.
1100
1101         (-[TestRunnerWKWebView installCustomMenuAction:dismissesAutomatically:callback:]):
1102         (-[TestRunnerWKWebView setAllowedMenuActions:]):
1103         (-[TestRunnerWKWebView resetCustomMenuAction]):
1104         (-[TestRunnerWKWebView performCustomAction:]):
1105         (-[TestRunnerWKWebView canPerformAction:withSender:]):
1106         (-[TestRunnerWKWebView _willHideMenu]):
1107         (-[TestRunnerWKWebView _didHideMenu]):
1108         * WebKitTestRunner/ios/TestControllerIOS.mm:
1109         (WTR::TestController::platformResetStateToConsistentValues):
1110
1111         Reset both any custom installed actions on the shared menu controller, as well as the list of allowed actions,
1112         if specified.
1113
1114         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1115         (WTR::UIScriptController::isDismissingMenu const):
1116
1117 2019-04-16  Megan Gardner  <megan_gardner@apple.com>
1118
1119         Allow sharing from imageSheet on an image document
1120         https://bugs.webkit.org/show_bug.cgi?id=196891
1121         <rdar://problem/25377386>
1122
1123         Reviewed by Tim Horton.
1124
1125         Test to make sure that the correct imageURL is extracted from an image element.
1126
1127         * TestWebKitAPI/Tests/WebKitCocoa/WKRequestActivatedElementInfo.mm:
1128         (TestWebKitAPI::TEST):
1129
1130 2019-04-16  Alex Christensen  <achristensen@webkit.org>
1131
1132         REGRESSION(r244162) Clearing website data from ephemeral WKWebsiteDataStore should finish instead of asserting or hanging
1133         https://bugs.webkit.org/show_bug.cgi?id=196995
1134
1135         Reviewed by Brady Eidson.
1136
1137         * TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
1138         (TEST):
1139
1140 2019-04-16  Chris Dumez  <cdumez@apple.com>
1141
1142         URL set by document.open() is not communicated to the UIProcess
1143         https://bugs.webkit.org/show_bug.cgi?id=196941
1144         <rdar://problem/49237544>
1145
1146         Reviewed by Geoff Garen.
1147
1148         Add API test coverage.
1149
1150         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1151         * TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
1152         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
1153         (-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
1154         (TEST):
1155
1156 2019-04-16  Commit Queue  <commit-queue@webkit.org>
1157
1158         Unreviewed, rolling out r244321.
1159         https://bugs.webkit.org/show_bug.cgi?id=196968
1160
1161         Causing all WK2 Debug builds to exit early after Assertion
1162         failures. (Requested by ShawnRoberts on #webkit).
1163
1164         Reverted changeset:
1165
1166         "URL set by document.open() is not communicated to the
1167         UIProcess"
1168         https://bugs.webkit.org/show_bug.cgi?id=196941
1169         https://trac.webkit.org/changeset/244321
1170
1171 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
1172
1173         Regression (r244291): Broken API Test AutoLayoutRenderingProgressRelativeOrdering
1174         https://bugs.webkit.org/show_bug.cgi?id=196948
1175
1176         Reviewed by Zalan Bujtas.
1177
1178         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm:
1179         (TEST): Disabling the test for now to keep infrastructure happy, while the root-cause is being investigated.
1180
1181 2019-04-15  Chris Dumez  <cdumez@apple.com>
1182
1183         URL set by document.open() is not communicated to the UIProcess
1184         https://bugs.webkit.org/show_bug.cgi?id=196941
1185         <rdar://problem/49237544>
1186
1187         Reviewed by Geoffrey Garen.
1188
1189         Add API test coverage.
1190
1191         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1192         * TestWebKitAPI/Tests/WebKit/open-window-then-write-to-it.html: Added.
1193         * TestWebKitAPI/Tests/WebKitCocoa/OpenAndCloseWindow.mm:
1194         (-[OpenWindowThenDocumentOpenUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
1195         (TEST):
1196
1197 2019-04-15  Dean Johnson  <dean_johnson@apple.com>
1198
1199         Using Tools/Scripts/clean-webkit should not install requests
1200         https://bugs.webkit.org/show_bug.cgi?id=196940
1201
1202         Reviewed by Lucas Forschler.
1203
1204         * Scripts/webkitpy/common/system/autoinstall.py: Drive-by fix for no logging handlers
1205         existing, depending on the path autoinstalled is run through.
1206         * Scripts/webkitpy/port/base.py: Import webkitpy.results.upload.Upload only where it's
1207         needed.
1208         (Port.configuration_for_upload):
1209         (Port.commits_for_upload):
1210
1211 2019-04-15  Alex Christensen  <achristensen@webkit.org>
1212
1213         Add a DiagnosticLogging method taking an arbitrary dictionary of values.
1214         https://bugs.webkit.org/show_bug.cgi?id=196773
1215
1216         Reviewed by Jer Noble.
1217
1218         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewDiagnosticLogging.mm:
1219         (-[TestLoggingDelegate _webView:logDiagnosticMessage:description:valueDictionary:]):
1220         (TEST):
1221
1222 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
1223
1224         ews-build should clearly indicate flaky test failures
1225         https://bugs.webkit.org/show_bug.cgi?id=196947
1226
1227         Reviewed by Lucas Forschler.
1228
1229         * BuildSlaveSupport/ews-build/steps.py:
1230         (AnalyzeAPITestsResults.analyzeResults):
1231
1232 2019-04-15  Brent Fulgham  <bfulgham@apple.com>
1233
1234         InjectedBundle parameters often need initialization function called before unarchiving
1235         https://bugs.webkit.org/show_bug.cgi?id=189709
1236         <rdar://problem/44573653>
1237
1238         Reviewed by Ryosuke Niwa.
1239
1240         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugIn.mm:
1241         (-[WebProcessPlugIn additionalClassesForParameterCoder]): Added.
1242
1243 2019-04-12  Ryosuke Niwa  <rniwa@webkit.org>
1244
1245         HashTable::removeIf always shrinks the hash table by half even if there is nothing left
1246         https://bugs.webkit.org/show_bug.cgi?id=196681
1247
1248         Reviewed by Darin Adler.
1249
1250         Added tests.
1251
1252         * TestWebKitAPI/Tests/WTF/HashSet.cpp:
1253         (WTF_HashSet.RemoveIf):
1254         (WTF_HashSet.RemoveIfShrinkToBestSize):
1255
1256 2019-04-15  John Wilander  <wilander@apple.com>
1257
1258         Send delayed Ad Click Attribution conversion requests to the click source
1259         https://bugs.webkit.org/show_bug.cgi?id=196838
1260         <rdar://problem/47650157>
1261
1262         Reviewed by Chris Dumez and Youenn Fablet.
1263
1264         This patch adds test infrastructure to override the default behavior in
1265         WebKit::NetworkAdClickAttribution.
1266
1267         * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
1268         (TestWebKitAPI::TEST):
1269         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1270         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1271         (WTR::TestRunner::dumpAdClickAttribution):
1272         (WTR::TestRunner::clearAdClickAttribution):
1273         (WTR::TestRunner::setAdClickAttributionOverrideTimerForTesting):
1274         (WTR::TestRunner::setAdClickAttributionConversionURLForTesting):
1275         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1276         * WebKitTestRunner/TestController.cpp:
1277         (WTR::TestController::setAdClickAttributionOverrideTimerForTesting):
1278         (WTR::TestController::setAdClickAttributionConversionURLForTesting):
1279         * WebKitTestRunner/TestController.h:
1280         * WebKitTestRunner/TestInvocation.cpp:
1281         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1282
1283 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
1284
1285         [ews-app] status-bubble should display position in queue
1286         https://bugs.webkit.org/show_bug.cgi?id=196607
1287
1288         Reviewed by Lucas Forschler.
1289
1290         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
1291         (StatusBubble._build_bubble):
1292         (StatusBubble._queue_position): Method to calculate patch's position in queue.
1293
1294 2019-04-15  Aakash Jain  <aakash_jain@apple.com>
1295
1296         [ews-build] Do not run clean build by default on EWS builders
1297         https://bugs.webkit.org/show_bug.cgi?id=196897
1298
1299         Reviewed by Lucas Forschler.
1300
1301         * BuildSlaveSupport/ews-build/steps.py:
1302         (ApplyPatch.start): Do not create .buildbot-patched file. This is a special file for Buildbot and if this
1303         file is present, during the Source checkout, Buildbot cleans the working directory completely (including removing 
1304         untracked directories like WebKitBuild).
1305         (CheckOutSource.__init__): Pass method=clean so that Buildbot clean the working directory. This does not remove
1306         untracked files/directories (like WebKitBuild).
1307
1308 2019-04-15  Per Arne Vollan  <pvollan@apple.com>
1309
1310         TestRunner::notifyDone() should be safely reentrant
1311         https://bugs.webkit.org/show_bug.cgi?id=196898
1312
1313         Reviewed by Darin Adler.
1314
1315         It is currently possible that TestRunner::notifyDone() will call itself, since
1316         notifyDone() will force a repaint, which can start executing JavaScript, which
1317         may call notifyDone() again. This can lead to test failures and flakiness.
1318         Fix this by setting the m_waitToDump flag before calling the dump() method.
1319
1320         * DumpRenderTree/mac/TestRunnerMac.mm:
1321         (TestRunner::notifyDone):
1322         (TestRunner::forceImmediateCompletion):
1323         * DumpRenderTree/win/TestRunnerWin.cpp:
1324         (TestRunner::notifyDone):
1325         (TestRunner::forceImmediateCompletion):
1326
1327 2019-04-15  Philippe Normand  <pnormand@igalia.com>
1328
1329         [GTK][WPE] Add enable-media websetting
1330         https://bugs.webkit.org/show_bug.cgi?id=196863
1331
1332         Reviewed by Michael Catanzaro.
1333
1334         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
1335         (testWebKitSettings): Add test for the enable-media web-setting.
1336
1337 2019-04-14  Wenson Hsieh  <wenson_hsieh@apple.com>
1338
1339         API test WKAttachmentTests.AddAttachmentToConnectedImageElement is a flaky failure on Mac Release builds
1340         https://bugs.webkit.org/show_bug.cgi?id=196905
1341         <rdar://problem/49886096>
1342
1343         Reviewed by Tim Horton.
1344
1345         This flaky test exercises a race condition between when attachment insertion updates are dispatched from the web
1346         process to the UI process, and when script is executed via -[WKWebView evaluateJavaScript:completionHandler:].
1347         Since attachment insertion and removal updates from the web process to the UI process are scheduled on a zero-
1348         delay timer, we end up with this sequence of events in the problematic (failure) case:
1349
1350         (a) [UI]    Run script #1 (which calls `HTMLAttachmentElement.getAttachmentIdentifier`)
1351             ...IPC from UI to web process...
1352         (b) [Web]   Evaluate script #1 in the web process, which schedules attachment updates on a zero-delay timer
1353             ...IPC from web to UI process...
1354         (c) [UI]    Invoke completion handler for script #1
1355         (d) [UI]    Run script #2 (which calls `document.querySelector('img').attachmentIdentifier`)
1356             ...IPC from UI to web process...
1357         (e) [Web]   Evaluate script #2 in the web process
1358         (f) [Web]   Zero-delay timer fires and dispatches attachment updates to the UI process
1359
1360         ...which means that script #2 will complete before the UI process has received the attachment updates sent in
1361         step (f). However, in the case where the flaky test succeeds, the zero-delay timer in (f) fires *before* script
1362         #2 is run in step (e).
1363
1364         This patch fixes the flaky test by waiting until attachment insertion updates are guaranteed to be received in
1365         the UI process by waiting on a script message posted by the web process, after attachment updates are
1366         dispatched.
1367
1368         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1369         (TestWebKitAPI::TEST):
1370
1371 2019-04-14  Aakash Jain  <aakash_jain@apple.com>
1372
1373         Disable Flaky API Test WKAttachmentTests.AddAttachmentToConnectedImageElement
1374         https://bugs.webkit.org/show_bug.cgi?id=196909
1375
1376         Reviewed by Wenson Hsieh.
1377
1378         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1379         (TestWebKitAPI::TEST):
1380
1381 2019-04-13  Tadeu Zagallo  <tzagallo@apple.com>
1382
1383         CodeCache should check that the UnlinkedCodeBlock was successfully created before caching it
1384         https://bugs.webkit.org/show_bug.cgi?id=196880
1385
1386         Reviewed by Yusuke Suzuki.
1387
1388         Add a new function for bytecode cache tests that does not forceDiskCache
1389         for the second run: runBytecodeCacheNoAssetion. This is necessary for the
1390         test added in this patch, since the code is invalid and therefore won't be
1391         cached. It should also be useful for tests that evaluate dynamically
1392         generated code.
1393
1394         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
1395         * Scripts/run-jsc-stress-tests:
1396
1397 2019-04-12  Eric Carlson  <eric.carlson@apple.com>
1398
1399         Update AudioSession route sharing policy
1400         https://bugs.webkit.org/show_bug.cgi?id=196776
1401         <rdar://problem/46501611>
1402
1403         Reviewed by Jer Noble.
1404
1405         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
1406         (TestWebKitAPI::routeSharingPolicyLongFormVideo):
1407         (TestWebKitAPI::routeSharingPolicyLongFormAudio):
1408         (TestWebKitAPI::TEST):
1409
1410 2019-04-12  Wenson Hsieh  <wenson_hsieh@apple.com>
1411
1412         [iOS] Software keyboard is shown too frequently on some websites
1413         https://bugs.webkit.org/show_bug.cgi?id=195856
1414         <rdar://problem/49191395>
1415
1416         Reviewed by Darin Adler.
1417
1418         Add support for attaching or detaching the hardware keyboard on iOS in layout tests.
1419
1420         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1421         (WTR::UIScriptController::setHardwareKeyboardAttached):
1422         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1423         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1424         (WTR::UIScriptController::setHardwareKeyboardAttached):
1425         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1426         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
1427
1428         Additionally link against GraphicsServices in WebKitTestRunner.
1429
1430         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1431         (WTR::TestController::platformResetStateToConsistentValues):
1432         (WTR::UIScriptController::setHardwareKeyboardAttached):
1433
1434 2019-04-12  Ludovico de Nittis  <ludovico.denittis@collabora.com>
1435
1436         [GTK][WPE] Fix pacman install-dependencies packages
1437         https://bugs.webkit.org/show_bug.cgi?id=196817
1438
1439         Reviewed by Žan Doberšek.
1440         
1441         python3-setuptools is called python-setuptools
1442         ruby-highline is only available on AUR
1443         libv4l-devel is incorporated in v4l-utils
1444
1445         * gtk/install-dependencies:
1446         * wpe/install-dependencies:
1447
1448 2019-04-11  Carlos Garcia Campos  <cgarcia@igalia.com>
1449
1450         [GTK] REGRESSION(r243860): Many tests failing
1451         https://bugs.webkit.org/show_bug.cgi?id=196791
1452
1453         Reviewed by Joanmarie Diggs.
1454
1455         Rework the accessibility unit test to use DBus for the communication with the server. This way we can load
1456         multiple documents and check that accessibility hierarchy is updated after a navigation.
1457
1458         * TestWebKitAPI/Tests/WebKitGtk/AccessibilityTestServer.cpp:
1459         (loadChangedCallback):
1460         * TestWebKitAPI/Tests/WebKitGtk/TestWebKitAccessibility.cpp:
1461         (AccessibilityTest::AccessibilityTest):
1462         (AccessibilityTest::~AccessibilityTest):
1463         (AccessibilityTest::loadHTMLAndWaitUntilFinished):
1464         (AccessibilityTest::findTestServerApplication):
1465         (AccessibilityTest::findDocumentWeb):
1466         (AccessibilityTest::findRootObject):
1467         (AccessibilityTest::waitUntilChildrenRemoved):
1468         (AccessibilityTest::ensureProxy):
1469         (testAtspiBasicHierarchy):
1470         (beforeAll):
1471         (afterAll):
1472
1473 2019-04-11  Aakash Jain  <aakash_jain@apple.com>
1474
1475         [ews-build] Handle bug titles with unicode characters
1476         https://bugs.webkit.org/show_bug.cgi?id=196802
1477
1478         Reviewed by Dewei Zhu.
1479
1480         * BuildSlaveSupport/ews-build/steps.py:
1481         (ValidatePatch._is_bug_closed):
1482
1483 2019-04-11  Michael Saboff  <msaboff@apple.com>
1484
1485         Improve the Inline Cache Stats code
1486         https://bugs.webkit.org/show_bug.cgi?id=196836
1487
1488         Reviewed by Saam Barati.
1489
1490         Added a new script to consolidate and arrange the output of --useICStats option.
1491
1492         This script merges the output from every group into one large table and sorts it from most common to
1493         least common.  It also counts the slow path GetById and PutById variants and then calculates the
1494         percentage of gets or puts for each unique base,property pair compared to all the gets and puts.
1495         Put together, this is useful to see what property accesses are not getting cached.
1496
1497         * Scripts/ic-stats.py: Added.
1498         (ICStats):
1499         (ICStats.__init__):
1500         (ICStats.parse):
1501         (ICStats.dumpStats):
1502         (usage):
1503
1504 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1505
1506         WKNavigationResponse._downloadAttribute should be nil when no download attribute is present
1507         https://bugs.webkit.org/show_bug.cgi?id=196809
1508         <rdar://49800762>
1509
1510         Reviewed by Brady Eidson.
1511
1512         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1513         (TEST):
1514
1515 2019-04-10  Said Abou-Hallawa  <sabouhallawa@apple.com>
1516
1517         requestAnimationFrame should execute before the next frame
1518         https://bugs.webkit.org/show_bug.cgi?id=177484
1519
1520         Reviewed by Simon Fraser.
1521
1522         Add trace points for the page RenderingUpdate.
1523
1524         * Tracing/SystemTracePoints.plist:
1525
1526 2019-04-10  Fujii Hironori  <Hironori.Fujii@sony.com>
1527
1528         [Win] Use a bundled vswhere.exe instead of downloading by update-vswhere.py
1529         https://bugs.webkit.org/show_bug.cgi?id=196760
1530
1531         Reviewed by Don Olmstead.
1532
1533         vswhere.exe has been bundled since Visual Studio 2017 version
1534         15.2. We shouldn't download vswhere.exe.
1535
1536         * Scripts/build-jsc: Do not call update-vswhere.py.
1537         * Scripts/build-webkit: Ditto.
1538         * Scripts/update-vswhere.py: Removed.
1539         * Scripts/webkitdirs.pm:
1540         (requireModulesForVSWhere): Deleted.
1541         (pickCurrentVisualStudioInstallation): Deleted.
1542         (visualStudioInstallDirVSWhere): Return the latest installed VS
1543         installation path by using the bundled vswhere.exe.
1544         (setupCygwinEnv): Removed a unused variable $visualStudioPath.
1545         (visualStudioInstallDirFallback): Removed.
1546
1547 2019-04-10  Aakash Jain  <aakash_jain@apple.com>
1548
1549         [ews-build] PrintConfiguration should display Xcode version instead of SDKVersion
1550         https://bugs.webkit.org/show_bug.cgi?id=196780
1551
1552         Reviewed by Alexey Proskuryakov.
1553
1554         * BuildSlaveSupport/ews-build/steps.py:
1555         * BuildSlaveSupport/ews-build/steps_unittest.py:
1556
1557 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1558
1559         Add SPI WKNavigationResponse._downloadAttribute
1560         https://bugs.webkit.org/show_bug.cgi?id=196755
1561         <rdar://49587365>
1562
1563         Reviewed by Brady Eidson.
1564
1565         * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1566         (-[NavigationResponseTestDelegate navigationResponse]):
1567         (-[NavigationResponseTestDelegate waitForNavigationResponseCallback]):
1568         (-[NavigationResponseTestDelegate waitForNavigationFinishedCallback]):
1569         (-[NavigationResponseTestDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1570         (-[NavigationResponseTestDelegate webView:didFinishNavigation:]):
1571         (-[NavigationResponseTestDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
1572         (readRequest):
1573         (writeResponse):
1574         (TEST):
1575
1576 2019-04-10  Tim Horton  <timothy_horton@apple.com>
1577
1578         Add modern API for overriding the page's specified viewport configuration
1579         https://bugs.webkit.org/show_bug.cgi?id=167734
1580         <rdar://problem/30331795>
1581
1582         Reviewed by Simon Fraser.
1583
1584         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1585         * TestWebKitAPI/Tests/WebKitCocoa/OverrideViewportArguments.mm: Added.
1586
1587 2019-04-10  Tadeu Zagallo  <tzagallo@apple.com>
1588
1589         Add support for incremental bytecode cache updates
1590         https://bugs.webkit.org/show_bug.cgi?id=195000
1591
1592         Reviewed by Filip Pizlo.
1593
1594         Exit when the initial run to generate bytecode fails.
1595
1596         * Scripts/jsc-stress-test-helpers/bytecode-cache-test-helper.sh:
1597
1598 2019-04-10  Alex Christensen  <achristensen@webkit.org>
1599
1600         RemoteObjectRegistry message receiver should be removed when WebPage::close is called instead of waiting until dealloc
1601         https://bugs.webkit.org/show_bug.cgi?id=196744
1602         <rdar://49415309>
1603
1604         Reviewed by Chris Dumez.
1605
1606         * TestWebKitAPI/Tests/WebKitCocoa/BundleRetainPagePlugIn.mm:
1607         (-[BundleRetainPagePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
1608
1609 2019-04-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1610
1611         Add a way to opt into modern compatibility mode in layout tests
1612         https://bugs.webkit.org/show_bug.cgi?id=196770
1613         <rdar://problem/49777550>
1614
1615         Reviewed by Antoine Quint.
1616
1617         Add a new test option to enable modern compatibility mode in layout tests.
1618
1619         * WebKitTestRunner/TestController.cpp:
1620         (WTR::updateTestOptionsFromTestHeader):
1621         * WebKitTestRunner/TestController.h:
1622         * WebKitTestRunner/TestOptions.h:
1623         (WTR::TestOptions::hasSameInitializationOptions const):
1624         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1625         (WTR::TestController::platformCreateWebView):
1626         (WTR::TestController::enableModernCompatibilityMode):
1627
1628 2019-04-10  Andy Estes  <aestes@apple.com>
1629
1630         Try to fix the 32-bit watchOS build.
1631
1632         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1633         (-[TestWKWebView evaluateJavaScriptAndWaitForInputSessionToChange:]):
1634
1635 2019-04-10  Antoine Quint  <graouts@apple.com>
1636
1637         Enable Pointer Events on watchOS
1638         https://bugs.webkit.org/show_bug.cgi?id=196771
1639         <rdar://problem/49040909>
1640
1641         Reviewed by Dean Jackson.
1642
1643         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1644
1645 2019-04-10  Philippe Normand  <pnormand@igalia.com>
1646
1647         Unreviewed. Fix WPE accessibility tests after r244059.
1648
1649         We are failing to load the injected bundle due to undefined symbol
1650         AccessibilityUIElement::replaceTextInRange().
1651
1652         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
1653         (WTR::AccessibilityUIElement::replaceTextInRange):
1654
1655 2019-04-10  Takashi Komori  <Takashi.Komori@sony.com>
1656
1657         [WinCairo][MiniBrowser] Pull down menu "Disable JavaScript" doesn't work.
1658         https://bugs.webkit.org/show_bug.cgi?id=196727
1659
1660         Reviewed by Fujii Hironori.
1661
1662         * MiniBrowser/win/WebKitBrowserWindow.cpp:
1663         (WebKitBrowserWindow::create):
1664
1665 2019-04-09  Aakash Jain  <aakash_jain@apple.com>
1666
1667         [ews-build] Add unit tests for PrintConfiguration
1668         https://bugs.webkit.org/show_bug.cgi?id=196752
1669
1670         Reviewed by Dewei Zhu.
1671
1672         * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
1673
1674 2019-04-09  Keith Rollin  <krollin@apple.com>
1675
1676         Unreviewed build maintenance -- update .xcfilelists.
1677
1678         * DumpRenderTree/DerivedSources-input.xcfilelist:
1679         * DumpRenderTree/DerivedSources-output.xcfilelist:
1680
1681 2019-04-09  Zalan Bujtas  <zalan@apple.com>
1682
1683         [AutoSizing] Avoid making text paragraphs scroll horizontally when there is a wide table
1684         https://bugs.webkit.org/show_bug.cgi?id=196743
1685         <rdar://problem/43897551>
1686
1687         Reviewed by Tim Horton.
1688
1689         * TestWebKitAPI/Tests/WebKitCocoa/AutoLayoutIntegration.mm: expected behavior change.
1690         (TEST):
1691
1692 2019-04-09  Youenn Fablet  <youenn@apple.com>
1693
1694         Close service worker database on network process suspension
1695         https://bugs.webkit.org/show_bug.cgi?id=196623
1696         <rdar://problem/48930869>
1697
1698         Reviewed by Alex Christensen.
1699
1700         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1701
1702 2019-04-09  Daniel Bates  <dabates@apple.com>
1703
1704         [iPad] Should open popover when the spacebar is pressed
1705         https://bugs.webkit.org/show_bug.cgi?id=196360
1706         <rdar://problem/49389129>
1707
1708         Reviewed by Brent Fulgham.
1709
1710         Add testing infrastructure to support waiting for a popover to be presented or dismissed.
1711
1712         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1713         (WTR::UIScriptController::isShowingPopover const): Added.
1714         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1715         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1716         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1717         * TestRunnerShared/UIScriptContext/UIScriptContext.h:
1718         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1719         (WTR::UIScriptController::setWillPresentPopoverCallback): Added.
1720         (WTR::UIScriptController::willPresentPopoverCallback const): Added.
1721         (WTR::UIScriptController::setDidDismissPopoverCallback): Added.
1722         (WTR::UIScriptController::didDismissPopoverCallback const): Added.
1723         (WTR::UIScriptController::isShowingPopover const): Added.
1724         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1725         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1726         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1727         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
1728         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1729         (-[TestRunnerWKWebView initWithFrame:configuration:]): Update some state.
1730         (-[TestRunnerWKWebView resetInteractionCallbacks]): Ditto.
1731         (-[TestRunnerWKWebView _willPresentPopover]): Added.
1732         (-[TestRunnerWKWebView _didDismissPopover]): Added.
1733         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1734         (WTR::UIScriptController::isShowingPopover const): Added.
1735         (WTR::UIScriptController::platformSetWillPresentPopoverCallback): Added.
1736         (WTR::UIScriptController::platformSetDidDismissPopoverCallback): Added.
1737
1738 2019-04-09  Alex Christensen  <achristensen@webkit.org>
1739
1740         Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
1741         https://bugs.webkit.org/show_bug.cgi?id=196665
1742         <rdar://45115669>
1743
1744         Reviewed by Geoff Garen.
1745
1746         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
1747         (goBack):
1748         (+[SimpleLookupContext sharedLookupContext]):
1749         (-[SimpleLookupContext lookUpURL:completionHandler:]):
1750         (TEST):
1751         (+[Simple3LookupContext sharedLookupContext]): Deleted.
1752         (-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
1753
1754 2019-04-09  John Wilander  <wilander@apple.com>
1755
1756         Pick up Ad Click Attribution conversions in NetworkResourceLoader::willSendRedirectedRequest()
1757         https://bugs.webkit.org/show_bug.cgi?id=196558
1758         <rdar://problem/47650245>
1759
1760         Reviewed by Youenn Fablet.
1761
1762         * TestWebKitAPI/Tests/WebCore/AdClickAttribution.cpp:
1763         (TestWebKitAPI::TEST):
1764             Added tests of WebCore::AdClickAttribution::parseConversionRequest().
1765
1766 2019-04-09  Don Olmstead  <don.olmstead@sony.com>
1767
1768         [CMake] Apple builds should use ICU_INCLUDE_DIRS
1769         https://bugs.webkit.org/show_bug.cgi?id=196720
1770
1771         Reviewed by Konstantin Tokarev.
1772
1773         * TestWebKitAPI/PlatformMac.cmake:
1774
1775 2019-04-09  Jonathan Bedard  <jbedard@apple.com>
1776
1777         iOS 12 Simulator Release WK2 frequently timing out while running layout tests
1778         https://bugs.webkit.org/show_bug.cgi?id=196694
1779         <rdar://problem/48388734>
1780
1781         Rubber-stamped by Aakash Jain.
1782
1783         * Scripts/webkitpy/port/image_diff.py:
1784         (ImageDiffer.diff_image): If the ImageDiff process has data, kill it before running again.
1785         * Scripts/webkitpy/port/server_process.py:
1786         (ServerProcess.has_available_stdout): Check if stdout has data in it.
1787         (ServerProcess._wait_for_data_and_update_buffers_using_select):
1788         (ServerProcess._wait_for_data_and_update_buffers_using_win32_apis):
1789         * Scripts/webkitpy/port/server_process_mock.py:
1790         (MockServerProcess.has_available_stdout):
1791         * Scripts/webkitpy/port/server_process_unittest.py:
1792         (TestServerProcess.serial_test_basic):
1793
1794 2019-04-09  Jer Noble  <jer.noble@apple.com>
1795
1796         Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
1797         https://bugs.webkit.org/show_bug.cgi?id=196097
1798
1799         Reviewed by Eric Carlson.
1800
1801         Drive-by bug fix: allow tests to play audio without a user gesture by default.
1802
1803         * DumpRenderTree/mac/DumpRenderTree.mm:
1804         (resetWebPreferencesToConsistentValues):
1805         * WebKitTestRunner/TestController.cpp:
1806         (WTR::TestController::resetPreferencesToConsistentValues):
1807
1808 2019-04-09  Pablo Saavedra  <psaavedra@igalia.com>
1809
1810         [JSCOnly] Add an i386 JSCOnly EWS that runs tests
1811         https://bugs.webkit.org/show_bug.cgi?id=196690
1812
1813         Reviewed by Michael Catanzaro.
1814
1815         * QueueStatusServer/config/queues.py:
1816         * Scripts/webkitpy/common/config/ews.json:
1817         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1818         (test_ews_name):
1819
1820 2019-04-09  Chris Dumez  <cdumez@apple.com>
1821
1822         Loads using loadHTMLString() cause flashing when process-swapping
1823         https://bugs.webkit.org/show_bug.cgi?id=196714
1824         <rdar://problem/49637354>
1825
1826         Reviewed by Antti Koivisto.
1827
1828         Add API test coverage.
1829
1830         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1831
1832 2019-04-09  Carlos Garcia Campos  <cgarcia@igalia.com>
1833
1834         Unreviewed. Fix ATK accessibility tests after r244059.
1835
1836         We are failing to load the injected bundle due to undefined symbol
1837         AccessibilityUIElement::replaceTextInRange().
1838
1839         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1840         (WTR::AccessibilityUIElement::replaceTextInRange):
1841
1842 2019-04-08  Fujii Hironori  <Hironori.Fujii@sony.com>
1843
1844         AX: Support API: accessibilityReplaceRange:withText
1845         https://bugs.webkit.org/show_bug.cgi?id=196636
1846
1847         Unreviewed build fix for Windows port.
1848
1849         * WebKitTestRunner/InjectedBundle/win/AccessibilityUIElementWin.cpp:
1850         (WTR::AccessibilityUIElement::replaceTextInRange): Added.
1851
1852 2019-04-08  Don Olmstead  <don.olmstead@sony.com>
1853
1854         [CMake][WinCairo] Separate copied headers into different directories
1855         https://bugs.webkit.org/show_bug.cgi?id=196655
1856
1857         Reviewed by Michael Catanzaro.
1858
1859         * DumpRenderTree/CMakeLists.txt:
1860         * MiniBrowser/win/CMakeLists.txt:
1861         * TestWebKitAPI/CMakeLists.txt:
1862         * TestWebKitAPI/PlatformWin.cmake:
1863
1864 2019-04-08  Jonathan Bedard  <jbedard@apple.com>
1865
1866         Log stack-trace for run-webkit-tests when interrupted
1867         https://bugs.webkit.org/show_bug.cgi?id=176393
1868         <rdar://problem/34262310>
1869
1870         Reviewed by Lucas Forschler.
1871
1872         * Scripts/webkitpy/common/interrupt_debugging.py: Added.
1873         (log_stack_trace): Given a Python frame object, log a stack trace to the provided file.
1874         (StackTraceFileContext): Context which allows stack-traces to be printed to stderr or to a file. 
1875         (log_stack_trace_on_term): Attach a listener to SIGTERM so that a stack-trace can be logged when a program is terminated.
1876         (log_stack_trace_on_ctrl_c): Attach a listener to SIGINT so that a stack-trace can be logged when a program is CTRL+Ced. 
1877         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1878         (main): Set handlers to log stack trace on interruption.
1879
1880 2019-04-08  Fujii Hironori  <Hironori.Fujii@sony.com>
1881
1882         AX: Support API: accessibilityReplaceRange:withText
1883         https://bugs.webkit.org/show_bug.cgi?id=196636
1884
1885         Unreviewed build fix for Windows port.
1886
1887         * DumpRenderTree/AccessibilityUIElement.cpp:
1888         (AccessibilityUIElement::replaceTextInRange): Changed the return value type from void to bool.
1889
1890 2019-04-08  Aakash Jain  <aakash_jain@apple.com>
1891
1892         [ews-build] Scripts using Buildbot API have CORS error
1893         https://bugs.webkit.org/show_bug.cgi?id=196709
1894
1895         Reviewed by Alexey Proskuryakov.
1896
1897         * BuildSlaveSupport/ews-build/master.cfg: Set allowed_origins appropriately.
1898
1899 2019-04-08  Chris Fleizach  <cfleizach@apple.com>
1900
1901         AX: Support API: accessibilityReplaceRange:withText
1902         https://bugs.webkit.org/show_bug.cgi?id=196636
1903
1904         Reviewed by Daniel Bates.
1905
1906         * DumpRenderTree/AccessibilityUIElement.cpp:
1907         (replaceTextInRangeCallback):
1908         (AccessibilityUIElement::replaceTextInRange):
1909         (AccessibilityUIElement::getJSClass):
1910         * DumpRenderTree/AccessibilityUIElement.h:
1911         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1912         (AccessibilityUIElement::replaceTextInRange):
1913         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1914         (AccessibilityUIElement::replaceTextInRange):
1915         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
1916         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
1917         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
1918         (WTR::AccessibilityUIElement::replaceTextInRange):
1919         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
1920         (WTR::AccessibilityUIElement::replaceTextInRange):
1921
1922 2019-04-08  Wenson Hsieh  <wenson_hsieh@apple.com>
1923
1924         [iOS] Do not allow starting selection drags when selection views are not visible
1925         https://bugs.webkit.org/show_bug.cgi?id=196686
1926         <rdar://problem/49399192>
1927
1928         Reviewed by Tim Horton.
1929
1930         Adjust some existing API tests to make the web view become first responder before trying to begin dragging, and
1931         also add some new API tests to cover scenarios where the web view is not first responder.
1932
1933         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
1934         (TestWebKitAPI::TEST):
1935         * TestWebKitAPI/cocoa/DragAndDropSimulator.h:
1936
1937         Add a switch to optionally make the web view first responder when starting the simulated drag.
1938
1939         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
1940         (-[DragAndDropSimulator initWithWebView:]):
1941         (-[DragAndDropSimulator runFrom:to:additionalItemRequestLocations:]):
1942
1943 2019-04-08  Justin Fan  <justin_fan@apple.com>
1944
1945         [Web GPU] Fix Web GPU experimental feature on iOS
1946         https://bugs.webkit.org/show_bug.cgi?id=196632
1947
1948         Reviewed by Myles C. Maxfield.
1949
1950         Properly make Web GPU available on iOS 11+.
1951
1952         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1953
1954 2019-04-08  Aakash Jain  <aakash_jain@apple.com>
1955
1956         [ews-build] Do not upload archive when Compile Fails
1957         https://bugs.webkit.org/show_bug.cgi?id=196674
1958
1959         Reviewed by Alexey Proskuryakov.
1960
1961         * BuildSlaveSupport/ews-build/factories.py:
1962         (BuildFactory.__init__): Remove steps which require dynamic decision about whether to run or not.
1963         * BuildSlaveSupport/ews-build/steps.py:
1964         (CompileWebKit.evaluateCommand): Dynamically decide which steps to run based on compile status.
1965         (CompileWebKitToT.evaluateCommand): Explicitly override Compile.evaluateCommand so that it 
1966         doesn't inherit CompileWebKit.evaluateCommand which dynamically adds more steps.
1967
1968 2019-04-08  Guillaume Emont  <guijemont@igalia.com>
1969
1970         Enable DFG on MIPS
1971         https://bugs.webkit.org/show_bug.cgi?id=196689
1972
1973         Reviewed by Žan Doberšek.
1974
1975         Since the bytecode change, we enabled the baseline JIT on mips in
1976         r240432, but DFG is still missing. With this change, all tests are
1977         passing on a ci20 board.
1978
1979         * Scripts/run-jsc-stress-tests: Enable DFG tests on MIPS.
1980
1981 2019-04-08  Philippe Normand  <pnormand@igalia.com>
1982
1983         [Flatpak] Second run update-webkitwpe-flatpak fails
1984         https://bugs.webkit.org/show_bug.cgi?id=192702
1985
1986         Reviewed by Carlos Garcia Campos.
1987
1988         * flatpak/flatpakutils.py:
1989         (FlatpakObject.flatpak): Fix typo.
1990         (FlatpakPackage.install): When installing, also update to the configured remote commit.
1991         * flatpak/org.webkit.WebKit.yaml: Update GNOME 3.28 SDK/runtime hashes.
1992
1993 2019-04-05  Sergio Villar Senin  <svillar@igalia.com>
1994
1995         [GTK][WPE] outlook.live.com displays old-fashioned UI
1996         https://bugs.webkit.org/show_bug.cgi?id=196642
1997
1998         Reviewed by Carlos Garcia Campos.
1999
2000         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
2001         (TestWebKitAPI::TEST): New Mac platform quirk test.
2002
2003 2019-04-07  Commit Queue  <commit-queue@webkit.org>
2004
2005         Unreviewed, rolling out r243956.
2006         https://bugs.webkit.org/show_bug.cgi?id=196688
2007
2008         Broke API Test SafeBrowsing.WKWebViewGoBackIFrame (Requested
2009         by aakashjain on #webkit).
2010
2011         Reverted changeset:
2012
2013         "Clicking "Go Back" from a safe browsing warning from an
2014         iframe should navigate the WKWebView back to the previous
2015         page"
2016         https://bugs.webkit.org/show_bug.cgi?id=196665
2017         https://trac.webkit.org/changeset/243956
2018
2019 2019-04-06  Ryosuke Niwa  <rniwa@webkit.org>
2020
2021         Added tests for WeakHashSet::computesEmpty and WeakHashSet::computeSize
2022         https://bugs.webkit.org/show_bug.cgi?id=196669
2023
2024         Reviewed by Geoffrey Garen.
2025
2026         Added three new unit tests for WeakHashSet.
2027
2028         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
2029         (WTF_WeakPtr.WeakHashSetConstObjects):
2030         (WTF_WeakPtr.WeakHashSetComputesEmpty):
2031         (WTF_WeakPtr.WeakHashSetComputeSize):
2032
2033 2019-04-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2034
2035         Hide next and previous form control buttons when WKWebView is editable
2036         https://bugs.webkit.org/show_bug.cgi?id=196672
2037         <rdar://problem/35625321>
2038
2039         Reviewed by Tim Horton.
2040
2041         Add a new API test.
2042
2043         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
2044         (-[TestWKWebView lastTrailingBarButtonGroup]):
2045         (TestWebKitAPI::TEST):
2046         * TestWebKitAPI/ios/UIKitSPI.h:
2047
2048 2019-04-05  Yongjun Zhang  <yongjun_zhang@apple.com>
2049
2050         We should pass minimumEffectiveDeviceWidth to web process on new page creation.
2051         https://bugs.webkit.org/show_bug.cgi?id=196077
2052         <rdar://problem/49108202>
2053
2054         Reviewed by Chris Dumez.
2055
2056         Add an API test to verify the minimumEffectDeviceWidth is passed to web content process
2057         on new web view.
2058
2059         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2060
2061 2019-04-05  Saam Barati  <sbarati@apple.com>
2062
2063         Make compare-results understand MotionMark
2064         https://bugs.webkit.org/show_bug.cgi?id=196666
2065
2066         Reviewed by Yusuke Suzuki.
2067
2068         * Scripts/compare-results:
2069         (PLT5Results):
2070         (detectMotionMark):
2071         (detectMotionMark1_1):
2072         (motionMarkResults):
2073         (motionMark1_1Results):
2074         (detectBenchmark):
2075         (biggerIsBetter):
2076         (main):
2077
2078 2019-04-05  Alex Christensen  <achristensen@webkit.org>
2079
2080         Clicking "Go Back" from a safe browsing warning from an iframe should navigate the WKWebView back to the previous page
2081         https://bugs.webkit.org/show_bug.cgi?id=196665
2082         <rdar://45115669>
2083
2084         Reviewed by Geoff Garen.
2085
2086         * TestWebKitAPI/Tests/WebKitCocoa/SafeBrowsing.mm:
2087         (goBack):
2088         (+[SimpleLookupContext sharedLookupContext]):
2089         (-[SimpleLookupContext lookUpURL:completionHandler:]):
2090         (TEST):
2091         (+[Simple3LookupContext sharedLookupContext]): Deleted.
2092         (-[Simple3LookupContext lookUpURL:completionHandler:]): Deleted.
2093
2094 2019-04-05  Aakash Jain  <aakash_jain@apple.com>
2095
2096         [ews-build] Add configuration and architecture for windows builders
2097         https://bugs.webkit.org/show_bug.cgi?id=196660
2098
2099         Reviewed by Lucas Forschler.
2100
2101         * BuildSlaveSupport/ews-build/config.json:
2102
2103 2019-04-05  Jonathan Bedard  <jbedard@apple.com>
2104
2105         webkitpy: Don't run subsequent rounds if interrupted
2106         https://bugs.webkit.org/show_bug.cgi?id=196646
2107
2108         Reviewed by Aakash Jain.
2109
2110         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2111         (Manager.run): Bail out if interrupted.
2112
2113 2019-04-05  Sihui Liu  <sihui_liu@apple.com>
2114
2115         Test sessionStorage in PSON private browsing mode
2116         https://bugs.webkit.org/show_bug.cgi?id=196561
2117
2118         Reviewed by Alex Christensen.
2119
2120         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2121
2122 2019-04-05  Commit Queue  <commit-queue@webkit.org>
2123
2124         Unreviewed, rolling out r243833.
2125         https://bugs.webkit.org/show_bug.cgi?id=196645
2126
2127         This change breaks build of WPE and GTK ports (Requested by
2128         annulen on #webkit).
2129
2130         Reverted changeset:
2131
2132         "[CMake][WTF] Mirror XCode header directories"
2133         https://bugs.webkit.org/show_bug.cgi?id=191662
2134         https://trac.webkit.org/changeset/243833
2135
2136 2019-04-04  Simon Fraser  <simon.fraser@apple.com>
2137
2138         Simple iframe scrolling test fails to get a composited scrolling frame in WebKitTestRunnerApp
2139         https://bugs.webkit.org/show_bug.cgi?id=196635
2140
2141         Reviewed by Antti Koivisto.
2142         
2143         InjectedBundle::beginTesting() calling WKBundleSetAsyncFrameScrollingEnabled() makes it impossible
2144         for a test to enable async frame scrolling via:
2145             <!-- webkit-test-runner [ internal:AsyncFrameScrollingEnabled=true ] -->
2146         so remove it and have TestController::resetPreferencesToConsistentValues() set the default value.
2147         
2148         Test: scrollingcoordinator/ios/programmatic-frame-scroll.html
2149
2150         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2151         (WTR::InjectedBundle::beginTesting):
2152         * WebKitTestRunner/TestController.cpp:
2153         (WTR::TestController::resetPreferencesToConsistentValues):
2154
2155 2019-04-04  Alexey Proskuryakov  <ap@apple.com>
2156
2157         Use a correct LC_RPATH when building with ASan
2158         https://bugs.webkit.org/show_bug.cgi?id=196576
2159
2160         Reviewed by David Kilzer.
2161
2162         * asan/asan.xcconfig: As a temporary hack, just force LC_RPATH on all binaries,
2163         so that ../Frameworks is checked. This is simpler and more reliable than updating
2164         each SPC service xcconfig.
2165
2166 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
2167
2168         Disable Flaky API Test TestWebKitAPI.WebKit.FocusTextInputContext
2169         https://bugs.webkit.org/show_bug.cgi?id=196629
2170
2171         Reviewed by Lucas Forschler.
2172
2173         * TestWebKitAPI/Tests/WebKitCocoa/RequestTextInputContext.mm:
2174
2175 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
2176
2177         [ews-app] while waiting in queue status-bubble for testers queues should display build information from builder queue
2178         https://bugs.webkit.org/show_bug.cgi?id=196618
2179
2180         Reviewed by Lucas Forschler.
2181
2182         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2183         (StatusBubble): Added QUEUE_TRIGGERS.
2184         (StatusBubble._build_bubble): Get the build from builder if tester has not started the build yet.
2185         (StatusBubble._get_parent_queue): Get the name of the parent (builder) queue.
2186         (StatusBubble.get_latest_build_for_queue): If the queue doesn't have any build yet, return build information from
2187         its parent(builder).
2188
2189 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
2190
2191         [ews-app] Status-bubble steps are sometimes displayed in reverse order
2192         https://bugs.webkit.org/show_bug.cgi?id=196625
2193
2194         Reviewed by Lucas Forschler.
2195
2196         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2197         (StatusBubble._steps_messages): Explicitly specify order_by('uid').
2198
2199 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
2200
2201         Disable Flaky API Test TestWebKitAPI.KeyboardInputTests.KeyboardTypeForInput
2202         https://bugs.webkit.org/show_bug.cgi?id=196630
2203
2204         Reviewed by Wenson Hsieh.
2205
2206         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
2207
2208 2019-04-04  Youenn Fablet  <youenn@apple.com>
2209
2210         Pass storage quota parameters from UIProcess to NetworkProcess as part of WebsiteDataStore parameters
2211         https://bugs.webkit.org/show_bug.cgi?id=196543
2212
2213         Reviewed by Alex Christensen.
2214
2215         * WebKitTestRunner/TestController.cpp:
2216         (WTR::TestController::generatePageConfiguration):
2217
2218 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
2219
2220         [ews-app] Status bubble should not display skipped buildbot steps
2221         https://bugs.webkit.org/show_bug.cgi?id=196584
2222
2223         Reviewed by Lucas Forschler.
2224
2225         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2226
2227 2019-04-04  Aakash Jain  <aakash_jain@apple.com>
2228
2229         [ews-app] configure localhost as BUILDBOT_SERVER_HOST in testing mode
2230         https://bugs.webkit.org/show_bug.cgi?id=196620
2231
2232         Reviewed by Lucas Forschler.
2233
2234         * BuildSlaveSupport/ews-app/ews/config.py:
2235
2236 2019-04-04  Per Arne Vollan  <pvollan@apple.com>
2237
2238         [Win] DumpRenderTreeWatchDog.py is not checked into source
2239         https://bugs.webkit.org/show_bug.cgi?id=196567
2240         <rdar://problem/49525901>
2241
2242         Reviewed by Lucas Forschler.
2243
2244         This script is used on Win EWS bots to terminate hanging DRT processes.
2245
2246         * EWSTools/dumprendertreewatchdog.py: Added.
2247
2248 2019-04-04  Chris Dumez  <cdumez@apple.com>
2249
2250         Unreviewed, roll out r243858 which made tests time out.
2251
2252         Disable new API tests on Windows instead.
2253
2254         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
2255         (TestWebKitAPI::TEST):
2256
2257 2019-04-03  Carlos Garcia Campos  <cgarcia@igalia.com>
2258
2259         [ATK] Cleanup WebPageAccessibilityObjectAtk
2260         https://bugs.webkit.org/show_bug.cgi?id=196537
2261
2262         Reviewed by Michael Catanzaro.
2263
2264         Also consider files under atk directories as exceptions for GObject conventions.
2265
2266         * Scripts/webkitpy/style/checkers/cpp.py:
2267         (check_identifier_name_in_declaration):
2268
2269 2019-04-03  Fujii Hironori  <Hironori.Fujii@sony.com>
2270
2271         The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
2272         https://bugs.webkit.org/show_bug.cgi?id=196588
2273         <rdar://problem/49365787>
2274
2275         Unreviewed build fix for Windows port.
2276
2277         error C3861: 'kill': identifier not found
2278
2279         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
2280         (TestWebKitAPI::TEST): Replaced kill with WKPageTerminate.
2281
2282 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
2283
2284         [ews-build] Cancel build and similar operations should have authentication
2285         https://bugs.webkit.org/show_bug.cgi?id=196520
2286
2287         Reviewed by Dewei Zhu.
2288
2289         * BuildSlaveSupport/ews-build/master.cfg: Configure authentication using admin's username and password from
2290         environment variables.
2291
2292 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
2293
2294         [ews-build] Do not trigger queues which are not in production yet
2295         https://bugs.webkit.org/show_bug.cgi?id=196581
2296
2297         Reviewed by Dewei Zhu.
2298
2299         * BuildSlaveSupport/ews-build/config.json:
2300
2301 2019-04-03  Chris Dumez  <cdumez@apple.com>
2302
2303         Unreviewed, fix typo in the name of API test added in r243848.
2304
2305         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
2306         (TestWebKitAPI::TEST):
2307
2308 2019-04-03  Chris Dumez  <cdumez@apple.com>
2309
2310         The page's focusedFrame / frameSetLargestFrame do not get cleared on process swap or crash
2311         https://bugs.webkit.org/show_bug.cgi?id=196588
2312         <rdar://problem/49365787>
2313
2314         Reviewed by Ryosuke Niwa.
2315
2316         Add API test coverage.
2317
2318         * TestWebKitAPI/Tests/WebKit/ReloadPageAfterCrash.cpp:
2319         (TestWebKitAPI::nullJavaScriptCallback):
2320         (TestWebKitAPI::didCrashCheckFrames):
2321         (TestWebKitAPI::TEST):
2322
2323 2019-04-03  Jonathan Bedard  <jbedard@apple.com>
2324
2325         run-webkit-tests: Upload test results (new results database)
2326         https://bugs.webkit.org/show_bug.cgi?id=196577
2327         <rdar://problem/34841155>
2328
2329         Reviewed by Lucas Forschler.
2330
2331         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2332         (Manager.run): Upload results after each device shard, since the configuration will be
2333         different for each device.
2334         (Manager._results_to_upload_json_trie): Convert a TestRunResults object to a trie to be
2335         uploaded to a results database.
2336         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2337         (parse_args): Add new 'Upload Options' and prepare 'Results JSON Options' for deprecation.
2338
2339 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
2340
2341         -apple-trailing-word is needed for browser detection
2342         https://bugs.webkit.org/show_bug.cgi?id=196575
2343
2344         Unreviewed.
2345
2346         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2347
2348 2019-04-03  Don Olmstead  <don.olmstead@sony.com>
2349
2350         [CMake][WTF] Mirror XCode header directories
2351         https://bugs.webkit.org/show_bug.cgi?id=191662
2352
2353         Reviewed by Konstantin Tokarev.
2354
2355         Use WTFFramework as a dependency and include frameworks/WTF.cmake for AppleWin internal
2356         builds.
2357
2358         * CMakeLists.txt:
2359         * DumpRenderTree/CMakeLists.txt:
2360         * DumpRenderTree/PlatformWin.cmake:
2361         * MiniBrowser/win/CMakeLists.txt:
2362         * TestWebKitAPI/CMakeLists.txt:
2363         * TestWebKitAPI/PlatformWin.cmake:
2364         * WebKitTestRunner/PlatformGTK.cmake:
2365         * WebKitTestRunner/PlatformWin.cmake:
2366
2367 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
2368
2369         [ews-app] Status bubble should not display certain infrastructure status messages
2370         https://bugs.webkit.org/show_bug.cgi?id=196550
2371
2372         Reviewed by Lucas Forschler.
2373
2374         Do not display the steps which are un-needed for end-user. This information is still avaiable
2375         if the user click on the bubble and look at the Buildbot build.
2376         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2377         (StatusBubble._steps_messages):
2378         (StatusBubble._should_display_step): Method to decide whether to display the step or not.
2379
2380 2019-04-03  Aakash Jain  <aakash_jain@apple.com>
2381
2382         [ews-build] Use https for sending data to ews-app
2383         https://bugs.webkit.org/show_bug.cgi?id=196492
2384
2385         Reviewed by Lucas Forschler.
2386
2387         * BuildSlaveSupport/ews-build/events.py:
2388
2389 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
2390
2391         Remove support for -apple-trailing-word
2392         https://bugs.webkit.org/show_bug.cgi?id=196525
2393
2394         Reviewed by Zalan Bujtas.
2395
2396         This CSS property is nonstandard and not used.
2397
2398         * Scripts/webkitperl/FeatureList.pm:
2399         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2400
2401 2019-04-03  Youenn Fablet  <youenn@apple.com>
2402
2403         Add a test for DOMCache on multiple browsing in case of private browsing
2404         https://bugs.webkit.org/show_bug.cgi?id=196524
2405
2406         Reviewed by Alex Christensen.
2407
2408         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
2409         (-[SWMessageHandlerForCacheStorage userContentController:didReceiveScriptMessage:]):
2410
2411 2019-04-03  Jonathan Bedard  <jbedard@apple.com>
2412
2413         [ews] Clean out ~/Library/Logs/CoreSimulator/ on reboot
2414         https://bugs.webkit.org/show_bug.cgi?id=196540
2415
2416         Reviewed by Aakash Jain.
2417
2418         * EWSTools/start-queue-mac.sh: Remove CoreSimulator logs.
2419
2420 2019-04-03  Wenson Hsieh  <wenson_hsieh@apple.com>
2421
2422         Add plumbing for a compatibility mode preference in WebKit
2423         https://bugs.webkit.org/show_bug.cgi?id=196005
2424
2425         Reviewed by Tim Horton.
2426
2427         Add new API tests.
2428
2429         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2430         * TestWebKitAPI/ios/PreferredCompatibilityMode.mm: Added.
2431
2432 2019-04-03  Claudio Saavedra  <csaavedra@igalia.com>
2433
2434         [WPE][GTK] Update libsrtp dependency package for Debian
2435         https://bugs.webkit.org/show_bug.cgi?id=196528
2436
2437         Reviewed by Frédéric Wang.
2438
2439         * gtk/install-dependencies:
2440         * wpe/install-dependencies:
2441
2442 2019-04-02  Fujii Hironori  <Hironori.Fujii@sony.com>
2443
2444         [WK2] Add support for Window's beforeprint / afterprint events
2445         https://bugs.webkit.org/show_bug.cgi?id=196478
2446         <rdar://problem/49535124>
2447
2448         Unreviewed build fix for MSVC.
2449
2450         > WebKitTestRunner\TestController.cpp(267): error C2397: conversion from 'double' to 'float' requires a narrowing conversion
2451
2452         And, there is a style guideline. <https://webkit.org/code-style-guidelines/#floating-point-literals>
2453
2454         * WebKitTestRunner/TestController.cpp:
2455         (WTR::printFrame): Use int and float literals.
2456
2457 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
2458
2459         [ews-build] Reassign bots to queues
2460
2461         * BuildSlaveSupport/ews-build/config.json: Reassigned ews150 and ews152.
2462
2463 2019-04-02  Chris Dumez  <cdumez@apple.com>
2464
2465         [WK2] Add support for Window's beforeprint / afterprint events
2466         https://bugs.webkit.org/show_bug.cgi?id=196478
2467
2468         Reviewed by Alex Christensen.
2469
2470         Add minimal implementation for printFrame in WebKitTestRunner.
2471
2472         * WebKitTestRunner/TestController.cpp:
2473         (WTR::printFrame):
2474         (WTR::TestController::createOtherPage):
2475         (WTR::TestController::createWebViewWithOptions):
2476
2477 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
2478
2479         [ews-app] Status bubble hover over message should clearly indicate that build is in-progress
2480         https://bugs.webkit.org/show_bug.cgi?id=196491
2481
2482         Reviewed by Lucas Forschler.
2483
2484         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2485
2486 2019-04-02  Aakash Jain  <aakash_jain@apple.com>
2487
2488         [ews-build] Configure buildbot try credentials in environment variables
2489         https://bugs.webkit.org/show_bug.cgi?id=196501
2490
2491         Reviewed by Lucas Forschler.
2492
2493         * BuildSlaveSupport/ews-build/loadConfig.py: Read credentials from environment variables.
2494         * BuildSlaveSupport/ews-app/ews/common/buildbot.py: Rename BUILDBOT_PB_USERNAME to BUILDBOT_TRY_USERNAME.
2495         * BuildSlaveSupport/ews-app/ews/config.py: Ditto.
2496
2497 2019-04-02  Wenson Hsieh  <wenson_hsieh@apple.com>
2498
2499         REGRESSION (r243726): Crash at unrecognized selector: -[WKWebpagePreferences webpagePreferences]
2500         https://bugs.webkit.org/show_bug.cgi?id=196496
2501         <rdar://problem/49521634>
2502
2503         Reviewed by Chris Dumez.
2504
2505         Add new API tests (see WebKit ChangeLog for more detail).
2506
2507         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2508         (-[WebsitePoliciesNavigationDelegate _webView:decidePolicyForNavigationAction:userInfo:decisionHandler:]):
2509         (TEST):
2510
2511 2019-04-02  David Kilzer  <ddkilzer@apple.com>
2512
2513         Rename CLANG_ADDRESS_SANITIZER Xcode variable to ENABLE_ADDRESS_SANITIZER
2514         <https://webkit.org/b/196499>
2515
2516         Reviewed by Alexey Proskuryakov.
2517
2518         * asan/asan.xcconfig: Change CLANG_ADDRESS_SANITIZER to
2519         ENABLE_ADDRESS_SANITIZER.
2520
2521 2019-04-02  Fujii Hironori  <Hironori.Fujii@sony.com>
2522
2523         [CMake] WEBKIT_MAKE_FORWARDING_HEADERS shouldn't use POST_BUILD to copy generated headers
2524         https://bugs.webkit.org/show_bug.cgi?id=182757
2525
2526         Reviewed by Don Olmstead.
2527
2528         * TestWebKitAPI/PlatformGTK.cmake: Removed the workaround of using an intermediate target.
2529         * TestWebKitAPI/PlatformWPE.cmake: Ditto.
2530
2531 2019-04-01  Jonathan Bedard  <jbedard@apple.com>
2532
2533         run-api-tests: Upload test results
2534         https://bugs.webkit.org/show_bug.cgi?id=196323
2535         <rdar://problem/49356714>
2536
2537         Reviewed by Lucas Forschler.
2538
2539         * Scripts/webkitpy/api_tests/manager.py:
2540         (Manager):
2541         (Manager.run): Upload results to a results database.
2542         * Scripts/webkitpy/api_tests/run_api_tests.py:
2543         (parse_args): Add upload arguments.
2544         * Scripts/webkitpy/port/base.py:
2545         (Port):
2546         (Port.configuration_for_upload): Creates a configuration dictionary for uploading results.
2547         (Port.commits_for_upload): Create a list of commits from the WebKit repository tests are run from along
2548         with commits from any other associated repositories.
2549         * Scripts/webkitpy/port/device.py:
2550         (Device):
2551         (Device.build_version): Access build_versoin of underlying platform device.
2552         * Scripts/webkitpy/port/ios_simulator_unittest.py:
2553         (IOSSimulatorTest):
2554         (IOSSimulatorTest.test_configuration_for_upload):
2555         * Scripts/webkitpy/port/device_port.py:
2556         (DevicePort):
2557         (DevicePort.configuration_for_upload): Devices are unique because their configuration is not
2558         the same as the machine uploading results.
2559         * Scripts/webkitpy/port/mac.py:
2560         (MacPort):
2561         (MacPort.configuration_for_upload): Define SDK in upload configuration for Mac.
2562         * Scripts/webkitpy/port/mac_unittest.py:
2563         (MacTest):
2564         (MacTest.test_configuration_for_upload):
2565         * Scripts/webkitpy/xcode/simulated_device.py:
2566         (SimulatedDeviceManager._create_device_with_runtime):
2567         (SimulatedDevice.__init__): Create simulated device with a build_version.
2568         * Scripts/webkitpy/xcode/simulated_device_unittest.py:
2569         (test_existing_simulator):
2570
2571 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2572
2573         Remove extra newline characters (Follow-up fix to r243707)
2574
2575         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2576
2577 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2578
2579         [ews-app] Use API_KEY to accept results data
2580         https://bugs.webkit.org/show_bug.cgi?id=196461
2581
2582         Reviewed by Dewei Zhu.
2583
2584         * BuildSlaveSupport/ews-app/ews/views/results.py:
2585         (Results.post): Validate EWS_API_KEY before accepting any data.
2586         * BuildSlaveSupport/ews-build/events.py:
2587         (Events.sendData): Send EWS_API_KEY if available along with event data.
2588
2589 2019-04-01  Wenson Hsieh  <wenson_hsieh@apple.com>
2590
2591         Unable to copy and paste a PDF from Notes into Mail compose body
2592         https://bugs.webkit.org/show_bug.cgi?id=196442
2593         <rdar://problem/48573098>
2594
2595         Reviewed by Tim Horton.
2596
2597         Add new API tests to exercise pasting CNContact and MKMapItem-backed item providers. Additionally, adjust an
2598         existing test that pastes a PDF file as an attachment to not require UIPreferredPresentationStyleAttachment
2599         to be specified on the item providers.
2600
2601         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2602         (TestWebKitAPI::mapItemForTesting):
2603         (TestWebKitAPI::contactItemForTesting):
2604
2605 2019-04-01  Tim Horton  <timothy_horton@apple.com>
2606
2607         Make UIWKDocumentContext rects per-character instead of per-word
2608         https://bugs.webkit.org/show_bug.cgi?id=196459
2609
2610         Reviewed by Wenson Hsieh.
2611
2612         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
2613         (TEST):
2614         Adjust test results due to switching to per-character rects.
2615
2616 2019-04-01  Chris Dumez  <cdumez@apple.com>
2617
2618         UIProcess crash when a prewarmed process is terminated
2619         https://bugs.webkit.org/show_bug.cgi?id=196451
2620         <rdar://problem/49245471>
2621
2622         Reviewed by Geoffrey Garen.
2623
2624         Add API test coverage.
2625
2626         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
2627         (TEST):
2628
2629 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2630
2631         [ews-app] Display OS and Xcode configuration in status-bubble's hover-over message
2632         https://bugs.webkit.org/show_bug.cgi?id=196449
2633
2634         Reviewed by Lucas Forschler.
2635
2636         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
2637         (StatusBubble.get_os_details): Method to get OS and Xcode details.
2638         (StatusBubble._build_bubble): Moved the timestamp logic to common method.
2639         (StatusBubble.get_build_timestamp): Method to get the timestamp to display for the build.
2640
2641 2019-04-01  Aakash Jain  <aakash_jain@apple.com>
2642
2643         [ews-build] Remove force schedulers from OpenSource EWS Buildbot
2644         https://bugs.webkit.org/show_bug.cgi?id=196444
2645
2646         Reviewed by Lucas Forschler.
2647
2648         * BuildSlaveSupport/ews-build/loadConfig.py: Remove ForceSchedulers.
2649
2650 2019-04-01  Alex Christensen  <achristensen@webkit.org>
2651
2652         Add SPI to canonicalize NSURLs with WTF::URL
2653         https://bugs.webkit.org/show_bug.cgi?id=196415
2654         <rdar://problem/44980271>
2655
2656         Reviewed by Darin Adler.
2657
2658         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2659         * TestWebKitAPI/Tests/WebKitLegacy/mac/URLCanonicalization.mm: Added.
2660         (TestWebKitAPI::TEST):
2661
2662 2019-04-01  Zan Dobersek  <zdobersek@igalia.com>
2663
2664         [WPE] EventSenderProxy constructor is called before a PlatformWindow is usable
2665         https://bugs.webkit.org/show_bug.cgi?id=196441
2666
2667         Reviewed by Carlos Garcia Campos.
2668
2669         Don't cache the wpe_view_backend object that might not exist yet at the
2670         time of EventSenderProxy constructor invocation, but instead retrieve
2671         that object whenever it's required for event dispatching. This should
2672         avoid crashes in this constructor now that it's invoked before any
2673         PlatformWindow has been set up (as changed in r243496).
2674
2675         * WebKitTestRunner/EventSenderProxy.h:
2676         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2677         (WTR::viewBackend):
2678         (WTR::EventSenderProxy::EventSenderProxy):
2679         (WTR::EventSenderProxy::mouseDown):
2680         (WTR::EventSenderProxy::mouseUp):
2681         (WTR::EventSenderProxy::mouseMoveTo):
2682         (WTR::EventSenderProxy::mouseScrollBy):
2683         (WTR::EventSenderProxy::keyDown):
2684         (WTR::EventSenderProxy::prepareAndDispatchTouchEvent):
2685
2686 2019-03-31  Fujii Hironori  <Hironori.Fujii@sony.com>
2687
2688         [Win][WebKit] MiniBrowser should support high DPI display
2689         https://bugs.webkit.org/show_bug.cgi?id=196391
2690
2691         Reviewed by Alex Christensen.
2692
2693         * MiniBrowser/win/WebKitBrowserWindow.cpp:
2694         (WebKitBrowserWindow::WebKitBrowserWindow): Call resetZoom to set the page zoom factor.
2695         (WebKitBrowserWindow::resetZoom): Changed the default page zoom factor from 1 to the device scale factor.
2696         * MiniBrowser/win/stdafx.h: Define WEBCORE_EXPORT.
2697
2698 2019-03-31  Sam Weinig  <weinig@apple.com>
2699
2700         Remove more i386 specific configurations
2701         https://bugs.webkit.org/show_bug.cgi?id=196430
2702
2703         Reviewed by Alexey Proskuryakov.
2704
2705         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2706         ENABLE_WEB_AUTHN_macosx and ENABLE_WEB_RTC_macosx can now be enabled unconditionally on macOS.
2707
2708 2019-03-31  Andy Estes  <aestes@apple.com>
2709
2710         [iOS] WebKit should consult the navigation response policy delegate before previewing a QuickLook document
2711         https://bugs.webkit.org/show_bug.cgi?id=196433
2712         <rdar://problem/49293305>
2713
2714         Reviewed by Tim Horton.
2715
2716         Enhanced API test coverage to include all navigation response policy decisions in both
2717         linked-before and linked-on-or-after modes. Also added new expectations for all tests.
2718
2719         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2720         * TestWebKitAPI/Tests/WebCore/ios/PreviewConverter.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp.
2721         (TestWebKitAPI::TEST):
2722         * TestWebKitAPI/Tests/WebKitCocoa/QuickLook.mm:
2723         (readFile):
2724         (-[QuickLookDelegate initWithExpectedFileURL:responsePolicy:]):
2725         (-[QuickLookDelegate initWithExpectedFileURL:previewMIMEType:responsePolicy:]):
2726         (-[QuickLookDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2727         (-[QuickLookDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]):
2728         (-[QuickLookDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]):
2729         (-[QuickLookDelegate webView:didFailProvisionalNavigation:withError:]):
2730         (-[QuickLookDelegate _webViewWebProcessDidCrash:]):
2731         (-[QuickLookDelegate _downloadDidStart:]):
2732         (-[QuickLookDelegate _download:didReceiveResponse:]):
2733         (-[QuickLookDelegate _download:didReceiveData:]):
2734         (-[QuickLookDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
2735         (-[QuickLookDelegate _downloadDidFinish:]):
2736         (-[QuickLookDelegate _download:didFailWithError:]):
2737         (-[QuickLookDelegate _downloadDidCancel:]):
2738         (-[QuickLookDelegate verifyDownload]):
2739         (runTest):
2740         (runTestDecideBeforeLoading):
2741         (runTestDecideAfterLoading):
2742         (TEST):
2743         (-[QuickLookAsyncDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
2744         (-[QuickLookPasswordDelegate _webViewDidRequestPasswordForQuickLookDocument:]):
2745         (-[QuickLookFrameLoadDelegate webView:didFinishLoadForFrame:]):
2746         (-[QuickLookNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
2747         (-[QuickLookNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
2748         (-[QuickLookNavigationDelegate webView:didFinishNavigation:]): Deleted.
2749         (-[QuickLookAsyncNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
2750         (-[QuickLookAsyncNavigationDelegate _webView:didStartLoadForQuickLookDocumentInMainFrameWithFileName:uti:]): Deleted.
2751         (-[QuickLookAsyncNavigationDelegate _webView:didFinishLoadForQuickLookDocumentInMainFrame:]): Deleted.
2752         (-[QuickLookAsyncNavigationDelegate webView:didFinishNavigation:]): Deleted.
2753         (-[QuickLookDecidePolicyDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]): Deleted.
2754         (-[QuickLookDecidePolicyDelegate webView:didFailProvisionalNavigation:withError:]): Deleted.
2755         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]): Deleted.
2756         (-[QuickLookPasswordNavigationDelegate _webViewDidRequestPasswordForQuickLookDocument:]): Deleted.
2757
2758 2019-03-30  Dominik Infuehr  <dinfuehr@igalia.com>
2759
2760         [CMake] add testdfg as target with build-jsc
2761         https://bugs.webkit.org/show_bug.cgi?id=196393
2762
2763         Reviewed by Saam Barati.
2764
2765         Added testdfg as one of the targets to build when
2766         using CMake.
2767
2768         * Scripts/build-jsc:
2769
2770 2019-03-29  Myles C. Maxfield  <mmaxfield@apple.com>
2771
2772         Delete WebMetal implementation in favor of WebGPU
2773         https://bugs.webkit.org/show_bug.cgi?id=195418
2774
2775         Reviewed by Dean Jackson.
2776
2777         * DumpRenderTree/mac/DumpRenderTree.mm:
2778         (enableExperimentalFeatures):
2779         (resetWebPreferencesToConsistentValues):
2780         * Scripts/webkitperl/FeatureList.pm:
2781         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2782         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2783         * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm: Removed.
2784         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyBuffer.mm: Removed.
2785         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyCommandQueue.mm: Removed.
2786         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyDevice.mm: Removed.
2787         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyFunction.mm: Removed.
2788         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyLibrary.mm: Removed.
2789         * TestWebKitAPI/Tests/WebCore/mac/GPULegacyTest.h: Removed.
2790         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2791         (WTR::InjectedBundle::beginTesting):
2792         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2793         (WTR::TestRunner::setWebMetalEnabled): Deleted.
2794         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2795
2796 2019-03-29  Chris Dumez  <cdumez@apple.com>
2797
2798         REGRESSION (r243523): Six form-related watchOS layout tests are timing out
2799         https://bugs.webkit.org/show_bug.cgi?id=196405
2800         <rdar://problem/49428130>
2801
2802         Reviewed by Wenson Hsieh.
2803
2804         Add a shouldPresentPopovers=false WebKitTestRunner option to cause WKTR to swizzle
2805         the popover presentation methods to be no-ops. Use this in the new test added in
2806         r243523 so that we do not swizzle those methods for all tests. This is needed because
2807         those WatchOS tests rely on the popover getting presented and interactive.
2808
2809         * WebKitTestRunner/TestController.cpp:
2810         (WTR::updateTestOptionsFromTestHeader):
2811         * WebKitTestRunner/TestController.h:
2812         * WebKitTestRunner/TestOptions.h:
2813         (WTR::TestOptions::hasSameInitializationOptions const):
2814         * WebKitTestRunner/ios/TestControllerIOS.mm:
2815         (WTR::TestController::platformInitialize):
2816         (WTR::TestController::platformResetStateToConsistentValues):
2817
2818 2019-03-29  Takashi Komori  <Takashi.Komori@sony.com>
2819
2820         [Curl] Add Server Trust Evaluation Support.
2821         https://bugs.webkit.org/show_bug.cgi?id=191646
2822
2823         Reviewed by Fujii Hironori.
2824
2825         Implemented MiniBrowser UI for asking if user trusts the server.
2826
2827         * MiniBrowser/win/Common.cpp:
2828         (askServerTrustEvaluation):
2829         (replaceString):
2830         * MiniBrowser/win/Common.h:
2831         * MiniBrowser/win/MiniBrowserLib.rc:
2832         * MiniBrowser/win/MiniBrowserLibResource.h:
2833         * MiniBrowser/win/WebKitBrowserWindow.cpp:
2834         (createPEMString):
2835         (WebKitBrowserWindow::didReceiveAuthenticationChallenge):
2836         (WebKitBrowserWindow::canTrustServerCertificate):
2837         * MiniBrowser/win/WebKitBrowserWindow.h:
2838
2839 2019-03-29  Cathie Chen  <cathiechen@igalia.com>
2840
2841         Implement ResizeObserver.
2842         https://bugs.webkit.org/show_bug.cgi?id=157743
2843
2844         Reviewed by Simon Fraser.
2845
2846         Support resizeObserverEnabled webPreferences.
2847
2848         * DumpRenderTree/TestOptions.cpp:
2849         (TestOptions::TestOptions):
2850         * DumpRenderTree/TestOptions.h:
2851         * DumpRenderTree/mac/DumpRenderTree.mm:
2852         (setWebPreferencesForTestOptions):
2853         * DumpRenderTree/win/DumpRenderTree.cpp:
2854         (enableExperimentalFeatures):
2855         * Scripts/webkitperl/FeatureList.pm:
2856         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2857
2858 2019-03-28  John Wilander  <wilander@apple.com>
2859
2860         Resource Load Statistics: IPC to the WebsiteDataStore in the UI process from NetworkProcess::deleteWebsiteDataForRegistrableDomains()
2861         https://bugs.webkit.org/show_bug.cgi?id=196281
2862         <rdar://problem/48938748>
2863
2864         Reviewed by Alex Christensen.
2865
2866         This patch adds the function isStatisticsHasLocalStorage() to the
2867         TestRunner. With it, the page can query the WebsiteDataStore in the
2868         UI process to make sure that it sees LocalStorage.
2869
2870         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2871         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2872         (WTR::TestRunner::isStatisticsHasLocalStorage):
2873         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2874         * WebKitTestRunner/TestController.cpp:
2875         (WTR::TestController::isStatisticsHasLocalStorage):
2876         * WebKitTestRunner/TestController.h:
2877         * WebKitTestRunner/TestInvocation.cpp:
2878         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2879
2880 2019-03-28  Jiewen Tan  <jiewen_tan@apple.com>
2881
2882         API::Data::createWithoutCopying should do a null check before calling CFRelease
2883         https://bugs.webkit.org/show_bug.cgi?id=196276
2884         <rdar://problem/48059859>
2885
2886         Reviewed by Alex Christensen.
2887
2888         Add an API test that will pass a nil to API::Data::createWithoutCopying via NavigationState::NavigationClient::webCryptoMasterKey.
2889
2890         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2891         * TestWebKitAPI/Tests/WebKit/navigation-client-default-crypto.html:
2892         * TestWebKitAPI/Tests/WebKitCocoa/WebCryptoMasterKey.mm: Added.
2893         (-[WebCryptoMasterKeyNavigationDelegate _webCryptoMasterKeyForWebView:]):
2894         (-[WebCryptoMasterKeyNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2895         (TestWebKitAPI::TEST):
2896
2897 2019-03-28  Michael Catanzaro  <mcatanzaro@igalia.com>
2898
2899         [WPE][GTK] webkit_web_resource_get_data_finish can return NULL without setting error
2900         https://bugs.webkit.org/show_bug.cgi?id=186276
2901
2902         Reviewed by Carlos Garcia Campos.
2903
2904         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
2905         (webViewLoadChanged):
2906         (testWebResourceGetDataError):
2907         (testWebResourceGetDataEmpty):
2908         (beforeAll):
2909         (webViewloadChanged): Deleted.
2910
2911 2019-03-27  Andy Estes  <aestes@apple.com>
2912
2913         REGRESSION (r242686): package-root creates roots with broken symlinks in WebKit.framework/XPCServices/
2914         https://bugs.webkit.org/show_bug.cgi?id=196317
2915
2916         Reviewed by Dan Bernstein.
2917
2918         package-root copies built products into a staging directory using ditto(1), which does not
2919         follow symbolic links as it traverses a directory. Now that the files in
2920         WebKit.framework/XPCServices/ are symbolic links to a location outside of the framework
2921         itself, these become broken links when ditto'd into the staging directory.
2922
2923         To account for this, change package-root to copy using cp(1) in a mode that follows symlinks.
2924
2925         * Scripts/package-root:
2926
2927 2019-03-27  Aakash Jain  <aakash_jain@apple.com>
2928
2929         [ews-app] Update display text of Submit for ews analysis
2930         https://bugs.webkit.org/show_bug.cgi?id=196309
2931
2932         Reviewed by Dewei Zhu.
2933
2934         * BuildSlaveSupport/ews-app/ews/templates/statusbubble.html:
2935
2936 2019-03-27  David Kilzer  <ddkilzer@apple.com>
2937
2938         run-webkit-tests should check for leaks in WebKit processes
2939         <https://webkit.org/b/193772>
2940         <rdar://problem/46526680>
2941
2942         Reviewed by Ryosuke Niwa.
2943
2944         This works by doing the following:
2945         - Add a "#LIST CHILD PROCESSES" command to WebKitTestRunnner.
2946           The list of child processes are returned one per line:
2947           process.name: pid
2948         - Run the "#LIST CHILD PROCESSES" command just before the
2949           "#CHECK FOR WORLD LEAKS" command, and store the list of child
2950           processes on the ServerProcess object.
2951         - When the `--leaks` switch is handled, run check_for_leaks() on
2952           each child process after the main test harness.
2953
2954         * DumpRenderTree/mac/DumpRenderTree.mm:
2955         (handleControlCommand):
2956         - Use strncmp() instead of strcmp().
2957         - Add support for handling "#LIST CHILD PROCESSES" command.
2958
2959         * Scripts/webkitpy/port/base.py:
2960         (Port.check_for_leaks):
2961         * Scripts/webkitpy/port/darwin.py:
2962         (DarwinPort.check_for_leaks):
2963         - Rename redundant 'process_pid' argument to 'process_id'.
2964
2965         * Scripts/webkitpy/port/driver.py:
2966         (Driver.do_post_tests_work):
2967         - Restructure the logic since "#CHECK FOR WORLD LEAKS" is no
2968           longer the only command this sends to WebKitTestRunner.
2969         - If the `--leaks` switch is present, send the
2970           "#LIST CHILD PROCESSES" to WebKitTestRunner and store the
2971           result using Port.set_webkit_processes().
2972         (Driver._parse_child_processes_output):
2973         - Add helper method to parse list of child process names and
2974           process IDs returned from WebKitTestRunner.
2975
2976         * Scripts/webkitpy/port/ios_device.py:
2977         (IOSDevicePort.check_for_leaks):
2978         - Rename redundant 'process_pid' argument to 'process_id'.
2979
2980         * Scripts/webkitpy/port/leakdetector.py:
2981         (LeakDetector._parse_leaks_output):
2982         - Return early if there is no leaks_output.
2983         (LeakDetector.check_for_leaks):
2984         - Rename redundant 'process_pid' argument to 'process_id'.
2985
2986         * Scripts/webkitpy/port/server_process.py:
2987         (ServerProcess.__init__):
2988         (ServerProcess.child_processes):
2989         (ServerProcess.set_child_processes):
2990         - Add instance variable to Port to store list of child process
2991           names and process IDs returned from WebKitTestRunner.
2992         (ServerProcess._start):
2993         - Clear self._child_processes.
2994         (ServerProcess.stop):
2995         - If self._child_processes is set, call
2996           self._port.check_for_leaks() for each child process.
2997
2998         * Scripts/webkitpy/port/server_process_unittest.py:
2999         (TrivialMockPort.check_for_leaks):
3000         - Rename redundant 'process_pid' argument to 'process_id'.
3001
3002         * Scripts/webkitpy/port/simulator_process.py:
3003         (SimulatorProcess.stop):
3004         - If self._child_processes is set, call
3005           self._port.check_for_leaks() for each child process.
3006
3007         * Scripts/webkitpy/port/watch_device.py:
3008         (WatchDevicePort.check_for_leaks):
3009         - Rename redundant 'process_pid' argument to 'process_id'.
3010
3011         * WebKitTestRunner/TestController.cpp:
3012         (WTR::TestController::dumpResponse):
3013         - Extract method from findAndDumpWorldLeaks() so that it may be
3014           reused by findAndDumpWebKitProcessIdentifiers().
3015         (WTR::TestController::findAndDumpWebKitProcessIdentifiers):
3016         - Add method to output process name and process ID of both the
3017           WebContent and Networking processes.
3018         (WTR::TestController::findAndDumpWorldLeaks):
3019         - Fix missing newline in output when there were no abandoned
3020           documents.
3021         - Call dumpResponse() for extracted code.
3022         (WTR::TestController::handleControlCommand):
3023         - Restructure the logic for "#CHECK FOR WORLD LEAKS".
3024         - Use strncmp() instead of strcmp().
3025         - Call findAndDumpWebKitProcessIdentifiers() when
3026           "#LIST CHILD PROCESSES" command is sent.
3027         * WebKitTestRunner/TestController.h:
3028         (WTR::TestController::dumpResponse):
3029         (WTR::TestController::findAndDumpWebKitProcessIdentifiers):
3030         - Declare methods.
3031
3032 2019-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3033
3034         Unreviewed. Add GLib API test cases after r243434.
3035
3036         * TestWebKitAPI/Tests/WebKitGLib/TestLoaderClient.cpp:
3037         (testWebViewActiveURI):
3038         (serverCallback):
3039         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
3040         (sendRequestCallback):
3041
3042 2019-03-27  Carlos Garcia Campos  <cgarcia@igalia.com>
3043
3044         Geolocation request not complete when watch request was started in a different web process
3045         https://bugs.webkit.org/show_bug.cgi?id=195996
3046
3047         Reviewed by Alex Christensen.
3048
3049         Add a test case.
3050
3051         * TestWebKitAPI/Tests/WebKit/Geolocation.cpp:
3052         (TestWebKitAPI::runJavaScriptAlert):
3053         (TestWebKitAPI::TEST):
3054
3055 2019-03-26  Keith Rollin  <krollin@apple.com>
3056
3057         Update the way generate-xcfilelists returns strings from functions
3058         https://bugs.webkit.org/show_bug.cgi?id=195975
3059         <rdar://problem/49040807>
3060
3061         Reviewed by Dean Jackson.
3062
3063         There are places where generate-xcfilelists executes assignments with
3064         statements like:
3065
3066             FOO=$(some_function)
3067
3068         where "some_function" return a string by echoing it. E.g.
3069
3070             some_function()
3071             {
3072                 echo "Hello, World"
3073             }
3074
3075         This is a common idiom, but it has a problem if "some_function" needs
3076         to call "exit" in an attempt to halt the entire script right then and
3077         there. Since "some_function" is called inside of $(), it's being
3078         executed in a sub-shell. Calling exit in that sub-shell simply exits
3079         that shell; it doesn't not exit the outer shell in which the main part
3080         of the script is still running. As such, the main script keeps
3081         executing when the intent was for the script to halt.
3082
3083         The solution to this is to use a different idiom for returning
3084         strings. The one we now is to pass in the name of the variable to
3085         receive the string result:
3086
3087             some_function()
3088             {
3089                 variable_name=$1
3090                 eval $variable_name ="Hello, World"
3091             }
3092
3093         The call site now looks like
3094
3095             some_function FOO
3096
3097         Because there's no invocation of a sub-shell, some_function can now
3098         call "exit" if it wants to, and the entire script will exit at that
3099         point.
3100
3101         * Scripts/generate-xcfilelists:
3102
3103 2019-03-26  Chris Dumez  <cdumez@apple.com>
3104
3105         Add basic layout test coverage for File Picker on iOS
3106         https://bugs.webkit.org/show_bug.cgi?id=196265
3107
3108         Reviewed by Wenson Hsieh.
3109
3110         Add layout test infrastructure to test the file picker on iOS.
3111
3112         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3113         (WTR::UIScriptController::dismissFilePicker):
3114         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3115         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3116         (WTR::UIScriptController::dismissFilePicker):
3117         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3118         * WebKitTestRunner/TestController.cpp:
3119         (WTR::TestController::createWebViewWithOptions):
3120         (WTR::updateTestOptionsFromTestHeader):
3121         * WebKitTestRunner/TestOptions.h:
3122         (WTR::TestOptions::hasSameInitializationOptions const):
3123         * WebKitTestRunner/ios/TestControllerIOS.mm:
3124         (overridePresentViewController):
3125         (WTR::TestController::platformInitialize):
3126         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3127         (WTR::UIScriptController::dismissFilePicker):
3128
3129 2019-03-26  Wenson Hsieh  <wenson_hsieh@apple.com>
3130
3131         Implement async paste method on UIWKInteractionViewProtocol
3132         https://bugs.webkit.org/show_bug.cgi?id=196267
3133         <rdar://problem/49236346>
3134
3135         Reviewed by Tim Horton.
3136
3137         Add a new test to exercise the new SPI. Additionally, add staging forward declarations for
3138         -pasteWithCompletionHandler:, and remove some old existing staging declarations for other bits of UIKit SPI that
3139         are now a part of all iOS 12 internal SDKs.
3140
3141         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
3142
3143         While we're here, also change a few iOS 11.3 checks to just be about PLATFORM(IOS) (since we don't build for iOS
3144         prior to 12, these version checks are effectively only about iOS vs. tvOS or watchOS).
3145
3146         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
3147         * TestWebKitAPI/ios/DragAndDropSimulatorIOS.mm:
3148         (-[DragAndDropSimulator _sendQueuedAdditionalItemRequest]):
3149         * TestWebKitAPI/ios/UIKitSPI.h:
3150
3151 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
3152
3153         [ews-build] Use PostgreSQL for ews.webkit.org database
3154         https://bugs.webkit.org/show_bug.cgi?id=196270
3155
3156         Reviewed by Lucas Forschler.
3157
3158         * BuildSlaveSupport/ews-app/ews-app/settings.py:
3159
3160 2019-03-26  Jonathan Bedard  <jbedard@apple.com>
3161
3162         [ews] Reset simctl states on reboot
3163         https://bugs.webkit.org/show_bug.cgi?id=196260
3164
3165         Rubber-stamped by Aakash Jain.
3166
3167         * EWSTools/start-queue-mac.sh:
3168
3169 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
3170
3171         [ews-build] Use PostgreSQL for ews-build database
3172         https://bugs.webkit.org/show_bug.cgi?id=196229
3173
3174         Reviewed by Lucas Forschler.
3175
3176         * BuildSlaveSupport/ews-build/master.cfg:
3177
3178 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
3179
3180         [ews-build] Get master_hostname dynamically in master.cfg
3181         https://bugs.webkit.org/show_bug.cgi?id=196255
3182
3183         Reviewed by Lucas Forschler.
3184
3185         * BuildSlaveSupport/ews-build/master.cfg: Get hostname dynamically. Also do not
3186         send events data in test mode.
3187
3188 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
3189
3190         [ews-app] Set db_constraint to False for Foreign Keys
3191         https://bugs.webkit.org/show_bug.cgi?id=196252
3192
3193         Reviewed by Lucas Forschler.
3194
3195         * BuildSlaveSupport/ews-app/ews/models/build.py:
3196         * BuildSlaveSupport/ews-app/ews/models/step.py:
3197
3198 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
3199
3200         [ews-build] is_test_mode_enabled should default to True
3201         https://bugs.webkit.org/show_bug.cgi?id=196248
3202
3203         Reviewed by Lucas Forschler.
3204
3205         * BuildSlaveSupport/ews-build/master.cfg: Reverse the environment variable used to decide is_test_mode_enabled.
3206
3207 2019-03-26  Aakash Jain  <aakash_jain@apple.com>
3208
3209         [ews-app] Add webkitperl to ENABLED_QUEUES
3210         https://bugs.webkit.org/show_bug.cgi?id=196253
3211
3212         Reviewed by Lucas Forschler.
3213
3214         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3215
3216 2019-03-25  Alexey Proskuryakov  <ap@apple.com>
3217
3218         Address NSWindow sometimes using WebKitTestRunnerEvent too early
3219         https://bugs.webkit.org/show_bug.cgi?id=196211
3220         rdar://problem/49110552
3221
3222         Reviewed by Tim Horton.
3223
3224         * WebKitTestRunner/TestController.cpp: (WTR::TestController::initialize):
3225         Make sure that EventSenderProxy always exists when running tests. We used to create
3226         it when resetting before the first test, which is a bit too late.
3227
3228         * WebKitTestRunner/TestController.h:
3229         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3230         (WTR::TestController::platformCreateWebView):
3231         (WTR::TestController::platformCreateOtherPage):
3232         (WTR::TestController::finishCreatingPlatformWebView):
3233         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3234         (WTR::PlatformWebView::PlatformWebView):
3235         Moved some code that made NSWindow use NSEvent during web view creation. We may
3236         need to move more if some other case us found, but this is enough for now.
3237
3238 2019-03-26  Carlos Garcia Campos  <cgarcia@igalia.com>
3239
3240         Unreviewed. Fix typo in GLib geolocation API after r243285.
3241
3242         gelocation -> geolocation.
3243
3244         * TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp:
3245         (testGeolocationManagerWatchPosition):
3246
3247 2019-03-25  Alex Christensen  <achristensen@webkit.org>
3248
3249         Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
3250         https://bugs.webkit.org/show_bug.cgi?id=196213
3251
3252         Reviewed by Geoff Garen.
3253
3254         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3255         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: Added.
3256         (credentialWithIdentityAndKeychainPath):
3257         (-[ChallengeDelegate webView:didFinishNavigation:]):
3258         (-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
3259         (TestWebKitAPI::TEST):
3260
3261 2019-03-25  Alex Christensen  <achristensen@webkit.org>
3262
3263         Expected shouldn't assume its contained types are copyable
3264         https://bugs.webkit.org/show_bug.cgi?id=195986
3265
3266         Reviewed by JF Bastien.
3267
3268         * TestWebKitAPI/Tests/WTF/Expected.cpp:
3269         (TestWebKitAPI::NonCopyable::operator== const):
3270         (TestWebKitAPI::NonCopyable::operator!= const):
3271         (TestWebKitAPI::TEST):
3272
3273 2019-03-25  Tim Horton  <timothy_horton@apple.com>
3274
3275         Remove some now-unnecessary dynamic class lookup
3276         https://bugs.webkit.org/show_bug.cgi?id=196237
3277
3278         Reviewed by Simon Fraser.
3279
3280         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3281         (makeRequest):
3282         (TEST):
3283
3284 2019-03-25  Fujii Hironori  <Hironori.Fujii@sony.com>
3285
3286         Unreviewed, rolling out r243450.
3287
3288         AppleWin and WinCairo port builds get broken.
3289
3290         Reverted changeset:
3291
3292         "Add test for fix of #196095"
3293         https://bugs.webkit.org/show_bug.cgi?id=196097
3294         https://trac.webkit.org/changeset/243450
3295
3296 2019-03-25  Commit Queue  <commit-queue@webkit.org>
3297
3298         Unreviewed, rolling out r243465.
3299         https://bugs.webkit.org/show_bug.cgi?id=196226
3300
3301         the test doesn't build (Requested by thorton on #webkit).
3302
3303         Reverted changeset:
3304
3305         "Do not terminate the NetworkProcess if a third party
3306         application sends a NSCredential with a SecIdentityRef"
3307         https://bugs.webkit.org/show_bug.cgi?id=196213
3308         https://trac.webkit.org/changeset/243465
3309
3310 2019-03-25  Alex Christensen  <achristensen@webkit.org>
3311
3312         Do not terminate the NetworkProcess if a third party application sends a NSCredential with a SecIdentityRef
3313         https://bugs.webkit.org/show_bug.cgi?id=196213
3314
3315         Reviewed by Geoff Garen.
3316
3317         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3318         * TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm: Added.
3319         (credentialWithIdentityAndKeychainPath):
3320         (-[ChallengeDelegate webView:didFinishNavigation:]):
3321         (-[ChallengeDelegate webView:didReceiveAuthenticationChallenge:completionHandler:]):
3322         (TestWebKitAPI::TEST):
3323
3324 2019-03-25  Aakash Jain  <aakash_jain@apple.com>
3325
3326         [ews-build] Gracefully handle missing patch_id in events
3327         https://bugs.webkit.org/show_bug.cgi?id=196216
3328
3329         Reviewed by Lucas Forschler.
3330
3331         * BuildSlaveSupport/ews-build/events.py:
3332
3333 2019-03-25  Aakash Jain  <aakash_jain@apple.com>
3334
3335         [ews-build] use lz4 compression for improving buildbot performance
3336         https://bugs.webkit.org/show_bug.cgi?id=196155
3337
3338         Reviewed by Lucas Forschler.
3339
3340         * BuildSlaveSupport/ews-build/master.cfg:
3341
3342 2019-03-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3343
3344         Pull some API testing helper methods out of TestWKWebView
3345         https://bugs.webkit.org/show_bug.cgi?id=196212
3346
3347         Reviewed by Tim Horton.
3348
3349         Refactor some more API testing utility methods, so that they can be used in
3350         tests that do not use TestWKWebView.
3351
3352         * TestWebKitAPI/cocoa/TestWKWebView.h:
3353         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3354         (-[WKWebView loadTestPageNamed:]):
3355         (-[WKWebView synchronouslyLoadHTMLString:baseURL:]):
3356         (-[WKWebView synchronouslyLoadHTMLString:]):
3357         (-[WKWebView synchronouslyLoadTestPageNamed:]):
3358         (-[TestWKWebView loadTestPageNamed:]): Deleted.
3359         (-[TestWKWebView synchronouslyLoadHTMLString:baseURL:]): Deleted.
3360         (-[TestWKWebView synchronouslyLoadHTMLString:]): Deleted.
3361         (-[TestWKWebView synchronouslyLoadTestPageNamed:]): Deleted.
3362
3363 2019-03-25  Jer Noble  <jer.noble@apple.com>
3364
3365         Test for: 196095 Inband Text Track cues interspersed with Data cues can display out of order.
3366         https://bugs.webkit.org/show_bug.cgi?id=196097
3367
3368         Reviewed by Eric Carlson.
3369
3370         Drive-by bug fix: allow tests to play audio without a user gesture by default.
3371
3372         * DumpRenderTree/mac/DumpRenderTree.mm:
3373         (resetWebPreferencesToConsistentValues):
3374         * WebKitTestRunner/TestController.cpp:
3375         (WTR::TestController::resetPreferencesToConsistentValues):
3376
3377 2019-03-25  Wenson Hsieh  <wenson_hsieh@apple.com>
3378
3379         Pull IPadUserInterfaceSwizzler out into a separate header file
3380         https://bugs.webkit.org/show_bug.cgi?id=196193
3381
3382         Reviewed by Anders Carlsson.
3383
3384         Pull the IPadUserInterfaceSwizzler helper class out into a separate file, so that it may
3385         be used in other API tests.
3386
3387         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3388         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
3389         (TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler): Deleted.
3390         (TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom): Deleted.
3391         * TestWebKitAPI/ios/IPadUserInterfaceSwizzler.h: Added.
3392         (TestWebKitAPI::IPadUserInterfaceSwizzler::IPadUserInterfaceSwizzler):
3393         (TestWebKitAPI::IPadUserInterfaceSwizzler::padUserInterfaceIdiom):
3394
3395 2019-03-25  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
3396
3397         Remove NavigatorContentUtils in WebCore/Modules
3398         https://bugs.webkit.org/show_bug.cgi?id=196070
3399
3400         Reviewed by Alex Christensen.
3401
3402         NavigatorContentUtils was to support the custom scheme spec [1].
3403         However, in WebKit side, no port has supported the feature in
3404         WebKit layer after EFL port was removed. So there has been the
3405         only IDL implementation of the NavigatorContentUtils in WebCore.
3406         So we don't need to keep the implementation in WebCore anymore.
3407
3408         [1] https://html.spec.whatwg.org/multipage/system-state.html#custom-handlers
3409
3410         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3411
3412 2019-03-24  Andy Estes  <aestes@apple.com>
3413
3414         [watchOS] Remove unused Proximity Networking code
3415         https://bugs.webkit.org/show_bug.cgi?id=196188
3416
3417         Reviewed by Tim Horton.
3418
3419         * TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm:
3420         (TEST):
3421
3422 2019-03-23  Keith Miller  <keith_miller@apple.com>
3423
3424         Refactor clz/ctz and fix getLSBSet.
3425         https://bugs.webkit.org/show_bug.cgi?id=196162
3426
3427         Reviewed by Saam Barati.
3428
3429         Add tests for clz, ctz, getLSBSet, and getMSBSet.
3430
3431         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
3432         (TestWebKitAPI::TEST):
3433
3434 2019-03-23  Carlos Garcia Campos  <cgarcia@igalia.com>
3435
3436         [GTK][WPE] check-webkit-style doesn't complain about identifiers with underscores in files under glib, gtk or wpe dirs
3437         https://bugs.webkit.org/show_bug.cgi?id=196143
3438
3439         Reviewed by Michael Catanzaro.
3440
3441         Fix the check for the exception of identifiers starting with webkit_ in files under glib, gtk or wpe
3442         directories.
3443
3444         * Scripts/webkitpy/style/checkers/cpp.py:
3445         (check_identifier_name_in_declaration):
3446         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3447         (WebKitStyleTest.test_names):
3448
3449 2019-03-22  Philippe Normand  <pnormand@igalia.com>
3450
3451         [Flatpak] Manifest expanding fails for qt WPE extension
3452         https://bugs.webkit.org/show_bug.cgi?id=196148
3453
3454         Reviewed by Alex Christensen.
3455
3456         * flatpak/flatpakutils.py:
3457         (expand_submodules_recurse): The last recurse manifest expand
3458         iteration might lead to a single module so take it into account
3459         and don't try to recurse further.
3460
3461 2019-03-22  Chris Dumez  <cdumez@apple.com>
3462
3463         [ iOS Simulator] REGRESSION (r241821) Layout Test platform/ipad/fast/viewport/viewport-unchanged-by-minimum-effective-width-if-not-ignore-meta-viewport.html is a flaky failure on bots
3464         https://bugs.webkit.org/show_bug.cgi?id=195348
3465         <rdar://problem/48622090>
3466
3467         Reviewed by Alex Christensen.
3468
3469         Make sure webView.configuration.preferences._shouldIgnoreMetaViewport gets reset
3470         to NO when test.options().shouldIgnoreMetaViewport is false.
3471
3472         * WebKitTestRunner/ios/TestControllerIOS.mm:
3473         (WTR::TestController::platformConfigureViewForTest):
3474
3475 2019-03-22  Chris Dumez  <cdumez@apple.com>
3476
3477         Prewarmed processes should be usable with any website data store
3478         https://bugs.webkit.org/show_bug.cgi?id=196104
3479
3480         Reviewed by Alex Christensen.
3481
3482         Add API test coverage.
3483
3484         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
3485         (runInitialWarmedProcessUsedTest):
3486         (TEST):
3487
3488 2019-03-22  David Kilzer  <ddkilzer@apple.com>
3489
3490         Back out local changes to Alex's Subversion working directory
3491
3492         They were accidentally committed.
3493
3494         * Scripts/webkitpy/common/system/abstractexecutive.py:
3495         (AbstractExecutive.wait_newest):
3496         * Scripts/webkitpy/common/system/executive.py:
3497         (Executive.running_pids):
3498         * Scripts/webkitpy/common/system/executive_mock.py:
3499         (MockExecutive.running_pids):
3500         * Scripts/webkitpy/common/system/executive_unittest.py:
3501         (ExecutiveTest.serial_test_running_pids):
3502         * Scripts/webkitpy/port/darwin.py:
3503         (DarwinPort.check_for_leaks):
3504         * Scripts/webkitpy/port/leakdetector.py:
3505         (LeakDetector.check_for_leaks):
3506         - This was the hack attached to Bug 193772.
3507
3508         * WebKitTestRunner/mac/WebKitTestRunnerEvent.mm:
3509         (+[WebKitTestRunnerEvent mouseLocation]):
3510         - This works around a crash on an internal build.
3511
3512 2019-03-22  Tim Horton  <timothy_horton@apple.com>
3513
3514         Fix the build after r243354
3515         https://bugs.webkit.org/show_bug.cgi?id=196138
3516         <rdar://problem/49145951>
3517
3518         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm:
3519         (TEST):
3520         * TestWebKitAPI/ios/UIKitSPI.h:
3521
3522 2019-03-21  Tim Horton  <timothy_horton@apple.com>
3523
3524         Adopt UIWKDocumentContext
3525         https://bugs.webkit.org/show_bug.cgi?id=196040
3526         <rdar://problem/48642440>
3527
3528         Reviewed by Ryosuke Niwa.
3529
3530         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3531         * TestWebKitAPI/Tests/WebKitCocoa/DocumentEditingContext.mm: Added.
3532         (makeRequest):
3533         (-[TestWKWebView synchronouslyRequestDocumentContext:]):
3534         (-[TestWKWebView synchronouslyAdjustSelectionWithDelta:]):
3535         (applyStyle):
3536         (TEST):
3537         Add tests for UIWKDocumentContext.
3538
3539         * TestWebKitAPI/Tests/WebKitCocoa/WKContentViewEditingActions.mm:
3540         (TEST):
3541         (recursiveFindWKContentView): Deleted.
3542         * TestWebKitAPI/cocoa/TestWKWebView.h:
3543         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3544         (recursiveFindWKContentView):
3545         (-[TestWKWebView wkContentView]):
3546         * TestWebKitAPI/ios/UIKitSPI.h:
3547         Share the WKContentView finding code between tests.
3548
3549 2019-03-21  Simon Fraser  <simon.fraser@apple.com>
3550
3551         [iOS WK2] Turn on async overflow scrolling by default
3552         https://bugs.webkit.org/show_bug.cgi?id=196011
3553         rdar://problem/48453859
3554
3555         Reviewed by Antti Koivisto.
3556         
3557         Explicitly turn off the async overflow scrolling internal feature for tests by default,
3558         since so many basic layout tests have different results when compositing is triggered for
3559         overflow.
3560         
3561         Individual tests will re-enable with <!-- webkit-test-runner [ internal:AsyncOverflowScrollingEnabled=true ] -->.
3562
3563         * WebKitTestRunner/TestController.cpp:
3564         (WTR::TestController::resetPreferencesToConsistentValues):
3565
3566 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3567
3568         [ews-build] Retry API test in case of failures
3569         https://bugs.webkit.org/show_bug.cgi?id=196004
3570
3571         Reviewed by Lucas Forschler.
3572
3573         * BuildSlaveSupport/ews-build/steps.py:
3574         (UnApplyPatchIfRequired.doStepIf): Updated doStepIf to include patchFailedAPITests.
3575         (CompileWebKitToT.doStepIf): Ditto.
3576         (RunAPITests.evaluateCommand): Check if tests failed and retry them if required.
3577         (ReRunAPITests): Re-run API tests.
3578         (ReRunAPITests.evaluateCommand): Check if tests failed and retry on clean build if required.
3579         (RunAPITestsWithoutPatch): Run API tests without patch.
3580         (RunAPITestsWithoutPatch.doStepIf):
3581         (RunAPITestsWithoutPatch.hideStepIf):
3582         (RunAPITestsWithoutPatch.evaluateCommand):
3583         (AnalyzeAPITestsResults): Analyze API test results from previous runs.
3584         (AnalyzeAPITestsResults.start):
3585         (AnalyzeAPITestsResults.analyzeResults): Analyze API test results.
3586         (AnalyzeAPITestsResults.getBuildStepByName): Search for a build step by name.
3587         (AnalyzeAPITestsResults.getTestsResults): Get the test results from previous API tesst steps.
3588         * BuildSlaveSupport/ews-build/steps_unittest.py: Monkey patched FakeBuild.
3589
3590 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3591
3592         [ews-build] Update queues configurations
3593         https://bugs.webkit.org/show_bug.cgi?id=196074
3594
3595         Reviewed by Dewei Zhu.
3596
3597         * BuildSlaveSupport/ews-build/config.json: Updated queues from iOS11 to iOS12,
3598         added new bots, reassigned bots for various builders, moved few builders to another scheduler.
3599
3600 2019-03-21  Aakash Jain  <aakash_jain@apple.com>
3601
3602         [ews-app] Generate status-bubble hover-over messages (Follow-up fix)
3603         https://bugs.webkit.org/show_bug.cgi?id=195680
3604         <rdar://problem/48903534>
3605
3606         Unreviewed infrastructure fix.
3607
3608         * BuildSlaveSupport/ews-app/ews/views/statusbubble.py:
3609         (StatusBubble._build_bubble): Do not append to details_message in the cases in which it wasn't defined earlier.
3610
3611 2019-03-21  Andy Estes  <aestes@apple.com>
3612
3613         [iOS] Apple Pay should be available in documents with no user agent scripts
3614         https://bugs.webkit.org/show_bug.cgi?id=196061
3615         <rdar://problem/48649391>
3616
3617         Reviewed by Brady Eidson.
3618
3619         Added API tests and related infrastructure.
3620
3621         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3622         * TestWebKitAPI/Tests/WebKitCocoa/ApplePay.mm: Added.
3623         (-[TestApplePayScriptMessageHandler initWithExpectation:]):
3624         (-[TestApplePayScriptMessageHandler userContentController:didReceiveScriptMessage:]):
3625         (TestWebKitAPI::TEST):
3626         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-active-session.html: Added.
3627         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability-in-iframe.html: Added.
3628         * TestWebKitAPI/Tests/WebKitCocoa/apple-pay-availability.html: Added.
3629         * TestWebKitAPI/cocoa/TestProtocol.mm:
3630         (-[TestProtocol startLoading]):
3631         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugInWithInternals.h: Added.
3632         * TestWebKitAPI/cocoa/WebProcessPlugIn/WebProcessPlugInWithInternals.mm: Added.
3633         (-[WebProcessPlugInWithInternals webProcessPlugIn:didCreateBrowserContextController:]):
3634         (-[WebProcessPlugInWithInternals webProcessPlugInBrowserContextController:didClearWindowObjectForFrame:inScriptWorld:]):
3635
3636 2019-03-21  Jonathan Bedard  <jbedard@apple.com>
3637
3638         REGRESSSION (r243297): webkitpy tests broken
3639         https://bugs.webkit.org/show_bug.cgi?id=196108
3640
3641         Reviewed by Aakash Jain.
3642
3643         r243297 updated contributors.json, which broke a few unit tests.
3644
3645         * Scripts/webkitpy/tool/bot/irc_command_unittest.py:
3646         (IRCCommandTest.test_whois):
3647         * Scripts/webkitpy/tool/commands/suggestnominations_unittest.py:
3648
3649 2019-03-21  Chris Dumez  <cdumez@apple.com>
3650
3651         WebKit should throw when trying to create a WKWebView with a related view that is using a different data store
3652         https://bugs.webkit.org/show_bug.cgi?id=196041
3653         <rdar://problem/49083230>
3654
3655         Reviewed by Alex Christensen.
3656
3657         Add API test coverage.
3658
3659         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm:
3660         (TEST):
3661
3662 2019-03-21  Alex Christensen  <achristensen@webkit.org>
3663
3664         Add SPI to inform applications of WKContentRuleList actions
3665         https://bugs.webkit.org/show_bug.cgi?id=195965
3666         <rdar://problem/42664365>
3667
3668         Reviewed by Geoff Garen.
3669
3670         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
3671         (TestWebKitAPI::allActionsForResourceLoad):
3672         (TestWebKitAPI::testRequest):
3673         (TestWebKitAPI::TEST_F):
3674         * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm:
3675         (Notification::description):
3676         (Notification::operator== const):
3677         (toVector):
3678         (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
3679         (-[ContentRuleListNotificationDelegate _webView:contentRuleListWithIdentifier:performedActionOnURL:blockedLoad:blockedCookies:madeHTTPS:notifications:]):
3680         (makeContentRuleList):
3681         (TEST):
3682         (makeWarnContentRuleList): Deleted.
3683
3684 2019-03-21  Timothy Hatcher  <timothy@apple.com>
3685
3686         Style check error "WK_MAC_TBA is neither a version number nor WK_IOS_TBA" is confusing.
3687         https://bugs.webkit.org/show_bug.cgi?id=196088
3688
3689         Reviewed by Brian Burg.
3690
3691         Fix the error messages used when looking for macos(WK_IOS_TBA) or ios(WK_MAC_TBA).
3692         Support checks when only one platform is specified. Also deprecate macosx() and
3693         force the use of macos() instead.
3694
3695         * Scripts/webkitpy/style/checkers/cpp.py:
3696         (check_min_versions_of_wk_api_available):
3697         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
3698         (WebKitStyleTest.test_min_versions_of_wk_api_available):
3699
3700 2019-03-21  Alexey Proskuryakov  <ap@apple.com>
3701
3702         Update status inactive committers' status to 'contributor'.
3703
3704         * Scripts/webkitpy/common/config/contributors.json:
3705
3706 2019-03-21  Xan Lopez  <xan@igalia.com>
3707
3708         [JSC][x86] Drop support for x87 floating point
3709         https://bugs.webkit.org/show_bug.cgi?id=194853
3710
3711         Reviewed by Don Olmstead.
3712
3713         Force SSE2 on x86/32bit builds.
3714
3715         * Scripts/webkitdirs.pm:
3716         (generateBuildSystemFromCMakeProject):
3717
3718 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3719
3720         [GLIB] User data not correctly passed to callback of functions and constructors with no parameters
3721         https://bugs.webkit.org/show_bug.cgi?id=196073
3722
3723         Reviewed by Michael Catanzaro.
3724
3725         Add test cases to check functions and constructors with no arguments but receiving user data.
3726
3727         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3728         (checkUserData):
3729         (testJSCFunction):
3730         (fooCreateWithUserData):
3731         (testJSCClass):
3732
3733 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3734
3735         Unreviewed. Fix GTK build with GLib < 2.58 after r243285.
3736
3737         Add g_assert_cmpfloat_with_epsilon macro if not defined.
3738
3739         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
3740
3741 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3742
3743         [GTK][WPE] Add API to provide geolocation information
3744         https://bugs.webkit.org/show_bug.cgi?id=195940
3745
3746         Reviewed by Michael Catanzaro.
3747
3748         Add a new test to check the new API.
3749
3750         * TestWebKitAPI/Tests/WebKitGLib/TestGeolocationManager.cpp: Added.
3751         (testGeolocationManagerCurrentPosition):
3752         (testGeolocationManagerWatchPosition):
3753         (beforeAll):
3754         (afterAll):
3755         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
3756         (testWebViewGeolocationPermissionRequests): Stop using ENABLE(GEOLOCATION) conditionals for geolocation tests.
3757         (beforeAll): Ditto.
3758         * TestWebKitAPI/glib/CMakeLists.txt:
3759
3760 2019-03-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3761
3762         [GLib] Returning G_TYPE_OBJECT from a method does not work
3763         https://bugs.webkit.org/show_bug.cgi?id=195574
3764
3765         Reviewed by Michael Catanzaro.
3766
3767         Add new test cases to check the behavior of constructors and functions returning GObject and boxed types.
3768
3769         * TestWebKitAPI/Tests/JavaScriptCore/glib/TestJSC.cpp:
3770         (getGFile):
3771         (getParent):
3772         (createGString):
3773         (getGString):
3774         (getGStringCopyWillRaise):
3775         (getGStringCopy):
3776         (getGStringStr):
3777         (getGStringLen):
3778         (freeGString):
3779         (testJSCClass):
3780
3781 2019-03-20  Saam Barati  <sbarati@apple.com>
3782
3783         DFG::AbstractValue::validateOSREntry is wrong when isHeapTop and the incoming value is Empty
3784         https://bugs.webkit.org/show_bug.cgi?id=195721
3785
3786         Reviewed by Filip Pizlo.
3787
3788         * Scripts/run-javascriptcore-tests:
3789
3790 2019-03-20  Simon Fraser  <simon.fraser@apple.com>
3791
3792         Rename ENABLE_ACCELERATED_OVERFLOW_SCROLLING macro to ENABLE_OVERFLOW_SCROLLING_TOUCH
3793         https://bugs.webkit.org/show_bug.cgi?id=196049
3794
3795         Reviewed by Tim Horton.
3796
3797         This macro is about the -webkit-overflow-scrolling CSS property, not accelerated
3798         overflow scrolling in general, so rename it.
3799
3800         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3801
3802 2019-03-20  Daniel Bates  <dabates@apple.com>
3803
3804         REGRESSION (r243153): [iOS] TestWebKitAPI.FocusPreservationTests.ChangingFocusedNodeResetsFocusPreservationState is failing
3805         https://bugs.webkit.org/show_bug.cgi?id=196031
3806         <rdar://problem/49078172>
3807
3808         Reviewed by Tim Horton.
3809
3810         The test incorrectly assumes that calling -[WKWebView resignFirstResponder] is identical to dismissing the
3811         <select> picker. This is no longer the case following r243135. Instead use testing SPI that invokes that
3812         same code path used when the Done button is pressed to dismiss the <select> picker.
3813
3814         * TestWebKitAPI/Tests/ios/FocusPreservationTests.mm:
3815         (TestWebKitAPI::TEST):
3816
3817 2019-03-20  Chris Dumez  <cdumez@apple.com>
3818
3819         Regression(PSON): ViewGestureController is not properly notified of process swaps on iOS
3820         https://bugs.webkit.org/show_bug.cgi?id=196029
3821         <rdar://problem/48954651>
3822
3823         Reviewed by Tim Horton.
3824
3825         Add API test coverage.
3826
3827         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
3828
3829 2019-03-20  Aakash Jain  <aakash_jain@apple.com>
3830
3831         [ews-build] Improve failure summary string for ApplyPatch step
3832         https://bugs.webkit.org/show_bug.cgi?id=195995
3833
3834         Reviewed by Alexey Proskuryakov.
3835
3836         * BuildSlaveSupport/ews-build/steps.py:
3837         (ApplyPatch.getResultSummary): Override getResultSummary.
3838
3839 2019-03-20  Joanmarie Diggs  <jdiggs@igalia.com>
3840
3841         AX: Implement support for new meter ARIA role
3842         https://bugs.webkit.org/show_bug.cgi?id=195966
3843
3844         Reviewed by Chris Fleizach.
3845
3846         Update Core role for ATK_ROLE_LEVEL_BAR from AXProgressIndicator
3847         to AXLevelIndicator.
3848
3849         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3850
3851 2019-03-19  Jiewen Tan  <jiewen_tan@apple.com>
3852
3853         [WebAuthN] Implement FIDO AppID extension
3854         https://bugs.webkit.org/show_bug.cgi?id=143491
3855         <rdar://problem/48298273>
3856
3857         Reviewed by Brent Fulgham.
3858
3859         Add a test that covers the new flag of convertToU2fSignCommand.
3860
3861         * TestWebKitAPI/Tests/WebCore/CtapRequestTest.cpp:
3862         (TestWebKitAPI::TEST):
3863         * TestWebKitAPI/Tests/WebCore/FidoTestData.h:
3864         * TestWebKitAPI/Tests/WebCore/U2fCommandConstructorTest.cpp:
3865         (TestWebKitAPI::TEST):
3866
3867 2019-03-19  Keith Rollin  <krollin@apple.com>
3868
3869         Add support for more platforms to generate-xcfilelists
3870         https://bugs.webkit.org/show_bug.cgi?id=195977
3871
3872         Reviewed by Alexey Proskuryakov.
3873
3874         generate-xcfilelists incorrectly complains when involved with building
3875         WebKit for iphonesimulator:
3876
3877             $ make debug SDKROOT=iphonesimulator.internal -C Internal/
3878             …
3879             ### (die get_canonical_platform_name main main) Unrecognized platform name: iphonesimulator
3880
3881         Address this by teaching generate-xcfilelists about more platforms.
3882
3883         * Scripts/generate-xcfilelists:
3884
3885 2019-03-19  John Wilander  <wilander@apple.com>
3886
3887         Resource Load Statistics (experimental): Clear non-cookie website data for sites that have been navigated to, with link decoration, by a prevalent resource
3888         https://bugs.webkit.org/show_bug.cgi?id=195923
3889         <rdar://problem/49001272>
3890
3891         Reviewed by Alex Christensen.
3892
3893         This patch does the following to the TestRunner:
3894         - Adds setStatisticsCrossSiteLoadWithLinkDecoration().
3895         - Makes setStatisticsTimeToLiveUserInteraction() wait for completion.
3896         - Makes statisticsProcessStatisticsAndDataRecords() wait for completion.
3897
3898         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3899         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3900         (WTR::TestRunner::setStatisticsCrossSiteLoadWithLinkDecoration):
3901         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3902         * WebKitTestRunner/TestController.cpp:
3903         (WTR::TestController::setStatisticsCrossSiteLoadWithLinkDecoration):
3904         (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
3905         (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
3906         * WebKitTestRunner/TestController.h:
3907         * WebKitTestRunner/TestInvocation.cpp:
3908         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3909
3910 2019-03-19  Christopher Reid  <chris.reid@sony.com>
3911
3912         [CMake] Support more clang and gcc sanitizers
3913         https://bugs.webkit.org/show_bug.cgi?id=195956
3914
3915         Reviewed by Michael Catanzaro.
3916
3917         * Scripts/webkitdirs.pm: Updating ENABLE_ADDRESS_SANITIZER to ENABLE_SANITIZERS=address
3918
3919 2019-03-19  Aakash Jain  <aakash_jain@apple.com>
3920
3921         [ews-build] Improve summary for PrintConfiguration step
3922         https://bugs.webkit.org/show_bug.cgi?id=195945
3923
3924         Reviewed by Lucas Forschler.
3925
3926         * BuildSlaveSupport/ews-build/steps.py:
3927         (PrintConfiguration.getResultSummary): Override getResultSummary.
3928
3929 2019-03-19  Aakash Jain  <aakash_jain@apple.com>
3930
3931         [ews-build] Improve summary for CheckOutSource step
3932         https://bugs.webkit.org/show_bug.cgi?id=195963
3933
3934         Reviewed by Lucas Forschler.
3935
3936         * BuildSlaveSupport/ews-build/steps.py:
3937         (CheckOutSource.getResultSummary):
3938
3939 2019-03-19  Daniel Bates  <dabates@apple.com>
3940
3941         [iOS] Focus not preserved when switching between tabs
3942         https://bugs.webkit.org/show_bug.cgi?id=195820
3943         <rdar://problem/43614450>
3944
3945         Reviewed by Brent Fulgham.
3946
3947         Add tests to ensure that we restore focus when resigning and becoming first responder.
3948
3949         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
3950         (TestWebKitAPI::TEST):
3951
3952 2019-03-19  Alex Christensen  <achristensen@webkit.org>
3953
3954         Make WTFLogChannelState and WTFLogLevel enum classes
3955         https://bugs.webkit.org/show_bug.cgi?id=195904
3956
3957         Reviewed by Eric Carlson.
3958
3959         * TestWebKitAPI/Tests/WebCore/Logging.cpp:
3960         (TestWebKitAPI::TEST_F):
3961
3962 2019-03-19  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3963
3964         [GStreamer][EME] Backported mssdemux protection data crash fix
3965         https://bugs.webkit.org/show_bug.cgi?id=195918
3966
3967         Reviewed by Philippe Normand.
3968
3969         * gstreamer/jhbuild.modules:
3970         * gstreamer/patches/gst-plugins-bad-0005-mssdemux-fix-protection-data-double-free.patch: Added.
3971
3972 2019-03-19  Michael Catanzaro  <mcatanzaro@igalia.com>
3973
3974         Unreviewed, rolling out r243132.
3975
3976         Broke GTK build
3977
3978         Reverted changeset:
3979
3980         "Make WTFLogChannelState and WTFLogLevel enum classes"
3981         https://bugs.webkit.org/show_bug.cgi?id=195904
3982         https://trac.webkit.org/changeset/243132
3983
3984 2019-03-19  Zan Dobersek  <zdobersek@igalia.com>
3985
3986         Unreviewed follow-up to r243073, fixing WPE MiniBrowser launching.
3987
3988         * Scripts/webkitdirs.pm:
3989         (builtDylibPathForName): Adjust the shared library name that's changed
3990         with the API version bump in r243073.
3991
3992 2019-03-18  Alex Christensen  <achristensen@webkit.org>
3993
3994         Make WTFLogChannelState and WTFLogLevel enum classes
3995         https://bugs.webkit.org/show_bug.cgi?id=195904
3996
3997         Reviewed by Eric Carlson.
3998
3999         * TestWebKitAPI/Tests/WebCore/Logging.cpp:
4000         (TestWebKitAPI::TEST_F):
4001
4002 2019-03-18  Alex Christensen  <achristensen@webkit.org>
4003
4004         Disable flaky test added in r2431100
4005         https://webkit.org/b/195785
4006
4007         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4008         (TestWebKitAPI::TEST):
4009         Apparently bots don't hit 150kb/s as reliably as I do locally.  Can't say I'm too surprised.
4010
4011 2019-03-18  Timothy Hatcher  <timothy@apple.com>
4012
4013         WKWebView.GetContentsShouldReturnAttributedString is crashing on iOS Simulator.
4014         https://bugs.webkit.org/show_bug.cgi?id=195916
4015
4016         Reviewed by Tim Horton.
4017
4018         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
4019         (TEST(WKWebView, GetContentsShouldReturnAttributedString): Fix iOS code path to pass.
4020
4021 2019-03-18  Alexey Proskuryakov  <ap@apple.com>
4022
4023         Add a secondary e-mail address for Fujii Hironori to make tools happier.
4024
4025         * Scripts/webkitpy/common/config/contributors.json:
4026
4027 2019-03-18  Alex Christensen  <achristensen@webkit.org>
4028
4029         Implement DownloadMonitor to prevent long-running slow downloads from background apps
4030         https://bugs.webkit.org/show_bug.cgi?id=195785
4031
4032         Reviewed by Geoffrey Garen.
4033
4034         * TestWebKitAPI/TCPServer.cpp: Added.
4035         (TestWebKitAPI::TCPServer::TCPServer):
4036         (TestWebKitAPI::TCPServer::~TCPServer):
4037         (TestWebKitAPI::TCPServer::socketBindListen):
4038         (TestWebKitAPI::TCPServer::waitForAndReplyToRequests):
4039         * TestWebKitAPI/TCPServer.h: Added.
4040         (TestWebKitAPI::TCPServer::port const):
4041         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4042         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4043         (-[DownloadMonitorTestDelegate _downloadDidStart:]):
4044         (-[DownloadMonitorTestDelegate _downloadDidCancel:]):
4045         (-[DownloadMonitorTestDelegate _download:decideDestinationWithSuggestedFilename:completionHandler:]):
4046         (-[DownloadMonitorTestDelegate _download:didReceiveData:]):
4047         (TestWebKitAPI::respondSlowly):
4048         (TestWebKitAPI::webViewWithDownloadMonitorSpeedMultiplier):
4049         (TestWebKitAPI::downloadAtRate):
4050         (TestWebKitAPI::TEST):
4051
4052 2019-03-18  Saam Barati  <sbarati@apple.com>
4053
4054         Add a plan file for JetStream 2
4055         https://bugs.webkit.org/show_bug.cgi?id=190734
4056
4057         Reviewed by Mark Lam.
4058
4059         * Scripts/webkitpy/benchmark_runner/data/plans/jetstream2.plan: Added.
4060
4061 2019-03-18  Chris Dumez  <cdumez@apple.com>
4062
4063         Delay WebProcess launch until a load is triggered in a Web view
4064         https://bugs.webkit.org/show_bug.cgi?id=195758
4065         <rdar://problem/48126013>
4066
4067         Reviewed by Geoff Garen.
4068
4069         Add API test coverage. Also update some existing API tests to not expect
4070         constructing a WKWebView to launch both a WebProcess and a NetworkProcess.
4071
4072         * TestWebKitAPI/Tests/WebKit/NetworkProcessCrashWithPendingConnection.mm:
4073         (TestWebKitAPI::TEST):
4074         * TestWebKitAPI/Tests/WebKit/mac/GetBackingScaleFactor.mm:
4075         (TestWebKitAPI::TEST):
4076         * TestWebKitAPI/Tests/WebKitCocoa/ProcessPreWarming.mm:
4077         (TEST):
4078         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4079         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
4080         (TEST):
4081         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
4082         (TEST):
4083         (testDidResignInputElementStrongPasswordAppearanceAfterEvaluatingJavaScript):
4084
4085 2019-03-18  Xan Lopez  <xan@igalia.com>
4086
4087         [CMake] Prevent potential warning when determining $architecture
4088         https://bugs.webkit.org/show_bug.cgi?id=195891
4089
4090         Reviewed by Michael Catanzaro.
4091
4092         It's possible for generateBuildSystemForCMakeProject to be called
4093         before determineArchitecture() is ever called. This will make the
4094         first eq check with $architecture to be bogus (and print a
4095         warning). Change that to an eq check with architecture(), which
4096         implicitly calls determineArchitecture() if needed, and change all
4097         the other similar cases in the method in the same way to prevent
4098         future bugs like this one.
4099
4100         * Scripts/webkitdirs.pm:
4101         (generateBuildSystemFromCMakeProject):
4102
4103 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
4104
4105         [WPE] Tarballs generated with “make dist” cannot build documentation
4106         https://bugs.webkit.org/show_bug.cgi?id=195885
4107
4108         Reviewed by Carlos Garcia Campos.
4109
4110         * wpe/manifest.txt.in: Add missing Tools/glib/common.py file to be included in release tarballs.
4111
4112 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
4113
4114         [GTK][WPE] Cryptic error from Tools/gtkdoc/generate-gtkdoc
4115         https://bugs.webkit.org/show_bug.cgi?id=195883
4116
4117         Reviewed by Carlos Garcia Campos.
4118
4119         * gtkdoc/gtkdoc.py:
4120         (GTKDoc._run_command): When commands fail to run, include the full command line for
4121         the program invocation and the output it has generated on the standard error stream.
4122
4123 2019-03-18  Adrian Perez de Castro  <aperez@igalia.com>
4124
4125         [WPE] Bump dependencies to wpe-1.0 and wpebackend-fdo-1.0
4126         https://bugs.webkit.org/show_bug.cgi?id=195786
4127
4128         Reviewed by Philippe Normand.
4129
4130         * flatpak/org.webkit.WPEModules.yaml: Use libwpe 1.1.90 and wpebackend-fdo 1.1.91.
4131         * wpe/jhbuild.modules: Ditto.
4132
4133 2019-03-16  Aakash Jain  <aakash_jain@apple.com>
4134
4135         [ews-build] Don't run clean builds on EWS builders
4136         https://bugs.webkit.org/show_bug.cgi?id=195851
4137
4138         Reviewed by Geoffrey Garen.
4139
4140         * BuildSlaveSupport/ews-build/factories.py:
4141
4142 2019-03-16  Sihui Liu  <sihui_liu@apple.com>
4143
4144         REGRESSION (r243019): Failing API test: WebKit.WebsiteDataStoreCustomPathsWithoutPrewarming
4145         https://bugs.webkit.org/show_bug.cgi?id=195849
4146
4147         Reviewed by Chris Dumez.
4148
4149         We should expect IDB database files to be at path IndexedDB/v1/ after r243019.
4150
4151         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
4152         (runWebsiteDataStoreCustomPaths):
4153
4154 2019-03-15  Jonathan Bedard  <jbedard@apple.com>
4155
4156         webkitpy: Upload test results
4157         https://bugs.webkit.org/show_bug.cgi?id=195755
4158         <rdar://problem/48896182>
4159
4160         Reviewed by Aakash Jain.
4161
4162         Establish a new format for uploading results that is not tied to layout tests, apply
4163         that format to webkitpy tests.
4164
4165         * Scripts/webkitpy/common/checkout/scm/git.py:
4166         (Git.native_branch): Return what branch the current checkout is on.
4167         * Scripts/webkitpy/common/checkout/scm/scm_mock.py:
4168         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
4169         * Scripts/webkitpy/common/checkout/scm/svn.py:
4170         (SVN.native_branch): Ditto.
4171         * Scripts/webkitpy/common/system/platforminfo.py:
4172         (PlatformInfo.build_version): Return a build version for Mac.
4173         * Scripts/webkitpy/common/system/platforminfo_mock.py:
4174         (MockPlatformInfo.__init__):
4175         (MockPlatformInfo.build_version):
4176         * Scripts/webkitpy/results: Added.
4177         * Scripts/webkitpy/results/__init__.py: Added.
4178         * Scripts/webkitpy/results/options.py: Added.
4179         (upload_options): OptParse list for upload options.
4180         * Scripts/webkitpy/results/upload.py: Added.
4181         (Upload): Class which enforces the upload format expected by the results server.
4182         (Upload.Expectations):
4183         (Upload.create_configuration):
4184         (Upload.create_commit):
4185         (Upload.create_details):
4186         (Upload.create_run_stats):
4187         (Upload.create_test_result):
4188         (Upload.__init__):
4189         (Upload.Encoder): Encode Upload object as json.
4190         (Upload.upload): Upload results to the results server, returning 'True' if the upload is successful.
4191         * Scripts/webkitpy/results/upload_unittest.py: Added.
4192         * Scripts/webkitpy/test/main.py:
4193         (Tester._parse_args): Add upload arguments.
4194         (Tester._run_tests): Allow results to be uploaded.
4195         * Scripts/webkitpy/test/runner.py:
4196         (Runner.__init__): Record which tests were run, rather than just counting them.
4197         (Runner.handle):
4198         * Scripts/webkitpy/test/runner_unittest.py:
4199         (RunnerTest.test_run):
4200         * Scripts/webkitpy/thirdparty/__init__.py:
4201         (AutoinstallImportHook.find_module): Add requests auto-install.
4202         (AutoinstallImportHook._install_requests):
4203         * Scripts/webkitpy/tool/commands/queues_unittest.py:
4204         (PatchProcessingQueueTest.test_upload_results_archive_for_patch): Update os name for testing.
4205
4206 2019-03-15  Wenson Hsieh  <wenson_hsieh@apple.com>
4207
4208         [iOS] Crash under -[TestRunnerWKWebView _didShowMenu] while running layout tests on iOS simulator
4209         https://bugs.webkit.org/show_bug.cgi?id=195810
4210
4211         Reviewed by Tim Horton.
4212
4213         Ensure that the process of resetting web view state between tests doesn't also invoke testing callbacks
4214         registered by the previous layout test. This fixes an occasional crash when hiding the callout menu after
4215         ending certain layout tests.
4216
4217         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
4218         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
4219         (-[TestRunnerWKWebView dealloc]):
4220         (-[TestRunnerWKWebView resetInteractionCallbacks]):
4221
4222         Pull logic to reset all of TestRunnerWKWebView's callback handler blocks into a separate helper method; use this
4223         helper method when destroying the web view, and when resetting state between tests.
4224
4225         * WebKitTestRunner/ios/TestControllerIOS.mm:
4226         (WTR::TestController::platformResetStateToConsistentValues):
4227
4228         Hide the callout menu *after* clearing out interaction callbacks registered on the web view.
4229
4230 2019-03-15  Sihui Liu  <sihui_liu@apple.com>
4231
4232         [ Mojave WK1 ] Layout Test storage/indexeddb/database-odd-names.html is failing
4233         https://bugs.webkit.org/show_bug.cgi?id=190350
4234         <rdar://problem/45089503>
4235
4236         Reviewed by Geoffrey Garen.
4237
4238         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4239         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
4240         (TEST):
4241         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3:
4242         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3-shm:
4243         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDB.sqlite3-wal:
4244         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName-1.html: Added.
4245         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName-2.html: Added.
4246         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBFileName.mm: Added.
4247         (-[IndexedDBFileNameMessageHandler userContentController:didReceiveScriptMessage:]):
4248         (runTest):
4249         (createDirectories):
4250         (TEST):
4251         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBTempFileSize.mm:
4252         (TEST):
4253         * TestWebKitAPI/Tests/WebKitCocoa/StoreBlobThenDelete.mm:
4254         (TEST):
4255
4256 2019-03-15  Timothy Hatcher  <timothy@apple.com>
4257
4258         Add support to WebPage for getting the contents as an attributed string.
4259         https://bugs.webkit.org/show_bug.cgi?id=195636
4260         rdar://problem/45055697
4261
4262         Reviewed by Tim Horton.
4263
4264         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewGetContents.mm:
4265         (TEST(WKWebView, GetContentsShouldReturnAttributedString): Added.
4266
4267 2019-03-15  Chris Dumez  <cdumez@apple.com>
4268
4269         [PSON] Make sure the WebProcessCache is leverage when relaunching a process after termination
4270         https://bugs.webkit.org/show_bug.cgi?id=195747
4271
4272         Reviewed by Geoff Garen.
4273
4274         Add API test coverage.
4275
4276         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
4277
4278 2019-03-15  Shawn Roberts  <sroberts@apple.com>
4279
4280         Unreviewed, rolling out r242952.
4281
4282         Causing API failures on iOS Simulator
4283
4284         Reverted changeset:
4285
4286         "[PSON] Make sure the WebProcessCache is leverage when
4287         relaunching a process after termination"
4288         https://bugs.webkit.org/show_bug.cgi?id=195747
4289         https://trac.webkit.org/changeset/242952
4290
4291 2019-03-14  Fujii Hironori  <Hironori.Fujii@sony.com>
4292
4293         [Win][MinBrowser][WK2] Implement createNewPage of WKPageUIClient to open a new window
4294         https://bugs.webkit.org/show_bug.cgi?id=195740
4295
4296         Reviewed by Ross Kirsling.
4297
4298         window.open doesn't work for WebKitBrowserWindow because it is not
4299         implemented yet.
4300
4301         1. Implemented createNewPage callback of WKPageUIClient.
4302         2. Changed MainWindow to take a BrowserWindow factory function
4303           instead of BrowserWindowType to be flexible to create
4304           BrowserWindow with extra settings.
4305         3. Renamed MainWindow::BrowserWindowType to BrowserWindowType
4306           because it is not relevant with MainWindow anymore.
4307
4308         * MiniBrowser/win/Common.cpp:
4309         (parseCommandLine):
4310         * MiniBrowser/win/Common.h:
4311         (CommandLineOptions::CommandLineOptions):
4312         * MiniBrowser/win/MainWindow.cpp:
4313         (MainWindow::MainWindow):
4314         (MainWindow::create):
4315         (MainWindow::init):
4316         (MainWindow::WndProc):
4317         * MiniBrowser/win/MainWindow.h:
4318         * MiniBrowser/win/PrintWebUIDelegate.cpp:
4319         (PrintWebUIDelegate::createWebViewWithRequest):
4320         * MiniBrowser/win/WebKitBrowserWindow.cpp:
4321         (WebKitBrowserWindow::create): Moved WKPageConfigurationRef related code from WebKitBrowserWindow::WebKitBrowserWindow.