WebKit falsely reports that a web process is unresponsive if you close a page shortly...
[WebKit-https.git] / Tools / ChangeLog
1 2017-06-14  Chris Dumez  <cdumez@apple.com>
2
3         WebKit falsely reports that a web process is unresponsive if you close a page shortly after stopping a load
4         https://bugs.webkit.org/show_bug.cgi?id=173384
5         <rdar://problem/32723779>
6
7         Reviewed by Dan Bernstein.
8
9         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
10         * TestWebKitAPI/Tests/WebKit2/ResponsivenessTimer.cpp: Added.
11         Add API test coverage.
12
13         * TestWebKitAPI/cocoa/UtilitiesCocoa.mm:
14         (TestWebKitAPI::Util::sleep):
15         Update implementation of Util::sleep() so that we actually run the run loop.
16         Otherwise, we don't process events while sleeping.
17
18 2017-06-14  Alex Christensen  <achristensen@webkit.org>
19
20         Add SPI for immediate injection of user scripts
21         https://bugs.webkit.org/show_bug.cgi?id=173342
22         <rdar://problem/29202285>
23
24         Reviewed by Brady Eidson.
25
26         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
27         (waitForMessage):
28         (TEST):
29
30 2017-06-14  Claudio Saavedra  <csaavedra@igalia.com>
31
32         Add WPE to the flakiness dashboard
33         https://bugs.webkit.org/show_bug.cgi?id=173365
34
35         Reviewed by Carlos Alberto Lopez Perez.
36
37         * TestResultServer/static-dashboards/builders.jsonp:
38         * TestResultServer/static-dashboards/flakiness_dashboard.js:
39         * TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
40         (resetGlobals):
41         * TestResultServer/static-dashboards/loader_unittests.js:
42
43 2017-06-14  Brady Eidson  <beidson@apple.com>
44
45         WKIconLoadingDelegate never gets asked about the default favicon if touch/touch-precomposed icons are in the <head>
46         <rdar://problem/32614328> and https://bugs.webkit.org/show_bug.cgi?id=173376
47
48         Reviewed by Alex Christensen.
49
50         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
51         * TestWebKitAPI/Tests/WebKit2Cocoa/IconLoadingDelegate.mm: Added.
52         (-[IconLoadingDelegate webView:shouldLoadIconWithParameters:completionHandler:]):
53         (-[IconLoadingSchemeHandler initWithData:mimeType:]):
54         (-[IconLoadingSchemeHandler webView:startURLSchemeTask:]):
55         (-[IconLoadingSchemeHandler webView:stopURLSchemeTask:]):
56         (TEST):
57
58 2017-06-14  Tim Horton  <timothy_horton@apple.com>
59
60         WKContentViewEditingActions API test always fails
61         https://bugs.webkit.org/show_bug.cgi?id=173374
62
63         Reviewed by Wenson Hsieh.
64
65         * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
66         (TEST):
67         selectAll isn't working, because canPerformAction for selectAll returns NO
68         if selectionIsNone (which is true in the non-contenteditable case).
69         Instead, make use of r218180's test page, which knows how to select itself.
70         Also, reset the pasteboard at the beginning of the test to reduce confusion
71         (I landed the test broken because my simulator had the correct text
72         stuck in its pasteboard).
73
74 2017-06-14  Jonathan Bedard  <jbedard@apple.com>
75
76         Configure screen scale for running layout tests on plus devices
77         https://bugs.webkit.org/show_bug.cgi?id=173319
78
79         Reviewed by Tim Horton.
80
81         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
82         * DumpRenderTree/mac/DumpRenderTree.mm:
83         (dumpRenderTree): Set screen scale to 2.0.
84         * TestRunnerShared/spi/UIKitTestSPI.h: Copied from Tools/WebKitTestRunner/ios/UIKitSPI.h,
85         add _setScale for UIScreen.
86         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Include UIKitTestSPI.h in project.
87         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
88         * WebKitTestRunner/ios/HIDEventGenerator.h: Ditto.
89         * WebKitTestRunner/ios/HIDEventGenerator.mm: Ditto.
90         * WebKitTestRunner/ios/PlatformWebViewIOS.mm: Ditto.
91         * WebKitTestRunner/ios/TestControllerIOS.mm: Ditto.
92         (WTR::TestController::platformInitialize): Set screen scale to 2.0.
93         * WebKitTestRunner/ios/UIKitSPI.h: Moved to TestRunnerShared/spi/UIKitTestSPI.h.
94         * WebKitTestRunner/ios/UIScriptControllerIOS.mm: Import UIKitTestSPI.h instead of UIKitSPI.h.
95         * WebKitTestRunner/ios/mainIOS.mm: Ditto.
96
97 2017-06-14  Alexey Proskuryakov  <ap@apple.com>
98
99         Add iOS 11 support to the bot watcher's dashboard
100         https://bugs.webkit.org/show_bug.cgi?id=173369
101
102         Reviewed by Lucas Forschler.
103
104         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11.png: Added.
105         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11@2x.png: Added.
106         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator.png: Added.
107         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS11Simulator@2x.png: Added.
108         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
109         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
110
111 2017-06-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
112
113         [GTK][WPE] Raise the timeout values for layout tests
114         https://bugs.webkit.org/show_bug.cgi?id=173368
115
116         Reviewed by Carlos Garcia Campos.
117
118         Raise the values to 15 seconds in Release builds and 30 seconds (2x) in Debug builds.
119         When running under valgrind a 10x multiplier is applied.
120
121         * Scripts/webkitpy/port/gtk.py:
122         (GtkPort.default_timeout_ms):
123         * Scripts/webkitpy/port/gtk_unittest.py:
124         (GtkPortTest.test_default_timeout_ms):
125         * Scripts/webkitpy/port/wpe.py:
126         (WPEPort.default_timeout_ms):
127         * Scripts/webkitpy/port/wpe_unittest.py: Copied from Tools/Scripts/webkitpy/port/gtk_unittest.py.
128         (WPEPortTest):
129         (WPEPortTest.make_port):
130         (WPEPortTest.test_default_timeout_ms):
131         (WPEPortTest.test_get_crash_log):
132
133 2017-06-14  Alex Christensen  <achristensen@webkit.org>
134
135         Test persistent WKHTTPCookieStorages on iOS.
136         https://bugs.webkit.org/show_bug.cgi?id=173284
137
138         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
139         (TEST):
140         Make the bots green again for now. There's still a problem, and I'll investigate and fix.
141
142 2017-06-14  Per Arne Vollan  <pvollan@apple.com>
143
144         [Win] DRT should not use disk cache.
145         https://bugs.webkit.org/show_bug.cgi?id=173361
146
147         Reviewed by Darin Adler.
148
149         Like on macOS/iOS, DRT on Windows should only use memory cache.
150
151         * DumpRenderTree/win/DumpRenderTree.cpp:
152         (setDefaultsToConsistentValuesForTesting):
153         (prepareConsistentTestingEnvironment):
154
155 2017-06-14  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
156
157         MediaSource duration attribute should not be equal to Infinity when set to a value greater than 2^64
158         https://bugs.webkit.org/show_bug.cgi?id=171668
159
160         Reviewed by Jer Noble.
161
162         MediaSource duration attribute is a double represented in MediaSource by a MediaTime instance created with
163         MediaTime::CreateWithDouble(). This method implements an overflow control mechanism which sets MediaTime to
164         Infinity when the double value passed as argument is greater than 2^64.
165
166         This patch removes the overflow control mechanism when time value is represented as a double. This patch also
167         modifies the behavior of mathematical operations between a double MediaTime and rational MediaTime: the rational
168         MediaTime is converted to a double before applying the operation. Double MediaTime precision is the same as for
169         double. Overflow mechanisms still apply to the conversion of a double MediaTime to rational with setTimescale()
170         method. No behavior change for rational MediaTime.
171
172         * TestWebKitAPI/Tests/WTF/MediaTime.cpp: Add tests to check operation results between double and rational MediaTime.
173         (TestWebKitAPI::TEST):
174
175 2017-06-13  Alex Christensen  <achristensen@webkit.org>
176
177         Test persistent WKHTTPCookieStorages on iOS
178         https://bugs.webkit.org/show_bug.cgi?id=173284
179         <rdar://problem/32260156>
180
181         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
182         (TEST):
183
184 2017-06-13  Matt Rajca  <mrajca@apple.com>
185
186         WebsitePolicies: let clients select specific autoplay quirks
187         https://bugs.webkit.org/show_bug.cgi?id=173343
188
189         Reviewed by Alex Christensen.
190
191         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
192         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
193         (TEST): Updated tests.
194
195 2017-06-13  Daniel Bates  <dabates@apple.com>
196
197         Implement W3C Secure Contexts Draft Specification
198         https://bugs.webkit.org/show_bug.cgi?id=158121
199         <rdar://problem/26012994>
200
201         Reviewed by Brent Fulgham.
202
203         Part 4
204
205         Expose the isSecureContext attribute by default in DumpRenderTree and WebKitTestRunner.
206         Teach DumpRenderTree for Mac and WebKitTestRunner to parse the test option enableIsSecureContextAttribute
207         to toggle the runtime enabled feature flag isSecureContextAttributeEnabled.
208
209         * DumpRenderTree/TestOptions.h:
210         * DumpRenderTree/TestOptions.mm:
211         (TestOptions::TestOptions):
212         * DumpRenderTree/mac/DumpRenderTree.mm:
213         (setWebPreferencesForTestOptions):
214         * DumpRenderTree/win/DumpRenderTree.cpp:
215         (enableExperimentalFeatures):
216         * WebKitTestRunner/TestController.cpp:
217         (WTR::TestController::resetPreferencesToConsistentValues):
218         (WTR::updateTestOptionsFromTestHeader):
219         * WebKitTestRunner/TestOptions.h:
220         (WTR::TestOptions::hasSameInitializationOptions):
221
222 2017-06-13  Alex Christensen  <achristensen@webkit.org>
223
224         Test persistent WKHTTPCookieStorages on iOS
225         https://bugs.webkit.org/show_bug.cgi?id=173284
226         <rdar://problem/32260156>
227
228         Reviewed by Alexey Proskuryakov.
229
230         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
231         (TEST):
232
233 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
234
235         [GTK] Blob download doesn't work
236         https://bugs.webkit.org/show_bug.cgi?id=172442
237
238         Reviewed by Carlos Alberto Lopez Perez.
239
240         Add a unit test to check blob downloads.
241
242         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
243         (testBlobDownload):
244         (beforeAll):
245
246 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
247
248         [GTK] Do not include WTR, DumpRendererTree and ImageDiff in tarballs
249         https://bugs.webkit.org/show_bug.cgi?id=173316
250
251         Reviewed by Alex Christensen.
252
253         It's not really possible to run layout tests from the tarball, so it's better not to include those files.
254
255         * gtk/manifest.txt.in:
256
257 2017-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>
258
259         [WTR] Crash in WebGeolocationManagerProxy::~WebGeolocationManagerProxy() when running several tests
260         https://bugs.webkit.org/show_bug.cgi?id=173315
261
262         Reviewed by Darin Adler.
263
264         This has started to happen after r218165, but I don't think it's a regression, but that r218165 revealed the bug
265         somehow in WTR. The problem is that GeolocationProviderMock keeps a pointer to the WKGeolocationManagerRef
266         returned by WKContextGetGeolocationManager. But in TestController::generatePageConfiguration() the context is
267         freed before the GeolocationProviderMock. When the GeolocationProviderMock is then destroyed, it calls
268         WKGeolocationManagerSetProvider(m_geolocationManager, 0); but the WKGeolocationManagerRef has already been
269         destroyed. GeolocationProviderMock should keep a reference to the WKContext to ensure the
270         WKGeolocationManagerRef is not destroyed.
271
272         * WebKitTestRunner/GeolocationProviderMock.cpp:
273         (WTR::GeolocationProviderMock::GeolocationProviderMock):
274         * WebKitTestRunner/GeolocationProviderMock.h:
275
276 2017-06-13  Wenson Hsieh  <wenson_hsieh@apple.com>
277
278         Unable to paste text that was copied from a page into the universal search field
279         https://bugs.webkit.org/show_bug.cgi?id=173293
280         <rdar://problem/32440918>
281
282         Reviewed by Ryosuke Niwa.
283
284         Adds 2 new unit tests for copying plain and rich selected web content.
285         See WebCore and WebKit ChangeLogs for more detail.
286
287         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
288         * TestWebKitAPI/Tests/WebKit2Cocoa/rich-and-plain-text.html: Added.
289         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm: Added.
290         (TestWebKitAPI::dataForPasteboardType):
291         (TestWebKitAPI::setUpWebViewForPasteboardTests):
292         (TestWebKitAPI::TEST):
293
294 2017-06-13  Joanmarie Diggs  <jdiggs@igalia.com>
295
296         AX: [ATK] Implement missing AtkRelation types
297         https://bugs.webkit.org/show_bug.cgi?id=155494
298
299         Reviewed by Darin Adler.
300
301         Add additional methods to test ARIA properties which are exposed via
302         AtkRelation. Implement ATK support for ariaOwnsElementAtIndex().
303
304         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
305         (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
306         (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
307         (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
308         (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
309         (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
310         (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
311         (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
312         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
313         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
314         (WTR::AccessibilityUIElement::ariaOwnsElementAtIndex):
315         (WTR::AccessibilityUIElement::ariaOwnsReferencingElementAtIndex):
316         (WTR::AccessibilityUIElement::ariaFlowToReferencingElementAtIndex):
317         (WTR::AccessibilityUIElement::ariaControlsReferencingElementAtIndex):
318         (WTR::AccessibilityUIElement::ariaLabelledByElementAtIndex):
319         (WTR::AccessibilityUIElement::ariaLabelledByReferencingElementAtIndex):
320         (WTR::AccessibilityUIElement::ariaDescribedByElementAtIndex):
321         (WTR::AccessibilityUIElement::ariaDescribedByReferencingElementAtIndex):
322
323 2017-06-12  Daniel Bates  <dabates@apple.com>
324
325         Add unit tests for SecurityOrigin::IsPotentiallyTrustworthy()
326         https://bugs.webkit.org/show_bug.cgi?id=173286
327         <rdar://problem/32726102>
328
329         Reviewed by Brent Fulgham.
330
331         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
332         (TestWebKitAPI::TEST_F):
333
334 2017-06-12  Lucas Forschler  <lforschler@apple.com>
335
336         <rdar://problem/32683422>
337         Teach copy-webkitlibraries-to-product-directory script about updated libraries.
338
339         Reviewed by Conrad Schultz.
340
341         * Scripts/copy-webkitlibraries-to-product-directory:
342
343 2017-06-12  Tim Horton  <timothy_horton@apple.com>
344
345         [iOS] Cmd-C doesn't copy text from WKWebView
346         https://bugs.webkit.org/show_bug.cgi?id=173277
347         <rdar://problem/32396742>
348
349         Reviewed by Dan Bernstein.
350
351         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
352         * Tests/WebKit2Cocoa/WKContentViewEditingActions.mm:
353         Add a test ensuring that -copy on WKContentView will cause text to be copied.
354
355 2017-06-12  Jiewen Tan  <jiewen_tan@apple.com>
356
357         [WebCrypto] Remove experimental feature flag of SubtleCrypto
358         https://bugs.webkit.org/show_bug.cgi?id=173197
359         <rdar://problem/32688148>
360
361         Reviewed by Brent Fulgham.
362
363         * DumpRenderTree/mac/DumpRenderTree.mm:
364         (enableExperimentalFeatures):
365         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
366         (WTR::InjectedBundle::beginTesting):
367         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
368         (WTR::TestRunner::setSubtleCryptoEnabled): Deleted.
369         * WebKitTestRunner/InjectedBundle/TestRunner.h:
370
371 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
372
373         [iOS DnD] Allow the injected bundle to add client data when writing an image to the pasteboard
374         https://bugs.webkit.org/show_bug.cgi?id=173238
375         <rdar://problem/31943370>
376
377         Reviewed by Ryosuke Niwa and Tim Horton.
378
379         Add a new unit test to verify that data inserted by the injected bundle when beginning a drag on an image
380         element is plumbed across to the UI delegate. Also refactors injected bundle unit tests to use the new version
381         of adjustedDataInteractionItemProvidersForItemProvider: that takes representing objects and additional data.
382
383         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
384         (TestWebKitAPI::TEST):
385         * TestWebKitAPI/ios/DataInteractionSimulator.h:
386         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
387         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProvidersForItemProvider:representingObjects:additionalData:]):
388         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]): Deleted.
389
390 2017-06-12  Wenson Hsieh  <wenson_hsieh@apple.com>
391
392         WebItemProviderPasteboard should call its completion block immediately after a synchronous load
393         https://bugs.webkit.org/show_bug.cgi?id=173225
394         <rdar://problem/32713144>
395
396         Reviewed by Tim Horton.
397
398         Adds a new unit test to verify whether the completion block is called synchronously or asynchronously, in both
399         cases where the synchronous timeout is very large, and the synchronous timeout is not used (0).
400
401         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
402         (TestWebKitAPI::TEST):
403
404 2017-06-12  Jonathan Bedard  <jbedard@apple.com>
405
406         Return correct process names for iOS on-device testing
407         https://bugs.webkit.org/show_bug.cgi?id=173263
408
409         Reviewed by Alex Christensen.
410
411         When running tests on iOS devices, process names do not end with '.Development'
412         as they do on Mac and iOS simulator.
413
414         * WebKitTestRunner/TestController.cpp:
415         (WTR::TestController::webProcessName): Return correct process name without '.Development'
416         for iOS on-device testing.
417         (WTR::TestController::networkProcessName): Ditto.
418         (WTR::TestController::databaseProcessName): Ditto.
419
420 2017-06-12  Chris Dumez  <cdumez@apple.com>
421
422         Regression(r217867): Legacy SessionHistoryEntryData format should not change
423         https://bugs.webkit.org/show_bug.cgi?id=173267
424         <rdar://problem/32701257>
425
426         Reviewed by Simon Fraser.
427
428         Restrict test to stop covering saving / restore of scrollRestoration via the legacy
429         SessionHistoryEntryData. Maintain coverage for the default value of scrollRestoration
430         though as this covers the crash that r217867 was fixing.
431
432         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp:
433         (TestWebKitAPI::createSessionStateData):
434         (TestWebKitAPI::TEST):
435         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration): Deleted.
436
437 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
438
439         [GTK] Stop dismissing menus attached to the web view for every injected event
440         https://bugs.webkit.org/show_bug.cgi?id=172708
441
442         Reviewed by Alex Christensen.
443
444         It's a workaround we added in r184015 that has worked so far for the context menu, but doesn't really work now
445         that we also attach popup menus to the web view. We really need to be able to show a popup menu, and then send
446         events while the menu is open.
447
448         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
449         (WTR::EventSendingController::contextClick): Use WKBundlePageCopyContextMenuAtPointInWindow() also in GTK+ port.
450         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
451         (WTR::EventSenderProxy::dispatchEvent): Stop calling PlatformWebView::dismissAllPopupMenus().
452
453 2017-06-12  Miguel Gomez  <magomez@igalia.com>
454
455         [GTK][WPE] Enable GStreamer GL on development builds
456         https://bugs.webkit.org/show_bug.cgi?id=173248
457
458         Enable GStreamer GL for GTK and WPE.
459
460         Reviewed by Carlos Garcia Campos.
461
462         * Scripts/webkitperl/FeatureList.pm:
463
464 2017-06-12  Carlos Garcia Campos  <cgarcia@igalia.com>
465
466         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/notification after r216641.
467
468         Notifications are no longer cleared on page navigation.
469
470         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
471         (testWebViewNotification):
472
473 2017-06-11  Carlos Garcia Campos  <cgarcia@igalia.com>
474
475         Unreviewed. Fix GTK+ test /webkit2/WebKitAutomationSession/request-session after r217831.
476
477         DBus interface and object path names were updated in r217831.
478
479         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
480
481 2017-06-10  Dan Bernstein  <mitz@apple.com>
482
483         Reverted r218056 because it made the IDE reindex constantly.
484
485         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
486         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
487         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
488         * MiniBrowser/Configurations/DebugRelease.xcconfig:
489         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
490         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
491         * WebEditingTester/Configurations/DebugRelease.xcconfig:
492         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
493
494 2017-06-10  Dan Bernstein  <mitz@apple.com>
495
496         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
497         https://bugs.webkit.org/show_bug.cgi?id=173223
498
499         Reviewed by Sam Weinig.
500
501         The rebuilds were happening due to a difference in the compiler options that the IDE and
502         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
503         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
504         specify an appropriate path in CLANG_INDEX_STORE_PATH.
505
506         * ContentExtensionTester/Configurations/DebugRelease.xcconfig:
507         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
508         * ImageDiff/cg/Configurations/DebugRelease.xcconfig:
509         * MiniBrowser/Configurations/DebugRelease.xcconfig:
510         * MobileMiniBrowser/Configurations/DebugRelease.xcconfig:
511         * TestWebKitAPI/Configurations/DebugRelease.xcconfig:
512         * WebEditingTester/Configurations/DebugRelease.xcconfig:
513         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
514
515 2017-06-10  Jonathan Bedard  <jbedard@apple.com>
516
517         webkitpy: Reduce polling in ServerProcess
518         https://bugs.webkit.org/show_bug.cgi?id=173116
519
520         Reviewed by Ryosuke Niwa.
521
522         We should be smarter about polling. We do not need to poll every time a line is read from
523         stdout and stderr since lines are usually read from cached data. We should only poll
524         when extracting that cached data from stdout and stderr.
525
526         * Scripts/webkitpy/port/driver.py:
527         (Driver._read_block): Rely on output of the ServerProcess to detect a crash or a timeout
528         and on ServerProcess to poll the process if not data is available in stdout and stderr.
529         * Scripts/webkitpy/port/driver_unittest.py:
530         (DriverTest.test_read_block_crashed_process): Test that the Driver will handle a crashing
531         ServerProcess.
532         * Scripts/webkitpy/port/server_process.py:
533         (ServerProcess._read): Allow for data to be read from _output even if the process has
534         crashed. Only poll the process if data needs to be extracted from stdout or stderr. 
535         * Scripts/webkitpy/port/server_process_mock.py:
536         (MockServerProcess): Add number_of_times_polled.
537         (MockServerProcess.poll): Increment number_of_times_polled.
538         (MockServerProcess.has_crashed): Poll before returning crash state.
539         (MockServerProcess.read_stdout_line): MockServerProcess should return None if it has crashed,
540         just like a ServerProcess would.
541         (MockServerProcess.read_stdout): Ditto.
542         * Scripts/webkitpy/port/server_process_unittest.py:
543         (TestServerProcess.test_basic): Use stdin.readline() instead of time.sleep() to prevent the
544         process from ending before stdout and stderr are read. This is the reason this test was flakey.
545         (TestServerProcess):
546         (TestServerProcess.test_process_crashing): Test that when a process crashes, data can be read until
547         the processes is polled.
548         (TestServerProcess.test_process_crashing_no_data): Test that when a process which has not output any
549         data to stdout and stderr crashes, ServerProcess._read(...) polls the process to detect the crash.
550
551 2017-06-10  Andy Estes  <aestes@apple.com>
552
553         [QuickLook] PreviewLoader needs to check if its ResourceLoader has reached the terminal state before calling didReceiveResponse() and friends
554         https://bugs.webkit.org/show_bug.cgi?id=173190
555         <rdar://problem/31360659>
556
557         Reviewed by Brady Eidson.
558         
559         Added a release assert that tries to create a proper test failure if the web process crashes.
560
561         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
562         (-[QuickLookDecidePolicyDelegate _webViewWebProcessDidCrash:]):
563
564 2017-06-09  Wenson Hsieh  <wenson_hsieh@apple.com>
565
566         [iOS DnD] Add a hook to perform two-step drops in editable content
567         https://bugs.webkit.org/show_bug.cgi?id=172992
568         <rdar://problem/32590174>
569
570         Reviewed by Tim Horton.
571
572         Adds 2 new API tests to cover using the injected editing bundle to override performTwoStepDrop.
573         Tests:  DataInteractionTests.InjectedBundleOverridePerformTwoStepDrop
574                 DataInteractionTests.InjectedBundleAllowPerformTwoStepDrop
575
576         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegatePlugIn.mm:
577         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
578         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:performTwoStepDrop:atDestination:isMove:]):
579
580         Allow the BundleOverridePerformTwoStepDrop bundle parameter to determine whether or not two-step drops should
581         be overridden. Currently, this is overridden to just return true.
582
583         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
584         (TestWebKitAPI::TEST):
585         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
586         (WTR::InjectedBundlePage::InjectedBundlePage):
587
588 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
589
590         [WPE] Enable ENCRYPTED_MEDIA for build-webkit builds
591         https://bugs.webkit.org/show_bug.cgi?id=173103
592
593         Reviewed by Xabier Rodriguez-Calvar.
594
595         * Scripts/webkitperl/FeatureList.pm: Enable ENCRYPTED_MEDIA flag
596         when building the WPE port through build-webkit.
597
598 2017-06-09  Zan Dobersek  <zdobersek@igalia.com>
599
600         [WPE] Enable MEDIA_SOURCE for build-webkit builds
601         https://bugs.webkit.org/show_bug.cgi?id=173136
602
603         Reviewed by Xabier Rodriguez-Calvar.
604
605         * Scripts/webkitperl/FeatureList.pm: Enable the MEDIA_SOURCE feature for WPE.
606
607 2017-06-08  Carlos Garcia Campos  <cgarcia@igalia.com>
608
609         [GTK] Use API::FormClient instead of the C API in WebKitFormClient
610         https://bugs.webkit.org/show_bug.cgi?id=173098
611
612         Reviewed by Žan Doberšek.
613
614         Fix memory leak and runtime warning when running /webkit2/WebKitWebView/submit-form. The web extension is
615         assuming that all tests containing forms define ids for the form elements like
616         /webkit2/WebKitWebExtension/form-controls-associated-signal does.
617
618         * TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
619         (formControlsAssociatedCallback):
620
621 2017-06-08  Jonathan Bedard  <jbedard@apple.com>
622
623         webkitpy: Run sample/spindump on iOS devices
624         https://bugs.webkit.org/show_bug.cgi?id=171881
625         <rdar://problem/32084602>
626
627         Reviewed by Daniel Bates.
628
629         * Scripts/webkitpy/port/darwin.py:
630         (DarwinPort.sample_process): Only add sudo prefix if the platform is Mac, which
631         requires sudo to run spindump.
632         * Scripts/webkitpy/port/ios_device.py:
633         (IOSDevicePort.look_for_new_samples): Deleted.
634         (IOSDevicePort.sample_process): Deleted.
635         * Scripts/webkitpy/port/ios_device_unittest.py:
636         (IOSDeviceTest): iOS devices use 'ios' and their os_name.
637         (IOSDeviceTest.test_spindump):
638         (IOSDeviceTest.test_sample_process):
639         (IOSDeviceTest.test_sample_process_exception):
640         * Scripts/webkitpy/port/ios_simulator_unittest.py:
641         (IOSSimulatorTest): iOS Simulators run on Mac and use 'mac' as their os_name.
642
643 2017-06-08  Keith Miller  <keith_miller@apple.com>
644
645         WebAssembly: We should only create wrappers for functions that can be exported
646         https://bugs.webkit.org/show_bug.cgi?id=173088
647
648         Reviewed by Saam Barati.
649
650         Add quick mode for wasm tests.
651
652         * Scripts/run-jsc-stress-tests:
653
654 2017-06-08  Darin Adler  <darin@apple.com>
655
656         WTF tests have incorrect RefLogger lifetimes making it impossible to test with Address Sanitizer
657         https://bugs.webkit.org/show_bug.cgi?id=173106
658
659         Reviewed by Sam Weinig.
660
661         * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp: Define RefLogger objects first, so they are
662         destroyed last.
663         * TestWebKitAPI/Tests/WTF/HashMap.cpp: Ditto.
664         * TestWebKitAPI/Tests/WTF/HashSet.cpp: Ditto.
665
666 2017-06-07  Dan Bernstein  <mitz@apple.com>
667
668         [Cocoa] additionalReadAccessAllowedURLs doesn’t preserve non-Latin1 paths
669         https://bugs.webkit.org/show_bug.cgi?id=173086
670
671         Reviewed by Andy Estes.
672
673         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
674         (TEST):
675
676 2017-06-07  Alexey Proskuryakov  <ap@apple.com>
677
678         Add High Sierra support to WebKit tools
679         https://bugs.webkit.org/show_bug.cgi?id=173080
680
681         Rubber-stamped by Daniel Bates.
682
683         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra.png: Added.
684         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/HighSierra@2x.png: Added.
685         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
686         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
687         Added dashboard support.
688
689         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
690         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
691         Trigger the right build queues on check-in.
692
693         * Scripts/webkitpy/common/system/platforminfo.py:
694         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
695         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
696         * Scripts/webkitpy/port/mac.py:
697         * Scripts/webkitpy/port/mac_unittest.py:
698         * TestResultServer/static-dashboards/flakiness_dashboard.js:
699         Added cases for Sierra, and updated tests for new baseline search paths.
700
701 2017-06-07  Ryan Haddad  <ryanhaddad@apple.com>
702
703         Unreviewed, rolling out r217902.
704
705         This change appears to have caused imported/w3c/web-platform-
706         tests/fetch/api/cors tests to fail on El Capitan.
707
708         Reverted changeset:
709
710         "Teach run-webkit-tests how to run HTTPS Web Platform Tests"
711         https://bugs.webkit.org/show_bug.cgi?id=172930
712         http://trac.webkit.org/changeset/217902
713
714 2017-06-07  Daniel Bates  <dabates@apple.com>
715
716         Teach run-webkit-tests how to run HTTPS Web Platform Tests
717         https://bugs.webkit.org/show_bug.cgi?id=172930
718         <rdar://problem/32570201>
719
720         Reviewed by Youenn Fablet.
721
722         Some web platform tests need to be run from an HTTPS server in order to exercise functionality
723         that is conditioned on the page being delivered over a secure protocol. One example of such
724         a test is LayoutTests/imported/w3c/web-platform-tests/WebCryptoAPI/secure_context/crypto-subtle-secure-context-available.https.sub.html.
725
726         Ideally we should look to use wptrunner to run Web Platform Tests. For now, modify run-webkit-tests
727         to access web platform tests from an HTTPS server when the filename of the test contains ".https.".
728         This makes run-webkit-test match the behavior of wptrunner: <https://github.com/w3c/web-platform-tests/blob/7ce469d1c46dd45aacfe1b408bf2ad36a630e089/tools/manifest/item.py#L42>.
729
730         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
731         (https_base_url): Parses the Web Platform Tests JSON configuration and returns the base URL
732         to the Web Platform Tests HTTPS server.
733         * Scripts/webkitpy/port/base.py:
734         (Port.to.web_platform_test_server_https_base_url): Turns around and calls https_base_url().
735         * Scripts/webkitpy/port/driver.py:
736         (Driver.__init__): Caches the base URL to the Web Platform Tests HTTPS server. Also rename
737         instance variables web_platform_test_server_doc_root, web_platform_test_server_base_url to
738         _web_platform_test_server_doc_root and _web_platform_test_server_base_url, respectively to
739         indicate that they should be considered private instance variables.
740         (Driver.is_web_platform_test): Update code for renamed instance variables.
741         (Driver):
742         (Driver._web_platform_test_base_url_for_test): Returns the URL to access the specified test.
743         (Driver.test_to_uri): Modified to use Driver._web_platform_test_base_url_for_test() to
744         determine the base URL to use to access the test.
745         (Driver.uri_to_test): Added logic to compute the filesystem local test name from a Web
746         Platform Tests HTTPS URL. Also updated code for renamed instance variables.
747
748 2017-06-07  Per Arne Vollan  <pvollan@apple.com>
749
750         Support removal of authentication data through the Website data store API.
751         https://bugs.webkit.org/show_bug.cgi?id=171217
752
753         Reviewed by Brady Eidson.
754
755         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
756         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
757         (WTR::InjectedBundle::didReceiveMessageToPage):
758         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
759         (WTR::TestRunner::removeAllSessionCredentials):
760         (WTR::TestRunner::callDidRemoveAllSessionCredentialsCallback):
761         * WebKitTestRunner/InjectedBundle/TestRunner.h:
762         * WebKitTestRunner/TestController.h:
763         * WebKitTestRunner/TestInvocation.cpp:
764         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
765         (WTR::TestInvocation::didRemoveAllSessionCredentials):
766         * WebKitTestRunner/TestInvocation.h:
767         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
768         (WTR::TestController::removeAllSessionCredentials):
769
770 2017-06-07  Charlie Turner  <cturner@igalia.com>
771
772         Add Charlie Turner as contributor
773         https://bugs.webkit.org/show_bug.cgi?id=173055
774
775         Reviewed by Carlos Alberto Lopez Perez.
776
777         I also ran the Tools/Scripts/validate-committer-lists --canonicalize command at the suggestion
778         of webkit-patch upload, which reordered some fields and removed a newline.
779
780         * Scripts/webkitpy/common/config/contributors.json:
781
782 2017-06-06  Chris Dumez  <cdumez@apple.com>
783
784         RELEASE_ASSERT(static_cast<size_t>(enumerationValue) < WTF_ARRAY_LENGTH(values)) hit in convertEnumerationToJS<WebCore::History::ScrollRestoration>()
785         https://bugs.webkit.org/show_bug.cgi?id=173033
786         <rdar://problem/32591099>
787
788         Reviewed by Simon Fraser.
789
790         Add API test coverage to make sure History's scrollRestoration is properly saved / restored via the
791         WKPageCopySessionState() / WKPageRestoreFromSessionState() C API.
792
793         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
794         * TestWebKitAPI/Tests/WebKit2/RestoreSessionState.cpp: Added.
795         (TestWebKitAPI::didFinishLoadForFrame):
796         (TestWebKitAPI::setPageLoaderClient):
797         (TestWebKitAPI::createSessionStateDataContainingScrollRestoration):
798         (TestWebKitAPI::TEST):
799
800 2017-06-06  Andy Estes  <aestes@apple.com>
801
802         REGRESSION (r199558): WKWebView upload file which name contains Chinese character results in garbled code
803         https://bugs.webkit.org/show_bug.cgi?id=172849
804         <rdar://problem/32567454>
805
806         Reviewed by Darin Adler.
807
808         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
809         * TestWebKitAPI/Tests/WebKit2Cocoa/RunOpenPanel.mm: Added.
810         (-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
811         (TestWebKitAPI::TEST):
812
813 2017-06-06  Yoav Weiss  <yoav@yoav.ws>
814
815         [preload] Conditional support for media preloading and align media `as` values.
816         https://bugs.webkit.org/show_bug.cgi?id=172501
817
818         Reviewed by Dean Jackson.
819
820         Turn on media preloading preference for tests.
821
822         * DumpRenderTree/mac/DumpRenderTree.mm: Turn on media preloading preference.
823         * DumpRenderTree/win/DumpRenderTree.cpp: Turn on media preloading preference.
824         * WebKitTestRunner/TestController.cpp: Turn on media preloading preference.
825
826 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
827
828         webkitpy: Return correct process names from SimulatorProcess
829         https://bugs.webkit.org/show_bug.cgi?id=172940
830
831         Reviewed by Aakash Jain.
832
833         * Scripts/webkitpy/port/darwin.py:
834         (DarwinPort.plist_data_from_bundle): Share plist access code for accessing different plist entries.
835         (DarwinPort.app_identifier_from_bundle): Use plist_data_from_bundle.
836         (DarwinPort.app_executable_from_bundle): Access name of app executable from provided app bundle.
837         * Scripts/webkitpy/port/driver.py:
838         (Driver.has_crashed): Use _server_process.process_name() instead of _server_process.name() since
839         _server_process.name() will not return the correct process name for iOS.
840         (Driver._check_for_driver_crash_or_unresponsiveness): Ditto.
841         (Driver._read_block): Ditto.
842         * Scripts/webkitpy/port/driver_unittest.py:
843         (DriverTest.test_check_for_driver_crash.FakeServerProcess.process_name): Update since Driver uses
844         process_name() instead of name().
845         * Scripts/webkitpy/port/server_process.py:
846         (ServerProcess._start): Use process_name() instead of name().
847         (ServerProcess.stop): Ditto.
848         (ServerProcess.name): Deleted.
849         * Scripts/webkitpy/port/simulator_process.py:
850         (SimulatorProcess.process_name): Check the provided bundle for the process name.
851
852 2017-06-06  Dean Johnson  <dean_johnson@apple.com>
853
854         test-webkitpy: stop forking unsafely from within a spawned process
855         https://bugs.webkit.org/show_bug.cgi?id=172774
856
857         Reviewed by Darin Adler.
858
859         * Scripts/webkitpy/common/net/buildbot/buildbot.py:
860         (Builder.__init__): We don't use mechanize.Browser() as part of testing, so only initialize it when
861         it's going to be used.
862         (Builder.force_build):
863
864 2017-06-06  Jonathan Bedard  <jbedard@apple.com>
865
866         webkitpy: Process crash-logs for iOS devices
867         https://bugs.webkit.org/show_bug.cgi?id=171976
868         <rdar://problem/32134551>
869
870         Reviewed by David Kilzer.
871
872         When running layout tests on an iOS device, crash logs should be processed.
873         Implement crash log searching and parsing for iOS devices.
874
875         * Scripts/webkitpy/common/system/crashlogs.py:
876         (CrashLogs): Moved process regular expression for Darwin to class variable.
877         (CrashLogs.__init__): Accept optional list of crash logs to ignore.
878         (CrashLogs.find_newest_log): Add iOS as a potential platform.
879         (CrashLogs.find_all_logs): Ditto.
880         (CrashLogs._parse_darwin_crash_log): Share code for parsing of Darwin crash logs.
881         Do not assume that a Darwin crash log starts with the process.
882         (CrashLogs._find_newest_log_darwin): Remove .app in process name for iOS, use
883         shared code for parsing Darwin crash logs.
884         (CrashLogs._find_newest_log_darwin.is_crash_log): Skip crash logs passed into this
885         object so that crash logs already on the system before testing are not parsed.
886         (CrashLogs._find_newest_log_win.is_crash_log): Ditto.
887         (CrashLogs._find_all_logs_darwin.is_crash_log): Ditto.
888         (CrashLogs._find_all_logs_darwin): Use shared code for parsing Darwin crash logs.
889         * Scripts/webkitpy/common/system/crashlogs_unittest.py:
890         (make_mock_crash_report_darwin): Crash logs may not have their process on the first line.
891         * Scripts/webkitpy/common/system/systemhost.py:
892         (SystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
893         systems is just the crashlog, use this behavior by default.
894         * Scripts/webkitpy/common/system/systemhost_mock.py:
895         (MockSystemHost.symbolicate_crash_log_if_needed): The symbolicated crash log for most
896         systems is just the crashlog, use this behavior by default.
897         * Scripts/webkitpy/port/apple.py:
898         (ApplePort): Add a dictionary mapping hosts to a list of crash logs to be skipped.
899         (ApplePort.setup_test_run): Set the list of crash logs to be skipped to the crash logs on
900         the system before testing begins
901         * Scripts/webkitpy/port/base.py:
902         (Port._get_crash_log): Pass optional target host when getting crash logs.
903         * Scripts/webkitpy/port/darwin.py:
904         (DarwinPort._look_for_all_crash_logs_in_log_dir): Pass list of crash logs to be skipped to
905         CrashLogs object.
906         (DarwinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
907         logs to be skipped to CrashLogs object.
908         * Scripts/webkitpy/port/darwin_testcase.py:
909         (DarwinTest.test_get_crash_log): Removed unused local function.
910         (DarwinTest.test_get_crash_log.fake_time_cb): Deleted.
911         * Scripts/webkitpy/port/device.py:
912         (Device.symbolicate_crash_log_if_needed): If the platform device has a function with this
913         name, call it. Otherwise, assume the default behavior and read the file at the provided path.
914         * Scripts/webkitpy/port/driver.py:
915         (Driver._get_crash_log): Pass optional target host when getting crash logs.
916         * Scripts/webkitpy/port/gtk.py:
917         (GtkPort._get_crash_log): Pass optional target host when getting crash logs.
918         * Scripts/webkitpy/port/ios.py: Ditto.
919         (IOSPort.setup_test_run): Each device is treated as an independent host. Set the list of crash logs
920         to be skipped for each host.
921         * Scripts/webkitpy/port/ios_device.py:
922         (IOSDevicePort.path_to_crash_logs): Consult apple_additions for the path to crash logs.
923         (IOSDevicePort._look_for_all_crash_logs_in_log_dir): Search every connected device for
924         crash logs and pass list of crash logs to ignore to each instance of CrashLogs.
925         (IOSDevicePort._get_crash_log): Search the specified target host for a crash log if a target
926         host is specified. Else, search all connected devices for the specified crash-log.
927         (IOSDevicePort.look_for_new_crash_logs): Deleted.
928         * Scripts/webkitpy/port/ios_device_unittest.py:
929         (IOSDeviceTest.test_crashlog_path): Without apple_additions, an exception should be raised.
930         (IOSDeviceTest.test_get_crash_log): Ditto.
931         * Scripts/webkitpy/port/simulator_process.py:
932         (SimulatorProcess.process_name): Check the provided bundle for the process name.
933         * Scripts/webkitpy/port/win.py:
934         (WinPort._get_crash_log): Pass optional target host when getting crash logs, pass list of crash
935         logs to be skipped to CrashLogs object.
936         * Scripts/webkitpy/port/wpe.py:
937         (WPEPort._get_crash_log): Pass optional target host when getting crash logs.
938
939 2017-06-06  David Kilzer  <ddkilzer@apple.com>
940
941         Move WTF_ATTRIBUTE_PRINTF() from implementation to declaration
942         <https://webkit.org/b/172804>
943
944         Reviewed by Darin Adler.
945
946         WTF_ATTRIBUTE_PRINTF() only works outside the current
947         compilation unit if it's on the declaration, not the
948         implementation, of a function or class method.
949
950         * DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
951         * DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
952         * DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
953         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
954         - Move WTF_ATTRIBUTE_PRINTF() macro to declaration.
955         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
956         - Remove redundant CRASH() macro definition.  Use the one from
957           <wtf/Assertions.h> instead.
958
959 2017-06-06  Joseph Pecoraro  <pecoraro@apple.com>
960
961         Move Resource Timing / User Timing from experimental features into main preferences
962         https://bugs.webkit.org/show_bug.cgi?id=172950
963
964         Reviewed by Darin Adler.
965
966         * DumpRenderTree/mac/DumpRenderTree.mm:
967         (enableExperimentalFeatures):
968         (resetWebPreferencesToConsistentValues):
969         * DumpRenderTree/win/DumpRenderTree.cpp:
970         (enableExperimentalFeatures):
971         (resetWebPreferencesToConsistentValues):
972         * WebKitTestRunner/TestController.cpp:
973         (WTR::TestController::resetPreferencesToConsistentValues):
974         Move out no longer experimental features to the main list.
975
976 2017-06-06  Carlos Alberto Lopez Perez  <clopez@igalia.com>
977
978         [WPE] Add an install-dependencies script
979         https://bugs.webkit.org/show_bug.cgi?id=172948
980
981         Reviewed by Žan Doberšek.
982
983         It is based on the gtk/install-dependencies script.
984         Includes support for Debian based distrubutions, Fedora and Arch.
985         It has been tested on a minimal Debian 9 chroot.
986
987         * wpe/install-dependencies: Added.
988
989 2017-06-05  Wenson Hsieh  <wenson_hsieh@apple.com>
990
991         Refactor -[WebItemProviderPasteboard valuesForPasteboardType:inItemSet:] to check readable types
992         https://bugs.webkit.org/show_bug.cgi?id=172891
993         <rdar://problem/32204540>
994
995         Reviewed by Darin Adler.
996
997         Adds 2 new API tests to exercise data interaction of HTML data and an attributed string into a rich
998         contenteditable. See WebCore ChangeLog for more details.
999
1000         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1001         (TestWebKitAPI::TEST):
1002
1003 2017-06-05  Daniel Bates  <dabates@apple.com>
1004
1005         webkitpy: Abstract Executive class
1006         https://bugs.webkit.org/show_bug.cgi?id=172928
1007         <rdar://problem/32569531>
1008
1009         Reviewed by Ryosuke Niwa.
1010
1011         Adds an AbstractExecutive class and makes Executive extend AbstractExecutive.
1012         This will make it straightforward to create additional derived classes that
1013         adhere to the same interface, say for iOS on-device testing.
1014
1015         * Scripts/webkitpy/common/system/abstractexecutive.py: Added.
1016         (AbstractExecutive):
1017         (AbstractExecutive.run_and_throw_if_fail):
1018         (AbstractExecutive.cpu_count):
1019         (AbstractExecutive.interpreter_for_script):
1020         (AbstractExecutive.shell_command_for_script):
1021         (AbstractExecutive.kill_process):
1022         (AbstractExecutive.check_running_pid):
1023         (AbstractExecutive.running_pids):
1024         (AbstractExecutive.wait_newest):
1025         (AbstractExecutive.wait_limited):
1026         (AbstractExecutive.interrupt):
1027         (AbstractExecutive.default_error_handler):
1028         (AbstractExecutive.ignore_error):
1029         (AbstractExecutive._stringify_args):
1030         (AbstractExecutive.command_for_printing):
1031         (AbstractExecutive.run_command):
1032         (AbstractExecutive.popen):
1033         (AbstractExecutive.run_in_parallel):
1034         * Scripts/webkitpy/common/system/executive.py:
1035         (Executive):
1036         (Executive.cpu_count):
1037         (Executive.running_pids):
1038         (Executive.kill_all):
1039         (Executive._compute_stdin):
1040         (Executive.interpreter_for_script): Deleted.
1041         (Executive.shell_command_for_script): Deleted.
1042         (Executive.wait_newest): Deleted.
1043         (Executive.wait_limited): Deleted.
1044         (Executive.default_error_handler): Deleted.
1045         (Executive.ignore_error): Deleted.
1046         (Executive.command_for_printing): Deleted.
1047
1048 2017-06-05  Jonathan Bedard  <jbedard@apple.com>
1049
1050         webkitpy: Add iOS to platform
1051         https://bugs.webkit.org/show_bug.cgi?id=172931
1052
1053         Reviewed by Daniel Bates.
1054
1055         * Scripts/webkitpy/common/system/platforminfo.py:
1056         PlatformInfo.__init__): Use platform_module.release() as the os_version for iOS device.
1057         (PlatformInfo.is_ios): Added.
1058         (PlatformInfo._determine_os_name): A platform name of 'ios' means that the os name is 'ios'.
1059         * Scripts/webkitpy/common/system/platforminfo_mock.py:
1060         (MockPlatformInfo.is_ios): Added.
1061
1062 2017-06-05  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1063
1064         [WPE][JHBuild] Switch github repository from git:// to https://
1065         https://bugs.webkit.org/show_bug.cgi?id=172921
1066
1067         Reviewed by Alex Christensen.
1068
1069         * wpe/jhbuild.modules:
1070
1071 2017-06-05  Tim Horton  <timothy_horton@apple.com>
1072
1073         ASSERTION FAILED: m_currentScriptCallbackID in UIScriptContext::requestUIScriptCompletion(JSStringRef) running fast/events/ios/autocorrect-with-range-selection.html
1074         https://bugs.webkit.org/show_bug.cgi?id=172887
1075         <rdar://problem/32546061>
1076
1077         Reviewed by Sam Weinig.
1078
1079         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1080         (WTR::UIScriptController::applyAutocorrection):
1081         applyAutocorrection can call its completion handler synchronously,
1082         which makes UIScriptController unhappy (see bug 172884).
1083
1084 2017-06-03  Jonathan Bedard  <jbedard@apple.com>
1085
1086         webkitpy: Add contextmanager to disable logging for a block
1087         https://bugs.webkit.org/show_bug.cgi?id=172876
1088
1089         Reviewed by Daniel Bates.
1090
1091         Add a context manager which will use an OutputCapture object to capture logging
1092         in a block and hold it in a variable.
1093
1094         * Scripts/webkitpy/common/system/outputcapture.py:
1095         (OutputCaptureScope):
1096         (OutputCaptureScope.__init__): Construct with OutputCapture object.
1097         (OutputCaptureScope.__enter__): Begin capturing output. 
1098         (OutputCaptureScope.__exit__): Restore output and save captured output to a variable.
1099         output and retain the resulting log.
1100         * Scripts/webkitpy/common/system/outputcapture_unittest.py:
1101         (OutputCaptureTest.test_output_capture_scope): Added.
1102
1103 2017-06-02  Zalan Bujtas  <zalan@apple.com>
1104
1105         Cleanup FrameView::autoSizeIfEnabled.
1106         https://bugs.webkit.org/show_bug.cgi?id=172889
1107         <rdar://problem/32550783>
1108
1109         Reviewed by Tim Horton.
1110
1111         * TestWebKitAPI/Tests/WebKit2Cocoa/AutoLayoutIntegration.mm:
1112         (-[AutoLayoutWKWebView load:withWidth:expectingContentSize:resettingWidth:]): progression.
1113         (TEST):
1114
1115 2017-06-02  Chris Dumez  <cdumez@apple.com>
1116
1117         ResourceLoadStatistics are not using unique paths during test runs
1118         https://bugs.webkit.org/show_bug.cgi?id=172861
1119         <rdar://problem/32442251>
1120
1121         Reviewed by Darin Adler.
1122
1123         Make sure WebKitTestRunner sets a temporary path for saving resource
1124         load statistics.
1125
1126         * WebKitTestRunner/TestController.cpp:
1127         (WTR::TestController::generateContextConfiguration):
1128
1129 2017-06-02  Brady Eidson  <beidson@apple.com>
1130
1131         Prevent scheme handlers from handling all built-in URL schemes.
1132         <rdar://problem/32404790> and https://bugs.webkit.org/show_bug.cgi?id=172869
1133
1134         Reviewed by Andy Estes.
1135
1136         * TestWebKitAPI/Tests/WebKit2Cocoa/WKURLSchemeHandler-1.mm:
1137
1138 2017-06-02  Stephan Szabo  <stephan.szabo@am.sony.com>
1139
1140         [JSCOnly] Build static jsc.exe on Windows
1141         https://bugs.webkit.org/show_bug.cgi?id=172833
1142
1143         Reviewed by Konstantin Tokarev.
1144
1145         * CMakeLists.txt:
1146         * Scripts/build-jsc:
1147
1148 2017-06-02  Zalan Bujtas  <zalan@apple.com>
1149
1150         Disable ViewportSizeForViewportUnits tests on iOS.
1151         https://bugs.webkit.org/show_bug.cgi?id=172872
1152
1153         Reviewed by Tim Horton.
1154
1155         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm:
1156
1157 2017-06-02  Zalan Bujtas  <zalan@apple.com>
1158
1159         Allow clients to override viewport size for CSS viewport units.
1160         https://bugs.webkit.org/show_bug.cgi?id=172838
1161         <rdar://problem/32523441>
1162
1163         Reviewed by Tim Horton.
1164
1165         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1166         * TestWebKitAPI/Tests/WebKit2/ViewportSizeForViewportUnits.mm: Added.
1167         (TEST):
1168
1169 2017-06-02  Simon Fraser  <simon.fraser@apple.com>
1170
1171         Get <chrono> out of StdLibExtras.h
1172         https://bugs.webkit.org/show_bug.cgi?id=172744
1173
1174         Reviewed by Zalan Bujtas.
1175
1176         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
1177
1178 2017-06-02  Zan Dobersek  <zdobersek@igalia.com>
1179
1180         [WPE] Enable SUBTLE_CRYPTO
1181         https://bugs.webkit.org/show_bug.cgi?id=172756
1182
1183         Reviewed by Michael Catanzaro.
1184
1185         * Scripts/webkitperl/FeatureList.pm: Set ENABLE_SUBTLE_CRYPTO to 1 for WPE.
1186         * wpe/jhbuild.modules: Add libgpg-error and libgcrypt dependencies.
1187         * wpe/patches/libgcrypt-use-only-dev-urandom-for-testing.patch: Added. Prevents
1188         exhausting entropy when running the crypto layout tests.
1189
1190 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
1191
1192         [GTK] Bump GTK+ and its dependencies in jhbuild
1193         https://bugs.webkit.org/show_bug.cgi?id=171918
1194
1195         Reviewed by Carlos Alberto Lopez Perez.
1196
1197         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
1198         (WTR::initializeGtkSettings):
1199         * gtk/jhbuild.modules:
1200         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
1201         * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
1202
1203 2017-06-01  Carlos Garcia Campos  <cgarcia@igalia.com>
1204
1205         [GTK] Bump wayland and weston in jhbuild
1206         https://bugs.webkit.org/show_bug.cgi?id=171921
1207
1208         Reviewed by Carlos Alberto Lopez Perez.
1209
1210         * gtk/jhbuild.modules:
1211         * gtk/patches/weston-libweston-include-weston-egl-ext.h-in-drm-x11-and-wa.patch: Added.
1212
1213 2017-06-01  Andy Estes  <aestes@apple.com>
1214
1215         REGRESSION (r217626): ENABLE_APPLE_PAY_SESSION_V3 was disabled by mistake
1216         https://bugs.webkit.org/show_bug.cgi?id=172828
1217
1218         Reviewed by Beth Dakin.
1219
1220         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1221
1222 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
1223
1224         webkitpy: Remove unneeded simulator teardown
1225         https://bugs.webkit.org/show_bug.cgi?id=171891
1226
1227         Reviewed by Aakash Jain.
1228
1229         * Scripts/webkitpy/port/ios_simulator.py:
1230         (IOSSimulatorPort.clean_up_test_run): Remove FIFO deletion since TCP is used
1231         for communication between Python and WebKitTestRunner/DumpRenderTree.
1232
1233 2017-06-01  Keith Miller  <keith_miller@apple.com>
1234
1235         Undo rollout in r217638 with bug fix
1236         https://bugs.webkit.org/show_bug.cgi?id=172824
1237
1238         Unreviewed, reland patch with unused set_state code removed.
1239
1240         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
1241         (runThreadMessageTest):
1242         (TEST):
1243
1244 2017-06-01  Jonathan Bedard  <jbedard@apple.com>
1245
1246         webkitpy: Do not send 0 or -1 as a pid to kill_process
1247         https://bugs.webkit.org/show_bug.cgi?id=172818
1248
1249         Reviewed by Darin Adler.
1250
1251         Sending a signal to process 0 will result in all processes in the group receiving 
1252         the signal. Sending a signal to process -1 will result in all non-system processes
1253         receiving the signal. Both Executive.kill_process and Executive.check_running_pid
1254         should consider these cases
1255
1256         * Scripts/webkitpy/common/system/executive.py:
1257         (Executive.kill_process): Throw exception if pid is undefined, 0 or negative.
1258         (Executive.check_running_pid): An undefined pid, pid 0 or a negative pid will
1259         never be running, although os.kill may succeed.
1260         * Scripts/webkitpy/port/simulator_process.py:
1261         (SimulatorProcess.stop): Do not kill process if it is undefined.
1262
1263 2017-05-31  Alexey Proskuryakov  <ap@apple.com>
1264
1265         JSC EWS bot does not run on WTF only patches
1266         https://bugs.webkit.org/show_bug.cgi?id=172777
1267         rdar://problem/32495975
1268
1269         Reviewed by Aakash Jain.
1270
1271         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
1272         (CheckPatchRelevance): Add a missing comma.
1273
1274 2017-05-31  Commit Queue  <commit-queue@webkit.org>
1275
1276         Unreviewed, rolling out r217611 and r217631.
1277         https://bugs.webkit.org/show_bug.cgi?id=172785
1278
1279         "caused wasm-hashset-many.html to become flaky." (Requested by
1280         keith_miller on #webkit).
1281
1282         Reverted changesets:
1283
1284         "Reland r216808, underlying lldb bug has been fixed."
1285         https://bugs.webkit.org/show_bug.cgi?id=172759
1286         http://trac.webkit.org/changeset/217611
1287
1288         "Use dispatch queues for mach exceptions"
1289         https://bugs.webkit.org/show_bug.cgi?id=172775
1290         http://trac.webkit.org/changeset/217631
1291
1292 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
1293
1294         EWS bots should reboot themselves more frequently
1295         https://bugs.webkit.org/show_bug.cgi?id=172402
1296
1297         Reviewed by Alexey Proskuryakov.
1298
1299         Instead of rebooting once a day, EWS bots will reboot after running 10 iterations.
1300
1301         * EWSTools/start-queue-mac.sh: Remove the restriction placed on the time that the bot will perform a reboot.
1302
1303 2017-05-31  Ryan Haddad  <ryanhaddad@apple.com>
1304
1305         Reallocate hardware for iOS bots.
1306         https://bugs.webkit.org/show_bug.cgi?id=172657
1307
1308         Reviewed by Alexey Proskuryakov.
1309
1310         * BuildSlaveSupport/build.webkit.org-config/config.json:
1311
1312 2017-05-31  Andy Estes  <aestes@apple.com>
1313
1314         Rename ENABLE_APPLE_PAY_DELEGATE to ENABLE_APPLE_PAY_SESSION_V3 and bump the supported version number
1315         https://bugs.webkit.org/show_bug.cgi?id=172366
1316
1317         Reviewed by Daniel Bates.
1318
1319         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1320
1321 2017-05-31  Jiewen Tan  <jiewen_tan@apple.com>
1322
1323         Unreviewed, add Jiewen Tan as a reviewer
1324
1325         * Scripts/webkitpy/common/config/contributors.json:
1326
1327 2017-05-31  Adrian Perez de Castro  <aperez@igalia.com>
1328
1329         [GTK] MiniBrowser's browser_window_get_or_create_web_view_for_automation never creates new windows
1330         https://bugs.webkit.org/show_bug.cgi?id=172770
1331
1332         Reviewed by Michael Catanzaro.
1333
1334         * MiniBrowser/gtk/BrowserWindow.c:
1335         (browser_window_get_or_create_web_view_for_automation): Removed stray semicolon
1336         which caused the body of the if-clause to be accidentally empty.
1337
1338 2017-05-31  Keith Miller  <keith_miller@apple.com>
1339
1340         Reland r216808, underlying lldb bug has been fixed.
1341         https://bugs.webkit.org/show_bug.cgi?id=172759
1342
1343         Unreviewed, relanding old patch. See: rdar://problem/31183352
1344
1345         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
1346         (runThreadMessageTest):
1347         (TEST):
1348
1349 2017-05-31  Matt Lewis  <jlewis3@apple.com>
1350
1351         Unreviewed, rolling out r217603.
1352
1353         This patch broke the internal builds.
1354
1355         Reverted changeset:
1356
1357         "Get <chrono> out of StdLibExtras.h"
1358         https://bugs.webkit.org/show_bug.cgi?id=172744
1359         http://trac.webkit.org/changeset/217603
1360
1361 2017-05-31  Brent Fulgham  <bfulgham@apple.com>
1362
1363         Make ResourceLoadStatistics testing more reliable
1364         https://bugs.webkit.org/show_bug.cgi?id=172730
1365         <rdar://problem/32028373>
1366
1367         Reviewed by Andy Estes.
1368
1369         When we tell the UIProcess (WebKitTestRunner) to notify the system about statistics update notifications,
1370         we also need to tell the WebProcess to do so, too, or else the test system doesn't get messages.
1371
1372         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1373         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
1374
1375 2017-05-31  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1376
1377         [GTK][WPE] run-javascriptcore-tests should use the jhbuild
1378         https://bugs.webkit.org/show_bug.cgi?id=172757
1379
1380         Reviewed by Xabier Rodriguez-Calvar.
1381
1382         When needed, add the jhbuild wrapper at the beginning of the array
1383         that will be invoked to execute the run-jsc-stress-test or testapi
1384         commands.
1385
1386         * Scripts/run-javascriptcore-tests:
1387         (runJSCStressTests):
1388         * Scripts/webkitdirs.pm:
1389         (shouldUseJhbuild):
1390
1391 2017-05-31  Simon Fraser  <simon.fraser@apple.com>
1392
1393         Get <chrono> out of StdLibExtras.h
1394         https://bugs.webkit.org/show_bug.cgi?id=172744
1395
1396         Reviewed by Saam Barati.
1397
1398         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
1399
1400 2017-05-30  Tim Horton  <timothy_horton@apple.com>
1401
1402         Keyboard autocorrections do not apply with an active selection (but keyboard acts like they did)
1403         https://bugs.webkit.org/show_bug.cgi?id=172735
1404         <rdar://problem/32015977>
1405
1406         Reviewed by Enrica Casucci.
1407
1408         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1409         (WTR::UIScriptController::applyAutocorrection):
1410         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1411         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1412         (WTR::UIScriptController::applyAutocorrection):
1413         * TestRunnerShared/UIScriptContext/UIScriptController.h:
1414         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1415         (WTR::UIScriptController::applyAutocorrection):
1416         Expose applyAutocorrection to UIScriptController. Use a WKTesting method
1417         because I don't know how to tap the button in the autocorrection bar from a test.
1418
1419 2017-05-30  Daniel Bates  <dabates@apple.com>
1420
1421         Add unit test for WebKit2 C SPI runBeforeUnloadConfirmPanel()
1422         https://bugs.webkit.org/show_bug.cgi?id=172671
1423
1424         Reviewed by Alex Christensen.
1425
1426         We should add a unit test to ensure we do not regress the WKPageUIClient runBeforeUnloadConfirmPanel() callback.
1427         For completeness, the callback runBeforeUnloadConfirmPanel() existed since inception of WKPageUIClient (WKPageUIClientV0).
1428
1429         * TestWebKitAPI/Tests/WebKit2/ModalAlertsSPI.cpp:
1430         (TestWebKitAPI::analyzeDialogArguments): Test the runBeforeUnloadConfirmPanel() callback last as we need
1431         to trigger a navigation to test it.
1432         (TestWebKitAPI::runBeforeUnloadConfirmPanel): Added.
1433         (TestWebKitAPI::createNewPage): Wire up the runBeforeUnloadConfirmPanel callback.
1434
1435 2017-05-30  Jonathan Bedard  <jbedard@apple.com>
1436
1437         webkitpy: Start servers before setting-up for testing
1438         https://bugs.webkit.org/show_bug.cgi?id=172176
1439         <rdar://problem/32225538>
1440
1441         Reviewed by Alexey Proskuryakov.
1442
1443         On-device testing requires that servers are started before ports set-up their
1444         test environments.
1445
1446         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
1447         (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
1448         Servers are unconditionally stopped on exit.
1449         (LayoutTestRunner.run_tests): Move the starting of servers to the initializer. The
1450         Manager now stops servers.
1451         (LayoutTestRunner.start_servers): Set flag to indicate servers are running.
1452         (LayoutTestRunner.stop_servers): Check flag, only shutdown servers if they are shutdown.
1453         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1454         (Manager.__init__): Delay construction of the test runner until we can determine
1455         if servers need to be started.
1456         (Manager.run): Determine if servers need to be started and construct the test runner.
1457         Shut servers down when the test run is finished.
1458         (Manager._run_tests): Move the determination of servers to run into Manager.run.
1459         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1460         (is_wpt_server_running): Server is not running if no config is found.
1461         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
1462         (PyWebSocket.is_running): Check if this WebSocket server is running.
1463         * Scripts/webkitpy/port/base.py:
1464         (Port.__init__): Define secure WebSocket server.
1465         (Port.to.is_websocket_server_running): Check if WebSocket servers are defined.
1466
1467 2017-05-30  Daniel Bates  <dabates@apple.com>
1468
1469         [WK2] Add runBeforeUnloadConfirmPanel WKUIDelegate SPI; support onbeforeunload confirm panel in MiniBrowser
1470         https://bugs.webkit.org/show_bug.cgi?id=172603
1471         <rdar://problem/32471306>
1472
1473         Reviewed by Brady Eidson.
1474
1475         Implement the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: delegate
1476         method in MiniBrowser to show a confirm panel as to whether to allow the unloading of the page when
1477         unloading is initiated for a page that registered a onbeforeunload handler.
1478
1479         Modify TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm to test that the -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:
1480         is called. Also fix style nit; pass YES instead of true to avoid implicit conversion from bool to BOOL
1481         when invoking the completion handler in -_webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:.
1482
1483         Until we fix <https://bugs.webkit.org/show_bug.cgi?id=172614> the unit test in TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm
1484         for -_webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler: is only run on Mac
1485         as we do not have the infrastructure to simulate a click/tap on iOS and a click/tap on the page that
1486         registered an onbeforeunload handler is required to show a confirm panel when the page will be unloaded.
1487
1488         * MiniBrowser/mac/WK2BrowserWindowController.m:
1489         (-[WK2BrowserWindowController _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
1490         * TestWebKitAPI/Tests/WebKit2/modal-alerts-in-new-about-blank-window.html:
1491         * TestWebKitAPI/Tests/WebKit2Cocoa/ModalAlerts.mm:
1492         (sawDialog):
1493         (-[ModalAlertsUIDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
1494         (-[ModalAlertsUIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
1495         (-[ModalAlertsUIDelegate _webView:runBeforeUnloadConfirmPanelWithMessage:initiatedByFrame:completionHandler:]):
1496
1497 2017-05-30  Alex Christensen  <achristensen@webkit.org>
1498
1499         Update libwebrtc configuration
1500         https://bugs.webkit.org/show_bug.cgi?id=172727
1501
1502         Reviewed by Geoffrey Garen.
1503
1504         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1505
1506 2017-05-30  Fujii Hironori  <Hironori.Fujii@sony.com>
1507
1508         [WinCairo] TestWebKitAPI: ASSERTION FAILED: m_eglDisplay == EGL_NO_DISPLAY
1509         https://bugs.webkit.org/show_bug.cgi?id=172702
1510
1511         Reviewed by Alex Christensen.
1512
1513         EGL PlatformDisplay needs to be shut down before existing a
1514         program on Windows.
1515
1516         * TestWebKitAPI/Tests/WebKit/win/ScaleWebView.cpp:
1517         (TestWebKitAPI::ScaleWebView::TearDown): Call shutDownWebKit().
1518         * TestWebKitAPI/Tests/WebKit/win/WebViewDestruction.cpp:
1519         (TestWebKitAPI::WebViewDestruction::TearDown): Ditto.
1520
1521 2017-05-30  Per Arne Vollan  <pvollan@apple.com>
1522
1523         [Win] fast/shadow-dom/fullscreen-in-slot-fullscreenElement.html is flaky.
1524         https://bugs.webkit.org/show_bug.cgi?id=172709
1525
1526         Reviewed by Brent Fulgham.
1527
1528         Exit fullscreen mode after a fullscreen test.
1529
1530         * DumpRenderTree/win/DumpRenderTree.cpp:
1531         (resetWebViewToConsistentStateBeforeTesting):
1532
1533 2017-05-30  Antti Koivisto  <antti@apple.com>
1534
1535         ASSERTION FAILED: !needsLayout() in com.apple.WebCore: WebCore::FrameView::paintContents in fast/events/tabindex-focus-blur-all.html on WK1
1536         https://bugs.webkit.org/show_bug.cgi?id=172713
1537
1538         Reviewed by Zalan Bujtas.
1539
1540         * DumpRenderTree/mac/ResourceLoadDelegate.mm:
1541         (-[ResourceLoadDelegate webView:plugInFailedWithError:dataSource:]):
1542
1543             Remove forced display from plugin resource load delegate. It is testing some long-obsolete
1544             Safari WK1 behavior. Forcing display from this resource load delegate will hit the assertion
1545             because on Mac WK1 it may get invoked from middle of a layout.
1546
1547             Painting code skips out after the assert so it doesn't indicate unsafe access of any sort.
1548
1549 2017-05-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1550
1551         Add a WPE EWS queue
1552         https://bugs.webkit.org/show_bug.cgi?id=172693
1553
1554         Reviewed by Carlos Garcia Campos.
1555
1556         * QueueStatusServer/config/queues.py:
1557         * QueueStatusServer/model/queues.py: Capitalize the name of the
1558         port on the tooltip of the bubbles. Do the same for the GTK port.
1559         (Queue.display_name):
1560         * Scripts/webkitpy/common/config/ews.json: Update the watcher mail
1561         for the GTK+ EWS also. Set for both ports as watcher the alias
1562         bugs-noreply@webkitgtk.org that maintainers of both ports follow.
1563         * Scripts/webkitpy/common/config/ports.py:
1564         (DeprecatedPort.port):
1565         (WpePort):
1566         (WpePort.build_webkit_command):
1567         (WpePort.run_webkit_tests_command):
1568         * Scripts/webkitpy/common/config/ports_unittest.py:
1569         (DeprecatedPortTest):
1570         (DeprecatedPortTest.test_wpe_port):
1571         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
1572         (test_ews_name):
1573
1574 2017-05-29  Zan Dobersek  <zdobersek@igalia.com>
1575
1576         Unreviewed. Bumping the WPEBackend-mesa dependency version.
1577
1578         * wpe/jhbuild.modules: Use the latest version that uses proper GLib
1579         priorities for IPC communication.
1580
1581 2017-05-27  Yusuke Suzuki  <utatane.tea@gmail.com>
1582
1583         [JSC] Map and Set constructors should have fast path for cloning
1584         https://bugs.webkit.org/show_bug.cgi?id=172413
1585
1586         Reviewed by Saam Barati.
1587
1588         * TestWebKitAPI/Tests/WTF/MathExtras.cpp:
1589         (TestWebKitAPI::TEST):
1590
1591 2017-05-27  Zalan Bujtas  <zalan@apple.com>
1592
1593         enclosingIntRect returns a rect with -1 width/height when the input FloatRect overflows integer.
1594         https://bugs.webkit.org/show_bug.cgi?id=172676
1595
1596         Reviewed by Simon Fraser.
1597
1598         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
1599         (TestWebKitAPI::TEST):
1600
1601 2017-05-26  Zalan Bujtas  <zalan@apple.com>
1602
1603         TestWebKitAPI: EnclosingIntRect and RoundedIntRect should use EXPECT_EQ.
1604         https://bugs.webkit.org/show_bug.cgi?id=172674
1605
1606         Reviewed by Simon Fraser.
1607
1608         * TestWebKitAPI/Tests/WebCore/FloatRect.cpp:
1609         (TestWebKitAPI::TEST):
1610
1611 2017-05-26  Wenson Hsieh  <wenson_hsieh@apple.com>
1612
1613         Add test resources back into TestWebKitAPI Copy Resources phase
1614
1615         Rubber-stamped by Beth Dakin.
1616
1617         Add two files back into the Copy Resources phase after they were unintentionally
1618         removed in r217447 and r217496.
1619
1620         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1621
1622 2017-05-26  Beth Dakin  <bdakin@apple.com>
1623
1624         Media documents inside iframes should not get controls in the TouchBar unless the 
1625         video is playing
1626         https://bugs.webkit.org/show_bug.cgi?id=172620
1627         -and corresponding-
1628         rdar://problem/32165477
1629
1630         Reviewed by Jon Lee.
1631
1632         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1633         * TestWebKitAPI/Tests/WebKit2Cocoa/VideoControlsManager.mm:
1634         (TestWebKitAPI::TEST):
1635         * TestWebKitAPI/Tests/WebKit2Cocoa/offscreen-iframe-of-media-document.html: Added.
1636
1637 2017-05-25  Joseph Pecoraro  <pecoraro@apple.com>
1638
1639         _WKUserStyleSheet and WKUserScript leak string data
1640         https://bugs.webkit.org/show_bug.cgi?id=172583
1641         <rdar://problem/32395209>
1642
1643         Reviewed by Sam Weinig.
1644
1645         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentController.mm:
1646         We should not have been adopting an autoreleased object.
1647
1648 2017-05-25  Myles C. Maxfield  <mmaxfield@apple.com>
1649
1650         [WK1] iframes in layer-backed NSViews are not cleared between successive draws
1651         https://bugs.webkit.org/show_bug.cgi?id=172554
1652         <rdar://problem/31247133>
1653
1654         Reviewed by Simon Fraser.
1655
1656         Previously, there was no way to make DumpRenderTree's views layer-backed. Unfortunately,
1657         simply setting [WebView setWantsLayer:] is insufficient; turning it on and then off again
1658         leaves some state around inside the NSWindow which isn't easily cleaned up. Instead,
1659         we should just tear down and rebuild the window whenever we need a layer-backed WebView.
1660         We can also use the "webkit-test-runner" header comment to trigger this new layer-backed
1661         codepath.
1662
1663         * DumpRenderTree/TestOptions.h:
1664         * DumpRenderTree/TestOptions.mm:
1665         (TestOptions::TestOptions):
1666         (TestOptions::webViewIsCompatibleWithOptions):
1667         * DumpRenderTree/mac/DumpRenderTree.mm:
1668         (shouldIgnoreWebCoreNodeLeaks):
1669         (allowedFontFamilySet):
1670         (-[DRTMockScroller rectForPart:]):
1671         (-[DRTMockScroller drawKnob]):
1672         (-[DRTMockScroller drawRect:]):
1673         (createWebViewAndOffscreenWindow):
1674         (initializeGlobalsFromCommandLineOptions):
1675         (prepareConsistentTestingEnvironment):
1676         (dumpRenderTree):
1677         (dumpAudio):
1678         (dumpHistoryItem):
1679         (dumpBackForwardListForWebView):
1680         (resetWebViewToConsistentStateBeforeTesting):
1681         (WebThreadLockAfterDelegateCallbacksHaveCompleted):
1682         (runTest):
1683
1684 2017-05-25  Sam Weinig  <sam@webkit.org>
1685
1686         [WebIDL] Use the term 'operation' more consistently
1687         https://bugs.webkit.org/show_bug.cgi?id=172601
1688
1689         Reviewed by Chris Dumez.
1690
1691         We were using the term 'operation', a WebIDL term for function-like
1692         constructs, inconsistently in the code generator. Now, when we use
1693         'operation' when referring to the IDL concept (usually the object the
1694         parser produces) and 'function' when referring to code being generated.
1695
1696         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
1697         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
1698
1699 2017-05-25  Jer Noble  <jer.noble@apple.com>
1700
1701         Unreviewed build fix after r217447; only run test where JSC's ObjC API is available.
1702
1703         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm:
1704
1705 2017-05-25  Jer Noble  <jer.noble@apple.com>
1706
1707         System sleeps while playing to wireless target, ending stream.
1708         https://bugs.webkit.org/show_bug.cgi?id=172541
1709
1710         Reviewed by Eric Carlson.
1711
1712         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1713         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.html: Added.
1714         * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm: Added.
1715         (-[MediaPlaybackSleepAssertionLoadDelegate webView:didCreateJavaScriptContext:forFrame:]):
1716         (-[MediaPlaybackSleepAssertionPolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
1717         (TestWebKitAPI::simulateKeyDown):
1718         (TestWebKitAPI::hasAssertionType):
1719         (TestWebKitAPI::TEST):
1720
1721 2017-05-25  Commit Queue  <commit-queue@webkit.org>
1722
1723         Unreviewed, rolling out r217423 and r217424.
1724         https://bugs.webkit.org/show_bug.cgi?id=172607
1725
1726         These caused an api failure on all testers. (Requested by
1727         mlewis13 on #webkit).
1728
1729         Reverted changesets:
1730
1731         "REGRESSION (r216977): 4 leaks introduced in new
1732         WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test"
1733         https://bugs.webkit.org/show_bug.cgi?id=172558
1734         http://trac.webkit.org/changeset/217423
1735
1736         "REGRESSION (r217423): Fix last-second typo in 'auto'"
1737         http://trac.webkit.org/changeset/217424
1738
1739 2017-05-25  Joanmarie Diggs  <jdiggs@igalia.com>
1740
1741         [ATK] Expose doc-footnote ARIA role with ATK_ROLE_FOOTNOTE
1742         https://bugs.webkit.org/show_bug.cgi?id=172355
1743
1744         Reviewed by Chris Fleizach.
1745
1746         Add map ATK_ROLE_FOOTNOTE to "AXFootnote" and bump jhbuild minimum
1747         versions of atk, at-spi2-core, and at-spi2-atk to 2.25.2 (the earliest
1748         releases which support the new platform footnote accessibility role.
1749
1750         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1751         * gtk/jhbuild.modules:
1752
1753 2017-05-25  David Kilzer  <ddkilzer@apple.com>
1754
1755         REGRESSION (r217423): Fix last-second typo in 'auto'
1756
1757         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
1758         (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix typo.
1759
1760 2017-05-24  David Kilzer  <ddkilzer@apple.com>
1761
1762         REGRESSION (r216977): 4 leaks introduced in new WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test
1763         <https://webkit.org/b/172558>
1764
1765         Reviewed by Sam Weinig.
1766
1767         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
1768         (WebKit2_WKHTTPCookieStoreWithoutProcessPool_Test): Fix the leaks.
1769
1770 2017-05-24  Don Olmstead  <don.olmstead@am.sony.com>
1771
1772         [CMake] Consolidate CMake code related to Cairo
1773         https://bugs.webkit.org/show_bug.cgi?id=172568
1774
1775         Reviewed by Alex Christensen.
1776
1777         * DumpRenderTree/config.h:
1778         * TestWebKitAPI/config.h:
1779
1780 2017-05-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1781
1782         Plumb additional image metadata to item providers when beginning data interaction on an image
1783         https://bugs.webkit.org/show_bug.cgi?id=172536
1784         <rdar://problem/32371300>
1785
1786         Reviewed by Beth Dakin.
1787
1788         Tweak existing image data interaction tests to check for suggested name and estimated size on the generated
1789         source item providers.
1790
1791         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1792         (checkSuggestedNameAndEstimatedSize):
1793         (TestWebKitAPI::TEST):
1794
1795 2017-05-24  Per Arne Vollan  <pvollan@apple.com>
1796
1797         [Win] Create unique network storage session for each DRT.
1798         https://bugs.webkit.org/show_bug.cgi?id=172540
1799
1800         Reviewed by Brent Fulgham.
1801
1802         During layout testing, each DRT instance should have its own network storage session.
1803
1804         * DumpRenderTree/win/DumpRenderTree.cpp:
1805         (prepareConsistentTestingEnvironment):
1806
1807 2017-05-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1808
1809         Respect image UTIs when writing to item providers when beginning data interaction on an image
1810         https://bugs.webkit.org/show_bug.cgi?id=172436
1811         <rdar://problem/31786569>
1812
1813         Reviewed by Beth Dakin.
1814
1815         Tweaks existing unit tests and adds a new test for image data interaction. See WebCore ChangeLog for more
1816         details.
1817
1818         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1819         * TestWebKitAPI/Tests/WebKit2Cocoa/apple.gif: Added.
1820         * TestWebKitAPI/Tests/WebKit2Cocoa/gif-and-file-input.html: Added.
1821
1822         Create a new test page containing a GIF and a file input.
1823
1824         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1825         (checkTypeIdentifierIsRegisteredAtIndex):
1826         (TestWebKitAPI::TEST):
1827
1828 2017-05-23  Per Arne Vollan  <pvollan@apple.com>
1829
1830         [Win] Increase test timeout for slow tests.
1831         https://bugs.webkit.org/show_bug.cgi?id=172449
1832
1833         Reviewed by Alexey Proskuryakov.
1834
1835         Instead of using a fixed timeout of 30 seconds for all tests, we should use the
1836         timeout member in the TestRunner class.
1837
1838         * DumpRenderTree/win/TestRunnerWin.cpp:
1839         (TestRunner::setWaitToDump):
1840
1841 2017-05-15  Matt Rajca  <mrajca@apple.com>
1842
1843         Replace autoplay events that fire at navigation with a DidAutoplayMediaPastThreshold event.
1844         https://bugs.webkit.org/show_bug.cgi?id=172138
1845
1846         Reviewed by Alex Christensen.
1847
1848         Added API tests.
1849
1850         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1851         * TestWebKitAPI/Tests/WebKit2/js-autoplay-audio.html: Added.
1852         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
1853         (TEST):
1854         * TestWebKitAPI/Tests/WebKit2Cocoa/silence-long.m4a: Added.
1855
1856 2017-05-23  Simon Fraser  <simon.fraser@apple.com>
1857
1858         Stop consulting -viewsNeedDisplay when doing layer flushing in WebKit1
1859         https://bugs.webkit.org/show_bug.cgi?id=172522
1860         rdar://problem/31071812
1861
1862         Reviewed by Sam Weinig.
1863
1864         Remove NSWindowStyleMaskFullSizeContentView which is no longer referenced in code.
1865         We set this in the .xib file now.
1866
1867         * MiniBrowser/mac/MiniBrowser_Prefix.pch:
1868
1869 2017-05-22  Simon Fraser  <simon.fraser@apple.com>
1870
1871         Snapshotting via -renderInContext: should do synchronous image decodes
1872         https://bugs.webkit.org/show_bug.cgi?id=172485
1873         rdar://problem/32276146
1874
1875         Reviewed by Tim Horton.
1876
1877         New API test.
1878
1879         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1880         * TestWebKitAPI/Tests/WebKit/ios/SnapshotViaRenderInContext.mm: Added.
1881         (-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
1882         (-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
1883         (TestWebKitAPI::getPixelIndex):
1884         (TestWebKitAPI::TEST):
1885
1886 2017-05-23  Myles C. Maxfield  <mmaxfield@apple.com>
1887
1888         Remove dead ENABLE(FONT_LOAD_EVENTS) code
1889         https://bugs.webkit.org/show_bug.cgi?id=172517
1890
1891         Rubber-stamped by Simon Fraser.
1892
1893         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1894
1895 2017-05-23  Wenson Hsieh  <wenson_hsieh@apple.com>
1896
1897         Multiple links should be inserted separately when performing data interaction
1898         https://bugs.webkit.org/show_bug.cgi?id=172489
1899         <rdar://problem/31510832>
1900
1901         Reviewed by Dan Bernstein.
1902
1903         Adds a new test that performs data interaction in a contenteditable with multiple items containing URLs.
1904
1905         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1906         (TestWebKitAPI::TEST):
1907
1908 2017-05-23  Tim Horton  <timothy_horton@apple.com>
1909
1910         REGRESSION: API test WebKit2.WKObject is failing
1911         https://bugs.webkit.org/show_bug.cgi?id=172497
1912         <rdar://problem/31694641>
1913
1914         Reviewed by Geoff Garen.
1915
1916         * TestWebKitAPI/Tests/WebKit2Cocoa/WKObject.mm:
1917         (TestWebKitAPI::TEST):
1918         Add a test that ensures that we pretend to at least be *some* kind of
1919         NSString, which my first fix would not have passed.
1920
1921 2017-05-23  youenn fablet  <youenn@apple.com>
1922
1923         There should be an easy way to run HTTP/WPT served tests on a browser
1924         https://bugs.webkit.org/show_bug.cgi?id=172068
1925
1926         Reviewed by Sam Weinig.
1927
1928         Adding a new script open-layout-test to open a layout-test in a
1929         browser and making sure it is served as done through run-webkit-tests.
1930         In case tests should be run using a server, detecting whether the
1931         server are running. If not, calling run-webkit-httpd to run the
1932         servers and open the URL in a browser.
1933         Otherwise, open directly the URL.
1934
1935         Adding an option in run-webkit-httpd to open an URL after having
1936         started the servers.
1937
1938         Adding the --no-http-servers option in run-webkit-tests to not start any HTTP server.
1939         This allows running run-webkit-httpd once and not having to restart
1940         servers everytime a test should be served.
1941
1942         Moving most of run-webkit-httpd logic in its own python file to reuse
1943         it in open-layout-test script.
1944
1945         Adding routines to check whether HTTP and WPT servers are running.
1946
1947         * Scripts/open-layout-test: Added.
1948         (parse_args):
1949         (main):
1950         * Scripts/run-webkit-httpd:
1951         (main):
1952         * Scripts/webkitpy/layout_tests/controllers/layout_test_finder.py:
1953         (LayoutTestFinder.find_tests):
1954         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
1955         (LayoutTestRunner.run_tests):
1956         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1957         (parse_args):
1958         * Scripts/webkitpy/layout_tests/servers/http_server_base.py:
1959         (HttpServerBase._is_server_running_on_all_ports):
1960         (HttpServerBase):
1961         (HttpServerBase._is_running_on_port):
1962         (HttpServerBase._check_that_all_ports_are_available):
1963         (is_http_server_running):
1964         * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py: Copied from Tools/Scripts/run-webkit-httpd.
1965         (parse_args):
1966         (main):
1967         (run_server):
1968         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1969         (is_wpt_server_running):
1970         * Scripts/webkitpy/port/base.py:
1971         (Port.to.is_http_server_running):
1972         (Port.to):
1973         (Port.to.is_wpt_server_running):
1974         (Port.to.start_web_platform_test_server):
1975         * Scripts/webkitpy/port/driver.py:
1976         (DriverProxy.is_web_platform_test):
1977         (DriverProxy):
1978         (DriverProxy.is_webkit_specific_web_platform_test):
1979
1980 2017-05-23  Emilio Cobos Álvarez  <ecobos@igalia.com>
1981
1982         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
1983         https://bugs.webkit.org/show_bug.cgi?id=171984
1984
1985         Reviewed by Antti Koivisto.
1986
1987         * DumpRenderTree/mac/DumpRenderTree.mm:
1988         (enableExperimentalFeatures):
1989         * WebKitTestRunner/TestController.cpp:
1990         (WTR::TestController::resetPreferencesToConsistentValues):
1991
1992 2017-05-20  Alex Christensen  <achristensen@webkit.org>
1993
1994         REGRESSION(r215686): O(n^2) algorithm in CachedRawResource::addDataBuffer
1995         https://bugs.webkit.org/show_bug.cgi?id=172406
1996         <rdar://32109532>
1997
1998         Reviewed by Brady Eidson.
1999
2000         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
2001         (TestWebKitAPI::checkBuffer):
2002         (TestWebKitAPI::TEST_F):
2003
2004 2017-05-22  Jason Marcell  <jmarcell@apple.com>
2005
2006         Do not enter Subversion-specific logic when parsing Git-based Trac data.
2007         https://bugs.webkit.org/show_bug.cgi?id=172433
2008         <rdar://problem/32234188>
2009
2010         Reviewed by Alexey Proskuryakov.
2011
2012         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
2013         (Trac.prototype._convertCommitInfoElementToObject):
2014
2015 2017-05-22  Tim Horton  <timothy_horton@apple.com>
2016
2017         ExplicitSnapshotsChangeUponNavigation API test often fails
2018         https://bugs.webkit.org/show_bug.cgi?id=172475
2019         <rdar://problem/31688322>
2020
2021         Reviewed by Simon Fraser.
2022
2023         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2024         (-[TestWKWebView _setUpTestWindow:]):
2025         Make TestWKWebView's window layer-backed. This is now the default,
2026         and it's also easy to accidentally write a test that depends on it
2027         (for example, ExplicitSnapshotsChangeUponNavigation adds an NSBox,
2028         which becomes layer backed, just like the WKWebView, but with no
2029         common layer-backed ancestor).
2030
2031 2017-05-22  youenn fablet  <youenn@apple.com>
2032
2033         Resync web-platform-tests up to 8df7c9c215678328212f232ce0b5270c505a8563
2034         https://bugs.webkit.org/show_bug.cgi?id=172426
2035
2036         Reviewed by Chris Dumez.
2037
2038         * Scripts/webkitpy/w3c/test_importer.py:
2039         (TestImporter.remove_deleted_files): Outputting warning when trying to delete a file that no longer exists.
2040
2041 2017-05-22  Konstantin Tokarev  <annulen@yandex.ru>
2042
2043         Unreviewed, change my status to reviewer and fill "expertise" field
2044
2045         * Scripts/webkitpy/common/config/contributors.json:
2046
2047 2017-05-22  Tomas Popela  <tpopela@redhat.com>
2048
2049         Remove some of the EFL port leftovers
2050         https://bugs.webkit.org/show_bug.cgi?id=172440
2051
2052         Reviewed by Carlos Garcia Campos.
2053
2054         * BuildSlaveSupport/built-product-archive:
2055         (archiveBuiltProduct):
2056         (extractBuiltProduct):
2057         * BuildSlaveSupport/test-result-archive:
2058         (archiveTestResults):
2059         * ImageDiff/PlatformEfl.cmake: Removed.
2060         * Scripts/run-efl-tests: Removed.
2061         * Scripts/webkit-build-directory:
2062         * Scripts/webkitpy/common/config/contributionareas.py:
2063         * Scripts/webkitpy/common/config/watchlist:
2064         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2065         (parse_args):
2066         (_set_up_derived_options):
2067         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
2068         (PerfTestsRunner.__init__):
2069         * Scripts/webkitpy/style/checker.py:
2070         * Scripts/webkitpy/style/checker_unittest.py:
2071         (GlobalVariablesTest.test_path_rules_specifier):
2072         * gtk/manifest.txt.in:
2073         * jhbuild/jhbuild-wrapper:
2074
2075 2017-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
2076
2077         Unreviewed. Do not include WPE files in GTK+ tarballs.
2078
2079         * gtk/manifest.txt.in:
2080
2081 2017-05-22  Carlos Garcia Campos  <cgarcia@igalia.com>
2082
2083         [GTK] Add webkit_context_menu_item_new_from_gaction
2084         https://bugs.webkit.org/show_bug.cgi?id=159631
2085
2086         Reviewed by Michael Catanzaro.
2087
2088         Update context menu tests to check the new GAction API.
2089
2090         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
2091         (testContextMenuPopulateMenu):
2092
2093 2017-05-21  Michael Catanzaro  <mcatanzaro@igalia.com>
2094
2095         [GTK] Remove Firefox user agent quirk for Google domains
2096         https://bugs.webkit.org/show_bug.cgi?id=171941
2097
2098         Reviewed by Carlos Garcia Campos.
2099
2100         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
2101         (TestWebKitAPI::TEST):
2102         (TestWebKitAPI::assertUserAgentForURLHasFirefoxBrowserQuirk): Deleted.
2103
2104 2017-05-20  Ting-Wei Lan  <lantw44@gmail.com>
2105
2106         [GTK] gtkdoc-fixxref needs --module argument to work
2107         https://bugs.webkit.org/show_bug.cgi?id=172415
2108
2109         Reviewed by Michael Catanzaro.
2110
2111         * gtk/gtkdoc.py:
2112         (GTKDoc._run_gtkdoc_fixxref):
2113
2114 2017-05-20  Alexey Proskuryakov  <ap@apple.com>
2115
2116         make-new-script-test should create tests that use js-test.js, not js-test-pre.js
2117         https://bugs.webkit.org/show_bug.cgi?id=172416
2118
2119         Reviewed by Daniel Bates.
2120
2121         * Scripts/make-new-script-test:
2122
2123 2017-05-19  Fujii Hironori  <Hironori.Fujii@sony.com>
2124
2125         [Win] error LNK2005: WebCore::JSNode::checkSubClassPatchpoint() already defined in WebKit.lib
2126         https://bugs.webkit.org/show_bug.cgi?id=172267
2127
2128         Reviewed by Per Arne Vollan.
2129
2130         TestWebCoreLib and TestWebKitLib have linked both WebCore and WebKit.
2131         TestWebCoreLib should link only with WebCore. And, TestWebKitLib
2132         should link only with WebKit.
2133
2134         Unfortunately, there is a layer violation at the moment.
2135         WebCore::Image::loadPlatformResource needs loadResourceIntoBuffer
2136         in WebKit. This change contains a stub of loadResourceIntoBuffer
2137         in TestWebCoreLib for the workaround.
2138
2139         * TestWebKitAPI/PlatformWin.cmake: Do not link WebKit to
2140         TestWebCoreLib. Do not link WebCore to TestWebKitLib.
2141         * TestWebKitAPI/win/TestWebCoreStubs.cpp: Added.
2142         (loadResourceIntoBuffer): Added a stub.
2143
2144 2017-05-19  Simon Fraser  <simon.fraser@apple.com>
2145
2146         Fix dump-class-layout to handle different file architectures
2147         https://bugs.webkit.org/show_bug.cgi?id=172392
2148
2149         Reviewed by Zalan Bujtas.
2150
2151         Instead of using lldb.LLDB_ARCH_DEFAULT by default, run 'file' on the binary
2152         and use the first architecture reported. Also add a "--architecture" argument
2153         to allow the user to specify an architecture.
2154
2155         * Scripts/dump-class-layout:
2156         (import_lldb):
2157         (verify_type_recursive):
2158         (get_first_file_architecture):
2159         (dump_class):
2160         (main):
2161         (find_build_directory): Deleted.
2162
2163 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
2164
2165         Unreviewed infrastructure fix.
2166
2167         * Scripts/webkitpy/port/ios_simulator.py:
2168         (IOSSimulatorPort._create_devices): Ignore failure to open Simulator.app.
2169
2170 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
2171
2172         webkitpy: Use simctl boot to run multiple simulators at once
2173         https://bugs.webkit.org/show_bug.cgi?id=172374
2174
2175         Reviewed by Alexey Proskuryakov.
2176
2177         * Scripts/webkitpy/common/system/platforminfo.py:
2178         (PlatformInfo.xcode_version): Return the current version of Xcode.
2179         * Scripts/webkitpy/common/system/platforminfo_mock.py:
2180         (MockPlatformInfo.xcode_version): Return version 8.0 for testing.
2181         * Scripts/webkitpy/port/ios_simulator.py:
2182         (IOSSimulatorPort.use_multiple_simulator_apps): Return true if we need to
2183         run multiple Simulator.app instances.
2184         (IOSSimulatorPort._create_simulators): Only copy the simulator app for older
2185         versions of Xcode.
2186         (IOSSimulatorPort._create_devices): Use 'simctl boot' directly unless using
2187         an older version of Xcode.
2188
2189 2017-05-19  Wenson Hsieh  <wenson_hsieh@apple.com>
2190
2191         Unreviewed, fix the build on the latest internal SDK.
2192
2193         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2194         (TestWebKitAPI::TEST):
2195
2196 2017-05-19  Filip Pizlo  <fpizlo@apple.com>
2197
2198         arrayProtoPrivateFuncConcatMemcpy needs to be down with firstArray being undecided
2199         https://bugs.webkit.org/show_bug.cgi?id=172369
2200
2201         Reviewed by Mark Lam.
2202         
2203         Because I wrote a test that relies on the NoCJIT config scribbling free cells, I thought it
2204         would be a good idea to write this down.
2205
2206         * Scripts/run-jsc-stress-tests:
2207
2208 2017-05-19  Jonathan Bedard  <jbedard@apple.com>
2209
2210         webkitpy: Layout tests which have no output will succeed
2211         https://bugs.webkit.org/show_bug.cgi?id=172322
2212         <rdar://problem/32258350>
2213
2214         Reviewed by David Kilzer.
2215
2216         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
2217         (SingleTestRunner._compare_text): Add FailreNotTested to failures if test has no output.
2218         * Scripts/webkitpy/layout_tests/models/test_failures.py:
2219         (determine_result_type): FailureNotTested means that the test could not be loaded. This
2220         is classified as a MISSING failure.
2221         (FailureNotTested): Added.
2222         (FailureNotTested.message):
2223
2224 2017-05-19  Yusuke Suzuki  <utatane.tea@gmail.com>
2225
2226         Add SixSpeed benchmark to PerformanceTests
2227         https://bugs.webkit.org/show_bug.cgi?id=172326
2228
2229         Reviewed by Sam Weinig.
2230
2231         * Scripts/run-jsc-benchmarks:
2232
2233 2017-05-19  Wenson Hsieh  <wenson_hsieh@apple.com>
2234
2235         [WK1] MiniBrowser should navigate when handling a dropped URL
2236         https://bugs.webkit.org/show_bug.cgi?id=172350
2237
2238         Reviewed by Tim Horton.
2239
2240         Allow all drop actions, including URL navigation, for WebKit1 MiniBrowser.
2241
2242         * MiniBrowser/mac/WK1BrowserWindowController.m:
2243         (-[WK1BrowserWindowController webView:dragDestinationActionMaskForDraggingInfo:]):
2244
2245 2017-05-18  Ryosuke Niwa  <rniwa@webkit.org>
2246
2247         REGRESSION (r216694 - 216712): Performance test Speedometer/Full.html is failing
2248         https://bugs.webkit.org/show_bug.cgi?id=172077
2249
2250         Reviewed by Chris Dumez.
2251
2252         Fixed perftest.py by updating the lines to ignore in Speedometer.
2253
2254         Also start report the results as "Speedometer" instead of "DoYouEvenBench/Full.html" to perf.webkit.org.
2255
2256         * Scripts/webkitpy/performance_tests/perftest.py:
2257         (PerfTest._lines_to_ignore_in_parser_result): Updated for Speedometer 2.0.
2258         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
2259         (PerfTestsRunner._collect_tests): Use "Speedometer" instead of "Speedometer/index.html" as the test name.
2260         (_generate_results_dict): Removed the workaround to keep reporting Speedometer as DoYouEvenBench.
2261         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
2262         (MainTest.test_collect_tests_with_index_html_and_resources): Added.
2263
2264 2017-05-18  Andy Estes  <aestes@apple.com>
2265
2266         ENABLE(APPLE_PAY_DELEGATE) should be NO on macOS Sierra and earlier
2267         https://bugs.webkit.org/show_bug.cgi?id=172305
2268
2269         Reviewed by Anders Carlsson.
2270
2271         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2272
2273 2017-05-18  Wenson Hsieh  <wenson_hsieh@apple.com>
2274
2275         Selection around attachment elements should not persist when beginning a drag
2276         https://bugs.webkit.org/show_bug.cgi?id=172319
2277         <rdar://problem/32283008>
2278
2279         Reviewed by Tim Horton.
2280
2281         Tests that temporary selection around an attachment does not persist longer than it needs to.
2282
2283         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2284         (TestWebKitAPI::TEST):
2285
2286 2017-05-18  John Wilander  <wilander@apple.com>
2287
2288         Resource Load Statistics: Grandfather domains for existing data records
2289         https://bugs.webkit.org/show_bug.cgi?id=172155
2290         <rdar://problem/24913532>
2291
2292         Reviewed by Alex Christensen.
2293
2294         Adds test infrastructure needed for the added functionality.
2295
2296         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2297         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2298         (WTR::InjectedBundle::didReceiveMessageToPage):
2299         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2300         (WTR::TestRunner::setStatisticsGrandfathered):
2301         (WTR::TestRunner::isStatisticsGrandfathered):
2302         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
2303         (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
2304         (WTR::TestRunner::setStatisticsGrandfatheringTime):
2305         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2306         * WebKitTestRunner/TestController.cpp:
2307         (WTR::TestController::setStatisticsGrandfathered):
2308         (WTR::TestController::isStatisticsGrandfathered):
2309         (WTR::TestController::setStatisticsGrandfatheringTime):
2310         * WebKitTestRunner/TestController.h:
2311         * WebKitTestRunner/TestInvocation.cpp:
2312         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2313
2314 2017-05-18  Saam Barati  <sbarati@apple.com>
2315
2316         WebAssembly: perform stack checks
2317         https://bugs.webkit.org/show_bug.cgi?id=165546
2318         <rdar://problem/29760307>
2319
2320         Reviewed by Filip Pizlo.
2321
2322         Add some new testing modes for using and not using fast TLS wasm contexts.
2323
2324         * Scripts/run-jsc-stress-tests:
2325
2326 2017-05-18  Daniel Bates  <dabates@apple.com>
2327
2328         REGRESSION (r209608): Cross-origin plugin document opened in child window blocked by parent
2329         window CSP when object-src 'none' is set
2330         https://bugs.webkit.org/show_bug.cgi?id=172038
2331         <rdar://problem/32258262>
2332
2333         Reviewed by Andy Estes.
2334
2335         Teach the test Netscape plugin to look for a URL that contains plugin-document-alert-and-notify-done.pl.
2336         When it sees this URL it will show a JavaScript alert and call testRunner.notifyDone().
2337
2338         * DumpRenderTree/TestNetscapePlugIn/main.cpp:
2339         (NPP_New):
2340
2341 2017-05-18  Per Arne Vollan  <pvollan@apple.com>
2342
2343         [Win] Many layout tests are failing.
2344         https://bugs.webkit.org/show_bug.cgi?id=172286
2345
2346         Reviewed by Brent Fulgham.
2347
2348         Add a FIXME comment about unimplemented functions, instead of writing this to the test result file.
2349  
2350         * DumpRenderTree/win/TestRunnerWin.cpp:
2351         (TestRunner::grantWebNotificationPermission):
2352         (TestRunner::denyWebNotificationPermission):
2353         (TestRunner::removeAllWebNotificationPermissions):
2354         (TestRunner::simulateWebNotificationClick):
2355
2356 2017-05-18  Don Olmstead  <don.olmstead@am.sony.com>
2357
2358         [Win] Remove usage of _snprintf
2359         https://bugs.webkit.org/show_bug.cgi?id=172251
2360
2361         Reviewed by Per Arne Vollan.
2362
2363         * DumpRenderTree/TestNetscapePlugIn/PluginTest.h:
2364         * MiniBrowser/win/PageLoadTestClient.cpp:
2365         (PageLoadTestClient::dumpRunStatistics):
2366
2367 2017-05-17  Ryan Haddad  <ryanhaddad@apple.com>
2368
2369         Unreviewed, rolling out r217014.
2370
2371         This change caused mac-wk2 LayoutTests to exit early due to
2372         crashes.
2373
2374         Reverted changeset:
2375
2376         "Resource Load Statistics: Grandfather domains for existing
2377         data records"
2378         https://bugs.webkit.org/show_bug.cgi?id=172155
2379         http://trac.webkit.org/changeset/217014
2380
2381 2017-05-17  John Wilander  <wilander@apple.com>
2382
2383         Resource Load Statistics: Grandfather domains for existing data records
2384         https://bugs.webkit.org/show_bug.cgi?id=172155
2385         <rdar://problem/24913532>
2386
2387         Reviewed by Alex Christensen.
2388
2389         Adds test infrastructure needed for the added functionality.
2390
2391         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2392         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2393         (WTR::InjectedBundle::didReceiveMessageToPage):
2394         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2395         (WTR::TestRunner::setStatisticsGrandfathered):
2396         (WTR::TestRunner::isStatisticsGrandfathered):
2397         (WTR::TestRunner::installStatisticsDidScanDataRecordsCallback):
2398         (WTR::TestRunner::statisticsDidScanDataRecordsCallback):
2399         (WTR::TestRunner::setStatisticsGrandfatheringTime):
2400         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2401         * WebKitTestRunner/TestController.cpp:
2402         (WTR::TestController::setStatisticsGrandfathered):
2403         (WTR::TestController::isStatisticsGrandfathered):
2404         (WTR::TestController::setStatisticsGrandfatheringTime):
2405         * WebKitTestRunner/TestController.h:
2406         * WebKitTestRunner/TestInvocation.cpp:
2407         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2408
2409 2017-05-17  Alex Christensen  <achristensen@webkit.org>
2410
2411         Fix ios-simulator API test after r216977
2412         https://bugs.webkit.org/show_bug.cgi?id=171987
2413
2414         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2415         (TEST):
2416         <rdar://problem/32260156> covers the investigation of this, but fixing it is 
2417         not as urgent as having the rest of this working. Notably the ephemeral part of the
2418         test works, so something is just wrong with the persistent part.
2419
2420 2017-05-17  Ryan Haddad  <ryanhaddad@apple.com>
2421
2422         Unreviewed, rolling out r216955.
2423
2424         This change caused strange behavior with web-platform-tests
2425         locally and on EWS.
2426
2427         Reverted changeset:
2428
2429         "webkitpy: Start servers before setting-up for testing"
2430         https://bugs.webkit.org/show_bug.cgi?id=172176
2431         http://trac.webkit.org/changeset/216955
2432
2433 2017-05-17  Wenson Hsieh  <wenson_hsieh@apple.com>
2434
2435         A URL type is vended for a non-URL plain text string when starting data interaction
2436         https://bugs.webkit.org/show_bug.cgi?id=172228
2437         <rdar://problem/32166729>
2438
2439         Reviewed by Andy Estes.
2440
2441         Adds two new data interaction tests, SinglePlainTextWordTypeIdentifiers and SinglePlainTextURLTypeIdentifiers,
2442         to verify that a URL UTI is not vended when beginning a data interaction on a single word, but that a URL is
2443         still vended when beginning data interaction on something that resembles a link.
2444
2445         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2446
2447 2017-05-17  David Kilzer  <ddkilzer@apple.com>
2448
2449         BlobDataFileReference::generateReplacementFile() should use mkstemp()
2450         <https://webkit.org/b/172192>
2451
2452         Reviewed by Brent Fulgham.
2453
2454         * Scripts/webkitpy/style/checkers/cpp.py:
2455         (check_language): Add check for mktemp.
2456         (CppChecker): Add 'security/temp_file' category.
2457         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2458         (CppStyleTest.test_insecure_temp_file): Add test.
2459
2460 2017-05-17  Devin Rousso  <drousso@apple.com>
2461
2462         Unreviewed, change my email.
2463
2464         * Scripts/webkitpy/common/config/contributors.json:
2465
2466 2017-05-17  Matt Lewis  <jlewis3@apple.com>
2467
2468         Unreviewed, rolling out r216974.
2469
2470         Revision caused consistent timeouts on all platforms.
2471
2472         Reverted changeset:
2473
2474         "Add a RuntimeEnabledFeature for display: contents, defaulted
2475         to false."
2476         https://bugs.webkit.org/show_bug.cgi?id=171984
2477         http://trac.webkit.org/changeset/216974
2478
2479 2017-05-17  Alex Christensen  <achristensen@webkit.org>
2480
2481         Interacting with WKHTTPCookieStores before creating WKWebViews and WKProcessPools should affect cookies used
2482         https://bugs.webkit.org/show_bug.cgi?id=171987
2483
2484         Reviewed by Brady Eidson.
2485
2486         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
2487         (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2488         (TEST):
2489
2490 2017-05-17  Emilio Cobos Álvarez  <ecobos@igalia.com>
2491
2492         Add a RuntimeEnabledFeature for display: contents, defaulted to false.
2493         https://bugs.webkit.org/show_bug.cgi?id=171984
2494
2495         Reviewed by Antti Koivisto.
2496
2497         * DumpRenderTree/mac/DumpRenderTree.mm:
2498         (enableExperimentalFeatures):
2499         * WebKitTestRunner/TestController.cpp:
2500         (WTR::TestController::resetPreferencesToConsistentValues):
2501
2502 2017-05-16  Timothy Horton  <timothy_horton@apple.com>
2503
2504         Fix the build
2505
2506         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
2507         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
2508
2509 2017-05-16  Tim Horton  <timothy_horton@apple.com>
2510
2511         PageVisibilityStateWithWindowChanges tests sometimes time out
2512         https://bugs.webkit.org/show_bug.cgi?id=172202
2513         <rdar://problem/29653266>
2514
2515         Reviewed by Dean Jackson.
2516
2517         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
2518         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
2519         Make sure the window is miniaturizable, otherwise, in some cases, miniaturize: will not work.
2520
2521 2017-05-16  Jonathan Bedard  <jbedard@apple.com>
2522
2523         webkitpy: Start servers before setting-up for testing
2524         https://bugs.webkit.org/show_bug.cgi?id=172176
2525         <rdar://problem/32225538>
2526
2527         Reviewed by Alexey Proskuryakov.
2528
2529         On-device testing requires that servers are started before ports set-up their
2530         test environments.
2531
2532         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
2533         (LayoutTestRunner.__init__): Start servers when initializing LayoutTestRunner.
2534         (LayoutTestRunner.run_tests): Move the starting of servers to the initializer.
2535         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2536         (Manager.__init__): Delay construction of the test runner until we can determine
2537         if servers need to be started.
2538         (Manager.run): Determine if servers need to be started and construct the test runner.
2539         (Manager._run_tests): Move the determination of servers to run into Manager.run.
2540
2541 2017-05-16  Adrian Perez de Castro  <aperez@igalia.com>
2542
2543         Unreviewed, adding myself to contributors.json
2544
2545         * Scripts/webkitpy/common/config/contributors.json:
2546
2547 2017-05-16  Claudio Saavedra  <csaavedra@igalia.com>
2548
2549         [GTK] Tests that always pass when run alone, but fail in the bots
2550         https://bugs.webkit.org/show_bug.cgi?id=168572
2551
2552         Reviewed by Michael Catanzaro.
2553
2554         PlatformWebView::viewSupportsOptions() is basically a comparison
2555         that checks that the passed options are the ones supported by the
2556         web view. There is no reason for them to be implemented for each
2557         platform differently. In fact doing so causes issues each time a
2558         new option is added, if the corresponding platform implementation
2559         is not updated accordingly.
2560
2561         A consequence of not updating the viewSupportOptions()
2562         implementations when new options are added is that tests that need
2563         these options might fail if they are executed after a test that
2564         didn't need the option, as the webview will be reused even if the
2565         option is not supported. This cannot be spotted when running the
2566         tests individually. See bug #165133 for other example of the same
2567         problem.
2568
2569         Remove the platform implementations and make the comparison a
2570         method of the TestOptions structure, so that the check is in one
2571         place. For the time being, only include in the comparison the
2572         options that were checked in the mac platform, which seem to be
2573         the only ones relevant this far (unless newer ones have also been
2574         forgotten).
2575
2576         * WebKitTestRunner/PlatformWebView.h:
2577         (WTR::PlatformWebView::viewSupportsOptions): Use the method
2578         defined below.
2579         * WebKitTestRunner/TestOptions.h:
2580         (WTR::TestOptions::hasSameInitializationOptions): Added.
2581         * WebKitTestRunner/gtk/PlatformWebViewGtk.cpp:
2582         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
2583         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2584         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
2585         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
2586         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
2587         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
2588         (WTR::PlatformWebView::viewSupportsOptions): Deleted.
2589
2590 2017-05-15  Yusuke Suzuki  <utatane.tea@gmail.com>
2591
2592         [JSC] Build testapi in non Apple ports
2593         https://bugs.webkit.org/show_bug.cgi?id=172103
2594
2595         Reviewed by Filip Pizlo.
2596
2597         Now testapi is drived in JSCOnly, GTK and WPE ports too.
2598
2599         * Scripts/build-jsc:
2600         * Scripts/run-javascriptcore-tests:
2601
2602 2017-05-15  Youenn Fablet  <youenn@apple.com>
2603
2604         WPT test importer should not account for slow manual tests
2605         https://bugs.webkit.org/show_bug.cgi?id=172127
2606
2607         Reviewed by Ryosuke Niwa.
2608
2609         Making sure manual tests are not triggering updating tests-options.json file.
2610
2611         * Scripts/webkitpy/w3c/test_importer.py:
2612         (TestImporter.find_importable_tests):
2613         (TestImporter._already_identified_as_resource_file):
2614         (TestImporter.update_tests_options):
2615         * Scripts/webkitpy/w3c/test_importer_unittest.py:
2616         (test_manual_slow_test):
2617
2618 2017-05-15  Jonathan Bedard  <jbedard@apple.com>
2619
2620         webkitpy: Some versions of simctl do not place parenthesis around runtime identifiers
2621         https://bugs.webkit.org/show_bug.cgi?id=172142
2622
2623         Reviewed by Tim Horton.
2624
2625         * Scripts/webkitpy/xcode/simulator.py:
2626         (Simulator._parse_runtimes): Newer versions of simctl output do not put parenthesis
2627         around runtime identifiers.
2628         * Scripts/webkitpy/xcode/simulator_unittest.py: Add tests for new simctl output.
2629
2630 2017-05-15  Ryosuke Niwa  <rniwa@webkit.org>
2631
2632         Update ARES-6 plan file to use the latest version
2633         https://bugs.webkit.org/show_bug.cgi?id=172139
2634
2635         Reviewed by Keith Miller.
2636
2637         Include r216538.
2638
2639         * Scripts/webkitpy/benchmark_runner/data/plans/ares6.plan:
2640
2641 2017-05-15  Jeremy Jones  <jeremyj@apple.com>
2642
2643         Disable Picture In Picture API tests on unsupported platforms.
2644         https://bugs.webkit.org/show_bug.cgi?id=172125
2645         rdar://problem/32199477
2646
2647         Reviewed by Simon Fraser.
2648
2649         The callbacks and allowing picture-in-picture require new SPI.
2650
2651         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
2652
2653 2017-05-15  Brady Eidson  <beidson@apple.com>
2654
2655         [ios-simulator] API test WKWebView.ClearAppCache is failing.
2656         https://bugs.webkit.org/show_bug.cgi?id=172120
2657
2658         Unreviewed test gardening.
2659
2660         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2661         (TEST): ios-sim needs explicit deleting of the app cache paths that I'd removed in 216805.
2662           Restoring that code fixes this.
2663
2664 2017-05-15  Timothy Horton  <timothy_horton@apple.com>
2665
2666         Null deref under WebContentReader::readURL when interacting with a file URL
2667         https://bugs.webkit.org/show_bug.cgi?id=172045
2668         <rdar://problem/25880647>
2669
2670         Reviewed by Wenson Hsieh.
2671
2672         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2673         (TestWebKitAPI::TEST):
2674         The text of the file URL is pasted because a textual version of it gets
2675         onto the pasteboard. However, this test would have crashed before. Also
2676         tests that we don't make an <a>.
2677
2678 2017-05-14  Per Arne Vollan  <pvollan@apple.com>
2679
2680         [Win] fast/cookies/local-file-can-set-cookies.html is flaky.
2681         https://bugs.webkit.org/show_bug.cgi?id=172071
2682
2683         Reviewed by Alexey Proskuryakov.
2684
2685         * DumpRenderTree/win/DumpRenderTree.cpp:
2686         (resetWebPreferencesToConsistentValues):
2687
2688 2017-05-14  Chris Dumez  <cdumez@apple.com>
2689
2690         Drop PassRefPtr class from WTF
2691         https://bugs.webkit.org/show_bug.cgi?id=172091
2692
2693         Reviewed by Alex Christensen.
2694
2695         Drop API test coverage.
2696
2697         * TestWebKitAPI/Tests/WTF/Ref.cpp:
2698         (TestWebKitAPI::TEST):
2699         (TestWebKitAPI::passWithPassRefPtr): Deleted.
2700
2701 2017-05-13  Eric Carlson  <eric.carlson@apple.com>
2702
2703         [MediaStream] deviceId constraint doesn't work with getUserMedia
2704         https://bugs.webkit.org/show_bug.cgi?id=171877
2705         <rdar://problem/31899730>
2706
2707         Reviewed by Jer Noble.
2708
2709         The device ID hash salt is now required for getUserMedia to check deviceId constraint, so
2710         implement the "checkUserMediaPermission" callback.
2711         * TestWebKitAPI/Tests/WebKit2/UserMedia.cpp:
2712         (TestWebKitAPI::decidePolicyForUserMediaPermissionRequestCallBack):
2713         (TestWebKitAPI::checkUserMediaPermissionCallback):
2714         (TestWebKitAPI::TEST):
2715
2716         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm:
2717         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
2718
2719 2017-05-13  Chris Dumez  <cdumez@apple.com>
2720
2721         Stop using RefPtr::release()
2722         https://bugs.webkit.org/show_bug.cgi?id=172074
2723
2724         Reviewed by Geoffrey Garen.
2725
2726         * TestWebKitAPI/Tests/WTF/RefPtr.cpp:
2727         (TestWebKitAPI::TEST):
2728
2729 2017-05-13  Commit Queue  <commit-queue@webkit.org>
2730
2731         Unreviewed, rolling out r216808.
2732         https://bugs.webkit.org/show_bug.cgi?id=172075
2733
2734         caused lldb to hang when debugging (Requested by smfr on
2735         #webkit).
2736
2737         Reverted changeset:
2738
2739         "Use Mach exceptions instead of signals where possible"
2740         https://bugs.webkit.org/show_bug.cgi?id=171865
2741         http://trac.webkit.org/changeset/216808
2742
2743 2017-05-12  Alex Christensen  <achristensen@webkit.org>
2744
2745         Rename WKContentExtension to WKContentRuleList
2746         https://bugs.webkit.org/show_bug.cgi?id=172053
2747         <rdar://problem/32141005>
2748
2749         Reviewed by Geoffrey Garen.
2750
2751         * TestWebKitAPI/Tests/WebKit2Cocoa/WKContentExtensionStore.mm:
2752         (WKContentRuleListStoreTest::SetUp):
2753         (TEST_F):
2754         (-[ContentRuleListDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
2755         (WKContentExtensionStoreTest::SetUp): Deleted.
2756         (-[ContentExtensionDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Deleted.
2757
2758 2017-05-12  Keith Miller  <keith_miller@apple.com>
2759
2760         Use Mach exceptions instead of signals where possible
2761         https://bugs.webkit.org/show_bug.cgi?id=171865
2762
2763         Reviewed by Mark Lam.
2764
2765         * TestWebKitAPI/Tests/WTF/ThreadMessages.cpp:
2766         (runThreadMessageTest):
2767         (TEST):
2768
2769 2017-05-12  Jeremy Jones  <jeremyj@apple.com>
2770
2771         Add objc version of WK2 UIPageClient setHasVideoInPictureInPicture and rename it to hasVideoInPictureInPictureDidChange.
2772         https://bugs.webkit.org/show_bug.cgi?id=172048
2773         rdar://problem/32163054
2774
2775         Reviewed by Simon Fraser.
2776
2777         Add a WKWebView test for hasVideoInPictureInPictureDidChange UIDelegate callback.
2778
2779         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html:
2780         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm:
2781         (hasVideoInPictureInPictureDidChange):
2782         (-[PictureInPictureUIDelegate _webView:hasVideoInPictureInPictureDidChange:]):
2783         (-[PictureInPictureUIDelegate userContentController:didReceiveScriptMessage:]):
2784         (TestWebKitAPI::TEST):
2785
2786 2017-05-12  Brady Eidson  <beidson@apple.com>
2787
2788         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
2789         https://bugs.webkit.org/show_bug.cgi?id=172030
2790
2791         Unreviewed - Test gardening
2792
2793         Try to resolve this once and for all by using the WebsiteDataStore API to nuke everything
2794         before the test starts.
2795
2796         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2797         (defaultWebsiteCacheDirectory):
2798         (defaultApplicationCacheDirectory):
2799         (TEST):
2800         (defaultWebsiteDataDirectory): Deleted.
2801
2802 2017-05-12  David Quesada  <david_quesada@apple.com>
2803
2804         Add SPI for overriding WKWebView's clipping behavior for _visibleContentRect
2805         https://bugs.webkit.org/show_bug.cgi?id=172000
2806         rdar://problem/32144756
2807
2808         Reviewed by Simon Fraser.
2809
2810         Added API tests to verify that WKWebView provides the expected value for
2811         _visibleContentRect in various configurations. (i.e. not inside a scrollview,
2812         inside a scrollview but not clipped, clipped by an ancestor scrollview,
2813         clipped by the webview's _enclosingViewForExposedRectComputation)
2814
2815         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2816         * TestWebKitAPI/Tests/WebKit2Cocoa/VisibleContentRect.mm: Added.
2817         (-[TestWKWebViewWithEnclosingView _enclosingViewForExposedRectComputation]):
2818         (TestWebKitAPI::TEST):
2819
2820 2017-05-12  Brady Eidson  <beidson@apple.com>
2821
2822         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
2823         https://bugs.webkit.org/show_bug.cgi?id=172030
2824
2825         Unreviewed - Test gardening, in effect...
2826
2827         More exploration as to why this continues to fail on the bots.
2828         
2829         This change should give us a smoking gun.
2830         
2831         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2832         (TEST):
2833
2834 2017-05-12  Hyungwook Lee  <hyungwook.lee@navercorp.com>
2835
2836         [GTK] Fix compile warnings in PlatformImageCairo.cpp
2837         https://bugs.webkit.org/show_bug.cgi?id=171850
2838
2839         Reviewed by Michael Catanzaro.
2840
2841         * ImageDiff/cairo/PlatformImageCairo.cpp:
2842         (ImageDiff::PlatformImage::createFromStdin):
2843         (ImageDiff::PlatformImage::writeAsPNGToStdout):
2844
2845 2017-05-12  Jeremy Jones  <jeremyj@apple.com>
2846
2847         Add UIClient callback for when picture-in-picture is activated.
2848         https://bugs.webkit.org/show_bug.cgi?id=172023
2849
2850         Reviewed by Simon Fraser.
2851
2852         Added a test for WKPageUIClientV10 setHasVideoInPictureInPicture.
2853
2854         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2855         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.html: Added.
2856         * TestWebKitAPI/Tests/WebKit2Cocoa/PictureInPictureDelegate.mm: Added.
2857         (onLoadedCompletedCallback):
2858         (waitUntilOnLoadIsCompleted):
2859         (didFinishLoadForFrame):
2860         (setHasVideoInPictureInPicture):
2861         (TestWebKitAPI::TEST):
2862
2863 2017-05-12  Jonathan Bedard  <jbedard@apple.com>
2864
2865         Unreviewed follow-up to r216776.
2866
2867         * Scripts/webkitpy/port/base.py:
2868         (Port.path_to_crash_logs): Raise not implemented.
2869         * Scripts/webkitpy/port/test.py:
2870         (TestPort.path_to_crash_logs): Return results directory as the location of crash logs.
2871         * Scripts/webkitpy/port/win.py:
2872         (WinPort.path_to_crash_logs): Ditto.
2873
2874 2017-05-12  Alexey Proskuryakov  <ap@apple.com>
2875
2876         Bot watcher's dashboard shows results links twice sometimes
2877         https://bugs.webkit.org/show_bug.cgi?id=172043
2878
2879         Reviewed by Tim Horton.
2880
2881         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotTesterQueueView.js:
2882         (BuildbotTesterQueueView.prototype._presentPopoverForGenericTestFailures):
2883
2884 2017-05-12  Brady Eidson  <beidson@apple.com>
2885
2886         REGRESSION (r216711): API test WKWebView.ClearAppCache is failing.
2887         https://bugs.webkit.org/show_bug.cgi?id=172030
2888
2889         Unreviewed - Test gardening, in effect...
2890
2891         This failure is only being seen by the bots.
2892         
2893         I believe this test is utterly broken in the first place; when it checks the .wal file's
2894         size that is not actually an indicator that the records were deleted.
2895         
2896         But that isn't what's coming up as failure on the bots.
2897         
2898         This patch is an attempt to:
2899         1 - More forcefully clear the Website data directory of leftovers before the test starts.
2900         2 - Give an earlier indication of the failure that the bots are seeing, to possibly reveal more.
2901
2902         * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm:
2903         (defaultWebsiteDataDirectory):
2904         (defaultApplicationCacheDirectory):
2905         (TEST):
2906
2907 2017-05-12  Jonathan Bedard  <jbedard@apple.com>
2908
2909         webkitpy: Pass directory with crash logs into CrashLogs
2910         https://bugs.webkit.org/show_bug.cgi?id=172033
2911         <rdar://problem/32157616>
2912
2913         Reviewed by Daniel Bates.
2914
2915         Refactor CrashLogs and the callers of CrashLogs so that the port object owns
2916         the location of crash logs.
2917
2918         * Scripts/webkitpy/common/system/crashlogs.py:
2919         (CrashLogs.__init__): Pass mandatory crash_log_directory when constructing.
2920         (CrashLogs._find_newest_log_darwin): Use self._crash_log_directory instead of
2921         generating one.
2922         (CrashLogs._find_newest_log_win): Use self._crash_log_directory instead of
2923         self._results_directory.
2924         (CrashLogs._find_all_logs_darwin): Use self._crash_log_directory instead of
2925         generating one.
2926         (CrashLogs._log_directory_darwin): Moved to port.
2927         * Scripts/webkitpy/common/system/crashlogs_unittest.py: Update tests since the path
2928         to the crash log is no longer owned by CrashLogs.
2929         * Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py: Use the general
2930         directory for uploading crash logs. Note that crash logs are only supported on Mac
2931         and Windows.
2932         * Scripts/webkitpy/port/apple.py: Remove unneeded CrashLogs import.
2933         * Scripts/webkitpy/port/base.py:
2934         (Port.path_to_crash_logs): Unless ports declare otherwise, crash logs are assumed
2935         to be in the results directory.
2936         * Scripts/webkitpy/port/darwin.py:
2937         (DarwinPort.path_to_crash_logs): Moved from CrashLogs._log_directory_darwin.
2938         (DarwinPort._look_for_all_crash_logs_in_log_dir): Use port specific crash log path.
2939         (DarwinPort._get_crash_log): Ditto.
2940         * Scripts/webkitpy/port/darwin_testcase.py:
2941         (DarwinTest.test_crashlog_path): Test that the Darwin ports are correctly calculating
2942         the path to crash logs.
2943         * Scripts/webkitpy/port/ios_device.py:
2944         (IOSDevicePort.path_to_crash_logs): Currently, crash log retrieval is undefined for iOS.
2945         * Scripts/webkitpy/port/ios_device_unittest.py:
2946         (IOSDeviceTest.test_crashlog_path): Currently, crash log retrieval is undefined for iOS.
2947         * Scripts/webkitpy/port/ios_simulator.py: Remove unneeded CrashLogs import.
2948         * Scripts/webkitpy/port/mac.py: Ditto.
2949         * Scripts/webkitpy/port/test.py:
2950         (TestDriver.run_test): Use port specific crash log path when retrieving crash logs.
2951         * Scripts/webkitpy/port/win.py:
2952         (WinPort._get_crash_log): Ditto.
2953         * Scripts/webkitpy/tool/commands/queries.py:
2954         (execute): Construct a port object since this is the object which owns the path to crash logs.
2955
2956 2017-05-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2957
2958         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/create-navigation-data after r216615.
2959
2960         In r216615 the custom code for window.open() was removed. The generated code now correctly handles the optional
2961         URL parameter using the default value "about:blank" when not provided.
2962
2963         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
2964         (testWebViewCreateNavigationData):
2965
2966 2017-05-11  Youenn Fablet  <youenn@apple.com>
2967
2968         Allow WPT server to serve specific WebKit test
2969         https://bugs.webkit.org/show_bug.cgi?id=171479
2970
2971         Reviewed by Ryosuke Niwa.
2972
2973         Adding a new mount point to WPT server.
2974         It points to LayoutTests/http/wpt folder and is triggered on "/WebKit" urls.
2975
2976         Updating the webkitpy infrastructure to launch WPT server and do test url mapping for LayoutTests/wpt tests.
2977
2978         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2979         (Manager.__init__):
2980         (Manager._is_http_test):
2981         (Manager._needs_web_platform_test):
2982         (Manager._run_tests):
2983         (Manager._is_web_platform_test): Deleted.
2984         * Scripts/webkitpy/layout_tests/servers/web_platform_test_launcher.py:
2985         (build_routes):
2986         (main):
2987         * Scripts/webkitpy/port/driver.py:
2988         (Driver):
2989         (Driver.is_webkit_specific_web_platform_test):
2990         (Driver.test_to_uri):
2991         (Driver._command_from_driver_input):
2992
2993 2017-05-11  Brady Eidson  <beidson@apple.com>
2994
2995         [WKWebsiteDataStore removeDataOfTypes:...] doesn't work for IndexedDB if the data store has a custom IDB path.
2996         <rdar://problem/30612463> and https://bugs.webkit.org/show_bug.cgi?id=171994
2997
2998         Reviewed by Andy Estes.
2999         Informal review by Maureen Daum.
3000
3001         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
3002         (TEST):
3003
3004 2017-05-11  Joseph Pecoraro  <pecoraro@apple.com>
3005
3006         REGRESSION(r216217): lldb_webkit.py no longer prints out a WTFString, StringImpl needs to handle StringImplShape change
3007         https://bugs.webkit.org/show_bug.cgi?id=171989
3008
3009         Reviewed by Brian Burg.
3010
3011         * lldb/lldb_webkit.py:
3012         (WTFStringImplProvider.get_data8):
3013         (WTFStringImplProvider.get_data16):
3014         m_data8 and m_data16 are now part of the superclass StringImplShape
3015         instead of directly in StringImpl. So first get the shape by getting
3016         index 0, and the data properties are the same offset within that.
3017
3018 2017-05-11  Joseph Pecoraro  <pecoraro@apple.com>
3019
3020         Remove Vibration API
3021         https://bugs.webkit.org/show_bug.cgi?id=171766
3022
3023         Rubber-stamped by Alexey Proskuryakov.
3024
3025         * Scripts/webkitperl/FeatureList.pm:
3026
3027 2017-05-11  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3028
3029         Add WPE release bots
3030         https://bugs.webkit.org/show_bug.cgi?id=171973
3031
3032         Reviewed by Žan Doberšek.
3033
3034         This adds a WPE Release Build bot (64-bit) and a WPE Release Test bot.
3035         It also adds a new WPE buildbot category.
3036
3037         * BuildSlaveSupport/build.webkit.org-config/config.json:
3038         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3039         (InstallWpeDependencies):
3040         (appendCustomBuildFlags):
3041         (Factory.__init__):
3042         (loadBuilderConfig):
3043         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
3044         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
3045
3046 2017-05-09  Sam Weinig  <sam@webkit.org>
3047
3048         Remove support for legacy Notifications
3049         https://bugs.webkit.org/show_bug.cgi?id=171487
3050
3051         Reviewed by Jon Lee.
3052
3053         * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
3054         (DRTDesktopNotificationPresenter::checkNotificationPermission):
3055         * Scripts/webkitperl/FeatureList.pm:
3056         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3057         Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
3058
3059 2017-05-10  Michael Catanzaro  <mcatanzaro@igalia.com>
3060
3061         Remove user agent quirk for Slack
3062         https://bugs.webkit.org/show_bug.cgi?id=171869
3063
3064         Reviewed by Carlos Garcia Campos.
3065
3066         Remove the corresponding test.
3067
3068         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
3069         (TestWebKitAPI::TEST):
3070
3071 2017-05-10  Commit Queue  <commit-queue@webkit.org>
3072
3073         Unreviewed, rolling out r216578.
3074         https://bugs.webkit.org/show_bug.cgi?id=171920
3075
3076         Broke the GTK+ build with Wayland enabled (Requested by KaL on
3077         #webkit).
3078
3079         Reverted changeset:
3080
3081         "[GTK] Bump GTK+ and its dependencies in jhbuild"
3082         https://bugs.webkit.org/show_bug.cgi?id=171918
3083         http://trac.webkit.org/changeset/216578
3084
3085 2017-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
3086
3087         [GTK] Bump GTK+ and its dependencies in jhbuild
3088         https://bugs.webkit.org/show_bug.cgi?id=171918
3089
3090         Reviewed by Carlos Alberto Lopez Perez.
3091
3092         * WebKitTestRunner/InjectedBundle/gtk/ActivateFontsGtk.cpp:
3093         (WTR::initializeGtkSettings):
3094         * gtk/jhbuild.modules:
3095         * gtk/patches/gtk+-configure-fix-detecting-CUPS-2.x.patch: Removed.
3096         * gtk/patches/librsvg-2.36.1-bump-up-config.guess-to-support-aarch64.patch: Removed.
3097
3098 2017-05-10  Don Olmstead  <don.olmstead@am.sony.com>
3099
3100         [Win] Set CMake args in build-webkit
3101         https://bugs.webkit.org/show_bug.cgi?id=171436
3102
3103         Reviewed by Per Arne Vollan.
3104
3105         * Scripts/build-webkit:
3106
3107 2017-05-10  Carlos Garcia Campos  <cgarcia@igalia.com>
3108
3109         ImageDiff: Add CG implementation for new ImageDiff
3110         https://bugs.webkit.org/show_bug.cgi?id=170608
3111
3112         Reviewed Alex Christensen.
3113
3114         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
3115         * DumpRenderTree/win/ImageDiffCairo.cpp: Removed.
3116         * DumpRenderTree/win/ImageDiffWin.cpp: Removed.
3117         * ImageDiff/CMakeLists.txt:
3118         * ImageDiff/Cairo.cmake:
3119         * ImageDiff/ImageDiff.cpp:
3120         (main):
3121         * ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
3122         * ImageDiff/PlatformImage.cpp:
3123         * ImageDiff/PlatformImage.h:
3124         * ImageDiff/cairo/PlatformImageCairo.cpp:
3125         * ImageDiff/cg/ImageDiff.cpp: Removed.
3126         * ImageDiff/cg/PlatformImageCG.cpp: Added.
3127         (ImageDiff::PlatformImage::createFromStdin):
3128         (ImageDiff::PlatformImage::createFromDiffData):
3129         (ImageDiff::PlatformImage::PlatformImage):
3130         (ImageDiff::PlatformImage::~PlatformImage):
3131         (ImageDiff::PlatformImage::width):
3132         (ImageDiff::PlatformImage::height):
3133         (ImageDiff::PlatformImage::rowBytes):
3134         (ImageDiff::PlatformImage::hasAlpha):
3135         (ImageDiff::PlatformImage::pixels):
3136         (ImageDiff::PlatformImage::writeAsPNGToStdout):
3137
3138 2017-05-10  Zan Dobersek  <zdobersek@igalia.com>
3139
3140         Enable FTL JIT by default on AArch64
3141         https://bugs.webkit.org/show_bug.cgi?id=144039
3142
3143         Reviewed by Yusuke Suzuki.
3144
3145         * Scripts/build-jsc: Enable the FTL JIT option by default on ARM64.
3146         * Scripts/run-jsc-stress-tests: Unmark the ARM64 and Linux combination
3147         as an unsupported FTL platform.
3148         * Scripts/webkitdirs.pm:
3149         (isARM64): Returns 1 if the determined architecture is 'arm64'.
3150         * Scripts/webkitperl/FeatureList.pm: Enable FTL_JIT and WEBASSEMBLY on ARM64.
3151
3152 2017-05-09  Jonathan Bedard  <jbedard@apple.com>
3153
3154         webkitpy: Remove unneeded crash log retrieval, refactor Darwin crash retrieval
3155         https://bugs.webkit.org/show_bug.cgi?id=170857
3156         <rdar://problem/31635373>
3157
3158         Reviewed by Aakash Jain.
3159
3160         Since LayoutTestRelay has been removed, iOS Simulators and Macs can use the same
3161         code to search for crash logs.
3162
3163         * Scripts/webkitpy/port/darwin.py:
3164         (DarwinPort._get_crash_log): Moved from MacPort.
3165         * Scripts/webkitpy/port/darwin_testcase.py:
3166         (DarwinTest.test_get_crash_log): Moved from MacTest.
3167         * Scripts/webkitpy/port/ios_device.py:
3168         (IOSDevicePort._get_crash_log): Implement pass-through for iOS device, since iOS
3169         devices must search for crash-logs remotely.
3170         * Scripts/webkitpy/port/ios_simulator.py:
3171         (IOSSimulatorPort._get_crash_log): Deleted.
3172         * Scripts/webkitpy/port/ios_simulator_unittest.py:
3173         (IOSSimulatorTest.test_get_crash_log): Deleted.
3174         * Scripts/webkitpy/port/mac.py:
3175         (MacPort._get_crash_log): Moved to DarwinPort
3176         * Scripts/webkitpy/port/mac_unittest.py:
3177         (MacTest.test_get_crash_log): Moved to DarwinTest.
3178
3179 2017-05-09  Jonathan Bedard  <jbedard@apple.com>
3180
3181         build ImageDiff with host SDK from Make
3182         https://bugs.webkit.org/show_bug.cgi?id=171835
3183
3184         Reviewed by Alexey Proskuryakov.
3185
3186         ImageDiff should be built for the default SDK and default architecture when
3187         the SDKROOT is set to either iOS device or iOS simulator. Check the
3188         DO_NOT_BUILD_IMAGE_DIFF flag to skip the ImageDiff build.
3189
3190         * ImageDiff/Makefile: Use Mac SDK when building for iOS Simulator or iOS device.
3191         * Makefile: Do not build ImageDiff if the DO_NOT_BUILD_IMAGE_DIFF flag is set.
3192
3193 2017-05-09  Matt Lewis  <jlewis3@apple.com>
3194
3195         Unreviewed, adding myself to contributors.json
3196
3197         * Scripts/webkitpy/common/config/contributors.json:
3198
3199 2017-05-09  Jonathan Bedard  <jbedard@apple.com>
3200
3201         REGRESSION: ImageDiff not building with make
3202         https://bugs.webkit.org/show_bug.cgi?id=171788
3203
3204         Reviewed by Alex Christensen.
3205
3206         * Makefile: Build ImageDiff for all platforms.
3207
3208 2017-05-09  Fujii Hironori  <Hironori.Fujii@sony.com>
3209
3210         [Win] ImageDiff isn't built since Bug 168945
3211         https://bugs.webkit.org/show_bug.cgi?id=171847
3212
3213         Reviewed by Alex Christensen.
3214
3215         * CMakeLists.txt: Add 'ImageDiff' sub-directory to build if WIN32.
3216         * ImageDiff/ImageDiff.cpp: Include some header files to fix compilation errors.
3217         * ImageDiff/PlatformWin.cmake: Define USE_CAIRO if WinCairo port.
3218
3219 2017-05-09  Zan Dobersek  <zdobersek@igalia.com>
3220
3221         Upstream the WPE port
3222         https://bugs.webkit.org/show_bug.cgi?id=171110
3223
3224         Reviewed by Alex Christensen.
3225
3226         webkit-dev thread:
3227         https://lists.webkit.org/pipermail/webkit-dev/2017-April/028923.html
3228
3229         Add WPE support to various tooling scripts, TestWebKitAPI and WebKitTestRunner.
3230         In-file changes removed from this ChangeLog entry for brevity.
3231
3232         * BuildSlaveSupport/built-product-archive:
3233         * BuildSlaveSupport/test-result-archive:
3234         * CMakeLists.txt:
3235         * ImageDiff/PlatformWPE.cmake: Added.
3236         * Scripts/build-dumprendertree:
3237         * Scripts/build-webkit:
3238         * Scripts/build-webkittestrunner:
3239         * Scripts/update-webkit-libs-jhbuild:
3240         * Scripts/update-webkitwpe-libs: Added.
3241         * Scripts/webkitdirs.pm:
3242         * Scripts/webkitperl/FeatureList.pm:
3243         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3244         * Scripts/webkitpy/port/factory.py:
3245         * Scripts/webkitpy/port/wpe.py: Added.
3246         * TestWebKitAPI/PlatformWPE.cmake: Added.
3247         * TestWebKitAPI/wpe/InjectedBundleControllerWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
3248         * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp: Added.
3249         * TestWebKitAPI/wpe/main.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
3250         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
3251         * WebKitTestRunner/InjectedBundle/AccessibilityController.h:
3252         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp:
3253         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
3254         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3255         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3256         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityControllerWPE.cpp: Added.
3257         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp: Added.
3258         * WebKitTestRunner/InjectedBundle/wpe/ActivateFontsWPE.cpp: Added.
3259         * WebKitTestRunner/InjectedBundle/wpe/InjectedBundleWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
3260         * WebKitTestRunner/InjectedBundle/wpe/TestRunnerWPE.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
3261         * WebKitTestRunner/PlatformWPE.cmake: Added.
3262         * WebKitTestRunner/PlatformWebView.h:
3263         * WebKitTestRunner/TestController.cpp:
3264         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp: Added.
3265         * WebKitTestRunner/wpe/HeadlessViewBackend.cpp: Added.
3266         * WebKitTestRunner/wpe/HeadlessViewBackend.h: Copied from Source/WebKit2/Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.h.
3267         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp: Added.
3268         * WebKitTestRunner/wpe/TestControllerWPE.cpp: Added.
3269         * WebKitTestRunner/wpe/main.cpp: Copied from Source/WebKit2/Shared/DrawingAreaInfo.h.
3270         * jhbuild/jhbuild-wrapper:
3271         * wpe/generate-inspector-gresource-manifest.py: Added.
3272         * wpe/jhbuild.modules: Added.
3273         * wpe/jhbuildrc: Added.
3274         * wpe/patches/cairo-egl-device-create-for-egl-surface.patch: Added.
3275         * wpe/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Added.
3276         * wpe/patches/freetype6-2.4.11-truetype-font-height-fix.patch: Added.
3277         * wpe/patches/gdate-suppress-string-format-literal-warning.patch: Added.
3278         * wpe/patches/glib-warning-fix.patch: Added.
3279         * wpe/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Added.
3280         * wpe/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Added.
3281         * wpe/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Added.
3282         * wpe/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Added.
3283         * wpe/patches/gstreamer-typefind-Only-push-a-CAPS-event-downstream-if-the-.patch: Added.
3284
3285 2017-05-08  Jonathan Bedard  <jbedard@apple.com>
3286
3287         Implement PlatformWebView::windowSnapshotImage and createBitmapContextFromWebView for iOS devices
3288         https://bugs.webkit.org/show_bug.cgi?id=169421
3289         <rdar://problem/30950171>
3290
3291         Reviewed by Tim Horton.
3292
3293         * DumpRenderTree/ios/PixelDumpSupportIOS.mm:
3294         (createBitmapContextFromWebView): Implement for IOSurface.
3295         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3296         (WTR::PlatformWebView::windowSnapshotImage): Use snapshot API for device.
3297
3298 2017-05-08  Jonathan Bedard  <jbedard@apple.com>
3299
3300         buildbot: Cleanup simulators after running tests
3301         https://bugs.webkit.org/show_bug.cgi?id=171679
3302
3303         Reviewed by Aakash Jain.
3304
3305         simctl is partitioned for each user. Since kill-old-processes
3306         is run as root, we need to specify the buildbot user when tearing
3307         down simulators between steps.
3308
3309         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
3310         (KillOldProcesses): Pass buildbot user to kill-old-processes.
3311         * BuildSlaveSupport/kill-old-processes:
3312         (main): Specify the user for simctl if one has been provided.
3313
3314 2017-05-08  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3315
3316         REGRESSION(r216179): [GTK] Script install-dependencies misses liborc
3317         https://bugs.webkit.org/show_bug.cgi?id=171681
3318
3319         Reviewed by Carlos Garcia Campos.
3320
3321         * gtk/install-dependencies:
3322
3323 2017-05-08  Carlos Garcia Campos  <cgarcia@igalia.com>
3324
3325         Unreviewed. Fix GTK+ test /webkit2/WebKitConsoleMessage/network-error after r215556.
3326
3327         Glib uses now Unicode quotes in error messages.
3328
3329         * TestWebKitAPI/Tests/WebKit2Gtk/TestConsoleMessage.cpp:
3330         (testWebKitConsoleMessageNetworkError):
3331
3332 2017-05-08  Carlos Garcia Campos  <cgarcia@igalia.com>
3333
3334         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/javascript-dialogs after r215404.
3335
3336         Sending down+up keys is no longer enough to simulate a real user interaction after r215404, the key events now
3337         should be handled by the web process to be considered a user interaction. So, add an input to the HTML and send
3338         characters to the input. Also fix typo in the function name.
3339
3340         * TestWebKitAPI/Tests/WebKit2Gtk/TestUIClient.cpp:
3341         (testWebViewJavaScriptDialogs):
3342
3343 2017-05-07  Michael Catanzaro  <mcatanzaro@igalia.com>
3344
3345         [GTK] Cannot sign in with new Google sign-in page
3346         https://bugs.webkit.org/show_bug.cgi?id=171770
3347
3348         Unreviewed. This just adds a test.
3349
3350         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
3351         (TestWebKitAPI::TEST):
3352
3353 2017-05-06  Simon Fraser  <simon.fraser@apple.com>
3354
3355         [iOS WK2] Make rotation tests more reliable
3356         https://bugs.webkit.org/show_bug.cgi?id=171778
3357
3358         Reviewed by Tim Horton.
3359
3360         Switching between "safari-style" rotation and normal rotation left state on the WKWebView
3361         that would cause later viewport-sensitive tests to fail. The WKWebView would be left
3362         with override layout parameters, and an override orientation, and these caused viewport
3363         size to leak into later tests, and WebCore orientation to not get reset correctly.
3364
3365         Also, WKWebView was unregistering for UIWindowDidRotateNotification notifications when
3366         an override orientation was set, and would never re-register, causing lost orientationchanged
3367         events.
3368
3369         Fix by exposing WKWebView SPI to clear the various bits of overide state. Also don't unregister
3370         from the UIWindowDidRotateNotification notification; it's already ignored anyway if it fires.
3371
3372         Also wait for a visible content rect update after resizing the WKWebVeiw between tests, to make sure
3373         the WebProcess is caught up before proceeding with the test.
3374
3375         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3376         (-[PlatformWebViewController viewWillTransitionToSize:withTransitionCoordinator:]):
3377         * WebKitTestRunner/ios/TestControllerIOS.mm:
3378         (WTR::TestController::platformResetStateToConsistentValues):
3379         (WTR::TestController::platformConfigureViewForTest):
3380
3381 2017-05-06  Csaba Osztrogonác  <ossy@webkit.org>
3382
3383         [Mac][cmake] Buildfix after r216047
3384         https://bugs.webkit.org/show_bug.cgi?id=171769
3385
3386         Unreviewed buildfix.
3387
3388         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3389
3390 2017-05-05  Brady Eidson  <beidson@apple.com>
3391
3392         API test WebKit2.WebsiteDataStoreCustomPaths is failing on ios-simulator.
3393         <rdar://problem/31977294> and https://bugs.webkit.org/show_bug.cgi?id=171513
3394
3395         Reviewed by Andy Estes.
3396
3397         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
3398         (TEST):
3399
3400 2017-05-05  Brian Burg  <bburg@apple.com>
3401
3402         [Cocoa] Converting from WebCore::Cookie to NSHTTPCookie always marks cookies as session cookies
3403         https://bugs.webkit.org/show_bug.cgi?id=171748
3404         <rdar://problem/32027327>
3405
3406         Reviewed by Michael Catanzaro.
3407
3408         Remove temporary workaround now that the assertion failure is fixed.
3409
3410         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3411         (TEST):
3412
3413 2017-05-05  Simon Fraser  <simon.fraser@apple.com>
3414
3415         Make it possible to test rotation in iOS WebKitTestRunner
3416         https://bugs.webkit.org/show_bug.cgi?id=171755
3417
3418         Reviewed by Tim Horton.
3419
3420         Add to UIScriptController:
3421             void simulateRotation(DeviceOrientation orientation, object callback);
3422             void simulateRotationLikeSafari(DeviceOrientation orientation, object callback);
3423
3424         The former just does a view resize, as a simple WKWebView app would do. The second does
3425         animation more like MobileSafari, using _begin/_endAnimatedResize. and associated override
3426         layout size and interface orientation. The two behaviors produce different resize and
3427         orientationchange events and sizes, and both need to be tested.
3428
3429         Rotation is initiated by a call on UIDevice, and responded to by the root view controller,
3430         which is now a custom subclass (PlatformWebViewController).
3431
3432         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
3433         (WTR::UIScriptController::simulateRotation):
3434         (WTR::UIScriptController::simulateRotationLikeSafari):
3435         * DumpRenderTree/mac/UIScriptControllerMac.mm:
3436         (WTR::UIScriptController::simulateRotation):
3437         (WTR::UIScriptController::simulateRotationLikeSafari):
3438         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
3439         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
3440         (WTR::toDeviceOrientation):
3441         (WTR::UIScriptController::simulateRotation):
3442         (WTR::UIScriptController::simulateRotationLikeSafari):
3443         * TestRunnerShared/UIScriptContext/UIScriptController.h:
3444         * WebKitTestRunner/cocoa/TestRunnerWKWebView.h:
3445         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
3446         (-[TestRunnerWKWebView dealloc]):
3447         (-[TestRunnerWKWebView _didEndRotation]):
3448         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
3449         (-[PlatformWebViewController viewWillTransitionToSize:withTransitionCoordinator:]):
3450         (WTR::PlatformWebView::PlatformWebView):
3451         * WebKitTestRunner/ios/TestControllerIOS.mm:
3452         (WTR::TestController::platformResetStateToConsistentValues):
3453         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
3454         (WTR::toUIDeviceOrientation):
3455         (WTR::UIScriptController::simulateRotation):
3456         (WTR::UIScriptController::simulateRotationLikeSafari):
3457         (WTR::UIScriptController::platformClearAllCallbacks):
3458         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3459         (WTR::UIScriptController::simulateRotation):
3460         (WTR::UIScriptController::simulateRotationLikeSafari):
3461
3462 2017-05-05  Jonathan Bedard  <jbedard@apple.com>
3463
3464         Use ImageDiff built by host SDK and remove ImageDiff from DumpRenderTree
3465         https://bugs.webkit.org/show_bug.cgi?id=168945
3466         <rdar://problem/30745695>
3467
3468         Reviewed by David Kilzer.
3469
3470         Use ImageDiff built with the host machine's SDK and stop building ImageDiff with the
3471         target SDK. These two changes must happen simultaneously because some archives will
3472         clobber the ImageDiff from the host SDK with the ImageDiff from the target SDK.
3473
3474         * DumpRenderTree/mac/Configurations/ImageDiff.xcconfig: Remove ImageDiff from project.
3475         * DumpRenderTree/PlatformWin.cmake: Remove ImageDiff. Note that the CMakeLists.txt in the
3476         tools directory still includes ImageDiff.
3477         * DumpRenderTree/cg/ImageDiffCG.cpp: Removed.
3478         * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Removed.
3479         * Scripts/webkitpy/port/darwin.py: 
3480         (DarwinPort._path_to_image_diff): Return the correct path to ImageDiff when building
3481         locally or when running archives.
3482         * Scripts/webkitpy/port/image_diff.py:
3483         (IOSSimulatorImageDiffer): Deleted.
3484         * Scripts/webkitpy/port/ios_simulator.py:
3485         (IOSSimulatorPort.diff_image): Deleted.
3486
3487 2017-05-05  Brian Burg  <bburg@apple.com>
3488
3489         API test WebKit2.WKHTTPCookieStore fails due to possible issue with handling non-session cookies
3490         https://bugs.webkit.org/show_bug.cgi?id=171748
3491
3492         Unreviewed test gardening.
3493
3494         The assertion failure will be investigated separately in order to avoid rolling out
3495         the fix for "secure" cookies. This assertion fails even without r216258 applied.
3496
3497         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3498         (TEST):
3499
3500 2017-05-05  Jonathan Bedard  <jbedard@apple.com>
3501
3502         Unreviewed, rolling out r216260.
3503
3504         Breaks internal iOS testers
3505
3506         Reverted changeset:
3507
3508         "Use ImageDiff built by host SDK and remove ImageDiff from
3509         DumpRenderTree"
3510         https://bugs.webkit.org/show_bug.cgi?id=168945
3511         http://trac.webkit.org/changeset/216260
3512
3513 2017-05-05  Jonathan Bedard  <jbedard@apple.com>
3514
3515         Use ImageDiff built by host SDK and remove ImageDiff from DumpRenderTree
3516         https://bugs.webkit.org/show_bug.cgi?id=168945
3517         <rdar://problem/30745695>
3518
3519         Reviewed by David Kilzer.
3520
3521         Use ImageDiff built with the host machine's SDK and stop building ImageDiff with the
3522         target SDK. These two changes must happen simultaneously because some archives will
3523         clobber the ImageDiff from the host SDK with the ImageDiff from the target SDK.
3524
3525         * DumpRenderTree/mac/Configurations/ImageDiff.xcconfig: Remove ImageDiff from project.
3526         * DumpRenderTree/PlatformWin.cmake: Remove ImageDiff. Note that the CMakeLists.txt in the
3527         tools directory still includes ImageDiff.
3528         * DumpRenderTree/cg/ImageDiffCG.cpp: Removed.
3529         * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig: Removed.
3530         * Scripts/webkitpy/port/darwin.py: 
3531         (DarwinPort._path_to_image_diff): Return the correct path to ImageDiff when building
3532         locally or when running archives.
3533         * Scripts/webkitpy/port/image_diff.py:
3534         (IOSSimulatorImageDiffer): Deleted.
3535         * Scripts/webkitpy/port/ios_simulator.py:
3536         (IOSSimulatorPort.diff_image): Deleted.
3537
3538 2017-05-05  Brian Burg  <bburg@apple.com>
3539
3540         [Cocoa] Converting from WebCore::Cookie to NSHTTPCookie always marks cookies as secure
3541         https://bugs.webkit.org/show_bug.cgi?id=171700
3542         <rdar://problem/32017975>
3543
3544         Reviewed by Brady Eidson.
3545
3546         Fix a mistake in the test that should have caught this bug.
3547
3548         * TestWebKitAPI/Tests/WebKit2Cocoa/WKHTTPCookieStore.mm:
3549         (TEST):
3550         The assertions that were meant to check round-tripping were actually checking
3551         the properties of the original cookie objects, not the round-tripped ones.
3552         This test now fails without the bugfix and passes when it is applied.
3553
3554 2017-05-05  Daniel Bates  <dabates@apple.com>
3555
3556         Use EXPECT_EQ() when comparing strings in TestWebKitAPI tests
3557         https://bugs.webkit.org/show_bug.cgi?id=171698
3558
3559         Reviewed by Darin Adler.
3560
3561         We should use EXPECT_EQ() instead of EXPECT_TRUE() to compare WTF::String() objects
3562         so that we get pretty diff output when the actual string differs from the expected
3563         string as opposed to seeing a boolean result. The former makes makes it straightforward
3564         to diagnose a regression without reading the code for the test or instrumenting it to
3565         determine the actual string that was compared.
3566
3567         * TestWebKitAPI/Tests/WTF/WTFString.cpp:
3568         (TestWebKitAPI::TEST):
3569         * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm:
3570         (TestWebKitAPI::TEST_F):
3571         * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm:
3572         (TestWebKitAPI::TEST_F):
3573
3574 2017-05-05  Chris Dumez  <cdumez@apple.com>
3575
3576         Rename webProcessDidCrashWithReason callback to webProcessDidTerminate and stop calling webProcessDidCrash for client terminations
3577         https://bugs.webkit.org/show_bug.cgi?id=171624
3578
3579         Reviewed by Dan Bernstein.
3580
3581         Extend API test coverage to cover crashes in addition to terminations requested by the client.
3582
3583         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3584         * TestWebKitAPI/Tests/WebKit2/ProcessDidTerminate.cpp: Renamed from Tools/TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp.
3585         (TestWebKitAPI::webProcessWasTerminatedByClient):
3586         (TestWebKitAPI::webProcessCrashed):
3587         (TestWebKitAPI::TEST):
3588
3589 2017-05-04  Mark Lam  <mark.lam@apple.com>
3590
3591         DRT's setAudioResultCallback() and IDBRequest::setResult() need to acquire the JSLock.
3592         https://bugs.webkit.org/show_bug.cgi?id=171716
3593         <rdar://problem/30878027>
3594
3595         Reviewed by Saam Barati.
3596
3597         setAudioResultCallback() needs to acquire the JSLock before calling toJS() (which
3598         does JS conversion and therefore, potentially JS allocations) and accessing
3599         methods of internal JS data structures (which may do JS invocation, etc).
3600
3601         * DumpRenderTree/TestRunner.cpp:
3602         (setAudioResultCallback):
3603
3604 2017-05-05  Jonathan Bedard  <jbedard@apple.com>
3605
3606         buildbot: Cleanup simulators after running tests
3607         https://bugs.webkit.org/show_bug.cgi?id=171679
3608         <rdar://problem/31994361>
3609
3610         Reviewed by Aakash Jain.
3611
3612         We shutdown the simulator process between tests, but in some cases, this is not
3613         sufficient. Explicitly shutdown every booted simulator.
3614
3615         * BuildSlaveSupport/kill-old-processes:
3616         (main): Shutdown all booted simulators.
3617
3618 2017-05-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3619
3620         [GTK] Assertion failure in Inspector::RemoteInspector::setRemoteInspectorClient when disposing WebKitWebContext
3621         https://bugs.webkit.org/show_bug.cgi?id=171644
3622
3623         Reviewed by Michael Catanzaro.
3624
3625         Check that only one WebKitWebContext can have automation enabled.
3626
3627         * TestWebKitAPI/Tests/WebKit2Gtk/TestAutomationSession.cpp:
3628         (testAutomationSessionRequestSession):
3629
3630 2017-05-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3631
3632         [GTK] TestController timeout source callback should return G_SOURCE_REMOVE
3633         https://bugs.webkit.org/show_bug.cgi?id=171724
3634
3635         Reviewed by Michael Catanzaro.
3636
3637         It's currently returning CONTINUE which causes it to be called again even if the run loop has been stopped.
3638
3639         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
3640         (WTR::timeoutSource):
3641
3642 2017-05-05  Carlos Garcia Campos  <cgarcia@igalia.com>
3643
3644         Unreviewed. Fix wrong assert after r215176.
3645
3646         Cairo surface received by computeMD5HashStringForCairoSurface() doesn't need to be ARGB32 since r215176, it
3647         could also be RGB24 when created from a web view snapshot.
3648
3649         * WebKitTestRunner/cairo/TestInvocationCairo.cpp:
3650         (WTR::computeMD5HashStringForCairoSurface):
3651
3652 2017-05-04  Brian Burg  <bburg@apple.com>
3653
3654         lldb_webkit.py should provide a type summary for WebCore::URL
3655         https://bugs.webkit.org/show_bug.cgi?id=171670
3656
3657         Reviewed by Jer Noble.
3658
3659         Just print out the underlying string using the WTFString provider.
3660
3661         * lldb/lldb_webkit.py:
3662         (__lldb_init_module):
3663         (WebCoreURL_SummaryProvider):
3664         (WebCoreURLProvider):
3665         (WebCoreURLProvider.__init__):
3666         (WebCoreURLProvider.to_string):
3667
3668 2017-05-04  Commit Queue  <commit-queue@webkit.org>
3669
3670         Unreviewed, rolling out r216206.
3671         https://bugs.webkit.org/show_bug.cgi?id=171714
3672
3673         Multiple LayoutTests crashing in Document::page() (Requested
3674         by ap on #webkit).
3675
3676         Reverted changeset:
3677
3678         "Remove support for legacy Notifications"
3679         https://bugs.webkit.org/show_bug.cgi?id=171487
3680         http://trac.webkit.org/changeset/216206
3681
3682 2017-05-04  Mark Lam  <mark.lam@apple.com>
3683
3684         API test WTF.StaticStringImpl crashing in TestWebKitAPI::WTF_StaticStringImpl_Test::TestBody() + 3188
3685         https://bugs.webkit.org/show_bug.cgi?id=171702
3686
3687         Reviewed by Filip Pizlo.
3688
3689         The test was supposed to use the MAKE_STATIC_STRING_IMPL macro.  I had previously
3690         changed it to instantiate an automatic StaticStringImpl (i.e. stack allocated) to
3691         confirm that the test will detect a regression.  Unfortunately, I forgot to
3692         change it back to using MAKE_STATIC_STRING_IMPL before I landed the test.
3693         This patch fixes that.
3694
3695         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
3696         (TestWebKitAPI::neverDestroyedString):
3697
3698 2017-05-04  Ryan Haddad  <ryanhaddad@apple.com>
3699
3700         Disable failing API test WebKit2.ResizeWithHiddenContentDoesNotHang.
3701         https://bugs.webkit.org/show_bug.cgi?id=170195
3702
3703         Unreviewed test gardening.
3704
3705         * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
3706         (TEST):
3707
3708 2017-05-04  Don Olmstead  <don.olmstead@am.sony.com>
3709
3710         [Win] Remove redundant macros that are set in the CMake config
3711         https://bugs.webkit.org/show_bug.cgi?id=171571
3712
3713         Reviewed by Brent Fulgham.
3714
3715         * DumpRenderTree/config.h:
3716         * MiniBrowser/win/stdafx.h:
3717         * TestWebKitAPI/config.h:
3718
3719 2017-05-04  Said Abou-Hallawa  <sabouhallawa@apple.com>
3720
3721         Add testRunner.display() to force displaying the web page for testing
3722         https://bugs.webkit.org/show_bug.cgi?id=171694
3723
3724         Reviewed by Simon Fraser.
3725
3726         Unlike testRunner.displayAndTrackRepaints(), this new function forces 
3727         drawing the web page but without track repaints.
3728
3729         * DumpRenderTree/TestRunner.cpp:
3730         (displayCallback):
3731         (TestRunner::staticFunctions):
3732         * DumpRenderTree/TestRunner.h:
3733         * DumpRenderTree/mac/TestRunnerMac.mm:
3734         (TestRunner::display):
3735         * DumpRenderTree/win/TestRunnerWin.cpp:
3736         (TestRunner::display):
3737         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3738         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3739         (WTR::TestRunner::display):
3740         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3741
3742 2017-05-04  Mark Lam  <mark.lam@apple.com>
3743
3744         NeverDestroyed<String>(ASCIILiteral(...)) is not thread safe.
3745         https://bugs.webkit.org/show_bug.cgi?id=171586
3746         <rdar://problem/31873190>
3747
3748         Reviewed by Yusuke Suzuki.
3749
3750         API test for exercising StaticStringImpl and the MAKE_STATIC_STRING_IMPL macro.
3751
3752         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
3753         (TestWebKitAPI::neverDestroyedString):
3754         (TestWebKitAPI::getNeverDestroyedStringAtStackDepth):
3755         (TestWebKitAPI::TEST):
3756
3757 2017-05-04  Wenson Hsieh  <wenson_hsieh@apple.com>
3758
3759         [WK2] Add support for keeping the selection in a focused editable element when dragging begins
3760         https://bugs.webkit.org/show_bug.cgi?id=171585
3761         <rdar://problem/31544320>
3762
3763         Reviewed by Beth Dakin and Zalan Bujtas.
3764
3765         Adds 1 new unit test and tweaks existing tests to check that when first responder status is lost after beginning
3766         a drag while editing, content is still moved (and not copied) when performing data interaction on a different
3767         element. ContentEditableMoveParagraphs checks that content can be shifted within a single element via a move
3768         operation rather than a copy.
3769
3770         See WebCore ChangeLog for more details.
3771
3772         Tests:  DataInteractionSimulator.ContentEditableToContentEditable
3773                 DataInteractionSimulator.ContentEditableToTextarea
3774                 DataInteractionSimulator.ContentEditableMoveParagraphs
3775                 DataInteractionSimulator.TextAreaToInput
3776
3777         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3778         * TestWebKitAPI/Tests/WebKit2Cocoa/two-paragraph-contenteditable.html: Added.
3779         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3780         (TestWebKitAPI::TEST):
3781         * TestWebKitAPI/ios/DataInteractionSimulator.h:
3782         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
3783         (-[DataInteractionSimulator initWithWebView:]):
3784         (-[DataInteractionSimulator dealloc]):
3785         (-[DataInteractionSimulator _advanceProgress]):
3786         (-[DataInteractionSimulator waitForInputSession]):
3787         (-[DataInteractionSimulator _webView:focusShouldStartInputSession:]):
3788         (-[DataInteractionSimulator _webView:didStartInputSession:]):
3789
3790 2017-05-04  Said Abou-Hallawa  <sabouhallawa@apple.com>
3791
3792         Rename TestRunner.display() to TestRunner::displayAndTrackRepaints()
3793         https://bugs.webkit.org/show_bug.cgi?id=171641
3794
3795         Reviewed by Simon Fraser.
3796
3797         The plan is to add back the TestRunner.display() which does the display
3798         only without track repaints.
3799
3800         * DumpRenderTree/DumpRenderTree.h:
3801         * DumpRenderTree/TestRunner.cpp:
3802         (displayAndTrackRepaintsCallback):
3803         (TestRunner::staticFunctions):
3804         (displayCallback): Deleted.
3805         (displayInvalidatedRegionCallback): Deleted.
3806         * DumpRenderTree/TestRunner.h:
3807         * DumpRenderTree/mac/DumpRenderTree.mm:
3808         (displayWebView):
3809         (displayAndTrackRepaintsWebView):
3810         * DumpRenderTree/mac/TestRunnerMac.mm:
3811         (TestRunner::displayAndTrackRepaints):
3812         (TestRunner::display): Deleted.
3813         * DumpRenderTree/win/TestRunnerWin.cpp:
3814         (TestRunner::displayAndTrackRepaints):
3815         (TestRunner::display): Deleted.
3816         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3817         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3818         (WTR::TestRunner::displayAndTrackRepaints):
3819         (WTR::TestRunner::display): Deleted.
3820         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3821
3822 2017-05-04  Brady Eidson  <beidson@apple.com>
3823
3824         [ios-simulator] API test WebKit2.WebsiteDataStoreCustomPaths is failing.
3825         https://bugs.webkit.org/show_bug.cgi?id=171513
3826
3827         Unreviewed gardening.
3828
3829         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
3830         (TEST): Skip the failing parts of the test on iOS for now.
3831
3832 2017-05-03  Jonathan Bedard  <jbedard@apple.com>
3833
3834         Make ImageDiff stand-alone
3835         https://bugs.webkit.org/show_bug.cgi?id=168939
3836
3837         Reviewed by David Kilzer.
3838
3839         Create ImageDiff without dependencies on bmalloc and WTF so that it exists as a
3840         stand-alone project. Note that this change does not eliminate the ImageDiff inside
3841         the DumpRenderTree project.
3842
3843         * ImageDiff/ImageDiff.xcodeproj: Added.
3844         * ImageDiff/ImageDiff.xcodeproj/project.pbxproj: Added.
3845         * ImageDiff/Makefile: Use ImageDiff project.
3846         * ImageDiff/PlatformMac.cmake: Added.
3847         * ImageDiff/PlatformWin.cmake: Added.
3848         * ImageDiff/cg: Added.
3849         * ImageDiff/cg/Configurations: Added.
3850         * ImageDiff/cg/Configurations/Base.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/Base.xcconfig.
3851         * ImageDiff/cg/Configurations/DebugRelease.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/DebugRelease.xcconfig.
3852         * ImageDiff/cg/Configurations/ImageDiff.xcconfig: Copied from Tools/DumpRenderTree/mac/Configurations/ImageDiff.xcconfig.
3853         * ImageDiff/cg/ImageDiff.cpp: Copied from Tools/DumpRenderTree/cg/ImageDiffCG.cpp.
3854         (createImageFromStdin): Stop using RetainPtr.
3855         (createDifferenceImage): Ditto.
3856         (main): Ditto.
3857         * Scripts/build-imagediff: Stop building WTF and bmalloc.
3858
3859 2017-05-04  Sam Weinig  <sam@webkit.org>
3860
3861         Remove support for legacy Notifications
3862         https://bugs.webkit.org/show_bug.cgi?id=171487
3863
3864         Reviewed by Jon Lee.
3865
3866         * DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:
3867         (DRTDesktopNotificationPresenter::checkNotificationPermission):
3868         * Scripts/webkitperl/FeatureList.pm:
3869         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3870         Remove use and definition of ENABLE_LEGACY_NOTIFICATIONS.
3871
3872 2017-05-04  Andy Estes  <aestes@apple.com>
3873
3874         Give +testwebkitapi_configurationWithTestPlugInClassName: a shorter name
3875         https://bugs.webkit.org/show_bug.cgi?id=171673
3876
3877         Reviewed by Dan Bernstein.
3878
3879         * TestWebKitAPI/Tests/WebKit2Cocoa/AdditionalReadAccessAllowedURLs.mm:
3880         (TEST):
3881         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleEditingDelegate.mm:
3882         (TEST):
3883         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleParameters.mm:
3884         (TEST):
3885         * TestWebKitAPI/Tests/WebKit2Cocoa/BundleRangeHandle.mm:
3886         (TEST):
3887         * TestWebKitAPI/Tests/WebKit2Cocoa/CancelFontSubresource.mm:
3888         (TEST):
3889         * TestWebKitAPI/Tests/WebKit2Cocoa/ContentFiltering.mm:
3890         (configurationWithContentFilterSettings):
3891         (-[LazilyLoadPlatformFrameworksController init]):
3892         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
3893         (TEST):
3894         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
3895         (runTestWithWidth):
3896         * TestWebKitAPI/Tests/WebKit2Cocoa/UserContentWorld.mm:
3897         (TEST):
3898         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3899         (TestWebKitAPI::TEST):
3900         * TestWebKitAPI/WKWebViewConfigurationExtras.h:
3901         * TestWebKitAPI/WKWebViewConfigurationExtras.mm:
3902         (+[WKWebViewConfiguration _test_configurationWithTestPlugInClassName:]):
3903         (+[WKWebViewConfiguration testwebkitapi_configurationWithTestPlugInClassName:]): Renamed to
3904         +_test_configurationWithTestPlugInClassName:
3905
3906 2017-05-04  Eric Carlson  <eric.carlson@apple.com>
3907
3908         [MediaStream] Allow host application to enable/disable media capture
3909         https://bugs.webkit.org/show_bug.cgi?id=171292
3910         <rdar://problem/31821492>
3911
3912         Reviewed by Jer Noble.
3913
3914         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3915         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
3916         (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
3917         (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
3918         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
3919         (MediaCaptureDisabledTest::SetUp):
3920         (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
3921         (TEST_F):
3922         * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
3923
3924 2017-05-04  Caio Lima  <ticaiolima@gmail.com>
3925
3926         Unreviewed, Adding self to contributors.json
3927
3928         * Scripts/webkitpy/common/config/contributors.json: Added name.
3929
3930 2017-05-04  Konstantin Tokarev  <annulen@yandex.ru>
3931
3932         Fix compilation with ICU 59.1
3933         https://bugs.webkit.org/show_bug.cgi?id=171612
3934
3935         Reviewed by Mark Lam.
3936
3937         ICU 59.1 has broken source compatibility. Now it defines UChar as
3938         char16_t, which does not allow automatic type conversion from unsigned
3939         short in C++ code.
3940
3941         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
3942         (UIScriptContext::tryToCompleteUIScriptForCurrentParentCallback):
3943
3944 2017-05-04  Andy Estes  <aestes@apple.com>
3945
3946         [Cocoa] Add an optional width parameter to -[WKWebProcessPlugInNodeHandle renderedImageWithOptions:]
3947         https://bugs.webkit.org/show_bug.cgi?id=171646
3948         <rdar://problem/30306321>
3949
3950         Reviewed by Tim Horton.
3951
3952         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptions.mm:
3953         (runTestWithWidth):
3954         (TEST):
3955         (-[RenderedImageWithOptionsObject didRenderImageWithSize:]): Deleted.
3956         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsPlugIn.mm:
3957         (-[RenderedImageWithOptionsPlugIn webProcessPlugIn:didCreateBrowserContextController:]):
3958         (-[RenderedImageWithOptionsPlugIn webProcessPlugInBrowserContextController:didFinishLoadForFrame:]):
3959         (-[RenderedImageWithOptionsPlugIn renderImageWithWidth:completionHandler:]):
3960         * TestWebKitAPI/Tests/WebKit2Cocoa/RenderedImageWithOptionsProtocol.h:
3961
3962 2017-05-04  Adrian Perez de Castro  <aperez@igalia.com>
3963
3964         [GTK] Fontconfig 2.11.2 in JHBuild does not build with glibc 2.25+ or gperf 3.1+
3965         https://bugs.webkit.org/show_bug.cgi?id=171649
3966
3967         Reviewed by Carlos Garcia Campos.
3968
3969         Add two patches picked from the upstream repository to fix building of
3970         the Fontconfig module in JHBuild. Additionally, this needed a patch to
3971         add "autogen.sh" as it is not included in release tarballs. Also:
3972         building the module with srcdir!=builddir prevents "fcobjshash.gperf"
3973         being regenerated (which is needed) so this is disabled for the
3974         Fontconfig module.
3975
3976         * gtk/jhbuild.modules:
3977         * gtk/patches/fontconfig-2.11.1-add-autogen.patch: Added.
3978         * gtk/patches/fontconfig-Avoid-conflicts-with-integer-width-macros-from-TS-18661-1-2014.patch: Added.
3979         * gtk/patches/fontconfig-Fix-the-build-issue-with-gperf-3.1.patch: Added.
3980
3981 2017-05-04  Commit Queue  <commit-queue@webkit.org>
3982
3983         Unreviewed, rolling out r216172.
3984         https://bugs.webkit.org/show_bug.cgi?id=171654
3985
3986         FTBFS for iOS due to missing WebPageProxy::stopMediaCapture()
3987         implementation. (Requested by ddkilzer on #webkit).
3988
3989         Reverted changeset:
3990
3991         "[MediaStream] Allow host application to enable/disable media
3992         capture"
3993         https://bugs.webkit.org/show_bug.cgi?id=171292
3994         http://trac.webkit.org/changeset/216172
3995
3996 2017-05-04  Carlos Garcia Campos  <cgarcia@igalia.com>
3997
3998         [GTK] Bump GStreamer version to 1.10.4 in jhbuild
3999         https://bugs.webkit.org/show_bug.cgi?id=171595
4000
4001         Reviewed by Xabier Rodriguez-Calvar.
4002
4003         * gtk/jhbuild.modules:
4004         * gtk/patches/gst-plugins-bad-0001-dtls-port-to-OpenSSL-1.1.0.patch: Removed.
4005         * gtk/patches/gst-plugins-bad-0002-dtlscertificate-Fix-error-checking-in-RSA_generate_k.patch: Removed.
4006         * gtk/patches/gst-plugins-good-0001-rtpbin-pipeline-gets-an-EOS-when-any-rtpsources-byes.patch: Removed.
4007         * gtk/patches/gst-plugins-good-0002-rtpbin-avoid-generating-errors-when-rtcp-messages-ar.patch: Removed.
4008         * gtk/patches/gst-plugins-good-0004-qtdemux-add-context-for-a-preferred-protection.patch:
4009         * gtk/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
4010         * gtk/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
4011
4012 2017-05-03  Saam Barati  <sbarati@apple.com>
4013
4014         How we build polymorphic cases is wrong when making a call from Wasm
4015         https://bugs.webkit.org/show_bug.cgi?id=171527
4016
4017         Reviewed by JF Bastien.
4018
4019         * Scripts/run-jsc-stress-tests:
4020
4021 2017-05-03  Eric Carlson  <eric.carlson@apple.com>
4022
4023         [MediaStream] Allow host application to enable/disable media capture
4024         https://bugs.webkit.org/show_bug.cgi?id=171292
4025         <rdar://problem/31821492>
4026
4027         Reviewed by Jer Noble.
4028
4029         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4030         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
4031         (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
4032         (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
4033         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
4034         (MediaCaptureDisabledTest::SetUp):
4035         (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
4036         (TEST_F):
4037         * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
4038
4039 2017-05-03  John Wilander  <wilander@apple.com>
4040
4041         Resource Load Statistics: Remove all statistics for modifiedSince website data removals
4042         https://bugs.webkit.org/show_bug.cgi?id=171584
4043         <rdar://problem/24702576>
4044
4045         Reviewed by Brent Fulgham.
4046
4047         New function to call the clear function that takes a modifiedSince parameter.
4048
4049         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
4050         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4051         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
4052         * WebKitTestRunner/InjectedBundle/TestRunner.h:
4053         * WebKitTestRunner/TestController.cpp:
4054         (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
4055         * WebKitTestRunner/TestController.h:
4056         * WebKitTestRunner/TestInvocation.cpp:
4057         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
4058
4059 2017-05-03  Commit Queue  <commit-queue@webkit.org>
4060
4061         Unreviewed, rolling out r216160 and r216161.
4062         https://bugs.webkit.org/show_bug.cgi?id=171640
4063
4064         These changes broke the iOS build. (Requested by mlewis13 on
4065         #webkit).
4066
4067         Reverted changesets:
4068
4069         "[MediaStream] Allow host application to enable/disable media
4070         capture"
4071         https://bugs.webkit.org/show_bug.cgi?id=171292
4072         http://trac.webkit.org/changeset/216160
4073
4074         "[MediaStream] Allow host application to enable/disable media
4075         capture"
4076         https://bugs.webkit.org/show_bug.cgi?id=171292
4077         http://trac.webkit.org/changeset/216161
4078
4079 2017-05-03  Eric Carlson  <eric.carlson@apple.com>
4080
4081         [MediaStream] Allow host application to enable/disable media capture
4082         https://bugs.webkit.org/show_bug.cgi?id=171292
4083         <rdar://problem/31821492>
4084
4085         Reviewed by Jer Noble.
4086
4087         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4088         * TestWebKitAPI/Tests/WebKit2Cocoa/UserMediaDisabled.mm: Added.
4089         (-[UserMediaMessageHandler userContentController:didReceiveScriptMessage:]):
4090         (-[UserMediaUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
4091         (-[UserMediaUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
4092         (MediaCaptureDisabledTest::SetUp):
4093         (MediaCaptureDisabledTest::loadTestAndWaitForMessage):
4094         (TEST_F):
4095         * TestWebKitAPI/Tests/WebKit2Cocoa/disableGetUserMedia.html: Added.
4096
4097 2017-04-26  Jiewen Tan  <jiewen_tan@apple.com>
4098
4099         [WebCrypto] Add an api test for testing wrapping/unwrapping serialized crypto keys
4100         https://bugs.webkit.org/show_bug.cgi?id=171350
4101         <rdar://problem/28600836>
4102
4103         Patched by Brady Eidson.
4104
4105         Reviewed by Brent Fulgham.
4106
4107         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4108         * TestWebKitAPI/Tests/WebKit2/NavigationClientDefaultCrypto.cpp: Added.
4109         (TestWebKitAPI::runJavaScriptAlert):
4110         (TestWebKitAPI::decidePolicyForNavigationAction):
4111         (TestWebKitAPI::decidePolicyForNavigationResponse):
4112         (TestWebKitAPI::TEST):
4113         * TestWebKitAPI/Tests/WebKit2/navigation-client-default-crypto.html: Added.
4114
4115 2017-05-03  Simon Fraser  <simon.fraser@apple.com>
4116
4117         Have WKWebView call _updateVisibleContentRects for the current transaction if possible, rather than always delaying
4118         https://bugs.webkit.org/show_bug.cgi?id=171619
4119         https://bugs.webkit.org/show_bug.cgi?id=170195
4120
4121         Reviewed by Tim Horton.
4122
4123         Re-enable WebKit2.ResizeWithHiddenContentDoesNotHang.
4124
4125         * TestWebKitAPI/Tests/WebKit2Cocoa/AnimatedResize.mm:
4126         (TEST):
4127
4128 2017-05-03  Michael Catanzaro  <mcatanzaro@igalia.com>
4129
4130         YouTube user agent quirk breaks new YouTube
4131         https://bugs.webkit.org/show_bug.cgi?id=171603
4132
4133         Reviewed by Carlos Garcia Campos.
4134
4135         Remove the YouTube quirk test.
4136
4137         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
4138         (TestWebKitAPI::TEST):
4139
4140 2017-05-03  Said Abou-Hallawa  <sabouhallawa@apple.com>
4141
4142         Async image decoding should be disabled for snapshots, printing and preview
4143         https://bugs.webkit.org/show_bug.cgi?id=171467
4144
4145         Reviewed by Simon Fraser.
4146
4147         Add a API test for snapshotting with large images. Ensure the images are
4148         drawn correctly which implies they should have been synchronously decoded.
4149
4150         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4151         * TestWebKitAPI/Tests/WebKit2/large-red-square-image.html: Added.
4152         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewSnapshot.mm:
4153         (TEST):
4154
4155 2017-05-03  Chris Dumez  <cdumez@apple.com>
4156
4157         [WK2] Extend processDidCrash delegate to let the client know the reason for the crash
4158         https://bugs.webkit.org/show_bug.cgi?id=171565
4159         <rdar://problem/31204417>
4160
4161         Reviewed by Sam Weinig.
4162
4163         Add API test coverage.
4164
4165         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4166         * TestWebKitAPI/Tests/WebKit2/ProcessDidCrashWithReason.cpp: Added.
4167         (TestWebKitAPI::didFinishNavigation):
4168         (TestWebKitAPI::didCrashWithReason):
4169         (TestWebKitAPI::TEST):
4170
4171 2017-05-02  David Kilzer  <ddkilzer@apple.com>
4172
4173         check-webkit-style should also keep js-test-post[-async].js in sync
4174         <https://webkit.org/b/171568>
4175
4176         Reviewed by Joseph Pecoraro.
4177
4178         * Scripts/webkitpy/style/checker.py:
4179         (_NEVER_SKIPPED_JS_FILES): Add new list that just contains
4180         JavaScript files not to be skipped.
4181         (_NEVER_SKIPPED_FILES): Update to use _NEVER_SKIPPED_JS_FILES.
4182         (CheckerDispatcher._create_checker): Update to use
4183         _NEVER_SKIPPED_JS_FILES.
4184
4185         * Scripts/webkitpy/style/checkers/jstest.py:
4186         (ALL_JS_TEST_FUNCTION_FILES): Rename from ALL_JS_TEST_FILES.
4187         This is the list of files containing functions that need to be
4188         kept in sync.
4189         (KEEP_JS_TEST_FILES_IN_SYNC): Change to list-of-lists format so
4190         we can keep more sets of files in sync between
4191         LayoutTests/resources and LayoutTests/http/tests/resources.
4192         (JSTestChecker.check): Update to use KEEP_JS_TEST_FILES_IN_SYNC
4193         as list of lists.  Update for ALL_JS_TEST_FUNCTION_FILES rename.
4194         (JSTestChecker.check_js_test_files): Add 'file_group' argument
4195         for list of files to check instead of using
4196         KEEP_JS_TEST_FILES_IN_SYNC.
4197         (JSTestChecker.check_js_test_functions): Update for
4198         ALL_JS_TEST_FUNCTION_FILES rename.
4199
4200         * Scripts/webkitpy/style/checkers/jstest_unittest.py:
4201         (JSTestCheckerTestCase):
4202         (JSTestCheckerTestCase.test_map_functions_to_dict):
4203         - Add test case for map_functions_to_dict() in jstest.py.
4204
4205 2017-05-02  Aakash Jain  <aakash_jain@apple.com>
4206
4207         ews should indicate in logs when it fails to fetch the attachment
4208         https://bugs.webkit.org/show_bug.cgi?id=171583
4209
4210         Reviewed by Alexey Proskuryakov.
4211
4212         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
4213         (Bugzilla.fetch_attachment): Added log statement.
4214
4215 2017-05-02  David Kilzer  <ddkilzer@apple.com>
4216
4217         Rolling out jstest_unittest.py so it can be reviewed
4218
4219         Follow-up fix for:
4220         check-webkit-style should keep JavaScript test functions in sync
4221         <https://webkit.org/b/171424>
4222
4223         * Scripts/webkitpy/style/checkers/jstest_unittest.py: Remove.
4224
4225 2017-05-02  David Kilzer  <ddkilzer@apple.com>
4226
4227         check-webkit-style should keep JavaScript test functions in sync
4228         <https://webkit.org/b/171424>
4229
4230         Reviewed by Joseph Pecoraro.
4231
4232         Add a new JSTestChecker for check-webkit-style that keeps these
4233         two files in sync:
4234
4235             LayoutTests/http/tests/resources/js-test-pre.js
4236             LayoutTests/resources/js-test-pre.js
4237
4238         And keeps implementations of shouldBe(), shouldNotBe(),
4239         shouldNotThrow(), and shouldThrow() in sync across multiple
4240         files (with the ability to add more functions later):
4241
4242             JSTests/stress/resources/standalone-pre.js
4243             LayoutTests/http/tests/resources/js-test-pre.js
4244             LayoutTests/resources/js-test-pre.js
4245             LayoutTests/resources/js-test.js
4246             LayoutTests/resources/standalone-pre.js
4247
4248         * Scripts/webkitpy/style/checker.py: Remove unused import.  Add
4249         import for JSTestChecker.
4250         (_NEVER_SKIPPED_FILES): Add array of file names that are never
4251         skipped regardless of other rules.
4252         (_all_categories): Add JSTestChecker categories.
4253         (CheckerDispatcher.should_skip_without_warning): Use
4254         _NEVER_SKIPPED_FILES.
4255         (CheckerDispatcher._create_checker): Return JSTestChecker for
4256         the files to check.
4257
4258         * Scripts/webkitpy/style/checkers/jstest.py: Add.
4259         (map_functions_to_dict): Parse JavaScript source by splitting on
4260         /^function\s+/ regex.  This is good enough for the sanity checks
4261         to keep function implementations in sync.
4262         (strip_blank_lines_and_comments): Strips blank lines and lines
4263         with comments from the end of a chunk of text representing a
4264         function.
4265         (JSTestChecker): New checker.
4266         (JSTestChecker.__init__):
4267         (JSTestChecker.check):
4268         (JSTestChecker.check_js_test_files): Keeps whole files in sync.
4269         (JSTestChecker.check_js_test_functions): Keeps individual
4270         functions in sync.
4271