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