[GTK] install-dependencies needs to install Perl CGI modules on Debian based distros
[WebKit-https.git] / Tools / ChangeLog
1 2017-03-13  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2
3         [GTK] install-dependencies needs to install Perl CGI modules on Debian based distros
4         https://bugs.webkit.org/show_bug.cgi?id=169563
5
6         Reviewed by Michael Catanzaro.
7
8         * gtk/install-dependencies:
9
10 2017-03-13  Devin Rousso  <webkit@devinrousso.com>
11
12         Unreviewed, fix accidental comma.
13
14         * Scripts/webkitpy/common/config/contributors.json:
15
16 2017-03-13  Devin Rousso  <webkit@devinrousso.com>
17
18         Unreviewed, change my email.
19
20         * Scripts/webkitpy/common/config/contributors.json:
21
22 2017-03-13  Anders Carlsson  <andersca@apple.com>
23
24         Fix build warnings.
25
26         * MiniBrowser/mac/AppDelegate.m:
27         (-[BrowserAppDelegate openDocument:]):
28         * MiniBrowser/mac/ExtensionManagerWindowController.m:
29         (-[ExtensionManagerWindowController add:]):
30         * MiniBrowser/mac/WK2BrowserWindowController.m:
31         (-[WK2BrowserWindowController webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
32
33 2017-03-13  Martin Robinson  <mrobinson@igalia.com>
34
35         Remove my email from some of the watchlists
36         https://bugs.webkit.org/show_bug.cgi?id=169541
37
38         Reviewed by Manuel Rego Casasnovas.
39
40         * Scripts/webkitpy/common/config/watchlist: Remove my name from some lists.
41
42 2017-03-13  Yusuke Suzuki  <utatane.tea@gmail.com>
43
44         [WTF] Clean up RunLoop and WorkQueue with Seconds and Function
45         https://bugs.webkit.org/show_bug.cgi?id=169537
46
47         Reviewed by Sam Weinig.
48
49         * TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
50         (TestWebKitAPI::TEST):
51
52 2017-03-13  Carlos Alberto Lopez Perez  <clopez@igalia.com>
53
54         [GTK] Remove dead code from previous autotools build in build-jsc
55         https://bugs.webkit.org/show_bug.cgi?id=169555
56
57         Reviewed by Carlos Garcia Campos.
58
59         * Scripts/build-jsc:
60         (buildMyProject):
61
62 2017-03-13  Carlos Garcia Campos  <cgarcia@igalia.com>
63
64         MiniBrowser: a tab closed from javascript always closes the window
65         https://bugs.webkit.org/show_bug.cgi?id=169415
66
67         Reviewed by Michael Catanzaro.
68
69         When I implemented tabs support in MiniBrowser I forgot about web view close. We connect to the signal (only for
70         the active tab) and close the window. That worked when we didn't have tabs, but now we should close the tab, or
71         the window if it's the last tab.
72
73         * MiniBrowser/gtk/BrowserWindow.c:
74         (webViewClose): Destroy the window if therte's only one tab, otherwise search for the tab corresponding to the web
75         view and destroy it.
76         (browserWindowSwitchTab): Re-connect to close signal, we want to handle close on all tabs.
77
78 2017-03-11  Said Abou-Hallawa  <sabouhallawa@apple.com>
79
80         Enable async image decoding for large images
81         https://bugs.webkit.org/show_bug.cgi?id=165039
82
83         Reviewed by Simon Fraser.
84
85         Disable LargeImageAsyncDecoding for DRT/WTR.
86
87         * DumpRenderTree/mac/DumpRenderTree.mm:
88         (resetWebPreferencesToConsistentValues):
89         * WebKitTestRunner/TestController.cpp:
90         (WTR::TestController::resetPreferencesToConsistentValues):
91
92 2017-03-10  Alex Christensen  <achristensen@webkit.org>
93
94         Fix watch and tv builds after r213294
95         https://bugs.webkit.org/show_bug.cgi?id=169508
96
97         Reviewed by Dan Bernstein.
98
99         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
100
101 2017-03-10  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
102
103         checkpatchrelevance: Exception message is printed twice due to ScriptError handler
104         https://bugs.webkit.org/show_bug.cgi?id=169496
105
106         Unreviewed fix.
107
108         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: Add --quiet flag to expected logs.
109
110 2017-03-10  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
111
112         checkpatchrelevance: Exception message is printed twice due to ScriptError handler
113         https://bugs.webkit.org/show_bug.cgi?id=169496
114
115         Reviewed by Alexey Proskuryakov.
116
117         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
118         (PatchAnalysisTask._check_patch_relevance): Pass --quiet flag.
119         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
120         (CheckPatchRelevance.options): Accept options.quiet to prevent duplicate output to stdout.
121
122 2017-03-10  Ryan Haddad  <ryanhaddad@apple.com>
123
124         Add new EWS queues to bot watcher's dashboard.
125         https://bugs.webkit.org/show_bug.cgi?id=169485
126
127         Reviewed by Alexey Proskuryakov.
128
129         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
130         (BubbleQueueServer): Add Bindings and JSC EWS queues.
131
132 2017-03-10  Andy Estes  <aestes@apple.com>
133
134         Skip an API test that isn't expected to pass on iOS 10.
135
136         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
137
138 2017-03-10  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
139
140         Add bindings-ews to queue status server
141         https://bugs.webkit.org/show_bug.cgi?id=169307
142
143         Reviewed by Alexey Proskuryakov.
144
145         * QueueStatusServer/config/queues.py: Add "bindings-ews" to the list of ewses.
146
147 2017-03-10  Andy Estes  <aestes@apple.com>
148
149         [QuickLook] Add WKNavigationDelegate SPI to notify when a password is requested
150         https://bugs.webkit.org/show_bug.cgi?id=169459
151         <rdar://problem/30621913>
152
153         Reviewed by Alex Christensen.
154
155         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
156         * TestWebKitAPI/Tests/WebKit2Cocoa/QuickLook.mm:
157         (runTest):
158         (TEST):
159         (-[QuickLookPasswordNavigationDelegate _webViewDidRequestPasswordForQuickLookDocument:]):
160
161 2017-03-10  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
162
163         Add support for Bindings EWS
164         https://bugs.webkit.org/show_bug.cgi?id=169308
165
166         Reviewed by Alexey Proskuryakov.
167
168         * Scripts/webkitpy/common/config/ews.json: Add bindings-ews. Can test without building; should_build = False.
169         * Scripts/webkitpy/common/net/bindingstestresults.py:
170         (BindingsTestResults.__init__): Removed 'errors'.
171         (BindingsTestResults.results_from_string): Ditto.
172         (BindingsTestResults.is_subset): Ditto.
173         (BindingsTestResults.equals): Ditto.
174         (BindingsTestResults.all_passed): Ditto.
175         (BindingsTestResults.failing_tests): Ditto.
176         * Scripts/webkitpy/common/net/bindingstestresults_unittest.py:
177         (BindingsTestResultsTest.test_results_from_string): Removed 'errors'.
178         (BindingsTestResultsTest.test_results_from_string_success): Removed 'errors'.
179         * Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
180         (EarlyWarningSystemTask.__init__): Add should_build parameter.
181         (EarlyWarningSystemTask.run): Check should_build before calling self._build().
182         * Scripts/webkitpy/tool/bot/retrylogic_unittest.py: Renamed from Tools/Scripts/webkitpy/tool/bot/jscews_unittest.py.
183         (MockBindingsEarlyWarningSystem): Based of MockJSCEarlyWarningSystem. Mocked so we can provide test results.
184         (MockBindingsEarlyWarningSystem.__init__): Sets attributes.
185         (MockBindingsEarlyWarningSystem.test_results): Returns test results provided by us, instead of JSON output.
186         (BindingsEarlyWarningSystemTest): Class to test retry logic in below situations.
187         (BindingsEarlyWarningSystemTest._results_indicate_all_passed): False if None or or has failures, else True.
188         (BindingsEarlyWarningSystemTest._create_task):
189         (BindingsEarlyWarningSystemTest.test_success_case): Clean patch on clean tree.
190         (BindingsEarlyWarningSystemTest.test_test_failure): Red patch on clean tree.
191         (BindingsEarlyWarningSystemTest.test_fix): Clean patch on red tree.
192         (BindingsEarlyWarningSystemTest.test_ineffective_patch): Red patch on red tree.
193         (BindingsEarlyWarningSystemTest.test_partially_effective_patch): Red patch on redder tree.
194         (BindingsEarlyWarningSystemTest.test_different_test_failures_in_patch_and_tree): Red patch on red tree.
195         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
196         (PatchAnalysisTask._build_and_test_without_patch): Don't build if should_build is False (eg. on Bindings EWS).
197         (PatchAnalysisTask._retry_bindings_tests): Retry logic for Bindings tests.
198         (PatchAnalysisTask._test_patch): If tests failed on Bindings EWS, and call _retry_bindings_tests.
199         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
200         (AbstractEarlyWarningSystem.begin_work_queue): Use BindingsTestResultsReader on Bindings EWS.
201         (AbstractEarlyWarningSystem._create_task): Pass should_build argument.
202         (AbstractEarlyWarningSystem.load_ews_classes): Add should_build argument (True by default).
203         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
204         (TestBindingsEWS): Bindings EWS class, derived from AbstractEarlyWarningSystem.
205         (AbstractEarlyWarningSystemTest.test_failing_bindings_tests_message): Unit test message posted to Bugzilla.
206         (EarlyWarningSystemTest._default_expected_logs): Not building on all ewses anymore; make build line optional.
207         (EarlyWarningSystemTest.test_ews_name): Add bindings-ews.
208         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
209         (CheckPatchRelevance): Add bindings paths.
210         (CheckPatchRelevance._changes_are_relevant): Cleaner way to check if we should perform this step.
211         * Scripts/webkitpy/tool/steps/steps_unittest.py: Add unit tests for Bindings EWS patch relevance.
212         (test_patch_relevant_bindings): Test for patch relevant to bindings.
213         (test_patch_not_relevant_bindings): Test for patch not relevant to bindings.
214
215 2017-03-09  Simon Fraser  <simon.fraser@apple.com>
216
217         [iOS WK2] Layer content blurry with nested perspective and transforms
218         https://bugs.webkit.org/show_bug.cgi?id=169457
219         rdar://problem/29879484
220
221         Reviewed by Tim Horton.
222
223         We set rasterizationScale on CALayers to the same values as contentsScale, to
224         avoid blurry layers when CA rasterizes, which often happens with nested perspective
225         transforms.
226
227         However, in UI-side compositing, if the page is not zoomed, we never applied the
228         rasterizationScale in the UI process. This happened because the PlatformCALayerRemote
229         constructor set m_properties.contentsScale, but did not set the dirty bit that
230         triggers the application of contentsScale and rasterizationScale in RemoteLayerTreePropertyApplier.
231         The fix is to set this dirty bit.
232
233         The rest of the changes are for testing. Internals now exposes layerIDForElement()
234         for returns an internal (non-stable-across-loads) layerID, which can be passed
235         to UIScriptController.propertiesOfLayerWithID() in the UI process, which inspects
236         the built layer (UIView) hierarchy. propertiesOfLayerWithID() returns a dictionary
237         which the test can dump as JSON, or pull values out of.
238
239         A few #pragma once cleanups also.
240
241         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
242         (WTR::UIScriptController::propertiesOfLayerWithID):
243         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
244         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
245         (WTR::UIScriptController::propertiesOfLayerWithID):
246         * TestRunnerShared/UIScriptContext/UIScriptController.h:
247         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
248         (WTR::UIScriptController::propertiesOfLayerWithID):
249
250 2017-03-10  Commit Queue  <commit-queue@webkit.org>
251
252         Unreviewed, rolling out r213618.
253         https://bugs.webkit.org/show_bug.cgi?id=169475
254
255         Suspect this is the cause of a large memory regression
256         (Requested by jonlee_ on #webkit).
257
258         Reverted changeset:
259
260         "Enable async image decoding for large images"
261         https://bugs.webkit.org/show_bug.cgi?id=165039
262         http://trac.webkit.org/changeset/213618
263
264 2017-03-09  Brian Nicholson  <bnicholson@mozilla.com> and Alex Christensen  <achristensen@webkit.org>
265
266         Expose public APIs for content filters
267         https://bugs.webkit.org/show_bug.cgi?id=150479
268
269         Reviewed by Brady Eidson and Geoff Garen.
270
271         Keep the existing tests to verify that I made the wrapper classes for the old SPI work correctly.
272         Add new identical tests for the new API are added with the new names.
273         We should keep both until we migrate from and remove the old SPI.
274         Enum error code values and strings have changed, but the API is source compatible.
275
276         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
277         * TestWebKitAPI/Tests/WebKit2Cocoa/WKUserContentExtensionStore.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit2Cocoa/_WKUserContentExtensionStore.mm.
278         (WKUserContentExtensionStoreTest::SetUp):
279         (TEST_F):
280         (checkDomain):
281         (_WKUserContentExtensionStoreTest::SetUp): Deleted.
282         * TestWebKitAPI/Tests/WebKit2Cocoa/_WKUserContentExtensionStore.mm:
283         (checkDomain):
284
285 2017-03-09  Daniel Bates  <dabates@apple.com>
286
287         Attempt to fix the WebKit2 test bots following <https://trac.webkit.org/changeset/213676>
288         (https://bugs.webkit.org/show_bug.cgi?id=169364)
289
290         Create new WebView with Credential Management enabled when the enableCredentialManagement
291         WebKitTestRunner option is specified.
292
293         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
294         (WTR::PlatformWebView::viewSupportsOptions):
295         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
296         (WTR::PlatformWebView::viewSupportsOptions):
297
298 2017-03-09  John Wilander  <wilander@apple.com>
299
300         Resource Load Statistics: Remove statistics data as part of full website data removal
301         https://bugs.webkit.org/show_bug.cgi?id=169448
302
303         Reviewed by Alex Christensen.
304
305         This patch adds infrastructure for the new TestRunner function
306         statisticsClearInMemoryAndPersistentStore().
307
308         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
309         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
310         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
311         * WebKitTestRunner/InjectedBundle/TestRunner.h:
312         * WebKitTestRunner/TestController.cpp:
313         (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
314         * WebKitTestRunner/TestController.h:
315         * WebKitTestRunner/TestInvocation.cpp:
316         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
317
318 2017-03-09  Dean Jackson  <dino@apple.com>
319
320         WebGPU: Backend - Buffers
321         https://bugs.webkit.org/show_bug.cgi?id=169451
322         <rdar://problem/30959168>
323
324         Reviewed by Tim Horton.
325
326         Test for GPUBuffer object.
327
328         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
329         * TestWebKitAPI/Tests/WebCore/mac/GPUBuffer.mm: Added.
330         (TestWebKitAPI::TEST_F):
331         * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm:
332         * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm:
333
334 2017-03-09  Daniel Bates  <dabates@apple.com>
335
336         Guard Credential Management implementation behind a runtime enabled feature flag
337         https://bugs.webkit.org/show_bug.cgi?id=169364
338         <rdar://problem/30957425>
339
340         Reviewed by Brent Fulgham.
341
342         Add a new test option header, enableCredentialManagement, to DumpRenderTree/WebKitTestRunner
343         to enable Credential Management.
344
345         * DumpRenderTree/TestOptions.h:
346         * DumpRenderTree/TestOptions.mm:
347         (TestOptions::TestOptions):
348         * DumpRenderTree/mac/DumpRenderTree.mm:
349         (enableExperimentalFeatures):
350         (setWebPreferencesForTestOptions):
351         * WebKitTestRunner/TestController.cpp:
352         (WTR::TestController::resetPreferencesToConsistentValues):
353         (WTR::updateTestOptionsFromTestHeader):
354         * WebKitTestRunner/TestOptions.h:
355
356 2017-03-09  Anders Carlsson  <andersca@apple.com>
357
358         Add delegate support to WebCore
359         https://bugs.webkit.org/show_bug.cgi?id=169427
360         Part of rdar://problem/28880714.
361
362         Reviewed by Geoffrey Garen.
363
364         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
365
366 2017-03-09  Alex Christensen  <achristensen@webkit.org>
367
368         [Content Extensions] Introduce if-top-url and unless-top-url
369         https://bugs.webkit.org/show_bug.cgi?id=169433
370
371         Reviewed by Brady Eidson.
372
373         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
374         (TestWebKitAPI::TEST_F):
375         Add tests for new functionality and new failure types.
376
377 2017-03-09  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
378
379         JSC EWS repeat the log message thrice about patch not being relevant
380         https://bugs.webkit.org/show_bug.cgi?id=169330
381
382         Reviewed by Chris Dumez.
383
384         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
385         (CheckPatchRelevance.run): Change log level to 'debug' to reduce stdout traffic.
386
387 2017-03-08  Matt Rajca  <mrajca@apple.com>
388
389         Let clients control autoplay quirks with website policies.
390         https://bugs.webkit.org/show_bug.cgi?id=169390
391
392         Reviewed by Wenson Hsieh.
393
394         * TestWebKitAPI/Tests/WebKit2/autoplay-check.html:
395         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
396         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
397         (TEST):
398
399 2017-03-09  Devin Rousso  <dcrousso+webkit@gmail.com>
400
401         Unreviewed, change my status to be a WebKit reviewer
402
403         * Scripts/webkitpy/common/config/contributors.json:
404
405 2017-03-09  Jonathan Bedard  <jbedard@apple.com>
406
407         Standardize device/simulator naming conventions
408         https://bugs.webkit.org/show_bug.cgi?id=169083
409         <rdar://problem/30810466>
410
411         Reviewed by Alexey Proskuryakov.
412
413         * Scripts/build-webkit: Document --ios-device and --simulator options.
414         * Scripts/package-root:
415         (usage): Ditto.
416         * Scripts/run-api-tests: Document --simulator option.
417         * Scripts/webkitdirs.pm:
418         (argumentsForConfiguration): Use --ios-device by default rather than --device.
419         (determineXcodeSDK): Parse --ios-device and --simulator options.
420         * Scripts/webkitpy/common/config/ews.json: Change port name from ios to ios-device.
421         * Scripts/webkitpy/common/config/ports.py: Ditto.
422         (DeprecatedPort.port):
423         (IOSPort): Change port name from ios to ios-device. 
424         * Scripts/webkitpy/port/factory.py:
425         (platform_options): Add --simulator option.
426         (PortFactory): Update comment.
427         * Scripts/webkitpy/port/ios_device.py:
428         (IOSDevicePort): Change port name from ios to ios-device.
429         (IOSDevicePort.operating_system): Ditto.
430
431 2017-03-09  Jonathan Bedard  <jbedard@apple.com>
432
433         webkitpy: Add unit test to prevent breakage of EWS
434         https://bugs.webkit.org/show_bug.cgi?id=169385
435
436         Reviewed by Alexey Proskuryakov.
437
438         Prevent <http://trac.webkit.org/changeset/213545> from happening in the future.
439
440         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
441         (test_ews_name): Added.
442
443 2017-03-08  Dean Jackson  <dino@apple.com>
444
445         WebGPU: Backend - Library and Functions
446         https://bugs.webkit.org/show_bug.cgi?id=169371
447         <rdar://problem/30928792>
448
449         Reviewed by Tim Horton.
450
451         Add tests for GPULibrary and GPUFunction.
452
453         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
454         * TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm:
455         (TestWebKitAPI::TEST_F):
456         (TestWebKitAPI::TEST): Deleted.
457         * TestWebKitAPI/Tests/WebCore/mac/GPUFunction.mm: Copied from Tools/TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm.
458         (TestWebKitAPI::TEST_F):
459         * TestWebKitAPI/Tests/WebCore/mac/GPULibrary.mm: Copied from Tools/TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm.
460         (TestWebKitAPI::TEST_F):
461         * TestWebKitAPI/Tests/WebCore/mac/GPUTest.h: Copied from Tools/TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm.
462         (TestWebKitAPI::GPU::librarySourceCode):
463
464 2017-03-08  Filip Pizlo  <fpizlo@apple.com>
465
466         WTF should make it super easy to do ARM concurrency tricks
467         https://bugs.webkit.org/show_bug.cgi?id=169300
468
469         Reviewed by Mark Lam.
470         
471         This vastly simplifies the consume API. The new API is thoroughly tested by being used
472         in the GC's guts. I think that unit tests are a pain to maintain, so we shouldn't have
473         them unless we are legitimately worried about coverage. We're not in this case.
474
475         * TestWebKitAPI/CMakeLists.txt:
476         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
477         * TestWebKitAPI/Tests/WTF/Consume.cpp: Removed.
478
479 2017-03-08  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
480
481         Fix error/warning duplication in JSON bindings results
482         https://bugs.webkit.org/show_bug.cgi?id=169305
483
484         Reviewed by Alexey Proskuryakov.
485
486         The distinction between failures and errors is not meaningful, since all errors will also be failures.
487         As a result, we only need to keep track of failures.
488         
489         * Scripts/webkitpy/bindings/main.py:
490         (BindingsTests.__init__): Remove errors.
491         (BindingsTests.detect_changes): Remove errors.
492         (BindingsTests.main): Remove errors.
493
494 2017-03-08  Yusuke Suzuki  <utatane.tea@gmail.com>
495
496         [JSC] Add helpers to run Six Speed to run-jsc-benchmarks
497         https://bugs.webkit.org/show_bug.cgi?id=169351
498
499         Reviewed by Saam Barati.
500
501         This patch adds an ability to run six-speed microbenchmarks
502         from run-jsc-benchmarks by specifying six-speed directory in
503         arewefastyet repository.
504
505         While it is a collection of microbenchmarks, it is useful
506         to ensure that our ES6 optimization covers major use cases.
507         For the macrobenchmark, we already have ARES-6.
508
509         * Scripts/run-jsc-benchmarks:
510
511 2017-03-08  Sam Weinig  <sam@webkit.org>
512
513         import-w3c-tests doesn't work with svn repositories.
514         https://bugs.webkit.org/show_bug.cgi?id=169190
515
516         Reviewed by Tim Horton.
517
518         The script assumed you had WebKit checked-out as a git repository, but
519         there was no reason for that.
520
521         * Scripts/webkitpy/common/checkout/scm/git.py:
522         (Git.clone):
523         Add a class method to clone a repository which does not require 
524         an existing checkout.
525
526         (Git.fetch):
527         (Git.checkout):
528         Add methods needed for test_downloader.py, so it doesn't have to use
529         the internal _run_git 
530
531         * Scripts/webkitpy/w3c/test_downloader.py:
532         (TestDownloader.checkout_test_repository):
533         Switch to using Git.clone(), which doesn't require an existing git
534         directory, and then also adopt non private methods to fetch/checkout.
535
536 2017-03-08  John Wilander  <wilander@apple.com>
537
538         Resource Load Statistics: Communicate to the network process which domains to partition
539         https://bugs.webkit.org/show_bug.cgi?id=169322
540         <rdar://problem/30768921>
541
542         Reviewed by Alex Christensen.
543
544         These changes add support for two new TestRunner functions:
545         - setCookieStoragePartitioningEnabled()
546         - statisticsFireShouldPartitionCookiesHandler()
547
548         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
549         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
550         (WTR::TestRunner::setCookieStoragePartitioningEnabled):
551         (WTR::TestRunner::statisticsFireShouldPartitionCookiesHandler):
552         * WebKitTestRunner/InjectedBundle/TestRunner.h:
553         * WebKitTestRunner/TestController.cpp:
554         (WTR::TestController::statisticsFireShouldPartitionCookiesHandler):
555         * WebKitTestRunner/TestController.h:
556         * WebKitTestRunner/TestInvocation.cpp:
557         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
558
559 2017-03-08  Said Abou-Hallawa  <sabouhallawa@apple.com>
560
561         Enable async image decoding for large images
562         https://bugs.webkit.org/show_bug.cgi?id=165039
563
564         Reviewed by Simon Fraser.
565
566         Disable LargeImageAsyncDecoding for DRT/WTR.
567
568         * DumpRenderTree/mac/DumpRenderTree.mm:
569         (resetWebPreferencesToConsistentValues):
570         * WebKitTestRunner/TestController.cpp:
571         (WTR::TestController::resetPreferencesToConsistentValues):
572
573 2017-03-08  Matt Rajca  <mrajca@apple.com>
574
575         Add support for updating autoplay policies after a page has been loaded.
576         https://bugs.webkit.org/show_bug.cgi?id=169360
577
578         Reviewed by Alex Christensen.
579
580         * TestWebKitAPI/Tests/WebKit2/autoplay-check.html:
581         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
582         (TEST):
583
584 2017-03-08  Jonathan Bedard  <jbedard@apple.com>
585
586         Unreviewed, rolling out r213545.
587
588         iOS EWS broken by this change
589
590         Reverted changeset:
591
592         "Standardize device/simulator naming conventions"
593         https://bugs.webkit.org/show_bug.cgi?id=169083
594         http://trac.webkit.org/changeset/213545
595
596 2017-03-07  Kocsen Chung  <kocsen_chung@apple.com>
597
598         Perf and layout test results should report using correct scm revision.
599         https://bugs.webkit.org/show_bug.cgi?id=169171
600
601         Reviewed by Ryosuke Niwa.
602
603         For accurate record keeping, perf test and layout test results should
604         report using the native scm revision as an identifier.
605         To do so we introduce a new scm functions:
606             `native_revision()` and `timestamp_of_native_revision()`.
607         The former is responsible for returning a git hash if scm.git or an
608         svn revision if scm.svn. The latter is responsible for retrieving the correct timestamp.
609         We also add the corresponding tests and a helper function `_most_recent_log_for_revision`.
610
611         * Scripts/webkitpy/common/checkout/scm/scm.py:
612         (SCM.run):
613         Drive-by indentation fix to adhere to WebKit style conventions.
614         (SCM.svn_revision):
615         Remove superfluous comment.
616         (SCM.native_revision):
617         Add new abstract function `native_revision` and make it a `_subclass_must_implement()`
618         as we want to closely mimic `svn_revision()` function due to their similar behavior.
619         (SCM.timestamp_of_native_revision):
620         Add new abstract function `timestamp_of_native_revision` to closely mimic `timestamp_of_revision`.
621
622         * Scripts/webkitpy/common/checkout/scm/git.py:
623         (Git._most_recent_log_for_revision):
624         New helper function similar to `_most_recent_log_matching` that is git hash friendly.
625         (Git.native_revision):
626         Implement new function `native_revision()`. Get the native_revision by running:
627
628             `git log -1 --pretty=format:%H`
629
630         and thus returning the latest git hash (in long format).
631         (Git.timestamp_of_native_revision):
632         Since perftestrunner and layout_test.controllers.manager use the new native_revision
633         function, we create a new native_revision timestamp retriever.
634         You will notice this uses a far more simplified way to retrieve UTC strict-ISO timestamp
635         than its non-native counterpart: `timestamp_of_revision()`.
636         * Scripts/webkitpy/common/checkout/scm/svn.py:
637         (SVN.native_revision):
638         Implement native_revision for SVN: simply return self.svn_revision()
639         (SVN.timestamp_of_native_revision):
640         Implement timestamp_of_native_revision for SVN: simply return self.timestamp_of_revision()
641
642         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
643         (test_native_revision):
644         [SVN] Confirm that svn_revision == native_revision. And that native_revision returns 5.
645         Use '.' as the path parameter instead of svn_checkout_path to avoid violating pylint/E1101
646         and since we are guaranteed by test setUp to be in the correct SVN dir.
647         (GitTest.test_native_revision):
648         [Git] Confirm that `git rev-parse HEAD` is equal to newly implemented native_revision().
649         (GitSVNTest.test_native_revision):
650         [Git] Confirm that `git rev-parse HEAD` is equal to newly implemented native_revision().
651         (test_timestamp_of_native_revision):
652         Test new function `timestamp_of_native_revision`. Very similar fashion to
653         `test_timestamp_of_revision`.
654
655         * Scripts/webkitpy/common/checkout/scm/scm_mock.py:
656         (MockSCM.native_revision):
657         Add MockSCM.native_revision to behave like svn.py (default).
658         (MockSCM.test_native_revision):
659         Add MockSCM.test_native_revision to behave like its non-native counterpart.
660
661         * Scripts/webkitpy/layout_tests/controllers/manager.py:
662         (Manager.upload_results):
663         When iterating through a list of projects, make sure we use the project's new native revision.
664         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
665         (_generate_results_dict):
666         As per the FIXME in manager.py, we have duplicate code in perftestsrunner.py.
667         So make the same exact change here.
668
669 2017-03-07  Tim Horton  <timothy_horton@apple.com>
670
671         Fix the TestWebKitAPI build
672
673         Rubber-stamped by Anders Carlsson.
674
675         * TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
676         (TestWebKitAPI::TEST_F):
677         Fix a new warning about default argument promotion and va_start by
678         making this a enum class.
679
680 2017-03-07  Dean Jackson  <dino@apple.com>
681
682         Some platforms won't be able to create a GPUDevice
683         https://bugs.webkit.org/show_bug.cgi?id=169314
684         <rdar://problems/30907521>
685
686         Reviewed by Jon Lee.
687
688         Protect for the case where the hardware doesn't support Metal.
689
690         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
691         * TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm:
692         (TestWebKitAPI::TEST):
693
694 2017-03-07  Maureen Daum  <mdaum@apple.com>
695
696         Correctly check for an empty database file.
697         <rdar://problem/30542242> Removing Website Data not working (WebSQL directories being left behind)
698         https://bugs.webkit.org/show_bug.cgi?id=169256
699
700         Reviewed by Brady Eidson.
701
702         Add a test for DatabaseTracker::deleteDatabaseFileIfEmpty that verifies
703         that if we pass in an empty file it actually gets deleted.
704
705         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
706         Add TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp.
707         * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Added.
708         (TestWebKitAPI::TEST):
709
710 2017-03-07  Alex Christensen  <achristensen@webkit.org>
711
712         [URLParser] Fix file URLs that are just file:// and a Windows drive letter
713         https://bugs.webkit.org/show_bug.cgi?id=169242
714
715         Reviewed by Tim Horton.
716
717         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
718         (TestWebKitAPI::TEST_F):
719
720 2017-03-07  Jonathan Bedard  <jbedard@apple.com>
721
722         Standardize device/simulator naming conventions
723         https://bugs.webkit.org/show_bug.cgi?id=169083
724         <rdar://problem/30810466>
725
726         Reviewed by Alexey Proskuryakov.
727
728         * Scripts/build-webkit: Document --ios-device and --simulator options.
729         * Scripts/package-root:
730         (usage): Ditto.
731         * Scripts/run-api-tests: Document --simulator option.
732         * Scripts/webkitdirs.pm:
733         (argumentsForConfiguration): Use --ios-device by default rather than --device.
734         (determineXcodeSDK): Parse --ios-device and --simulator options.
735         * Scripts/webkitpy/common/config/ews.json: Change port name from ios to ios-device.
736         * Scripts/webkitpy/common/config/ports.py: Ditto.
737         (DeprecatedPort.port):
738         (IOSPort): Change port name from ios to ios-device. 
739         * Scripts/webkitpy/port/factory.py:
740         (platform_options): Add --simulator option.
741         (PortFactory): Update comment.
742         * Scripts/webkitpy/port/ios_device.py:
743         (IOSDevicePort): Change port name from ios to ios-device.
744         (IOSDevicePort.operating_system): Ditto.
745
746 2017-03-07  Dean Jackson  <dino@apple.com>
747
748         Add GPUDevice implementation and WebGPULayer
749         https://bugs.webkit.org/show_bug.cgi?id=169219
750         <rdar://problem/30879048>
751
752         Reviewed by Sam Weinig.
753
754         Test for WebCore's GPUDevice class.
755
756         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
757         * TestWebKitAPI/Tests/WebCore/mac/GPUDevice.mm: Added.
758         (TestWebKitAPI::TEST):
759
760 2017-03-07  Alex Christensen  <achristensen@webkit.org>
761
762         [Content Extensions] Rename "Domain" to "Condition" where appropriate
763         https://bugs.webkit.org/show_bug.cgi?id=169297
764
765         Reviewed by Brady Eidson.
766
767         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
768         (TestWebKitAPI::InMemoryCompiledContentExtension::create):
769         (TestWebKitAPI::TEST_F):
770
771 2017-03-07  Jonathan Bedard  <jbedard@apple.com>
772
773         webkitpy: Refactor setup_test_run for IOSPort and IOSSimulator
774         https://bugs.webkit.org/show_bug.cgi?id=169220
775         <rdar://problem/30879645>
776
777         Reviewed by Daniel Bates.
778
779         Provide more specific port setup functions for iOS ports to allow more sharing of common code.
780
781         * Scripts/webkitpy/port/ios.py:
782         (IOSPort):
783         (IOSPort._create_devices): Added.
784         (IOSPort.setup_test_run): Shared iOS device setup code.
785         * Scripts/webkitpy/port/ios_simulator.py:
786         (IOSSimulatorPort._create_devices): Renamed from setup_test_run.
787         (IOSSimulatorPort.setup_test_run): Renamed as _create_devices.
788
789 2017-03-07  Anders Carlsson  <andersca@apple.com>
790
791         Rewrite the DRT Pasteboard implementation to use UTIs and WTF types
792         https://bugs.webkit.org/show_bug.cgi?id=169289
793
794         Reviewed by Tim Horton.
795
796         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
797         (-[LocalPasteboard initWithName:]):
798         (-[LocalPasteboard name]):
799         (-[LocalPasteboard declareTypes:owner:]):
800         (isUTI):
801         (toUTI):
802         (-[LocalPasteboard addTypes:owner:]):
803         (-[LocalPasteboard changeCount]):
804         (-[LocalPasteboard types]):
805         (-[LocalPasteboard availableTypeFromArray:]):
806         (-[LocalPasteboard setData:forType:]):
807         (-[LocalPasteboard dataForType:]):
808         (-[LocalPasteboard writeObjects:]):
809         (-[LocalPasteboard dealloc]): Deleted.
810
811 2017-03-07  Myles C. Maxfield  <mmaxfield@apple.com>
812
813         Add David Jonathan Ross to contributors.json
814         https://bugs.webkit.org/show_bug.cgi?id=169265
815
816         Unreviewed.
817
818         David Jonathan Ross very kindly offered to create and contribute his Boxis font in r211060,
819         which is used for testing font variations.
820
821         * Scripts/webkitpy/common/config/contributors.json:
822
823 2017-03-07  Youenn Fablet  <youennf@gmail.com>
824
825         W3C importer should be able to update the import expectations file
826         https://bugs.webkit.org/show_bug.cgi?id=168037
827
828         Reviewed by Ryosuke Niwa.
829
830         Changing import expectations from an array to a map.
831         Marking all test paths as import and updating import expectations file accordingly.
832
833         * Scripts/webkitpy/w3c/test_downloader.py:
834         (TestDownloader.__init__):
835         (TestDownloader._init_paths_from_expectations):
836         (TestDownloader):
837         (TestDownloader.update_import_expectations):
838         * Scripts/webkitpy/w3c/test_importer.py:
839         (TestImporter.do_import):
840         * Scripts/webkitpy/w3c/test_importer_unittest.py:
841
842 2017-03-07  Philip Rogers  <pdr@google.com>
843
844         Add pdr to the rendering watchlist
845         https://bugs.webkit.org/show_bug.cgi?id=167298
846
847         Reviewed by Andreas Kling.
848
849         * Scripts/webkitpy/common/config/contributors.json: Switch to pdr+autocc@chromium.org
850         * Scripts/webkitpy/common/config/watchlist: Add pdr to the rendering watchlist.
851
852 2017-03-07  Mario Sanchez Prada  <mario@webkit.org>
853
854         Unreviewed. Removed myself from the Accessibility watch list
855
856         * Scripts/webkitpy/common/config/watchlist: Removed myself.
857
858 2017-03-06  Fujii Hironori  <Hironori.Fujii@sony.com>
859
860         Add Fujii Hironori to contributor's list
861         https://bugs.webkit.org/show_bug.cgi?id=169261
862
863         Reviewed by Yusuke Suzuki.
864
865         Add myself to the contributor's lists so that my e-mail autocompletes for CC
866
867         * Scripts/webkitpy/common/config/contributors.json:
868
869 2017-03-06  Carlos Alberto Lopez Perez  <clopez@igalia.com>
870
871         [GTK] Mark WTF_Lock.ContendedLongSection and WTF_WordLock.ContendedLongSection as slow.
872
873         Unreviewed test gardening.
874
875         The ContendedShortSection version of this tests were already marked as slow.
876         And the ContendedLongSection version takes more or less the same time to run.
877         They cause time outs on the bot sometimes.
878
879         * Scripts/run-gtk-tests:
880         (TestRunner):
881
882 2017-03-06  Michael Saboff  <msaboff@apple.com>
883
884         Take advantage of fast permissions switching of JIT memory for devices that support it
885         https://bugs.webkit.org/show_bug.cgi?id=169155
886
887         Reviewed by Saam Barati.
888
889         Updated the Xcode config files to match what is in the JavaScriptCore ones.
890
891         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
892
893 2017-03-06  Lucas Forschler  <lforschler@apple.com>
894
895         https://bugs.webkit.org/show_bug.cgi?id=169234
896         torchmobile.com.cn is no longer a registered domain. These email addresses will bounce, so clean them up.
897
898         Reviewed by Alexey Proskuryakov.
899
900         * Scripts/webkitpy/common/config/contributors.json:
901
902 2017-03-03  Matt Rajca  <mrajca@apple.com>
903
904         Media: notify clients when the user never plays a media element that was prevented from auto-playing
905         https://bugs.webkit.org/show_bug.cgi?id=169150
906
907         Reviewed by Alex Christensen.
908
909         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
910         (TEST): Added.
911
912 2017-03-06  Alex Christensen  <achristensen@webkit.org>
913
914         Fix URLs relative to file URLs with paths beginning with Windows drive letters
915         https://bugs.webkit.org/show_bug.cgi?id=169178
916
917         Reviewed by Tim Horton.
918
919         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
920         (TestWebKitAPI::TEST_F):
921
922 2017-03-06  Myles C. Maxfield  <mmaxfield@apple.com>
923
924         Expand font-weight and font-stretch to take any number
925         https://bugs.webkit.org/show_bug.cgi?id=168889
926
927         Reviewed by Simon Fraser.
928
929         Migrate off old enum types.
930
931         * TestWebKitAPI/Tests/WebCore/FontCache.cpp:
932         (TestWebKitAPI::createPlatformFont):
933         (TestWebKitAPI::compareFonts):
934         (TestWebKitAPI::TEST_F):
935
936 2017-03-06  Yusuke Suzuki  <utatane.tea@gmail.com>
937
938         [GTK][JSCOnly] Enable WebAssembly on Linux environment
939         https://bugs.webkit.org/show_bug.cgi?id=164032
940
941         Reviewed by Michael Catanzaro.
942
943         * Scripts/run-jsc-stress-tests:
944         Enable WASM tests.
945
946         * Scripts/webkitperl/FeatureList.pm:
947         Enable WebAssembly.
948
949 2017-03-04  Lucas Forschler  <lforschler@apple.com>
950
951         Test commit against svn.webkit.org after SHA-1 cleanup.
952         
953         Unreviewed.
954
955 2017-03-03  Dean Jackson  <dino@apple.com>
956
957         Add WebGPU compile flag and experimental feature flag
958         https://bugs.webkit.org/show_bug.cgi?id=169161
959         <rdar://problem/30846689>
960
961         Reviewed by Tim Horton.
962
963         Add ENABLE_WEBGPU, an experimental feature flag, a RuntimeEnabledFeature,
964         and an InternalSetting.
965
966         * DumpRenderTree/mac/DumpRenderTree.mm:
967         (enableExperimentalFeatures):
968         (resetWebPreferencesToConsistentValues):
969         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
970         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
971         (WTR::InjectedBundle::beginTesting):
972         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
973         (WTR::TestRunner::setWebGL2Enabled):
974         (WTR::TestRunner::setWebGPUEnabled):
975         * WebKitTestRunner/InjectedBundle/TestRunner.h:
976
977 2017-03-03  Dean Jackson  <dino@apple.com>
978
979         Add a script to synchronize FeatureDefines.xcconfig files
980         https://bugs.webkit.org/show_bug.cgi?id=169151
981         <rdar://problem/30841856>
982
983         Reviewed by Simon Fraser.
984
985         I got sick of manually copying the FeatureDefines.xcconfig
986         files, so I added a script to do it. As long as you
987         run this after you've edited one, it will take the most
988         recently updated and copy it to all the others.
989
990         * Scripts/sync-feature-defines: Added.
991         * Scripts/webkitpy/style/checkers/featuredefines.py:
992         (FeatureDefinesChecker.check): Export the list of files,
993         and give a suggestion to use the sync script.
994
995 2017-03-03  Alex Christensen  <achristensen@webkit.org>
996
997         [URLParser] Fix file: as a relative file URL
998         https://bugs.webkit.org/show_bug.cgi?id=169122
999
1000         Reviewed by Tim Horton.
1001
1002         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1003         (TestWebKitAPI::TEST_F):
1004
1005 2017-03-02  Myles C. Maxfield  <mmaxfield@apple.com>
1006
1007         Migrate font-stretch to use fixed-point values
1008         https://bugs.webkit.org/show_bug.cgi?id=169107
1009
1010         Reviewed by Dean Jackson.
1011
1012         Update to new types.
1013
1014         * TestWebKitAPI/Tests/WebCore/FontCache.cpp:
1015         (TestWebKitAPI::createPlatformFont):
1016
1017 2017-03-02  Brady Eidson  <beidson@apple.com>
1018
1019         Update WKWebsiteDatastoreConfiguration SPI.
1020         https://bugs.webkit.org/show_bug.cgi?id=169102
1021
1022         Reviewed by Tim Horton.
1023
1024         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm:
1025         (-[WebsiteDataStoreCustomPathsMessageHandler userContentController:didReceiveScriptMessage:]):
1026         (TEST):
1027
1028 2017-03-02  Jer Noble  <jer.noble@apple.com>
1029
1030         Sufficently large timeValue and timeScale arguments to MediaTime will cause wrapping in toTimeScale().
1031         https://bugs.webkit.org/show_bug.cgi?id=169098
1032
1033         Reviewed by Keith Miller.
1034
1035         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
1036         (TestWebKitAPI::TEST):
1037
1038 2017-03-02  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
1039
1040         Add ability to read bindings test results
1041         https://bugs.webkit.org/show_bug.cgi?id=169063
1042
1043         Reviewed by Alexey Proskuryakov.
1044
1045         * Scripts/webkitpy/common/net/bindingstestresults.py: Added.
1046         (BindingsTestResults): Conforms to the AbstractTestResults interface.
1047         (BindingsTestResults.__init__): Constructor.
1048         (BindingsTestResults.results_from_string): Generates BindingsTestResults object from JSON string.
1049         (BindingsTestResults.is_subset): Compare failing tests in two BindingsTestResults objects.
1050         (BindingsTestResults.equals): Checks if two BindingsTestResults objects contain the same failing test names.
1051         (BindingsTestResults.all_passed): Return True if all bindings tests passed.
1052         (BindingsTestResults.failing_tests): Returns a list of failing tests.
1053         (BindingsTestResults.did_exceed_test_failure_limit): Always returns False, exists to conform to the interface.
1054         * Scripts/webkitpy/common/net/bindingstestresults_unittest.py: Added.
1055         (BindingsTestResultsTest): Class to test BindingsTestResults.
1056         (BindingsTestResultsTest.test_results_from_string): Unit tests string -> BindingsTestResults conversion.
1057         (BindingsTestResultsTest.test_results_from_string_success): Ditto, for success cases.
1058         * Scripts/webkitpy/tool/bot/bindingstestresultsreader.py: Added.
1059         (BindingsTestResultsReader): Conforms to the AbstractTestResultsReader interface.
1060         (BindingsTestResultsReader.results): Reads the results file and returns a BindingsTestResults object.
1061
1062 2017-03-02  Aakash Jain  <aakash_jain@apple.com>
1063
1064         Move stringMatchesWildcardString from WebKit2 to WebCore
1065         https://bugs.webkit.org/show_bug.cgi?id=169065
1066
1067         Reviewed by Alexey Proskuryakov.
1068
1069         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Moved StringUtilities.mm
1070         * TestWebKitAPI/Tests/WebCore/StringUtilities.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit2/mac/StringUtilities.mm.
1071         (TestWebKitAPI::TEST):
1072         * TestWebKitAPI/Tests/WebKit2/mac/StringUtilities.mm: Removed.
1073
1074 2017-02-28  Matt Rajca  <mrajca@apple.com>
1075
1076         Media: send "did interfere with playback" events when the user pauses an autoplaying element
1077         https://bugs.webkit.org/show_bug.cgi?id=169006
1078
1079         Reviewed by Alex Christensen.
1080
1081         * TestWebKitAPI/Tests/WebKit2/js-play-with-controls.html:
1082         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
1083         (TEST): Added.
1084
1085 2017-03-02  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
1086
1087         Refactor test results classes in webkitpy to enable faster EWS iteration
1088         https://bugs.webkit.org/show_bug.cgi?id=169053
1089
1090         Reviewed by Alexey Proskuryakov.
1091
1092         * Scripts/webkitpy/common/net/abstracttestresults.py:
1093         (AbstractTestResults): Import json for parse_json_string().
1094         (AbstractTestResults.parse_json_string): Abstracted out from JSCTestResults.results_from_string().
1095         * Scripts/webkitpy/common/net/abstracttestresults_unittest.py: Added.
1096         (AbstractTestResultsTest): Class that tests AbstractTestResults.
1097         (AbstractTestResultsTest.test_parse_json_string_invalid_inputs): Move unit tests from JSCTestResultsTest.
1098         (AbstractTestResultsTest.test_parse_json_string_valid_input): Add a unit test for a success case.
1099         * Scripts/webkitpy/common/net/jsctestresults.py:
1100         (JSCTestResults.results_from_string): Call parse_json_string because it was abstracted out.
1101         * Scripts/webkitpy/common/net/jsctestresults_unittest.py:
1102         (JSCTestResultsTest.test_results_from_string): Remove JSON parsing unit tests, because they were moved.
1103         * Scripts/webkitpy/tool/bot/abstracttestresultsreader.py: Added.
1104         (AbstractTestResultsReader): Generic TestResultsReader with functions common to jsc, bindings etc.
1105         (AbstractTestResultsReader.__init__): Moved from JSCTestResultsReader.__init__().
1106         (AbstractTestResultsReader._read_file_contents): Moved from JSCTestResultsReader._read_file_contents().
1107         (AbstractTestResultsReader.results): Stub.
1108         * Scripts/webkitpy/tool/bot/jsctestresultsreader.py:
1109         (JSCTestResultsReader): Now inherits from AbstractTestResultsReader.
1110         (JSCTestResultsReader.__init__): Deleted.
1111         (JSCTestResultsReader._read_file_contents): Deleted.
1112         * Scripts/webkitpy/tool/bot/layouttestresultsreader.py:
1113         (LayoutTestResultsReader): Now inherits from AbstractTestResultsReader.
1114
1115 2017-03-02  Alex Christensen  <achristensen@webkit.org>
1116
1117         Continue enabling WebRTC
1118         https://bugs.webkit.org/show_bug.cgi?id=169056
1119
1120         Reviewed by Jon Lee.
1121
1122         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1123
1124 2017-03-02  Ryan Haddad  <ryanhaddad@apple.com>
1125
1126         Unreviewed, rolling out r213281.
1127
1128         This change caused API test WebKit2.UserMediaBasic to time
1129         out.
1130
1131         Reverted changeset:
1132
1133         "[MediaStream] UIClient may not be notified of capture state
1134         change when leaving a page"
1135         https://bugs.webkit.org/show_bug.cgi?id=169014
1136         http://trac.webkit.org/changeset/213281
1137
1138 2017-03-02  Tomas Popela  <tpopela@redhat.com>
1139
1140         [WK2] Keyboard menu key should show context menu
1141         https://bugs.webkit.org/show_bug.cgi?id=72099
1142
1143         Show the context menu when the GtkWidget::popup-menu signal is
1144         emitted. This signal is triggered by pressing a key (usually
1145         the Menu key or the Shift + F10 shortcut) or it could be emitted on
1146         WebKitWebView.
1147
1148         Reviewed by Carlos Garcia Campos.
1149
1150         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
1151         (testContextMenuDefaultMenu):
1152         * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.cpp:
1153         (WebViewTest::emitPopupMenuSignal):
1154         * TestWebKitAPI/gtk/WebKit2Gtk/WebViewTest.h:
1155
1156 2017-03-01  Wenson Hsieh  <wenson_hsieh@apple.com>
1157
1158         Replace -[WKWebView adjustedDataInteractionItemProviders:] with a UI delegate method
1159         https://bugs.webkit.org/show_bug.cgi?id=169013
1160
1161         Reviewed by Dan Bernstein.
1162
1163         Adjusts TestWebKitAPI for changes in WebKit2. See Source/WebKit2/ChangeLog for more details.
1164
1165         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1166         (TestWebKitAPI::TEST):
1167         (-[CustomItemProviderWebView _adjustedDataInteractionItemProviders:]): Deleted.
1168         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1169         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1170         (-[DataInteractionSimulator initWithWebView:]):
1171         (-[DataInteractionSimulator dealloc]):
1172         (-[DataInteractionSimulator _webView:adjustedDataInteractionItemProviders:]):
1173
1174 2017-03-01  Per Arne Vollan  <pvollan@apple.com>
1175
1176         [Win] DRT should not dispatch messages after test is done.
1177         https://bugs.webkit.org/show_bug.cgi?id=169026
1178
1179         Reviewed by Brent Fulgham.
1180
1181         Exiting the message loop with PostQuitMessage will leave room for
1182         a few messages to be dispatched after the test is done.
1183
1184         * DumpRenderTree/win/DumpRenderTree.cpp:
1185         (dump):
1186         (runTest):
1187
1188 2017-03-01  Myles C. Maxfield  <mmaxfield@apple.com>
1189
1190         Implement font-stretch for installed fonts
1191         https://bugs.webkit.org/show_bug.cgi?id=168888
1192
1193         Reviewed by Darin Adler and Dave Hyatt.
1194
1195         Update TestWebKitAPI tests to test font-stretch too.
1196
1197         * TestWebKitAPI/Tests/WebCore/FontCache.cpp:
1198         (TestWebKitAPI::createPlatformFont):
1199         (TestWebKitAPI::compareFonts):
1200         (TestWebKitAPI::TEST_F):
1201
1202 2017-03-01  Alex Christensen  <achristensen@webkit.org>
1203
1204         Unreviewed, rolling out r213259.
1205
1206         Broke an internal build
1207
1208         Reverted changeset:
1209
1210         "Continue enabling WebRTC"
1211         https://bugs.webkit.org/show_bug.cgi?id=169056
1212         http://trac.webkit.org/changeset/213259
1213
1214 2017-03-01  Alex Christensen  <achristensen@webkit.org>
1215
1216         Continue enabling WebRTC
1217         https://bugs.webkit.org/show_bug.cgi?id=169056
1218
1219         Reviewed by Jon Lee.
1220
1221         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1222
1223 2017-02-28  Matt Rajca  <mrajca@apple.com>
1224
1225         Media: notify clients when autoplayed media is muted
1226         https://bugs.webkit.org/show_bug.cgi?id=168987
1227
1228         Reviewed by Alex Christensen.
1229
1230         * TestWebKitAPI/Tests/WebKit2/js-play-with-controls.html:
1231         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
1232         (TEST): Added.
1233
1234 2017-03-01  Brady Eidson  <beidson@apple.com>
1235
1236         Add SPI to create WebsiteDataStore objects pointing to custom paths.
1237         https://bugs.webkit.org/show_bug.cgi?id=169044
1238
1239         Reviewed by Tim Horton.
1240
1241         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1242         
1243         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.html: Added.
1244         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsiteDataStoreCustomPaths.mm: Added.
1245         (-[WebsiteDataStoreCustomPathsMessageHandler userContentController:didReceiveScriptMessage:]):
1246         (getNextMessage):
1247         (TEST):
1248
1249 2017-03-01  Simon Fraser  <simon.fraser@apple.com>
1250
1251         Add a way to watch the CSSProperties.json file, and add me and Dan Bates to watch it.
1252
1253         * Scripts/webkitpy/common/config/watchlist:
1254
1255 2017-03-01  Jonathan Bedard  <jbedard@apple.com>
1256
1257         webkitpy: Move some device management from iOSSimulatorPort to iOSPort class
1258         https://bugs.webkit.org/show_bug.cgi?id=168681
1259
1260         Reviewed by Daniel Bates.
1261
1262         This patch moves high-level device management into iOSPort and adds a new iOSDevicePort class
1263         which inherits from iOSPort.  Additionally, this change renames device_id_for_worker_number to
1264         device_for_worker_number and manages devices by object instead of by UDID.
1265
1266         * Scripts/webkitpy/port/factory.py:
1267         (PortFactory): Correct import path for IOSSimulatorPort and IOSDevicePort.
1268         * Scripts/webkitpy/port/ios.py:
1269         (IOSPort.__init__): Define variables shared between iOS ports.
1270         (IOSPort.driver_cmd_line_for_logging): From IOSSimulatorPort.
1271         (IOSPort.driver_name): From IOSSimulatorPort.
1272         (IOSPort.using_multiple_devices): Check if this port supports multiple devices.
1273         (IOSPort._testing_device): Map worker number to device.
1274         (IOSPort.device_for_worker_number): Return _testing_device() or _current_device based on using_multiple_devices. 
1275         (IOSSimulatorPort): Moved to ios_simulator.py
1276         * Scripts/webkitpy/port/ios_device.py: Added.
1277         (IOSDevicePort): Moved functionality from IOSPort.
1278         (IOSDevicePort.determine_full_port_name): Moved from IOSPort.
1279         (IOSDevicePort._build_driver_flags): Ditto.
1280         (IOSDevicePort.operating_system): Ditto.
1281         * Scripts/webkitpy/port/ios_simulator.py: Added.
1282         (IOSSimulatorPort): Moved from ios.py.
1283         (IOSSimulatorPort.__init__): Init parent class, setup device map.
1284         (IOSSimulatorPort._create_simulators): Use object over unbound methods.
1285         (IOSSimulatorPort.setup_test_run): Ditto.
1286         (IOSSimulatorPort.using_multiple_devices): True if we are managing the simulators.
1287         (IOSSimulatorPort._create_device): Use object over unbound methods.
1288         (IOSSimulatorPort._remove_device): Ditto.
1289         (IOSSimulatorPort.driver_name): Moved to parent class.
1290         (IOSSimulatorPort.driver_cmd_line_for_logging): Ditto.
1291         (IOSSimulatorPort.child_processes): Ditto.
1292         (IOSSimulatorPort._testing_device): Ditto.
1293         (IOSSimulatorPort.device_id_for_worker_number): Renamed as device_for_worker_number.
1294         (SimulatorProcess.__init__): Call find_device_by_udid, device_id_for_worker_number has been removed.
1295         * Scripts/webkitpy/xcode/simulator.py:
1296         (Simulator): Make _managed_devices public.
1297         (Simulator.create_device): Ditto.
1298         (Simulator.remove_device): Ditto.
1299         (Simulator.device_number): Ditto.
1300
1301 2017-03-01  Alexey Proskuryakov  <ap@apple.com>
1302
1303         IndexedDB.IndexedDBMultiProcess is a flaky timeout
1304         https://bugs.webkit.org/show_bug.cgi?id=160780
1305
1306         Reviewed by Brady Eidson.
1307
1308         * TestWebKitAPI/Tests/WebKit2Cocoa/IndexedDBMultiProcess.mm: Releasing the object
1309         once doesn't necessarily deallocate the object, there can be other references.
1310         We can use -[WKWebView _close] or -[WKWebView _killWebContentProcessAndResetState].
1311         The latter seems more appropriate, because "kill" is what the comment says.
1312
1313 2017-02-28  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
1314
1315         Add ability for webkitpy to run bindings tests
1316         https://bugs.webkit.org/show_bug.cgi?id=168979
1317
1318         Reviewed by Alexey Proskuryakov.
1319
1320         This allows the below command to run bindings tests with json output, and is a required part
1321         of adding an EWS for bindings tests. (Note: this won't build because --build is not passed).
1322         webkit-patch build-and-test --no-clean --no-update  --test --non-interactive --group="bindings"
1323
1324         * Scripts/webkitpy/port/base.py:
1325         (Port.bindings_results_directory): Return the directory to place JSON results for bindings tests.
1326         * Scripts/webkitpy/tool/steps/runtests.py:
1327         (RunTests.run): Checks if we should be running bindings tests.
1328         (RunTests._run_bindings_tests): Generates the command for bindings tests, and executes it.
1329         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1330         (test_runtests_bindings): Unit test for the generated run-bindings-tests command.
1331
1332 2017-02-28  Myles C. Maxfield  <mmaxfield@apple.com>
1333
1334         Test fix after r213163
1335         https://bugs.webkit.org/show_bug.cgi?id=168678
1336
1337         Unreviewed.
1338
1339         Tests and builds are timing out because this file is gigantic.
1340
1341         * TestWebKitAPI/Tests/WebCore/FontCache.cpp:
1342         (TestWebKitAPI::TEST_F):
1343
1344 2017-02-28  Wenson Hsieh  <wenson_hsieh@apple.com>
1345
1346         Data interaction should support attachment elements
1347         https://bugs.webkit.org/show_bug.cgi?id=168916
1348         <rdar://problem/30664519>
1349
1350         Reviewed by Ryosuke Niwa.
1351
1352         Adds a new unit test verifying that a client injected bundle is able to augment UIItemProvider data vended to
1353         the UI process.
1354
1355         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1356         * TestWebKitAPI/Tests/WebKit2Cocoa/attachment-element.html: Added.
1357         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1358         (-[CustomItemProviderWebView _adjustedDataInteractionItemProviders:]):
1359         (TestWebKitAPI::TEST):
1360
1361 2017-02-28  Chris Dumez  <cdumez@apple.com>
1362
1363         [iOS] Throttle requestAnimationFrame to 30fps in low power mode
1364         https://bugs.webkit.org/show_bug.cgi?id=168837
1365         <rdar://problem/30700929>
1366
1367         Reviewed by Simon Fraser.
1368
1369         Add unit test for -= operator on WTF::OptionSet.
1370
1371         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
1372         (TestWebKitAPI::TEST):
1373
1374 2017-02-28  Jonathan Bedard  <jbedard@apple.com>
1375
1376         webkitpy: Regular expression for parsing simctl device information is wrong for iPad Pro
1377         https://bugs.webkit.org/show_bug.cgi?id=168394
1378
1379         Reviewed by Daniel Bates.
1380
1381         * Scripts/webkitpy/xcode/simulator.py:
1382         (Simulator): Allow for parenthesis in device name.
1383         * Scripts/webkitpy/xcode/simulator_unittest.py: Add iPad Pro to test.
1384
1385 2017-02-28  Myles C. Maxfield  <mmaxfield@apple.com>
1386
1387         [macOS] Migrate off of CTFontCreateForCSS
1388         https://bugs.webkit.org/show_bug.cgi?id=168678
1389
1390         Reviewed by David Hyatt.
1391
1392         Exhaustively test the font matching algorithm on Sierra.
1393
1394         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1395         * TestWebKitAPI/Tests/WebCore/FontCache.cpp: Added.
1396         (TestWebKitAPI::FontCacheTest::SetUp):
1397         (TestWebKitAPI::createPlatformFont):
1398         (TestWebKitAPI::compareFonts):
1399         (TestWebKitAPI::TEST_F):
1400
1401 2017-02-28  Basuke Suzuki  <Basuke.Suzuki@am.sony.com>
1402
1403         Windows build doesn't start build if the git branch is not master
1404         https://bugs.webkit.org/show_bug.cgi?id=168843
1405
1406         Reviewed by Myles C. Maxfield.
1407
1408         Use correct value for product base dir.
1409
1410         * Scripts/build-webkit:
1411
1412 2017-02-24  Matt Rajca  <mrajca@apple.com>
1413
1414         Media: notify clients when autoplayed media ends without being paused
1415         https://bugs.webkit.org/show_bug.cgi?id=168852
1416
1417         Reviewed by Alex Christensen.
1418
1419         * TestWebKitAPI/Tests/WebKit2/js-play-with-controls.html:
1420         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
1421         (TEST): Added.
1422
1423 2017-02-28  Jonathan Bedard  <jbedard@apple.com>
1424
1425         webkitpy: jsc-ews should run when Makefiles and build scripts are changed
1426         https://bugs.webkit.org/show_bug.cgi?id=168950
1427
1428         Reviewed by Alexey Proskuryakov.
1429
1430         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
1431         (CheckPatchRelevance): Add makefiles and build scripts to jsc_paths.
1432
1433 2017-02-27  Alex Christensen  <achristensen@webkit.org>
1434
1435         Begin enabling WebRTC on 64-bit
1436         https://bugs.webkit.org/show_bug.cgi?id=168915
1437
1438         Reviewed by Eric Carlson.
1439
1440         * Scripts/build-webkit:
1441         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1442
1443 2017-02-27  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
1444
1445         Windows regression: webkitpy.tool.steps.steps_unittest.StepsTest.test_runtests_jsc[_debug]
1446         https://bugs.webkit.org/show_bug.cgi?id=168628
1447
1448         Reviewed by Alexey Proskuryakov.
1449
1450         * Scripts/webkitpy/tool/steps/runtests.py:
1451         (RunTests._run_javascriptcore_tests): Pass options to the Base instance.
1452         * Scripts/webkitpy/tool/steps/steps_unittest.py:
1453         (StepsTest._step_options): Add a new 'root' option that's passed through to the Base instance.
1454         (test_runtests_jsc): Not running webkit-build-directory anymore, and changed json output directory.
1455         (test_runtests_jsc_debug): Ditto
1456
1457 2017-02-27  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
1458
1459         Add machine-readable results for bindings tests
1460         https://bugs.webkit.org/show_bug.cgi?id=168626
1461
1462         Reviewed by Alexey Proskuryakov.
1463
1464         * Scripts/run-bindings-tests:
1465         (main): Add optional --json-output command-line parameter.
1466         * Scripts/webkitpy/bindings/main.py:
1467         (BindingsTests.__init__): Add variables to store machine-readable results.
1468         (BindingsTests.detect_changes): Store results in machine-readable form if applicable.
1469         (BindingsTests.main): Write data to JSON file if applicable.
1470
1471 2017-02-27  Wenson Hsieh  <wenson_hsieh@apple.com>
1472
1473         Unreviewed, roll out r213065.
1474
1475         We need these temporary fixes to keep the perf bots running.
1476
1477         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1478         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1479         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1480         (-[DataInteractionSimulator _advanceProgress]):
1481
1482 2017-02-27  Simon Fraser  <simon.fraser@apple.com>
1483
1484         Add specification and status metadata to CSSProperties.json, and validate it
1485         https://bugs.webkit.org/show_bug.cgi?id=168901
1486
1487         Reviewed by Darin Adler.
1488
1489         Enhance check-webkit-style to validate the status and spec data in CSSProperties.json.
1490         
1491         Current validation is basic type validation and some cross-referencing, but could be
1492         enhanced.
1493
1494         * Scripts/webkitpy/style/checkers/jsonchecker.py:
1495         (JSONCSSPropertiesChecker.check):
1496         (JSONCSSPropertiesChecker.check_category):
1497         (JSONCSSPropertiesChecker):
1498         (JSONCSSPropertiesChecker.check_categories):
1499         (JSONCSSPropertiesChecker.validate_url):
1500         (JSONCSSPropertiesChecker.validate_status_type):
1501         (JSONCSSPropertiesChecker.validate_comment):
1502         (JSONCSSPropertiesChecker.validate_status):
1503         (JSONCSSPropertiesChecker.validate_property_category):
1504         (JSONCSSPropertiesChecker.validate_property_specification):
1505         (JSONCSSPropertiesChecker.check_property):
1506
1507 2017-02-27  Carlos Garcia Campos  <cgarcia@igalia.com>
1508
1509         Unreviewed. Fix two GTK+ unit tests failing after r213062.
1510
1511         We were building wrong Content-Disposition headers that libsoup doesn't parse correctly.
1512
1513         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
1514         (addContentDispositionHTTPHeaderToResponse):
1515         * TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:
1516         (serverCallback):
1517
1518 2017-02-24  Jer Noble  <jer.noble@apple.com>
1519
1520         Add public method to MediaTime for doing timeScale conversion.
1521         https://bugs.webkit.org/show_bug.cgi?id=168860
1522
1523         Reviewed by Eric Carlson.
1524
1525         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
1526         (TestWebKitAPI::TEST):
1527
1528 2017-02-26  Wenson Hsieh  <wenson_hsieh@apple.com>
1529
1530         Unreviewed, revert all temporary build fixes for data interaction
1531
1532         Rolls out r212990, r212988 and r212984.
1533
1534         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1535         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1536         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1537         (-[DataInteractionSimulator _advanceProgress]):
1538
1539 2017-02-27  Alex Christensen  <achristensen@webkit.org>
1540
1541         [libwebrtc] Enable WebRTC in some Production Builds
1542         https://bugs.webkit.org/show_bug.cgi?id=168858
1543
1544         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1545
1546 2017-02-27  Andy Estes  <aestes@apple.com>
1547
1548         Add a way to test file input without relying on drag and drop
1549         https://bugs.webkit.org/show_bug.cgi?id=168848
1550         <rdar://problem/22258242>
1551
1552         Reviewed by Tim Horton.
1553
1554         Existing layout tests relied on drag and drop support in EventSender to configure a file
1555         input element for testing. This had several problems:
1556
1557         1. WebKitTestRunner has no support for beginDragWithFiles(), and DumpRenderTree doesn't
1558            support it on iOS.
1559         2. We have no test coverage for selecting files via the runOpenPanel UI delegate, leading to
1560            bugs like webkit.org/b/159686.
1561
1562         Even if we fixed (1), we'd still have a test coverage gap due to (2), so this patch
1563         introduces a way for a test to specify the list of files that should be selected by the
1564         runOpenPanel UI delegate: TestRunner.setOpenPanelFiles(). It also creates versions of a
1565         number of existing file input tests using TestRunner.setOpenPanelFiles() instead of
1566         EventSender.beginDragWithFiles().
1567
1568         * DumpRenderTree/ios/DumpRenderTreeBrowserView.mm:
1569         (-[DumpRenderTreeBrowserView webView:runOpenPanelForFileButtonWithResultListener:configuration:]):
1570         Overrode to call the corresponding method on UIDelegate.
1571         * DumpRenderTree/TestRunner.cpp:
1572         (setOpenPanelFilesCallback): Added to call TestRunner::setOpenPanelFiles().
1573         (TestRunner::staticFunctions): Registered setOpenPanelFiles.
1574         (TestRunner::setOpenPanelFiles): Added. Converts the JavaScript array of file paths to a
1575         std::vector of std::strings.
1576         * DumpRenderTree/TestRunner.h:
1577         (TestRunner::openPanelFiles):
1578         * DumpRenderTree/mac/UIDelegate.mm:
1579         (-[UIDelegate webView:runOpenPanelForFileButtonWithResultListener:allowMultipleFiles:]):
1580         Added. Converts the array of file paths to an NSArray of NSURLs, resolving the file paths
1581         relative to the current test URL. Returns either the first item or all items depending on
1582         the value of allowMultipleFiles.
1583         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: Defined setOpenPanelFiles.
1584         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1585         (WTR::TestRunner::setOpenPanelFiles): Added. Converts the JavaScript array of file paths to
1586         a WKArray of WKURLs, resolving the file paths relative to the current test URL, and sends
1587         the WKArray to the UI process with the "SetOpenPanelFileURLs" message.
1588         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1589         * WebKitTestRunner/TestController.cpp:
1590         (WTR::runOpenPanel): Calls the WKOpenPanelResultListener with either the first item or all
1591         items, depending on the value of WKOpenPanelParametersGetAllowsMultipleFiles().
1592         (WTR::TestController::resetStateToConsistentValues): Clear m_openPanelFileURLs.
1593         * WebKitTestRunner/TestController.h:
1594         (WTR::TestController::openPanelFileURLs):
1595         (WTR::TestController::setOpenPanelFileURLs):
1596         * WebKitTestRunner/TestInvocation.cpp:
1597         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle): Added code to handle the
1598         "SetOpenPanelFileURLs" message.
1599
1600 2017-02-26  Wenson Hsieh  <wenson_hsieh@apple.com>
1601
1602         REGRESSION (r211312): Double-clicking a word selects it along with the space that follows it
1603         https://bugs.webkit.org/show_bug.cgi?id=168821
1604         <rdar://problem/30690431>
1605
1606         Reviewed by Tim Horton.
1607
1608         Adds the ability for TestWKWebView to send a sequence of clicks to its window, and uses this capability to
1609         verify that double clicking to select a word in a WKWebView on Mac selects just the word, and not a trailing
1610         space along with it.
1611
1612         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1613         * TestWebKitAPI/Tests/WebKit2Cocoa/double-click-does-not-select-trailing-space.html: Added.
1614         * TestWebKitAPI/Tests/mac/WKWebViewSelectionTests.mm: Copied from Tools/TestWebKitAPI/cocoa/TestWKWebView.h.
1615         (TEST):
1616         * TestWebKitAPI/cocoa/TestWKWebView.h:
1617         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1618         (-[TestWKWebViewHostWindow _mouseDownAtPoint:simulatePressure:clickCount:]):
1619         (-[TestWKWebViewHostWindow _mouseUpAtPoint:clickCount:]):
1620         (-[TestWKWebView mouseDownAtPoint:simulatePressure:]):
1621         (-[TestWKWebView mouseUpAtPoint:]):
1622         (-[TestWKWebView sendClicksAtPoint:numberOfClicks:]):
1623         (-[TestWKWebViewHostWindow _mouseDownAtPoint:simulatePressure:]): Deleted.
1624         (-[TestWKWebViewHostWindow _mouseUpAtPoint:]): Deleted.
1625
1626 2017-02-25  Simon Fraser  <simon.fraser@apple.com>
1627
1628         Make check-webkit-style do some basic validation for CSSProperties.json
1629         https://bugs.webkit.org/show_bug.cgi?id=168874
1630
1631         Reviewed by Zalan Bujtas.
1632
1633         Do checking of the keys and the value types.
1634         
1635         Print exceptions if they occur; previously, coding errors caused silent failure.
1636
1637         * Scripts/webkitpy/style/checker.py:
1638         (CheckerDispatcher._create_checker):
1639         * Scripts/webkitpy/style/checkers/jsonchecker.py:
1640         (JSONFeaturesChecker.check):
1641         (JSONCSSPropertiesChecker):
1642         (JSONCSSPropertiesChecker.check):
1643         (JSONCSSPropertiesChecker.validate_comment):
1644         (JSONCSSPropertiesChecker.validate_type):
1645         (JSONCSSPropertiesChecker.validate_boolean):
1646         (JSONCSSPropertiesChecker.validate_string):
1647         (JSONCSSPropertiesChecker.validate_array):
1648         (JSONCSSPropertiesChecker.validate_codegen_properties):
1649         (JSONCSSPropertiesChecker.check_property):
1650         (JSONCSSPropertiesChecker.check_codegen_properties):
1651
1652 2017-02-26  Chris Dumez  <cdumez@apple.com>
1653
1654         HitTestResult's linkSuggestedFilename should sanitize download attribute
1655         https://bugs.webkit.org/show_bug.cgi?id=168856
1656         <rdar://problem/30683109>
1657
1658         Reviewed by Antti Koivisto.
1659
1660         Add test coverage.
1661
1662         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1663         * TestWebKitAPI/Tests/WebKit2/link-with-download-attribute-with-slashes.html: Added.
1664         * TestWebKitAPI/Tests/WebKit2/mac/ContextMenuDownload.mm:
1665         (TestWebKitAPI::decideDestinationWithSuggestedFilenameContainingSlashes):
1666         (TestWebKitAPI::TEST):
1667
1668 2017-02-24  Joseph Pecoraro  <pecoraro@apple.com>
1669
1670         [Resource Timing] Media elements initiated loads should set the initiatorType to their element name (video/audio)
1671         https://bugs.webkit.org/show_bug.cgi?id=168680
1672
1673         Reviewed by Youenn Fablet.
1674
1675         * TestWebKitAPI/Tests/WebCore/cocoa/WebCoreNSURLSession.mm:
1676         (TestWebKitAPI::WebCoreNSURLSessionTest::SetUp):
1677         Include a dummy HTMLVideoElement.
1678
1679 2017-02-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1680
1681         Unreviewed, temporarily disable all data interaction tests.
1682
1683         They will be reenabled once the bots are ready to build and run them.
1684
1685         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1686         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1687         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1688
1689 2017-02-24  Wenson Hsieh  <wenson_hsieh@apple.com>
1690
1691         Unreviewed, fix the internal build.
1692
1693         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1694         (-[DataInteractionSimulator _advanceProgress]):
1695
1696 2017-02-24  Matt Rajca  <mrajca@apple.com>
1697
1698         Media: notify clients when autoplay is denied
1699         https://bugs.webkit.org/show_bug.cgi?id=168840
1700
1701         Reviewed by Alex Christensen.
1702
1703         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
1704         (handleAutoplayEvent):
1705         (runUntilReceivesAutoplayEvent):
1706         (TEST): Added.
1707
1708 2017-02-23  Matt Rajca  <mrajca@apple.com>
1709
1710         API test WebKit2.WebsitePoliciesPlayAfterPreventedAutoplay is timing out
1711         https://bugs.webkit.org/show_bug.cgi?id=167466
1712
1713         Reviewed by Alex Christensen.
1714
1715         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
1716         (TEST): Use the correct API version.
1717
1718 2017-02-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1719
1720         Refactor data interaction to use new WKDataInteraction SPI
1721         https://bugs.webkit.org/show_bug.cgi?id=168602
1722         Work towards <rdar://problem/30313681>
1723
1724         Reviewed by Tim Horton.
1725
1726         Update DataInteractionSimulator to simulate data interaction using updated SPI. See changes in WebKit2 for more details.
1727
1728         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1729         (TestWebKitAPI::TEST):
1730         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1731         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1732         (-[DataInteractionSimulator _resetSimulatedState]):
1733         (-[DataInteractionSimulator runFrom:to:]):
1734         (-[DataInteractionSimulator _advanceProgress]):
1735         (-[DataInteractionSimulator _currentLocation]):
1736         (-[DataInteractionSimulator _finishDataInteraction]): Deleted.
1737         (-[DataInteractionSimulator webViewDidSendDataInteractionStartRequest:]): Deleted.
1738         (-[DataInteractionSimulator webView:didReceiveDataInteractionStartResponse:]): Deleted.
1739
1740 2017-02-20  Wenson Hsieh  <wenson_hsieh@apple.com>
1741
1742         Remove the data interaction gesture recognizer
1743         https://bugs.webkit.org/show_bug.cgi?id=168600
1744         <rdar://problem/30313681>
1745
1746         Reviewed by Anders Carlsson.
1747
1748         Adjust TestWebKitAPI for changes in WebKit2.
1749
1750         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1751         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1752         (-[DataInteractionSimulator initWithWebView:]):
1753         (-[DataInteractionSimulator runFrom:to:]):
1754         (-[DataInteractionSimulator _advanceProgress]):
1755         (-[DataInteractionSimulator _finishDataInteraction]):
1756         (-[MockLongPressGestureRecognizer initWithWindow:]): Deleted.
1757         (-[MockLongPressGestureRecognizer locationInView:]): Deleted.
1758         (-[MockLongPressGestureRecognizer state]): Deleted.
1759         (-[MockLongPressGestureRecognizer numberOfTouches]): Deleted.
1760         (-[DataInteractionSimulator _recognizeGestureAtLocation:withState:]): Deleted.
1761         (-[DataInteractionSimulator dataInteractionGestureRecognizer]): Deleted.
1762         (-[DataInteractionSimulator webView:beginDataInteractionWithSourceIndex:gestureRecognizer:]): Deleted.
1763
1764 2017-02-24  John Wilander  <wilander@apple.com>
1765
1766         Resource Load Statistics: Add alternate classification method
1767         https://bugs.webkit.org/show_bug.cgi?id=168347
1768         <rdar://problem/30352793>
1769         <rdar://problem/30646710>
1770         <rdar://problem/30660708>
1771
1772         Reviewed by Alex Christensen.
1773
1774         Added three testRunner functions to facilitate layout tests:
1775         - setStatisticsSubframeUnderTopFrameOrigin()
1776         - setStatisticsSubresourceUnderTopFrameOrigin()
1777         - setStatisticsSubresourceUniqueRedirectTo()
1778
1779         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1780         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1781         (WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
1782         (WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
1783         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
1784         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1785         * WebKitTestRunner/TestController.cpp:
1786         (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
1787         (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
1788         (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
1789         * WebKitTestRunner/TestController.h:
1790         * WebKitTestRunner/TestInvocation.cpp:
1791         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1792
1793 2017-02-23  Joseph Pecoraro  <pecoraro@apple.com>
1794
1795         [Resource Timing] Add Experimental Feature Flag
1796         https://bugs.webkit.org/show_bug.cgi?id=167147
1797
1798         Reviewed by Ryosuke Niwa.
1799
1800         * DumpRenderTree/mac/DumpRenderTree.mm:
1801         (enableExperimentalFeatures):
1802         (resetWebPreferencesToConsistentValues):
1803         * DumpRenderTree/win/DumpRenderTree.cpp:
1804         (enableExperimentalFeatures):
1805         (resetWebPreferencesToConsistentValues):
1806         Put experimental flags in the experimental section.
1807
1808 2017-02-23  Beth Dakin  <bdakin@apple.com> + Dan Saunders  <dasau@microsoft.com>
1809
1810         No reliable way to get a snapshot of WKWebView (macOS)
1811         https://bugs.webkit.org/show_bug.cgi?id=161450
1812         -and corresponding-
1813         <rdar://problem/23846039>
1814
1815         Reviewed by Tim Horton.
1816
1817         Test for WKWebView’s new API takeSnapshotWithConfiguration:completionHandler:
1818
1819         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1820         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewSnapshot.mm: Added.
1821         (convertToCGImage):
1822         (getPixelIndex):
1823         (TEST):
1824
1825 2017-02-23  Saam Barati  <sbarati@apple.com>
1826
1827         Speculative fix for jsc timing out tests
1828         https://bugs.webkit.org/show_bug.cgi?id=168791
1829
1830         Rubber Stamped by Keith Miller.
1831
1832         Play musical chairs with IRC and Briggs options on
1833         ftl-eager and ftl-eager-no-cjit.
1834
1835         * Scripts/run-jsc-stress-tests:
1836
1837 2017-02-23  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1838
1839         Improve error message when the WPT server fails to start.
1840         https://bugs.webkit.org/show_bug.cgi?id=168759
1841
1842         Reviewed by Ryosuke Niwa.
1843
1844         Check if the WPT server is running after 1 second, and if is not
1845         print useful information for helping the user to debug the issue.
1846
1847         Using check_running_pid() to check if the process is still running
1848         doesn't work. A process started via subprocess popen that has ended
1849         will be in a zombie state until a call to wait/communicate/poll
1850         is done, or until the object is deleted or garbage collected.
1851
1852         This adds also support for testing the behaviour of subprocess
1853         poll() on the unit tests that use MockProcess.
1854
1855         A new test is added also for the battery of tests for the WPT
1856         server.
1857
1858         * Scripts/webkitpy/common/system/executive_mock.py:
1859         (MockProcess.__init__):
1860         (MockProcess.wait):
1861         (MockProcess.communicate):
1862         (MockProcess.poll):
1863         (MockExecutive.popen):
1864         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
1865         (WebPlatformTestServer.__init__):
1866         (WebPlatformTestServer._prepare_config):
1867         (WebPlatformTestServer._spawn_process):
1868         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server_unittest.py:
1869         (TestWebPlatformTestServer.test_corrupted_subserver_files):
1870         (TestWebPlatformTestServer):
1871         (TestWebPlatformTestServer.test_server_fails_to_start_throws_exception):
1872
1873 2017-02-23  Wenson Hsieh  <wenson_hsieh@apple.com>
1874
1875         Unreviewed, temporarily disable DataInteractionTests in TestWebKitAPI.
1876
1877         These will be reenabled in https://bugs.webkit.org/show_bug.cgi?id=168602.
1878
1879         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1880
1881 2017-02-22  Wenson Hsieh  <wenson_hsieh@apple.com>
1882
1883         Data interaction causes selection to fall out of sync between web/UI processes
1884         https://bugs.webkit.org/show_bug.cgi?id=168735
1885         <rdar://problem/30657817>
1886
1887         Reviewed by Tim Horton.
1888
1889         Adds a new method to TestWKWebView for querying selection view rects from the UI process and augments data
1890         interaction unit tests to check for selection rects using this new hook.
1891
1892         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1893         (makeCGRectValue):
1894         (TestWebKitAPI::TEST):
1895         * TestWebKitAPI/cocoa/TestWKWebView.h:
1896         * TestWebKitAPI/cocoa/TestWKWebView.mm:
1897         (-[TestWKWebView selectionRectsAfterPresentationUpdate]):
1898         * TestWebKitAPI/ios/DataInteractionSimulator.h:
1899         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1900         (-[DataInteractionSimulator _resetSimulatedState]):
1901         (-[DataInteractionSimulator runFrom:to:]):
1902         (-[DataInteractionSimulator finalSelectionRects]):
1903
1904 2017-02-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1905
1906         Better handle Thread and RunLoop initialization
1907         https://bugs.webkit.org/show_bug.cgi?id=167828
1908
1909         Reviewed by Yusuke Suzuki.
1910
1911         Remove unnecessary calls to WTF::initializeMainThread().
1912
1913         * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
1914         (TestWebKitAPI::ComplexTextControllerTest::SetUp):
1915         * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
1916         (TestWebKitAPI::ContentExtensionTest::SetUp):
1917         * WebKitTestRunner/TestController.cpp:
1918         (WTR::TestController::initialize):
1919
1920 2017-02-22  Myles C. Maxfield  <mmaxfield@apple.com>
1921
1922         [Cocoa] Remove Yosemite-specific font lookup code
1923         https://bugs.webkit.org/show_bug.cgi?id=168682
1924
1925         Reviewed by Zalan Bujtas.
1926
1927         * DumpRenderTree/mac/DumpRenderTree.mm:
1928         (fontWhitelist):
1929         (adjustFonts):
1930         (createWebViewAndOffscreenWindow):
1931         (drt_NSFontManager_availableFontFamilies): Deleted.
1932         (drt_NSFontManager_availableFonts): Deleted.
1933         (swizzleNSFontManagerMethods): Deleted.
1934         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
1935         (WTR::activateFonts):
1936         (WTR::allowedFontFamilySet): Deleted.
1937         (WTR::systemHiddenFontFamilySet): Deleted.
1938         (WTR::wtr_NSFontManager_availableFontFamilies): Deleted.
1939         (WTR::wtr_NSFontManager_availableFonts): Deleted.
1940         (WTR::swizzleNSFontManagerMethods): Deleted.
1941         * WebKitTestRunner/mac/TestControllerMac.mm:
1942         (WTR::generateWhitelist):
1943         (WTR::TestController::platformInitializeContext):
1944
1945 2017-02-22  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1946
1947         AutoInstaller should not skip the install step if the package is downloaded but not installed
1948         https://bugs.webkit.org/show_bug.cgi?id=168737
1949
1950         Reviewed by Ryosuke Niwa.
1951
1952         Don't skip the install step if the package target path don't exists.
1953         Fix the description for "should_refresh" optional argument.
1954
1955         * Scripts/webkitpy/common/system/autoinstall.py:
1956         (AutoInstaller.install):
1957
1958 2017-02-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1959
1960         [GTK] Do not use g_return_if_fail in EventSenderProxy::continuousMouseScrollBy
1961         https://bugs.webkit.org/show_bug.cgi?id=168721
1962
1963         Reviewed by Michael Catanzaro.
1964
1965         Use WTFLogAlways instead. It's still shown in stderr, but it won't crash if we ever run tests with fatal
1966         criticals.
1967
1968         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
1969         (WTR::EventSenderProxy::continuousMouseScrollBy):
1970
1971 2017-02-21  Youenn Fablet  <youenn@apple.com>
1972
1973         [WebRTC][Mac] Activate libwebrtc
1974         https://bugs.webkit.org/show_bug.cgi?id=167293
1975         <rdar://problem/30401864>
1976
1977         Reviewed by Alex Christensen.
1978
1979         Fixing paths to allow loading libwebrtc.dylib successfully.
1980
1981         * Scripts/build-webkit:
1982         * Scripts/webkitdirs.pm:
1983         (setupMacWebKitEnvironment):
1984         (setupIOSWebKitEnvironment):
1985         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1986
1987 2017-02-21  Saam Barati  <sbarati@apple.com>
1988
1989         Add the Briggs optimistic allocator to run on ARM64
1990         https://bugs.webkit.org/show_bug.cgi?id=168454
1991
1992         Reviewed by Filip Pizlo.
1993
1994         * Scripts/run-jsc-stress-tests:
1995
1996 2017-02-20  Filip Pizlo  <fpizlo@apple.com>
1997
1998         The collector thread should only start when the mutator doesn't have heap access
1999         https://bugs.webkit.org/show_bug.cgi?id=167737
2000
2001         Reviewed by Keith Miller.
2002         
2003         Make more tests collect continuously.
2004
2005         * Scripts/run-jsc-stress-tests:
2006
2007 2017-02-20  Simon Fraser  <simon.fraser@apple.com>
2008
2009         Add support to PlatformCALayer/GraphicsLayerCA for subpixel-antialiased text, with a Setting and a MiniBrowser switch
2010         https://bugs.webkit.org/show_bug.cgi?id=168620
2011         <rdar://problem/30617772>
2012
2013         Reviewed by Tim Horton.
2014         
2015         Add a setting that allows one to toggle subpixel-antialiased layer text on and off.
2016
2017         * DumpRenderTree/mac/DumpRenderTree.mm:
2018         (resetWebPreferencesToConsistentValues):
2019         * MiniBrowser/mac/SettingsController.h:
2020         * MiniBrowser/mac/SettingsController.m:
2021         (-[SettingsController _populateMenu]):
2022         (-[SettingsController validateMenuItem:]):
2023         (-[SettingsController toggleSubpixelAntialiasedLayerTextEnabled:]):
2024         (-[SettingsController subpixelAntialiasedLayerTextEnabled]):
2025         * MiniBrowser/mac/WK1BrowserWindowController.m:
2026         (-[WK1BrowserWindowController didChangeSettings]):
2027         * MiniBrowser/mac/WK2BrowserWindowController.m:
2028         (-[WK2BrowserWindowController didChangeSettings]):
2029         * WebKitTestRunner/TestController.cpp:
2030         (WTR::TestController::resetPreferencesToConsistentValues):
2031
2032 2017-02-21  Jonathan Bedard  <jbedard@apple.com>
2033
2034         webkitpy: Refactor Device class
2035         https://bugs.webkit.org/show_bug.cgi?id=168332
2036
2037         Reviewed by Alexey Proskuryakov.
2038
2039         Separate the more specific SimulatedDevice from the abstract
2040         idea of a device.
2041
2042         * Scripts/webkitpy/xcode/device.py: Added.
2043         (Device):  Base device class.
2044         (Device.__init__): Initialize _host, name and udid.
2045         (Device.install_app): Function declaration.
2046         (Device.launch_app): Ditto.
2047         (Device.__eq__): Compare two devices by udid.
2048         (Device.__ne__): Ditto.
2049         (Device.__repr__): Return device name and udid in formatted string.
2050         * Scripts/webkitpy/xcode/simulated_device.py: Copied from Tools/Scripts/webkitpy/xcode/simulator.py.
2051         (SimulatedDevice):
2052         (SimulatedDevice.__init__): Call Device.__init__ first.
2053         (SimulatedDevice.delete): Device -> SimulatedDevice.
2054         (SimulatedDevice.reset): Ditto.
2055         (SimulatedDevice.__eq__): Moved to device.py.
2056         (SimulatedDevice.__ne__): Ditto.
2057         (SimulatedDevice.__repr__): Call Device __repr__ first.
2058         (DeviceType): Kept in Scripts/webkitpy/xcode/simulator.py.
2059         (Runtime): Kept in Scripts/webkitpy/xcode/simulator.py.
2060         (Device): Renamed SimulatedDevice.
2061         (Simulator): Kept in Scripts/webkitpy/xcode/simulator.py.
2062         * Scripts/webkitpy/xcode/simulator.py:
2063         (Simulator): Define Simulator.Device class as None.
2064         (Simulator.__init__): Import SimulatedDevice as Simulator.Device.
2065         (Simulator.delete_device): Use Simulator.Device.
2066         (Simulator.reset_device): Ditto.
2067         (Simulator._parse_devices): Ditto.
2068         (Simulator.lookup_or_create_device): Make 
2069         (Device): Moved to simulated_device as SimulatedDevice.
2070
2071 2017-02-21  JF Bastien  <jfbastien@apple.com>
2072
2073         Fix cmake build
2074         https://bugs.webkit.org/show_bug.cgi?id=168665
2075
2076         Reviewed by Mark Lam.
2077
2078         It was broken by r212555 and r212681.
2079
2080         * DumpRenderTree/PlatformMac.cmake:
2081
2082 2017-02-21  Alexey Proskuryakov  <ap@apple.com>
2083
2084         Improve bot watcher's dashboard performance
2085         https://bugs.webkit.org/show_bug.cgi?id=168624
2086         <rdar://problem/30190109>
2087
2088         Reviewed by Daniel Bates.
2089
2090         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Trac.js:
2091         There was an unnecessary linear complexity algorithm in indexOfRevision().
2092
2093 2017-02-21  Alex Christensen  <achristensen@webkit.org>
2094
2095         Unreviewed, rolling out r212699.
2096
2097         Internal build not ready
2098
2099         Reverted changeset:
2100
2101         "[WebRTC][Mac] Activate libwebrtc"
2102         https://bugs.webkit.org/show_bug.cgi?id=167293
2103         http://trac.webkit.org/changeset/212699
2104
2105 2017-02-20  Carlos Garcia Campos  <cgarcia@igalia.com>
2106
2107         Remove ENABLE_THREADED_COMPOSITOR build option
2108         https://bugs.webkit.org/show_bug.cgi?id=168606
2109
2110         Reviewed by Michael Catanzaro.
2111
2112         * Scripts/webkitperl/FeatureList.pm:
2113
2114 2017-02-20  Youenn Fablet  <youenn@apple.com>
2115
2116         [WebRTC][Mac] Activate libwebrtc
2117         https://bugs.webkit.org/show_bug.cgi?id=167293
2118         <rdar://problem/30401864>
2119
2120         Reviewed by Alex Christensen.
2121
2122         Fixing paths to allow loading libwebrtc.dylib successfully.
2123
2124         * Scripts/build-webkit:
2125         * Scripts/webkitdirs.pm:
2126         (setupMacWebKitEnvironment):
2127         (setupIOSWebKitEnvironment):
2128
2129 2017-02-20  Ryan Haddad  <ryanhaddad@apple.com>
2130
2131         Unreviewed, rolling out r212685.
2132
2133         This change broke the 32-bit Sierra build.
2134
2135         Reverted changeset:
2136
2137         "Resource Load Statistics: Add alternate classification
2138         method"
2139         https://bugs.webkit.org/show_bug.cgi?id=168347
2140         http://trac.webkit.org/changeset/212685
2141
2142 2017-02-20  John Wilander  <wilander@apple.com>
2143
2144         Resource Load Statistics: Add alternate classification method
2145         https://bugs.webkit.org/show_bug.cgi?id=168347
2146         <rdar://problem/30352793>
2147
2148         Reviewed by Alex Christensen.
2149
2150         Added three testRunner functions to facilitate layout tests:
2151         - setStatisticsSubframeUnderTopFrameOrigin()
2152         - setStatisticsSubresourceUnderTopFrameOrigin()
2153         - setStatisticsSubresourceUniqueRedirectTo()
2154
2155         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2156         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2157         (WTR::TestRunner::setStatisticsSubframeUnderTopFrameOrigin):
2158         (WTR::TestRunner::setStatisticsSubresourceUnderTopFrameOrigin):
2159         (WTR::TestRunner::setStatisticsSubresourceUniqueRedirectTo):
2160         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2161         * WebKitTestRunner/TestController.cpp:
2162         (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
2163         (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
2164         (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
2165         * WebKitTestRunner/TestController.h:
2166         * WebKitTestRunner/TestInvocation.cpp:
2167         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2168
2169 2017-02-20  Anders Carlsson  <andersca@apple.com>
2170
2171         Use the new drag code path when dragging links
2172         https://bugs.webkit.org/show_bug.cgi?id=168612
2173
2174         Reviewed by Tim Horton.
2175
2176         If a type is not dynamic, just use the static UTI.
2177
2178         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
2179         (-[LocalPasteboard writeObjects:]):
2180
2181 2017-02-17  Anders Carlsson  <andersca@apple.com>
2182
2183         Add a new drag code path and use it for dragging plain text
2184         https://bugs.webkit.org/show_bug.cgi?id=168534
2185
2186         Reviewed by Geoffrey Garen.
2187
2188         Update the testing infrastructure to handle NSDraggingSession.
2189
2190         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
2191         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm: Renamed from Tools/DumpRenderTree/mac/DumpRenderTreePasteboard.m.
2192         (-[LocalPasteboard writeObjects:]):
2193         Implement this in terms of the legacy pasteboard API.
2194
2195         * DumpRenderTree/mac/EventSendingController.mm:
2196         (drt_WebHTMLView_beginDraggingSessionWithItemsEventSource):
2197         (+[EventSendingController initialize]):
2198         Swizzle the drag method instead of adding a delegate method (like the old code does).
2199
2200 2017-02-20  Florian Bruhin  <git@the-compiler.org>
2201
2202         Handle EINTR during webkitpy server process select()
2203         https://bugs.webkit.org/show_bug.cgi?id=168361
2204
2205         Reviewed by Michael Catanzaro.
2206
2207         Otherwise, on my machine, resizing the terminal run-webkit-tests is running in
2208         makes it die.
2209
2210         * Scripts/webkitpy/port/server_process.py:
2211         (ServerProcess._wait_for_data_and_update_buffers_using_select):
2212
2213 2017-02-20  Carlos Garcia Campos  <cgarcia@igalia.com>
2214
2215         Unreviewed. Fix GTK+ test /webkit2/WebKitWebView/default-menu.
2216
2217         It can happen that the window onload event is dispatched after the load finished is received in the UI
2218         process. Move the script to select the text to the body instead of using a window onload handler.
2219
2220         * TestWebKitAPI/Tests/WebKit2Gtk/TestContextMenu.cpp:
2221         (testContextMenuDefaultMenu):
2222
2223 2017-02-20  Manuel Rego Casasnovas  <rego@igalia.com>
2224
2225         [css-grid] Remove compilation flag ENABLE_CSS_GRID_LAYOUT
2226         https://bugs.webkit.org/show_bug.cgi?id=167693
2227
2228         Reviewed by Sergio Villar Senin.
2229
2230         * Scripts/webkitperl/FeatureList.pm:
2231         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2232         * TestWebKitAPI/Tests/WebCore/CSSParser.cpp:
2233         (TestWebKitAPI::computeNumberOfTracks):
2234         (TestWebKitAPI::TEST):
2235         * TestWebKitAPI/Tests/WebCore/GridPosition.cpp:
2236         (TestWebKitAPI::TEST):
2237
2238 2017-02-19  Commit Queue  <commit-queue@webkit.org>
2239
2240         Unreviewed, rolling out r212466.
2241         https://bugs.webkit.org/show_bug.cgi?id=168577
2242
2243         causes crashes on AArch64 on linux, maybe it's causing crashes
2244         on iOS too (Requested by pizlo on #webkit).
2245
2246         Reverted changeset:
2247
2248         "The collector thread should only start when the mutator
2249         doesn't have heap access"
2250         https://bugs.webkit.org/show_bug.cgi?id=167737
2251         http://trac.webkit.org/changeset/212466
2252
2253 2017-02-17  Aakash Jain  <aakash_jain@apple.com>
2254
2255         Fix failure from r212579.
2256
2257         Unreviewed build-fix.
2258
2259         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py:
2260         (CheckPatchRelevance._changes_are_relevant): Return true for all groups others than jsc for now.
2261
2262 2017-02-17  Srinivasan Vijayaraghavan  <svijayaraghavan@apple.com>
2263
2264         EWS should run JavaScriptCore tests
2265         https://bugs.webkit.org/show_bug.cgi?id=162458
2266
2267         Reviewed by Alexey Proskuryakov.
2268
2269         * QueueStatusServer/config/queues.py: Add jsc-ews queue.
2270         * QueueStatusServer/model/queuestatus.py:
2271         (QueueStatus.did_skip): Returns whether patch was skipped, based on status.
2272         * QueueStatusServer/handlers/statusbubble.py:
2273         (StatusBubble._should_show_bubble_for): Add logic to hide jsc-ews bubble if the patch does not touch jsc.
2274         * Scripts/webkitpy/common/checkout/scm/scm_mock.py:
2275         (MockSCM.__init__): Add _mockChangedFiles variable.
2276         (MockSCM.changed_files): Change to use _mockChangedFiles variables.
2277         * Scripts/webkitpy/common/config/ews.json: Add config info for JSC EWS.
2278         * Scripts/webkitpy/common/config/ports.py: Add support for JSC EWS in Mac Port.
2279         (DeprecatedPort._append_build_style_flag): Helper function to append build_style to a command.
2280         (DeprecatedPort.build_jsc_command): Added - command to build JSC only (quicker than building all of WebKit).
2281         (DeprecatedPort.run_javascriptcore_tests_command): Allow JSC EWS to only run JSC tests.
2282         (MacPort.run_webkit_tests_command): Check for JSC.
2283         * Scripts/webkitpy/common/config/ports_mock.py:
2284         (MockPort.run_javascriptcore_tests_command): Add build_style argument.
2285         * Scripts/webkitpy/common/config/ports_unittest.py:
2286         (DeprecatedPortTest.test_mac_port): Add unit tests for build-jsc shell command.
2287         * Scripts/webkitpy/common/net/abstracttestresults.py: Added.
2288         (AbstractTestResults): Abstract superclass of JSCTestResults and JSCTestResults.
2289         (AbstractTestResults.test_results): Stub.
2290         (AbstractTestResults.failing_tests): Stub.
2291         (AbstractTestResults.did_exceed_test_failure_limit): Stub.
2292         * Scripts/webkitpy/common/net/jsctestresults.py: Added.
2293         (JSCTestResults): Added.
2294         (JSCTestResults.intersection): Return a JSCTestResults object with failures common to both input objects.
2295         (JSCTestResults.results_from_string): Use json library to parse results.
2296         (JSCTestResults.__init__): Initialize members.
2297         (JSCTestResults.equals): This enables unit testing.
2298         (JSCTestResults.is_subset): Checks if one set of failures is a subset of another.
2299         (JSCTestResults.all_passed): Getter.
2300         (JSCTestResults.failing_tests): Getter.
2301         (JSCTestResults.did_exceed_test_failure_limit): Getter.
2302         * Scripts/webkitpy/common/net/jsctestresults_unittest.py: Added.
2303         (JSCTestResultsTest): Class to test JSCTestResults.
2304         (JSCTestResultsTest.test_results_from_string): Tests parsing.
2305         (JSCTestResultsTest.test_intersection_api_tests): Unit test for intersection() class method.
2306         (JSCTestResultsTest.test_intersection_stress_tests): Unit test for intersection() class method.
2307         (JSCTestResultsTest.test_intersection_general_case): Unit test for intersection() class method.
2308         * Scripts/webkitpy/port/base.py:
2309         (Port.jsc_results_directory): Returns the directory for the JSC test results JSON file.
2310         * Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
2311         (EarlyWarningSystemTask.run): Add check_patch_relevance step.
2312         * Scripts/webkitpy/tool/bot/jscews_unittest.py: Added.
2313         (MockPatchAnalysisTask): Mocked-out version of PatchAnalysisTask that doesn't run commands.
2314         (MockPatchAnalysisTask.__init__): Sets attributes.
2315         (MockPatchAnalysisTask._test): Override to not run command.
2316         (MockPatchAnalysisTask._build_and_test_without_patch): Override to not run command.
2317         (MockPatchAnalysisTask.validate): Assume mocked patch is valid for purposes of testing retry logic.
2318         (MockPatchAnalysisTask.test_run_count): Specific to the mocked version, to test retry logic.
2319         (MockJSCEarlyWarningSystem): Mocked-out version of AbstarctEarlyWarningSystem so we can provide test results.
2320         (MockJSCEarlyWarningSystem.__init__): Sets attributes, also sets group to jsc.
2321         (MockJSCEarlyWarningSystem.test_results): Returns test results provided by us, instead of using a JSON reader.
2322         (JSCEarlyWarningSystemTest): Class to test retry logic in below situations.
2323         (JSCEarlyWarningSystemTest._create_task): Helper function to abstract out common code.
2324         (JSCEarlyWarningSystemTest._results_indicate_all_passed): False if input is None or has failures, else True.
2325         (JSCEarlyWarningSystemTest.test_success_case): Clean patch on clean tree.
2326         (JSCEarlyWarningSystemTest.test_test_failure): Failed patch on clean tree.
2327         (JSCEarlyWarningSystemTest.test_fix): Patch that fixes all tree redness.
2328         (JSCEarlyWarningSystemTest.test_ineffective_patch): Patch that has same failures as tree.
2329         (JSCEarlyWarningSystemTest.test_partially_effective_patch): Patch fixes some failures but adds no new failures.
2330         (JSCEarlyWarningSystemTest.test_different_test_failures_in_patch_and_tree): Patch has some failures not in tree.
2331         (JSCEarlyWarningSystemTest.test_first_results_could_not_be_read): Patch results not readable.
2332         (JSCEarlyWarningSystemTest.test_second_results_could_not_be_read): Patch results not readable on second run.
2333         (JSCEarlyWarningSystemTest.test_clean_results_could_not_be_read): Results from clean tree not readable.
2334         (JSCEarlyWarningSystemTest.test_flaky_results_on_clean_tree_pass): Patch has one flake and no failures.
2335         (JSCEarlyWarningSystemTest.test_flaky_results_on_clean_tree_pass_v2): Patch has one flake and no failures.
2336         (JSCEarlyWarningSystemTest.test_flaky_results_on_clean_tree_failure): Patch has flakes and failed tests.
2337         (JSCEarlyWarningSystemTest.test_flaky_results_on_red_tree_pass): Patch has same failures as tree, plus a flake.
2338         * Scripts/webkitpy/tool/bot/jsctestresultsreader.py: Added.
2339         (JSCTestResultsReader): Reads results file.
2340         (JSCTestResultsReader.__init__): Sets attributes.
2341         (JSCTestResultsReader._read_file_contents): Reads file.
2342         (JSCTestResultsReader.results): Reads the results file and returns a JSCTestResults object.
2343         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
2344         (PatchIsNotApplicable): Exception for when patch doesn't have relevant changes.
2345         (PatchAnalysisTask._check_patch_relevance): Added.
2346         (PatchAnalysisTask._build): Check for JSC.
2347         (PatchAnalysisTask._build_without_patch): Check for JSC.
2348         (PatchAnalysisTask._test): Check for JSC.
2349         (PatchAnalysisTask._build_and_test_without_patch): Check for JSC.
2350         (PatchAnalysisTask._retry_jsc_tests): Retry logic for JSC EWS.
2351         (PatchAnalysisTask._retry_layout_tests): Retry logic for layout tests EWS.
2352         (PatchAnalysisTask._test_patch): Add retry logic for JSC.
2353         * Scripts/webkitpy/tool/commands/download.py:
2354         (CheckPatchRelevance): Add check-patch-relevance command.
2355         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
2356         (AbstractEarlyWarningSystem._create_task): Abstract out to enable mocking.
2357         (AbstractEarlyWarningSystem.begin_work_queue): Use JSCTestResultsReader not LayoutTestResultsReader in JSC EWS.
2358         (AbstractEarlyWarningSystem.review_patch): Handle PatchIsApplicable.
2359         (AbstractEarlyWarningSystem.test_results): _layout_test_results_reader -> _test_results_reader.
2360         (AbstractEarlyWarningSystem.archive_last_test_results): _layout_test_results_reader -> _test_results_reader.
2361         (AbstractEarlyWarningSystem.group): This attribute determines the type of EWS (eg. JSC).
2362         (AbstractEarlyWarningSystem.load_ews_classes): Add _group, and make classes of type cls to enable mocking.
2363         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
2364         (TestEWS): Sample layout test EWS class used for unit testing.
2365         (TestJSCEWS): Sample JSC EWS class used for unit testing.
2366         (AbstractEarlyWarningSystemTest.test_failing_tests_message.TestEWS): Add _group.
2367         (AbstractEarlyWarningSystemTest.test_failing_jsc_tests_message.TestEWS): Added test for jsc failures message.
2368         (AbstractEarlyWarningSystemTest): Add _group variable.
2369         (EarlyWarningSystemTest._default_expected_logs): Add check-patch-relevance step, inconclusive logs, and group.
2370         (EarlyWarningSystemTest._test_ews): Add logs_are_conclusive option to pass through to default_expected_logs().
2371         (EarlyWarningSystemTest.test_inconclusive_test_results): Test not removing patch from queue if not conclusive.
2372         (MockAbstractEarlyWarningSystemForInconclusiveJSCResults): Added.
2373         (MockAbstractEarlyWarningSystemForInconclusiveJSCResults._test_patch): Simulates running tests but not getting a conclusive result.
2374         (MockEarlyWarningSystemTaskForInconclusiveJSCResults): Added.
2375         (MockEarlyWarningSystemTaskForInconclusiveJSCResults._create_task): Use MockEarlyWarningSystemTask (not EarlyWarningSystemTask).
2376         * Scripts/webkitpy/tool/steps/__init__.py: Add CheckPatchRelevance import.
2377         * Scripts/webkitpy/tool/steps/build.py:
2378         (Build.options): Check for JSC.
2379         (Build.build): Check for JSC.
2380         (Build.run): Check for JSC.
2381         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py: Added.
2382         (CheckPatchRelevance): Added.
2383         (CheckPatchRelevance._does_contain_change_in_paths): Abstract function to perform regex matching.
2384         (CheckPatchRelevance.run): Check if changed files in patch belong in certain folders.
2385         * Scripts/webkitpy/tool/steps/options.py:
2386         (Options): Add --group command line option.
2387         * Scripts/webkitpy/tool/steps/runtests.py:
2388         (RunTests.options): Add group.
2389         (RunTests.run): Check for JSC.
2390         (RunTests._run_webkit_tests): Check for JSC.
2391         (RunTests): Add _group attribute.
2392         (RunTests._run_javascriptcore_tests): New.
2393         * Scripts/webkitpy/tool/steps/steps_unittest.py: Unit tests.
2394
2395 2017-02-17  Aakash Jain  <aakash_jain@apple.com>
2396
2397         Fix tools that were broken by Efl removal
2398         https://bugs.webkit.org/show_bug.cgi?id=168496
2399
2400         Reviewed by Alexey Proskuryakov.
2401
2402         * QueueStatusServer/config/queues.py:
2403         * Scripts/webkitpy/common/config/ews.json:
2404         * TestResultServer/static-dashboards/builders.jsonp:
2405         * TestResultServer/static-dashboards/flakiness_dashboard.js:
2406         * TestResultServer/static-dashboards/loader_unittests.js:
2407
2408 2017-02-16  Lucas Forschler  <lforschler@apple.com>
2409
2410         https://bugs.webkit.org/show_bug.cgi?id=168442
2411         Move the SVN checkout from http -> https.
2412         Update unit tests.
2413
2414         Reviewed by Alexey Proskuryakov.
2415
2416         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2417         (CheckOutSource.__init__):
2418         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2419         (SVNMirrorTest.get_SVNMirrorFromConfig):
2420         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout_unittests.js:
2421
2422 2017-02-16  Commit Queue  <commit-queue@webkit.org>
2423
2424         Unreviewed, rolling out r212514.
2425         https://bugs.webkit.org/show_bug.cgi?id=168489
2426
2427         broke test runner (Requested by alexchristensen on #webkit).
2428
2429         Reverted changeset:
2430
2431         "Remove EFL-specific files in Tools."
2432         http://trac.webkit.org/changeset/212514
2433
2434 2017-02-16  Alex Christensen  <achristensen@webkit.org>
2435
2436         Remove EFL-specific files in Tools.
2437
2438         Rubber-stamped by Anders Carlsson.
2439
2440         * ImageDiff/efl: Removed.
2441         * ImageDiff/efl/ImageDiff.cpp: Removed.
2442         * MiniBrowser/efl: Removed.
2443         * MiniBrowser/efl/CMakeLists.txt: Removed.
2444         * MiniBrowser/efl/main.c: Removed.
2445         * Scripts/run-efl-tests: Removed.
2446         * Scripts/update-webkitefl-libs: Removed.
2447         * Scripts/webkitpy/port/efl.py: Removed.
2448         * Scripts/webkitpy/port/efl_unittest.py: Removed.
2449         * TestWebKitAPI/Tests/WebKit2/efl: Removed.
2450         * TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp: Removed.
2451         * TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks_Bundle.cpp: Removed.
2452         * TestWebKitAPI/Tests/WebKit2/efl/WKViewScrollTo.cpp: Removed.
2453         * TestWebKitAPI/Tests/WebKit2/efl/scrollTo.html: Removed.
2454         * TestWebKitAPI/efl: Removed.
2455         * TestWebKitAPI/efl/InjectedBundleController.cpp: Removed.
2456         * TestWebKitAPI/efl/PlatformUtilities.cpp: Removed.
2457         * TestWebKitAPI/efl/PlatformWebView.cpp: Removed.
2458         * TestWebKitAPI/efl/main.cpp: Removed.
2459         * WebKitTestRunner/InjectedBundle/efl: Removed.
2460         * WebKitTestRunner/InjectedBundle/efl/ActivateFontsEfl.cpp: Removed.
2461         * WebKitTestRunner/InjectedBundle/efl/FontManagement.cpp: Removed.
2462         * WebKitTestRunner/InjectedBundle/efl/FontManagement.h: Removed.
2463         * WebKitTestRunner/InjectedBundle/efl/InjectedBundleEfl.cpp: Removed.
2464         * WebKitTestRunner/InjectedBundle/efl/TestRunnerEfl.cpp: Removed.
2465         * WebKitTestRunner/efl: Removed.
2466         * WebKitTestRunner/efl/EventSenderProxyEfl.cpp: Removed.
2467         * WebKitTestRunner/efl/PlatformWebViewEfl.cpp: Removed.
2468         * WebKitTestRunner/efl/TestControllerEfl.cpp: Removed.
2469         * WebKitTestRunner/efl/main.cpp: Removed.
2470         * efl: Removed.
2471         * efl/install-dependencies: Removed.
2472         * efl/jhbuild-optional.modules: Removed.
2473         * efl/jhbuild.modules: Removed.
2474         * efl/jhbuildrc: Removed.
2475         * efl/patches: Removed.
2476         * efl/patches/evas-fix-build-with-giflib5.patch: Removed.
2477         * efl/patches/fontconfig-C-11-requires-a-space-between-literal-and-identifier.patch: Removed.
2478         * efl/patches/gst-libav.patch: Removed.
2479         * efl/patches/gst-plugins-base-rtp-rtcpbuffer-fix-typo-in-enum.patch: Removed.
2480         * efl/patches/gst-plugins-good-Revert-qtdemux-expose-streams-with-first-moof-for-fr.patch: Removed.
2481         * efl/patches/gst-plugins-good-use-the-tfdt-decode-time.patch: Removed.
2482         * efl/patches/openwebrtc-gst-plugins-clang-warning-fix.patch: Removed.
2483
2484 2017-02-16  Myles C. Maxfield  <mmaxfield@apple.com>
2485
2486         font-weight in @font-face can cause a font to be downloaded even when it's not used
2487         https://bugs.webkit.org/show_bug.cgi?id=168114
2488         <rdar://problem/30301317>
2489
2490         Reviewed by Darin Adler.
2491
2492         LastResort needs to be usable in tests.
2493
2494         * DumpRenderTree/mac/DumpRenderTree.mm:
2495         (allowedFontFamilySet):
2496         * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
2497         (WTR::allowedFontFamilySet):
2498         * WebKitTestRunner/mac/TestControllerMac.mm:
2499         (WTR::allowedFontFamilySet):
2500
2501 2017-02-16  Alex Christensen  <achristensen@webkit.org>
2502
2503         Remove old URL parser
2504         https://bugs.webkit.org/show_bug.cgi?id=168483
2505
2506         Reviewed by Tim Horton.
2507
2508         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2509         (TestWebKitAPI::checkURL):
2510         (TestWebKitAPI::checkRelativeURL):
2511         (TestWebKitAPI::checkURLDifferences):
2512         (TestWebKitAPI::checkRelativeURLDifferences):
2513
2514 2017-02-16  Wenson Hsieh  <wenson_hsieh@apple.com>
2515
2516         [WK2] Add additional test infrastructure and unit tests for data interaction
2517         https://bugs.webkit.org/show_bug.cgi?id=168439
2518         <rdar://problem/30557942>
2519
2520         Reviewed by Tim Horton.
2521
2522         Adds test support for additional data interaction scenarios that we currently cannot test, and also adds 7 new
2523         test cases to DataInteractionTests. Most of the changes here refactor and augment DataInteractionSimulator to
2524         support data interaction from  See per-method descriptions below for more details.
2525
2526         * Configurations/TestWebKitAPI.xcconfig:
2527
2528         Add MobileCoreServices to the list of additional frameworks to link against on iOS.
2529
2530         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2531
2532         Add a new build phase that copies additional resources from WebKitAdditions/Resources/TestWebKitAPI and dumps
2533         them into TestWebKitAPI.resources/ in the build directory, if the WebKitAdditions folder exists.
2534
2535         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2536         (-[TestWKWebView editorContainsImageElement]):
2537         (-[TestWKWebView editorValue]):
2538
2539         New helper methods for querying information from the "editor" element in a test page.
2540
2541         (TestWebKitAPI::TEST):
2542         (TestWebKitAPI::runTestsExpectingToObserveEvents): Deleted.
2543
2544         Moves logic for capturing events during a simulated data interaction run from the test file to
2545         DataInteractionSimulator. See -[DataInteractionSimulator observedEventNames].
2546
2547         * TestWebKitAPI/cocoa/TestWKWebView.h:
2548         * TestWebKitAPI/cocoa/TestWKWebView.mm:
2549         (-[TestMessageHandler removeMessage:]):
2550         (-[TestWKWebView clearMessageHandlers:]):
2551
2552         Add the ability to clear message handlers from the TestWKWebView.
2553
2554         * TestWebKitAPI/ios/DataInteractionSimulator.h:
2555         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
2556         (dataInteractionEventNames):
2557         (-[DataInteractionSimulator initWithWebView:]):
2558         (-[DataInteractionSimulator _resetSimulatedState]):
2559
2560         Moves logic to clear test harness state from any previous runs into a helper. Called at the beginning when
2561         simulating data interaction.
2562
2563         (-[DataInteractionSimulator observedEventNames]):
2564
2565         Returns a list of the names of events relevant to data interaction that were observed over the course of the
2566         most recent run.
2567
2568         (-[DataInteractionSimulator runFrom:to:]):
2569
2570         Changes -run to -runFrom:to:, which takes window-relative start and end locations. This allows the test harness
2571         to run the same data interaction for multiple simulated gestures.
2572
2573         (-[DataInteractionSimulator _advanceProgress]):
2574         (-[DataInteractionSimulator _finishDataInteraction]):
2575         (-[DataInteractionSimulator externalItemProvider]):
2576         (-[DataInteractionSimulator setExternalItemProvider:]):
2577
2578         Adds the -externalItemProvider property to DataInteractionSimulator. Setting this skips the gesture recognition
2579         phase of a test run.
2580
2581         (-[DataInteractionSimulator webViewDidPerformDataInteractionControllerOperation:]):
2582         (-[DataInteractionSimulator webView:beginDataInteractionWithSourceIndex:gestureRecognizer:]):
2583         (-[DataInteractionSimulator webViewDidSendDataInteractionStartRequest:]):
2584         (-[DataInteractionSimulator webView:didReceiveDataInteractionStartResponse:]):
2585
2586         While a request to start data interaction is in flight, put the remainder of the test on hold until the web
2587         process returns. Then continue the test by scheduling a progress advance call. This addresses a race condition
2588         wherein the the web process might take longer than usual to process the request to start data interaction, and
2589         in the meantime, DataInteractionSimulator would end up completing the rest of the test before a response from
2590         the web process is received, which then causes no simulated delegate methods to be fired.
2591
2592         (-[DataInteractionSimulator initWithWebView:startLocation:endLocation:]): Deleted.
2593         (-[DataInteractionSimulator run]): Deleted.
2594
2595 2017-02-16  Wenson Hsieh  <wenson_hsieh@apple.com>
2596
2597         Remove unused test pages in TestWebKitAPI
2598         https://bugs.webkit.org/show_bug.cgi?id=168462
2599
2600         Reviewed by Anders Carlsson.
2601
2602         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2603         * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Removed.
2604         * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Removed.
2605         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Removed.
2606         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Removed.
2607         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Removed.
2608
2609 2017-02-16  Alex Christensen  <achristensen@webkit.org>
2610
2611         Special URLs without a host are invalid
2612         https://bugs.webkit.org/show_bug.cgi?id=168461
2613
2614         Reviewed by Tim Horton.
2615
2616         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2617         (TestWebKitAPI::TEST_F):
2618
2619 2017-02-10  Filip Pizlo  <fpizlo@apple.com>
2620
2621         The collector thread should only start when the mutator doesn't have heap access
2622         https://bugs.webkit.org/show_bug.cgi?id=167737
2623
2624         Reviewed by Keith Miller.
2625         
2626         Make more tests collect continuously.
2627
2628         * Scripts/run-jsc-stress-tests:
2629
2630 2017-02-16  Tim Horton  <timothy_horton@apple.com>
2631
2632         WKWebView inside a UICollectionView flashes when items are inserted above it
2633         https://bugs.webkit.org/show_bug.cgi?id=168376
2634         <rdar://problem/29322051>
2635
2636         Reviewed by Simon Fraser.
2637
2638         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
2639         (-[TestRunnerWKWebView _setStableStateOverride:]):
2640         Update the one external caller of this internal method...
2641
2642         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2643         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
2644         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2645         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
2646         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2647         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2648         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
2649         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2650         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2651         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
2652         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
2653         (WTR::UIScriptController::doAfterVisibleContentRectUpdate):
2654         Expose doAfterVisibleContentRectUpdate to DRT and WKTR. It is called
2655         back after we dispatch a visible content rect update from the UI process
2656         to the Web Content process, so any messages sent from the block will arrive
2657         after the visible content rect update.
2658
2659 2017-02-16  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2660
2661         [GTK] Add two new buildbots that build-only test on Debian stable and Ubuntu LTS.
2662         https://bugs.webkit.org/show_bug.cgi?id=168321
2663
2664         This bots should be added to the trunk build scheduler.
2665         Unreviewed fix after r212429.
2666
2667         * BuildSlaveSupport/build.webkit.org-config/config.json:
2668
2669 2017-02-16  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2670
2671         [GTK] Add two new buildbots that build-only test on Debian stable and Ubuntu LTS
2672         https://bugs.webkit.org/show_bug.cgi?id=168321
2673
2674         Reviewed by Michael Catanzaro.
2675
2676         The additionalArgument --default-cmake-features is used both to
2677         skip the JHBuild (InstallGtkDependencies) build step and to build
2678         with the default features from the CMake config.
2679
2680         * BuildSlaveSupport/build.webkit.org-config/config.json:
2681         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2682         (Factory.__init__):
2683         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2684
2685 2017-02-15  Lucas Forschler  <lforschler@apple.com>
2686
2687         https://bugs.webkit.org/show_bug.cgi?id=168386
2688         Remove EFL from build.webkit.org
2689
2690         Reviewed by Alex Christensen
2691
2692         * BuildSlaveSupport/build.webkit.org-config/config.json:
2693         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2694         (DeleteStaleBuildFiles.start):
2695         (appendCustomBuildFlags):
2696         (RunWebKitTests.start):
2697         (RunBuiltinsTests):
2698         (Factory.__init__):
2699         (TestFactory.__init__):
2700         (loadBuilderConfig):
2701         (InstallEflDependencies): Deleted.
2702         (RunEflAPITests): Deleted.
2703         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py:
2704         * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
2705         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
2706         (BubbleQueueServer):
2707         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
2708         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/MetricsAnalyzer.js:
2709         (Analyzer.prototype._triggeringQueue):
2710         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2711         (WebKitBuildbot):
2712         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2713         (table.queue-grid tr.platform.linux-efl img.logo): Deleted.
2714         * BuildSlaveSupport/build.webkit.org-config/templates/root.html:
2715         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
2716         (_should_file_trigger_build):
2717
2718 2017-02-15  Alex Christensen  <achristensen@webkit.org>
2719
2720         Unreviewed, rolling out r212169.
2721
2722         Broke iOS WebInspector
2723
2724         Reverted changeset:
2725
2726         "WebInspector: refactor RemoteInspector to move cocoa specific
2727         code to their own files"
2728         https://bugs.webkit.org/show_bug.cgi?id=166681
2729         http://trac.webkit.org/changeset/212169
2730
2731 2017-02-15  Jonathan Bedard  <jbedard@apple.com>
2732
2733         webkitpy: Fix DarwinPort._get_crash_log()
2734         https://bugs.webkit.org/show_bug.cgi?id=168372
2735         <rdar://problem/30535156>
2736
2737         Reviewed by Daniel Bates.
2738
2739         Callers of _get_crash_log expect a pair to be returned and do not check it's return value.  
2740         DarwinPort should return the expected return value for _get_crash_log.
2741
2742         * Scripts/webkitpy/port/darwin.py:
2743         (DarwinPort._get_crash_log): Call parent class's implementation of _get_crash_log.
2744
2745 2017-02-15  Chris Dumez  <cdumez@apple.com>
2746
2747         [iOS] Form Validation Bubble should be sensitive to Dynamic Type
2748         https://bugs.webkit.org/show_bug.cgi?id=168291
2749         <rdar://problem/30508593>
2750
2751         Reviewed by Tim Horton.
2752
2753         Drop overridePreference() implementation in iOS's UIScriptController
2754         as it was only used for the minimum font size setting and this setting
2755         is not exposed on iOS.
2756
2757         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2758         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2759         (WTR::UIScriptController::overridePreference):
2760         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2761
2762 2017-02-15  Jonathan Bedard  <jbedard@apple.com>
2763
2764         webkitpy: Memoize app_identifier_from_bundle for efficiency, call parent class for _get_crash_log
2765         https://bugs.webkit.org/show_bug.cgi?id=168329
2766         <rdar://problem/30518832>
2767
2768         Reviewed by Daniel Bates.
2769
2770         When testing on device, app_identifier_from_bundle is repeatedly called but the return value will
2771         never change given the same input arguments.  Memoize function for efficiency.
2772
2773         * Scripts/webkitpy/port/darwin.py: Add memoized import.
2774         (DarwinPort):
2775         (DarwinPort.app_identifier_from_bundle): Memoize to avoid extra executions of PlistBuddy.
2776         
2777
2778 2017-02-15  Jonathan Bedard  <jbedard@apple.com>
2779
2780         webkitpy: Remove unused import from darwin.py
2781         https://bugs.webkit.org/show_bug.cgi?id=168371
2782
2783         Reviewed by Alex Christensen.
2784
2785         * Scripts/webkitpy/port/darwin.py: Remove unused 'time' module.
2786
2787 2017-02-15  Carlos Garcia Campos  <cgarcia@igalia.com>
2788
2789         [SOUP] Credentials stored by libsoup are used even StoredCredentials policy is DoNotAllowStoredCredentials
2790         https://bugs.webkit.org/show_bug.cgi?id=168364
2791
2792         Reviewed by Michael Catanzaro.
2793
2794         This can happen if a previous load with allowed to use stored credentials authenticated successfully, saving the
2795         credentials in libsoup. It's actually a libsoup bug, but since it's causing layout test failures and we have
2796         patches for them, let's patch out jhbuild until we have a new libsoup version to depend on.
2797
2798         Fixes: http/tests/security/credentials-from-different-domains.html
2799                http/tests/xmlhttprequest/cross-origin-no-authorization.html
2800
2801         * gtk/jhbuild.modules:
2802         * gtk/patches/libsoup-auth-Fix-async-authentication-when-flag-SOUP_MESSAGE.patch: Added.
2803         * gtk/patches/libsoup-auth-do-not-use-cached-credentials-in-lookup-method-.patch: Added.
2804
2805 2017-02-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2806
2807         [GTK] Update cookie manager API to properly work with ephemeral sessions
2808         https://bugs.webkit.org/show_bug.cgi?id=168230
2809
2810         Reviewed by Michael Catanzaro.
2811
2812         Update unit tests and add new cases for the new API.
2813
2814         * MiniBrowser/gtk/main.c:
2815         (gotWebsiteDataCallback):
2816         * TestWebKitAPI/Tests/WebKit2Gtk/TestCookieManager.cpp:
2817         (testCookieManagerEphemeral):
2818         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebContext.cpp:
2819         (testWebContextEphemeral):
2820         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitWebView.cpp:
2821         (testWebViewEphemeral):
2822         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebsiteData.cpp:
2823         (serverCallback):
2824         (testWebsiteDataEphemeral):
2825         (testWebsiteDataCookies):
2826         (beforeAll):
2827
2828 2017-02-14  Wenson Hsieh  <wenson_hsieh@apple.com>
2829
2830         [WK2] Support data interaction on links
2831         https://bugs.webkit.org/show_bug.cgi?id=168331
2832         <rdar://problem/30200837>
2833
2834         Reviewed by Tim Horton.
2835
2836         Adds 2 unit tests checking that data interaction from a link (with or without a background image) into an
2837         editable area results in the link URL being inserted.
2838
2839         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2840         * TestWebKitAPI/Tests/WebKit2Cocoa/background-image-link-and-input.html: Added.
2841         * TestWebKitAPI/Tests/WebKit2Cocoa/link-and-input.html: Added.
2842         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2843         (TestWebKitAPI::TEST):
2844
2845 2017-02-14  Jason Rinn  <jrinn@apple.com>
2846
2847         Add a test for new WebKit Cocoa API, _getContentsAsString.
2848         https://bugs.webkit.org/show_bug.cgi?id=168147
2849         <rdar://problem/30502539>
2850
2851         Reviewed by Tim Horton.
2852
2853         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2854         * TestWebKitAPI/Tests/WebKit2Cocoa/WKWebViewGetContents.mm: Added.
2855         (TEST):
2856
2857 2017-02-14  Matt Rajca  <mrajca@apple.com>
2858
2859         Website policies: iframes should respect the autoplay policy of the top-level document
2860         https://bugs.webkit.org/show_bug.cgi?id=168333
2861
2862         Reviewed by Alex Christensen.
2863
2864         * TestWebKitAPI/Tests/WebKit2/autoplay-check-frame.html: Added.
2865         * TestWebKitAPI/Tests/WebKit2/autoplay-check-in-iframe.html: Added.
2866         * TestWebKitAPI/Tests/WebKit2Cocoa/WebsitePolicies.mm:
2867         (-[AutoplayPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2868         (TEST):
2869
2870 2017-02-14  Chris Dumez  <cdumez@apple.com>
2871
2872         HTML Form Validation bubble should take minimum font size setting into consideration
2873         https://bugs.webkit.org/show_bug.cgi?id=168271
2874         <rdar://problem/29869869>
2875
2876         Reviewed by Simon Fraser.
2877
2878         Extend UIScriptController's contentsOfUserInterfaceItem() to also return the
2879         font size of the validation bubble.
2880
2881         Add an overridePreference() method to UIScriptController. This is currently
2882         used to override the value of the minimumFontSize setting. testRunner's
2883         overridePreference() is not usable on WK2 because it does not update the
2884         value of the preference on the UIProcess side.
2885
2886         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2887         (WTR::UIScriptController::overridePreference):
2888         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2889         (WTR::UIScriptController::overridePreference):
2890         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
2891         * TestRunnerShared/UIScriptContext/UIScriptController.h:
2892         * WebKitTestRunner/TestController.cpp:
2893         (WTR::TestController::resetPreferencesToConsistentValues):
2894         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2895         (WTR::UIScriptController::overridePreference):
2896         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
2897         (WTR::UIScriptController::contentsOfUserInterfaceItem):
2898         (WTR::UIScriptController::overridePreference):
2899
2900 2017-02-14  Florian Bruhin  <git@the-compiler.org>
2901
2902         Use a set instead of a list for tests when parsing expectations
2903         https://bugs.webkit.org/show_bug.cgi?id=168304
2904
2905         In _collect_matching_tests, a lot of membership tests are done on a giant list
2906         of strings. By making it a set instead, we can make those much faster, and
2907         there's no reason for it to be a list.
2908
2909         With ~45k tests and some 1000 expectations, this reduces the parse time from 34s
2910         to 3s on my machine.
2911
2912         Reviewed by Ryosuke Niwa.
2913
2914         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
2915         (TestExpectationParser.__init__):
2916         (TestExpectationParser._collect_matching_tests):
2917
2918 2017-02-14  Jonathan Bedard  <jbedard@apple.com>
2919
2920         Unreviewed build-fix after r212297.
2921
2922         * Scripts/webkitpy/port/simulator_process.py:
2923         (SimulatorProcess.stop): Should return value of the ServerProcess's stop.
2924
2925 2017-02-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2926
2927         [CMake] build-webkit should allow building with the default cmake configuration
2928         https://bugs.webkit.org/show_bug.cgi?id=168323
2929
2930         Reviewed by Michael Catanzaro.
2931
2932         Add a --default-cmake-features switch that makes the script pass
2933         no value for any of the features defined by build-webkit, that
2934         way the default values from the port cmake config will be used.
2935
2936         * Scripts/build-webkit:
2937         (cMakeArgsFromFeatures):
2938
2939 2017-02-14  Jonathan Bedard  <jbedard@apple.com>
2940
2941         Unreviewed build-fix after r212297.
2942
2943         * Scripts/webkitpy/port/simulator_process.py:
2944         (SimulatorProcess.stop): Handle case where there is no process to kill.
2945
2946 2017-02-14  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2947
2948         [CMake] build-webkit should print the cmake command executed
2949         https://bugs.webkit.org/show_bug.cgi?id=168318
2950
2951         Reviewed by Michael Catanzaro.
2952
2953         Run the cmake commands to configure or start the build through
2954         a wrapper that prints the command before executing it.
2955
2956         * Scripts/webkitdirs.pm:
2957         (systemVerbose):
2958         (generateBuildSystemFromCMakeProject):
2959         (buildCMakeGeneratedProject):
2960         (cleanCMakeGeneratedProject):
2961
2962 2017-02-14  Jonathan Bedard  <jbedard@apple.com>
2963
2964         run-webkit-tests for iOS Simulator always complains that stopping WebKitTestRunnerApp.app times out
2965         https://bugs.webkit.org/show_bug.cgi?id=168150
2966
2967         Reviewed by Alexey Proskuryakov.
2968
2969         * Scripts/webkitpy/port/simulator_process.py:
2970         (SimulatorProcess.stop): Close app before calling ServerProcess's stop.
2971         (SimulatorProcess._kill): Move closing of app into stop().
2972         * Scripts/webkitpy/xcode/simulator.py:
2973         (Device.launch_app):
2974         (Device.terminate_app): Deleted.
2975
2976 2017-02-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2977
2978         REGRESSION(r212192): [GTK] Broke downloads API tests
2979         https://bugs.webkit.org/show_bug.cgi?id=168193
2980
2981         Unreviewed. Update test expectations after r212192.
2982
2983         The suggested filename now includes a file extensions if the MIME type is known.
2984
2985         * TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:
2986         (testDownloadRemoteFile):
2987         (testDownloadMIMEType):
2988
2989 2017-02-14  Commit Queue  <commit-queue@webkit.org>
2990
2991         Unreviewed, rolling out r212237.
2992         https://bugs.webkit.org/show_bug.cgi?id=168298
2993
2994         This was a wrong fix (Requested by rniwa on #webkit).
2995
2996         Reverted changeset:
2997
2998         "Nwtr unexpectedly passes mismatch ref test if the hashes
2999         doesn't match but no diff"
3000         https://bugs.webkit.org/show_bug.cgi?id=168221
3001         http://trac.webkit.org/changeset/212237
3002
3003 2017-02-13  Alex Christensen  <achristensen@webkit.org>
3004
3005         URLs with an invalid IPv4 address should be invalid
3006         https://bugs.webkit.org/show_bug.cgi?id=168260
3007
3008         Reviewed by Tim Horton.
3009
3010         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3011         (TestWebKitAPI::TEST_F):
3012         Update tests to reflect new correct behavior.
3013
3014 2017-02-13  Don Olmstead  <don.olmstead@am.sony.com>
3015
3016         [WinCairo] Add Build Slave
3017         https://bugs.webkit.org/show_bug.cgi?id=168263
3018
3019         Reviewed by Lucas Forschler.
3020
3021         * BuildSlaveSupport/build.webkit.org-config/config.json:
3022
3023 2017-02-13  Wenson Hsieh  <wenson_hsieh@apple.com>
3024
3025         Fix the build after r212254
3026
3027         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
3028         (-[DataInteractionSimulator _currentLocation]):
3029
3030 2017-02-13  Wenson Hsieh  <wenson_hsieh@apple.com>
3031
3032         [WK2] Add test infrastructure and unit tests for data interaction
3033         https://bugs.webkit.org/show_bug.cgi?id=168159
3034         <rdar://problem/30477634>
3035
3036         Reviewed by Tim Horton.
3037
3038         Uses the testing delegate introduced in WebKit2 to override the gesture recognizer used to initiate data
3039         interaction. Instead of being driven by UIKit, the DataInteractionSimulator drives this overridden gesture
3040         recognizer by making the WKContentView call its dataInteractionGestureRecognized method. To simulate an actual
3041         gesture being performed, we fire the gesture recognizer (or call the data interaction delegate methods, if the
3042         gesture has already been recognized) at regular intervals over the course of the test.
3043
3044         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3045         * TestWebKitAPI/Tests/WebKit2Cocoa/autofocus-contenteditable.html: Added.
3046         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-contenteditable.html: Added.
3047         * TestWebKitAPI/Tests/WebKit2Cocoa/image-and-textarea.html: Added.
3048
3049         New test pages for data interaction.
3050
3051         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm: Added.
3052         (TestWebKitAPI::runTestsExpectingToObserveEvents):
3053         (TestWebKitAPI::TEST):
3054         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3055         (-[TestWKWebView stringByEvaluatingJavaScript:]):
3056         * TestWebKitAPI/ios/DataInteractionSimulator.h: Added.
3057         * TestWebKitAPI/ios/DataInteractionSimulator.mm: Added.
3058         (-[MockLongPressGestureRecognizer initWithWindow:]):
3059         (-[MockLongPressGestureRecognizer locationInView:]):
3060         (-[MockLongPressGestureRecognizer state]):
3061         (-[MockLongPressGestureRecognizer numberOfTouches]):
3062         (-[DataInteractionSimulator initWithWebView:startLocation:endLocation:]):
3063         (-[DataInteractionSimulator dealloc]):
3064         (-[DataInteractionSimulator run]):
3065
3066         Performs a data interaction gesture from the start location to the end location with linear interpolation. For
3067         now, the timestep and progress per tick are 30ms and 3.33%, respectively, which means that tests should complete
3068         in a little under 1 second, though this can be easily changed to be configurable in the future if needed.
3069
3070         (-[DataInteractionSimulator _advanceProgress]):
3071
3072         Fired periodically to drive the data interaction gesture. Schedules a call of itself until the test is
3073         completed, and calls _finishDataInteraction when progress is at 1.
3074
3075         (-[DataInteractionSimulator _finishDataInteraction]):
3076         (-[DataInteractionSimulator _currentLocation]):
3077         (-[DataInteractionSimulator _scheduleAdvanceProgress]):
3078         (-[DataInteractionSimulator _recognizeGestureAtLocation:withState:]):
3079         (-[DataInteractionSimulator dataInteractionGestureRecognizer]):
3080         (-[DataInteractionSimulator webViewDidPerformDataInteractionControllerOperation:]):
3081         (-[DataInteractionSimulator webView:beginDataInteractionWithSourceIndex:gestureRecognizer:]):
3082
3083 2017-02-13  Alex Christensen  <achristensen@webkit.org>
3084
3085         Percent should be allowed in non-special URL hosts
3086         https://bugs.webkit.org/show_bug.cgi?id=168255
3087
3088         Reviewed by Tim Horton.
3089
3090         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
3091         (TestWebKitAPI::TEST_F):
3092
3093 2017-02-13  Fujii Hironori  <Hironori.Fujii@sony.com>
3094
3095         Nwtr unexpectedly passes mismatch ref test if the hashes doesn't match but no diff
3096         https://bugs.webkit.org/show_bug.cgi?id=168221
3097
3098         Reviewed by Ryosuke Niwa.
3099
3100         There is a logic error in comparing mismatch ref test images. In
3101         mismatch ref tests, it should be failed if two images has no diff.
3102         But, if the hashes are different, nwtr unexpectedly pass the
3103         mismatch ref test.
3104
3105         * Scripts/webkitpy/layout_tests/controllers/single_test_runner.py:
3106         (SingleTestRunner._compare_output_with_reference): Fail the
3107         mismatch ref test if hashes of two images are equal. Invoke
3108         ImageDiff if the hashes don't match.
3109
3110 2017-02-13  Myles C. Maxfield  <mmaxfield@apple.com>
3111
3112         Update custom line breaking iterators to the latest version of Unicode
3113         https://bugs.webkit.org/show_bug.cgi?id=168182
3114
3115         Reviewed by Zalan Bujtas.
3116
3117         Treat the system's ICU as the source of truth to compare breaking positions against.
3118
3119         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3120         * TestWebKitAPI/Tests/WebCore/LineBreaking.mm: Added.
3121         (generateJavaScriptForTest):
3122         (breakingLocationsFromICU):
3123         (testAFewStrings):
3124         (TEST):
3125         * TestWebKitAPI/Tests/WebKit2Cocoa/AllAhem.svg: Renamed from LayoutTests/css3/line-break/resources/AllAhem.svg.
3126         * TestWebKitAPI/Tests/WebKit2Cocoa/LineBreaking.html: Added.
3127
3128 2017-02-12  Michael Catanzaro  <mcatanzaro@igalia.com>
3129
3130         [GTK] Several failing WebViewEditor API tests
3131         https://bugs.webkit.org/show_bug.cgi?id=161608
3132
3133         Reviewed by Carlos Garcia Campos.
3134
3135         Selection.collapse() requires arguments; passing no arguments means the JS that selects the
3136         text range here never gets evaluated. Perhaps there was a DOM API change? Changing it to use
3137         Selection.removeAllRanges(), which seems like a better function anyway, fixes all the tests
3138         except the first one, which is still broken due to unrelated bug #151654.
3139
3140         * Scripts/run-gtk-tests:
3141         (TestRunner):
3142         * TestWebKitAPI/Tests/WebKit2Gtk/TestWebViewEditor.cpp:
3143
3144 2017-02-12  Michael Catanzaro  <mcatanzaro@igalia.com>
3145
3146         Unreviewed, skip flaky WebKitPrintOperation/custom-widget test
3147
3148         * Scripts/run-gtk-tests:
3149         (TestRunner):
3150
3151 2017-02-12  Michael Catanzaro  <mcatanzaro@igalia.com>
3152
3153         Unreviewed, skip flaky form-controls-associated-signal test
3154
3155         * Scripts/run-gtk-tests:
3156         (TestRunner):
3157
3158 2017-02-12  Carlos Garcia Campos  <cgarcia@igalia.com>
3159
3160         [GTK] Handle caps lock indicator in event modifiers
3161         https://bugs.webkit.org/show_bug.cgi?id=168186
3162
3163         Reviewed by Michael Catanzaro.
3164
3165         * WebKitTestRunner/gtk/EventSenderProxyGtk.cpp:
3166         (WTR::webkitModifiersToGDKModifiers): Handle kWKEventModifiersCapsLockKey.
3167
3168 2017-02-11  Simon Fraser  <simon.fraser@apple.com>
3169
3170         MiniBrowser WK1 fails to update URL for within-page navigations
3171         https://bugs.webkit.org/show_bug.cgi?id=168173
3172
3173         Reviewed by Tim Horton.
3174         
3175         Implement -webView:didChangeLocationWithinPageForFrame: so that clicking on named
3176         anchors updates the URL field.
3177
3178         * MiniBrowser/mac/WK1BrowserWindowController.m:
3179         (-[WK1BrowserWindowController webView:didChangeLocationWithinPageForFrame:]):
3180
3181 2017-02-10  John Wilander  <wilander@apple.com>
3182
3183         Updates to Resource Load Statistics: Get the right website data store and introduce timeout for user interaction
3184         https://bugs.webkit.org/show_bug.cgi?id=167474
3185         <rdar://problem/24681808>
3186         <rdar://problem/24703286>
3187         <rdar://problem/30290270>
3188
3189         This patch adds test infrastructure to allow testing 
3190         of the various rules in place for data records removal.
3191
3192         Reviewed by Andy Estes.
3193
3194         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3195         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3196         (WTR::InjectedBundle::didReceiveMessageToPage):
3197             Callback mechanism to tell pages that a website data store
3198             scan has happened.
3199         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3200         (WTR::TestRunner::setStatisticsPrevalentResource):
3201         (WTR::TestRunner::isStatisticsPrevalentResource):
3202         (WTR::TestRunner::setStatisticsHasHadUserInteraction):
3203         (WTR::TestRunner::isStatisticsHasHadUserInteraction):
3204         (WTR::TestRunner::setStatisticsTimeToLiveUserInteraction):
3205         (WTR::TestRunner::installStatisticsDidModifyDataRecordsCallback):
3206         (WTR::TestRunner::statisticsDidModifyDataRecordsCallback):
3207         (WTR::TestRunner::statisticsFireDataModificationHandler):
3208         (WTR::TestRunner::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
3209         (WTR::TestRunner::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
3210         (WTR::TestRunner::setStatisticsMinimumTimeBetweeenDataRecordsRemoval):
3211         (WTR::TestRunner::statisticsResetToConsistentState):
3212         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3213         * WebKitTestRunner/TestController.cpp:
3214         (WTR::TestController::setStatisticsPrevalentResource):
3215         (WTR::TestController::isStatisticsPrevalentResource):
3216         (WTR::TestController::setStatisticsHasHadUserInteraction):
3217         (WTR::TestController::isStatisticsHasHadUserInteraction):
3218         (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
3219         (WTR::TestController::statisticsFireDataModificationHandler):
3220         (WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
3221         (WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
3222         (WTR::TestController::setStatisticsMinimumTimeBetweeenDataRecordsRemoval):
3223         (WTR::TestController::statisticsResetToConsistentState):
3224         * WebKitTestRunner/TestController.h:
3225             These are all configuration and test functions.
3226         * WebKitTestRunner/TestInvocation.cpp:
3227         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3228
3229 2017-02-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3230
3231         REGRESSION(r182916) run-perf-tests never timeouts
3232         https://bugs.webkit.org/show_bug.cgi?id=167626
3233
3234         Reviewed by Ryosuke Niwa.
3235
3236         The --time-out-ms value (defaults to 600 seconds) of run-perf-tests
3237         was beeing ignored because the driver was created with no_timeout=True
3238         unconditionally.
3239         This adds a new parameter --no-timeout (disabled by default), that
3240         allows to use the driver with the expected timeout values.
3241         It also passes --no-timeout to DRT/WTR to ensure that timeouts
3242         are always controlled by the Python Driver.
3243
3244         * Scripts/webkitpy/performance_tests/perftest.py:
3245         (PerfTest._create_driver): Only disable timeout if --no-timeout is passed.
3246         (PerfTest.run): Disabling timeout should be done when the Driver is created.
3247         * Scripts/webkitpy/performance_tests/perftestsrunner.py:
3248         (PerfTestsRunner.__init__): Ensure --no-timeout is passed to DRT/WTR
3249         (PerfTestsRunner._parse_args): Add a --no-timeout parameter.
3250         (_run_tests_set): Pass the no-timeout parameter.
3251         * Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:
3252         (MainTest.test_drt_notimeout): Test --no-timeout is passed to DRT/WTR
3253         (MainTest.test_default_args): Test default values for additional_drt_flag and no_timeout.
3254         (MainTest.test_parse_args): Test that the argument no-timeout.
3255
3256 2017-02-10  Daniel Bates  <dabates@apple.com>
3257
3258         Detach frame from document when entering page cache
3259         https://bugs.webkit.org/show_bug.cgi?id=166774
3260         <rdar://problem/29904368>
3261
3262         Reviewed by Chris Dumez.
3263
3264         * DumpRenderTree/mac/DumpRenderTree.mm:
3265         (resetWebPreferencesToConsistentValues):
3266         * DumpRenderTree/win/DumpRenderTree.cpp:
3267         (resetWebPreferencesToConsistentValues):
3268         * WebKitTestRunner/TestController.cpp:
3269         (WTR::TestController::resetPreferencesToConsistentValues):
3270
3271 2017-02-10  Tim Horton  <timothy_horton@apple.com>
3272
3273         Infinite UI process hang under ensurePositionInformationIsUpToDate
3274         https://bugs.webkit.org/show_bug.cgi?id=168154
3275         <rdar://problem/30428673>
3276
3277         Reviewed by Simon Fraser.
3278
3279         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3280         * TestWebKitAPI/Tests/WebKit2Cocoa/InteractionDeadlockAfterCrash.mm: Added.
3281         (recursiveFindHighlightLongPressRecognizer):
3282         (TEST):
3283         Add a somewhat nasty test that does an async interaction information update, but
3284         kills the Web process before it arrives, and then does a sync interaction
3285         information update, which will wait for the oustanding async interaction
3286         information update if we still think it's coming. Before the patch, this
3287         test times out with the UI process stuck under ensurePositionInformationIsUpToDate.
3288
3289 2017-02-10  Simon Fraser  <simon.fraser@apple.com>
3290
3291         Make sure the "inwindow" flag propagates to TiledBackings for masks and reflections
3292         https://bugs.webkit.org/show_bug.cgi?id=168127
3293         rdar://problem/30467120
3294
3295         Reviewed by Tim Horton.
3296
3297         Reparent the web view before we try to fetch it via:
3298             [[[window contentView] subviews] objectAtIndex:0];
3299         which would throw an exception if the test unparented it.
3300
3301         * DumpRenderTree/mac/DumpRenderTree.mm:
3302         (resetWebViewToConsistentStateBeforeTesting):
3303         (runTest):
3304
3305 2017-02-10  Joseph Pecoraro  <pecoraro@apple.com>
3306
3307         [Resource Timing] Enable Resource Timing by default in Tests
3308         https://bugs.webkit.org/show_bug.cgi?id=168145
3309
3310         Reviewed by Ryosuke Niwa.
3311
3312         * DumpRenderTree/mac/DumpRenderTree.mm:
3313         (resetWebPreferencesToConsistentValues):
3314         * DumpRenderTree/win/DumpRenderTree.cpp:
3315         (resetWebPreferencesToConsistentValues):
3316         * WebKitTestRunner/TestController.cpp:
3317         (WTR::TestController::resetPreferencesToConsistentValues):
3318
3319 2017-02-10  Jonathan Bedard  <jbedard@apple.com>
3320
3321         Removing LayoutTestRelay
3322         https://bugs.webkit.org/show_bug.cgi?id=165927
3323
3324         Reviewed by Daniel Bates.
3325         Part 2
3326
3327         LayoutTestRelay uses SPI, since recent versions of the iOS SDK allow for installing apps on
3328         simulators through simctl (iOS 10 and later), use this functionality instead.
3329
3330         * BuildSlaveSupport/built-product-archive:
3331         (archiveBuiltProduct): Remove archiving of LayoutTestRelay as it is no longer being built.
3332         Added a FIXME that we will need to implement similar archiving machinery once we build
3333         ImageDiff for Mac when building WebKit for iOS. Currently ImageDiff is built with the iOS SDK.
3334         * BuildSlaveSupport/kill-old-processes:
3335         (main): Remove LayoutTestRelay from list of processes.
3336         * LayoutTestRelay: Removed LayoutTestRelay.
3337         * Makefile:
3338         * Scripts/build-layouttestrelay: Removed.
3339         * Scripts/build-webkit: Removed LayoutTestRelay references.
3340
3341 2017-02-10  Jiewen Tan  <jiewen_tan@apple.com>
3342
3343         [WebCrypto] Add WebCryptoAPI to watchlist
3344         https://bugs.webkit.org/show_bug.cgi?id=168138
3345
3346         Reviewed by Youenn Fablet.
3347
3348         * Scripts/webkitpy/common/config/watchlist:
3349
3350 2017-02-10  Brady Eidson  <beidson@apple.com>
3351
3352         Replace all WebKit Library Version checks in WK2 with SDK version checks.
3353         https://bugs.webkit.org/show_bug.cgi?id=168124
3354
3355         Reviewed by Geoffrey Garen.
3356
3357         For each of our tools that use WebKit2, opt them in to the new linkedOnOrAfter(Everything) setting.
3358         
3359         * MiniBrowser/mac/main.m:
3360         (main):
3361         * MobileMiniBrowser/MobileMiniBrowser/main.m:
3362         (main):
3363         * TestWebKitAPI/ios/mainIOS.mm:
3364         (main):
3365         * TestWebKitAPI/mac/mainMac.mm:
3366         (main):
3367         * WebKitTestRunner/ios/mainIOS.mm:
3368         (main):
3369         * WebKitTestRunner/mac/main.mm:
3370         (setDefaultsToConsistentValuesForTesting):
3371
3372 2017-02-10  Alex Christensen  <achristensen@webkit.org>
3373
3374         Fix El Capitan build.
3375
3376         * Scripts/build-webkit:
3377         Don't build libwebrtc anywhere for now.
3378
3379 2017-02-10  Andy Estes  <aestes@apple.com>
3380
3381         Move two MiniBrowserBundle settings out of the .pbxproj
3382         https://bugs.webkit.org/show_bug.cgi?id=168106
3383
3384         Reviewed by Tim Horton.
3385
3386         INFOPLIST_FILE was specified in MiniBrowserBundle.xcconfig but overridden to "" in
3387         the project file. This removes the project file override.
3388
3389         WRAPPER_EXTENSION was moved from the project file to MiniBrowserBundle.xcconfig.
3390
3391         * MiniBrowser/Configurations/MiniBrowserBundle.xcconfig:
3392         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj:
3393
3394 2017-02-10  Alex Christensen  <achristensen@webkit.org>
3395
3396         Fix 32-and-64-bit build on El Capitan.
3397
3398         * Scripts/build-webkit:
3399         Somebody's building with something like this:
3400         build-webkit ARCHS="i386 x86_64"
3401         We want this to also not build libwebrtc for now.
3402
3403 2017-02-10  Alex Christensen  <achristensen@webkit.org>
3404
3405         Fix 32-bit build on El Capitan.
3406
3407         * Scripts/build-webkit:
3408         The bot uses ARCHS=i386 instead of --32-bit.
3409         This is a hack, but it should fix the bot until I can do a better fix in the morning.
3410
3411 2017-02-10  Alex Christensen  <achristensen@webkit.org>
3412
3413         Fix 32-bit build on El Capitan.
3414
3415         * Scripts/build-webkit:
3416         Don't build i386 libwebrtc.
3417
3418 2017-02-09  Alex Christensen  <achristensen@webkit.org>
3419
3420         Unreviewed, rolling out r212040.
3421
3422         Broke build.  I'm not surprised
3423
3424         Reverted changeset:
3425
3426         "[WebRTC][Mac] Activate libwebrtc"
3427         https://bugs.webkit.org/show_bug.cgi?id=167293
3428         http://trac.webkit.org/changeset/212040
3429
3430 2017-02-09  Alex Christensen  <achristensen@webkit.org>
3431
3432         Build libwebrtc on bots without using it yet
3433         https://bugs.webkit.org/show_bug.cgi?id=168062
3434
3435         Reviewed by Brent Fulgham.
3436
3437         * Scripts/build-webkit:
3438
3439 2017-02-09  Alex Christensen  <achristensen@webkit.org>
3440
3441         Don't build libwebrtc.
3442
3443         * Scripts/build-webkit:
3444         Not ready yet.  It broke El Capitan and iOS.
3445
3446 2017-02-09  Alex Christensen  <achristensen@webkit.org>
3447
3448         Build libwebrtc on bots without using it yet
3449         https://bugs.webkit.org/show_bug.cgi?id=168062
3450
3451         Reviewed by Brent Fulgham.
3452
3453         * Scripts/build-webkit:
3454
3455 2017-02-09  Alex Christensen  <achristensen@webkit.org>
3456
3457         Rename isAppleMacWebKit to isAppleCocoaWebKit
3458         https://bugs.webkit.org/show_bug.cgi?id=168075
3459
3460         Reviewed by Geoffrey Garen.
3461
3462         It returns true for Mac and iOS.  "isAppleMacWebKit" is confusing and wrong.
3463
3464         * Scripts/build-api-tests:
3465         * Scripts/build-dumprendertree:
3466         * Scripts/build-jsc:
3467         (buildMyProject):
3468         * Scripts/build-layouttestrelay:
3469         * Scripts/build-webkit:
3470         * Scripts/build-webkittestrunner:
3471         * Scripts/run-api-tests:
3472         (isSupportedPlatform):
3473         (runTest):
3474         (listAllTests):
3475         (prepareEnvironmentForRunningTestTool):
3476         * Scripts/run-content-extension-tester:
3477         * Scripts/run-javascriptcore-tests:
3478         * Scripts/run-minibrowser:
3479         * Scripts/show-pretty-diff:
3480         * Scripts/webkitdirs.pm:
3481         (determineBaseProductDir):
3482         (determineArchitecture):
3483         (determinePassedArchitecture):
3484         (safariPath):
3485         (builtDylibPathForName):
3486         (checkFrameworks):
3487         (isAppleWebKit):
3488         (isAppleCocoaWebKit):
3489         (determineNmPath):
3490         (launcherName):
3491         (wrapperPrefixIfNeeded):
3492         (isCMakeBuild):
3493         (mobileSafariBundle):
3494         (debugSafari):
3495         (runSafari):
3496         (runMiniBrowser):
3497         (debugMiniBrowser):
3498         (runWebKitTestRunner):
3499         (debugWebKitTestRunner):
3500         (isAppleMacWebKit): Deleted.
3501         * Scripts/webkitperl/FeatureList.pm:
3502
3503 2017-02-09  Alex Christensen  <achristensen@webkit.org>
3504
3505         Revert r211991
3506         https://bugs.webkit.org/show_bug.cgi?id=168062
3507
3508         * Scripts/build-webkit:
3509         Not quite ready yet.
3510
3511 2017-02-09  Alex Christensen  <achristensen@webkit.org>
3512
3513         Build libwebrtc on bots without using it yet
3514         https://bugs.webkit.org/show_bug.cgi?id=168062
3515
3516         Reviewed by Brent Fulgham.
3517
3518         * Scripts/build-webkit:
3519         Build libwebrtc on Mac when we build ANGLE.
3520
3521 2017-02-09  Youenn Fablet  <youenn@apple.com>
3522
3523         Improve W3C importer command line options
3524         https://bugs.webkit.org/show_bug.cgi?id=167448
3525
3526         Reviewed by Ryosuke Niwa.
3527
3528         Making the list of test paths to import the main arguments of the script.
3529         Allow passing the source directory to import as a -s option.
3530         Adding a warning when given test paths are skipped by default in ImportExpectations.
3531
3532         Making link conversion off by default when importing from a specific directory since this script is mostly used with web-platform-tests.
3533         Link conversion rules do not change when imported tests are downloaded by the script.
3534
3535         * Scripts/webkitpy/w3c/test_importer.py:
3536         (main):
3537         (parse_args):
3538         (TestImporter.__init__):
3539         (TestImporter.do_import):
3540         (TestImporter):
3541         (TestImporter.check_imported_expectations):
3542
3543 2017-02-08  Chris Dumez  <cdumez@apple.com>
3544
3545         Update web-platform-tests resources
3546         https://bugs.webkit.org/show_bug.cgi?id=168026
3547
3548         Reviewed by Youenn Fablet.
3549
3550         Stop copying testharness.js from resources/ to web-platform-tests/resources.
3551
3552         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
3553         (WebPlatformTestServer._copy_webkit_test_files):
3554
3555 2017-02-08  Andy Estes  <aestes@apple.com>
3556
3557         Custom protocols should not continue loading after a network process crash
3558         https://bugs.webkit.org/show_bug.cgi?id=168028
3559         <rdar://problem/27607520>
3560
3561         Reviewed by Brady Eidson.
3562
3563         * TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm:
3564         (processGroup):
3565         (-[CloseWhileStartingProtocol startLoading]):
3566         (-[CloseWhileStartingProtocol stopLoading]):
3567         (TestWebKitAPI::runTest):
3568         (TestWebKitAPI::TEST):
3569
3570 2017-02-08  Dan Bernstein  <mitz@apple.com>
3571
3572         [Cocoa] WKRemoteObjectCoder doesn’t handle CGSize
3573         https://bugs.webkit.org/show_bug.cgi?id=168031
3574
3575         Reviewed by Tim Horton.
3576
3577         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.h:
3578         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistry.mm:
3579         (TEST):
3580         * TestWebKitAPI/Tests/WebKit2Cocoa/RemoteObjectRegistryPlugIn.mm:
3581         (-[RemoteObjectRegistryPlugIn takeSize:completionHandler:]):
3582
3583 2017-02-08  Chris Dumez  <cdumez@apple.com>
3584
3585         Use smaller tiles in windows that are not active to facilitate App Napping
3586         https://bugs.webkit.org/show_bug.cgi?id=167997
3587         <rdar://problem/30358835>
3588
3589         Reviewed by Simon Fraser.
3590
3591         * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3592         (WTR::PlatformWebView::setWindowIsKey):
3593         Actually update windowIsKey state of NSWindow so the WebView
3594         properly updates its activity state.
3595
3596 2017-02-08  Wenson Hsieh  <wenson_hsieh@apple.com>
3597
3598         Add kUTTypeUTF8PlainText and kUTTypeJPEG to the list of compatible content types in DragData
3599         https://bugs.webkit.org/show_bug.cgi?id=167942
3600         <rdar://problem/30315079>
3601
3602         Reviewed by Tim Horton.
3603
3604         Adds a new test case that simulates dragging from a source that only vends JPEG images or UTF8 plaintext into a
3605         contenteditable area. An image element and the plain text content, respectively, should be inserted into the
3606         contenteditable in these cases.
3607
3608         The DragSource and DragInfo are used to mock dragging into the WebView. There is no reliance on using mouse
3609         events in this test, since we call the dragging delegate methods (draggingEntered:, draggingUpdated:, and
3610         performDragOperation:) directly.
3611
3612         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3613         * TestWebKitAPI/Tests/mac/DragAndDropPasteboardTests.mm: Added.
3614         (+[FrameLoadCompletionListener listenerWithCompletionBlock:]):
3615         (-[FrameLoadCompletionListener initWithCompletionBlock:]):
3616         (-[FrameLoadCompletionListener webView:didFinishLoadForFrame:]):
3617         (-[DragSource draggingSourceOperationMaskForLocal:]):
3618         (-[DragInfo initWithImage:offset:pasteboard:source:destinationWindow:]):
3619         (-[DragInfo lastMousePosition]):
3620         (-[DragInfo setLastMousePosition:]):