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