REGRESSION (r217572): run-webkit-tests exits without emitting newline character
[WebKit.git] / Tools / ChangeLog
1 2018-02-05  Daniel Bates  <dabates@apple.com>
2
3         REGRESSION (r217572): run-webkit-tests exits without emitting newline character
4         https://bugs.webkit.org/show_bug.cgi?id=182360
5
6         Rubber-stamped by Aakash Jain.
7
8         Fixes an annoyance where run-webkit-tests always exits without printing a newline character.
9         In the terminal this looks like:
10
11             $ Tools/Scripts/run-webkit-tests
12             Expected to fail, but passed: (7)
13             ...
14             Stopping WebSocket server ...$
15
16         This bug was caused by code added in r217572 to stop all run-webkit-tests started servers (e.g. an HTTP
17         server) from an at-exit handler. When run-webkit-tests runs successfully (i.e. without error or
18         control-C interruption) we would stop all such servers twice: once as part of ending the test
19         run and once from the at-exit handler. The latter never prints a trailing newline character hence
20         the state of the terminal (as depicted above). Instead LayoutTestRunner.stop_servers() should only
21         stop servers that it started in LayoutTestRunner.start_servers().
22
23         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
24         (LayoutTestRunner.__init__):
25         (LayoutTestRunner.start_servers):
26         (LayoutTestRunner.stop_servers):
27         Only start servers that run-webkit-tests has not already started and only stop servers that
28         run-webkit-tests started.
29
30         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
31         (LayoutTestRunnerTests.test_servers_started.is_websocket_server_running):
32         (LayoutTestRunnerTests.test_servers_started):
33         (LayoutTestRunnerTests.test_servers_started.is_websocket_servers_running): Deleted.
34         Update due to rename below.
35
36         * Scripts/webkitpy/layout_tests/servers/websocket_server.py:
37         (is_web_socket_server_running): Added.
38         (PyWebSocket.is_running): Deleted.
39
40         * Scripts/webkitpy/port/base.py:
41         (Port.is_http_server_running): Check if we already started the server ourself.
42         (Port.is_websocket_server_running): Formerly named is_websocket_servers_running. Modified
43         to check if we already started the server ourself. Take a similar approach as the other
44         Port.is_*_running methods and only check if an existing WebSocket server is running on the
45         non-secure server port. This is a simple heuristic and should be sufficient in practice.
46         (Port.is_wpt_server_running): Check if we already started the server ourself.
47         (Port.is_websocket_servers_running): Deleted; renamed to is_websocket_server_running().
48
49 2018-02-05  Daniel Bates  <dabates@apple.com>
50
51         prepare-ChangeLog gets confused about Python docstrings that contain the word "class" or "def"
52         https://bugs.webkit.org/show_bug.cgi?id=182405
53
54         Reviewed by David Kilzer.
55
56         String literal statements, including docstrings, do not demarcate a new scope in Python.
57         So, do not treat them like they do when building up the list of modified functions.
58
59         * Scripts/prepare-ChangeLog:
60         (get_function_line_ranges_for_python):
61         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/python_unittests-expected.txt:
62         The expected ending line number for the last "pass" statement inside the scope of Class5 changed
63         from 97 to 98 because empty lines do not effect scope. This is consistent with the parsing
64         of the second "pass" statement in the scope of class Class5. A "pass" is a null operation that
65         is used as a syntactic placeholder when a statement is required. Ideally we would make
66         the parsing code smarter so as to avoid emitting ranges for "pass" statements that serve
67         not syntactic purpose.
68         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/python_unittests.py:
69         (Class5):
70         (Class6):
71         (Class6.__init__):
72         (Class7):
73         (Class7.__init__):
74         (Class8):
75         (Class8.__init__):
76         Add some more tests.
77
78 2018-02-05  Matt Lewis  <jlewis3@apple.com>
79
80         Unreviewed, rolling out r228086.
81
82         This introduced a failure with API test
83         URLTest.HostIsIPAddress.
84
85         Reverted changeset:
86
87         "Add a way to check if a host is an IP address"
88         https://bugs.webkit.org/show_bug.cgi?id=182427
89         https://trac.webkit.org/changeset/228086
90
91 2018-02-05  John Wilander  <wilander@apple.com>
92
93         Storage Access API: Add testRunner.getAllStorageAccessEntries() to make testing easier and more explicit
94         https://bugs.webkit.org/show_bug.cgi?id=181601
95         <rdar://problem/36475837>
96
97         Reviewed by Alex Christensen.
98
99         http/tests/storageAccess/request-and-grant-access-then-detach-should-not-have-access.html
100         was found to be flaky. With the testRunner.hasStorageAccessEntry() getter
101         it's possible to check access even if a frame doesn't respond timely to
102         postMessage after detach and attach.
103
104         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
105         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
106         (WTR::InjectedBundle::didReceiveMessageToPage):
107         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
108         (WTR::TestRunner::setStorageAccessAPIEnabled):
109             Just moved for source file grouping.
110         (WTR::TestRunner::getAllStorageAccessEntries):
111         (WTR::TestRunner::callDidReceiveAllStorageAccessEntriesCallback):
112         * WebKitTestRunner/InjectedBundle/TestRunner.h:
113         * WebKitTestRunner/TestController.cpp:
114         (WTR::TestController::getAllStorageAccessEntries):
115             Note that this is just stubbed out, i.e. not implemented.
116         * WebKitTestRunner/TestController.h:
117         * WebKitTestRunner/TestInvocation.cpp:
118         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
119         (WTR::TestInvocation::didReceiveAllStorageAccessEntries):
120         * WebKitTestRunner/TestInvocation.h:
121         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
122         (WTR::TestController::getAllStorageAccessEntries):
123             This is the Cocoa-specific version of this test infrastructure.
124
125 2018-02-05  Basuke Suzuki  <Basuke.Suzuki@sony.com>
126
127         [Win] Enable multi CPU building on MSBuild.
128         https://bugs.webkit.org/show_bug.cgi?id=182446
129
130         Compiling itself already uses multi cores, but other stuff is still on single core.
131         This patch enables that by passing an argument to MSBuild.exe.
132
133         Reviewed by Alex Christensen.
134
135         * Scripts/webkitdirs.pm:
136         (determineNumberOfCPUs):
137         (buildVisualStudioProject):
138
139 2018-02-05  Alicia Boya García  <aboya@igalia.com>
140
141         Fix bug in MediaTime comparison for negative values with different scale.
142         https://bugs.webkit.org/show_bug.cgi?id=182433
143
144         Improved test coverage for MediaTime::compare().
145
146         Reviewed by Xabier Rodriguez-Calvar.
147
148         * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
149         (TestWebKitAPI::TEST):
150
151 2018-02-05  Carlos Garcia Campos  <cgarcia@igalia.com>
152
153         [SOUP] WebSockets must use system proxy settings
154         https://bugs.webkit.org/show_bug.cgi?id=126384
155
156         Reviewed by Michael Catanzaro.
157
158         Check also WebSockets in /webkit2/WebKitWebContext/proxy.
159
160         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
161         (ProxyTest::webSocketProxyServerCallback):
162         (ProxyTest::ProxyTest):
163         (ProxyTest::webSocketConnected):
164         (ProxyTest::createWebSocketAndWaitUntilConnected):
165         (webSocketServerCallback):
166         (testWebContextProxySettings):
167         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
168         (WebKitTestServer::~WebKitTestServer):
169         (WebKitTestServer::addWebSocketHandler):
170         (WebKitTestServer::removeWebSocketHandler):
171         (WebKitTestServer::getWebSocketURIForPath const):
172         (WebKitTestServer::getURIForPath const):
173         * TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.h:
174         (WebKitTestServer::baseURI const):
175         (WebKitTestServer::baseWebSocketURI const):
176
177 2018-02-05  Carlos Garcia Campos  <cgarcia@igalia.com>
178
179         Add a way to check if a host is an IP address
180         https://bugs.webkit.org/show_bug.cgi?id=182427
181
182         Reviewed by Alex Christensen.
183
184         Add unit test for URL::hostIsIPAddress().
185
186         * TestWebKitAPI/Tests/WebCore/URL.cpp:
187         (TestWebKitAPI::TEST_F):
188
189 2018-02-03  Charlie Turner  <cturner@igalia.com>
190
191         Add libmount to WPE dependencies
192         https://bugs.webkit.org/show_bug.cgi?id=182345
193
194         Reviewed by Michael Catanzaro.
195
196         * wpe/install-dependencies:
197
198 2018-02-02  Youenn Fablet  <youenn@apple.com>
199
200         W3C test exporter should allow exporting newly added files
201         https://bugs.webkit.org/show_bug.cgi?id=182369
202
203         Reviewed by Ryosuke Niwa.
204
205         * Scripts/webkitpy/common/checkout/scm/git.py:
206         (Git.apply_mail_patch):
207
208 2018-02-02  David Quesada  <david_quesada@apple.com>
209
210         WebAppManifest scope should default to the containing directory of start_url if 'scope' is not specified
211         https://bugs.webkit.org/show_bug.cgi?id=182363
212         rdar://problem/37093498
213
214         Reviewed by Ryosuke Niwa.
215
216         Updated ApplicationManifestParserTests to account for the new default scope behavior.
217
218         * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
219         (assertManifestHasDefaultValues):
220         (TEST_F):
221
222 2018-02-02  Youenn Fablet  <youenn@apple.com>
223
224         Clearing all service worker registrations should wait for importing service worker registration to finish
225         https://bugs.webkit.org/show_bug.cgi?id=182407
226
227         Reviewed by Chris Dumez.
228
229         Make sure we finish clearing service worker registrations before running tests.
230
231         * WebKitTestRunner/TestController.cpp:
232         (WTR::TestController::resetStateToConsistentValues):
233         (WTR::ClearServiceWorkerRegistrationsCallbackContext::ClearServiceWorkerRegistrationsCallbackContext):
234         (WTR::clearServiceWorkerRegistrationsCallback):
235         (WTR::TestController::clearServiceWorkerRegistrations):
236         * WebKitTestRunner/TestController.h:
237
238 2018-02-02  Youenn Fablet  <youenn@apple.com>
239
240         Configure serviceWorkerRegistrationDirectory on the web site data store and move it to a Caches subfolder as a default
241         https://bugs.webkit.org/show_bug.cgi?id=182403
242
243         Reviewed by Alex Christensen.
244
245         * WebKitTestRunner/TestController.cpp:
246         (WTR::TestController::generateContextConfiguration const):
247         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
248         (WTR::initializeWebViewConfiguration):
249
250 2018-02-02  Carlos Garcia Campos  <cgarcia@igalia.com>
251
252         [GTK] WebDriver: tests step always times out in the bot
253         https://bugs.webkit.org/show_bug.cgi?id=182437
254
255         Reviewed by Carlos Alberto Lopez Perez.
256
257         The process itself is not timing out, but the buildbot step is. This is because we are leaking the Xvfb
258         processes. We should ensure that only one driver is executed and it's stopped before the process finishes.
259
260         * Scripts/run-webdriver-tests: Call teardown() after run().
261         * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
262         (WebDriverSeleniumExecutor.__init__): Receive the env directly instead of the display driver.
263         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
264         (WebDriverTestRunner.__init__): Use the driver class directly instead of using the DriverProxy. Get the env from
265         the display driver once and pass it to the test runners.
266         (WebDriverTestRunner.teardown): Stop the display server.
267         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
268         (WebDriverTestRunnerSelenium.__init__): Receive the env directly instead of the display driver.
269         (WebDriverTestRunnerSelenium.collect_tests): Pass the env to the executor.
270         (WebDriverTestRunnerSelenium.run): Ditto.
271         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
272         (WebDriverTestRunnerW3C.__init__): Receive the env directly instead of the display driver.
273         (WebDriverTestRunnerW3C.run): Pass the env to the executor.
274         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
275         (WebDriverW3CExecutor.__init__): Receive the env directly instead of the display driver.
276
277 2018-02-02  Carlos Garcia Campos  <cgarcia@igalia.com>
278
279         Unreviewed, rolling out r227999.
280
281         It didn't fix the problem
282
283         Reverted changeset:
284
285         "Unreviewed. Try to avoid webdriver tests step timing out in
286         the bots."
287         https://trac.webkit.org/changeset/227999
288
289 2018-02-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
290
291         Start timeout for the run-buildbot-test script is too aggressive
292         https://bugs.webkit.org/show_bug.cgi?id=182429
293
294         Reviewed by Carlos Garcia Campos.
295
296         15 seconds is not enough waiting for the update database process
297         to complete on a system backed with rotational HDDs. Raise it to 60.
298
299         * BuildSlaveSupport/build.webkit.org-config/run-buildbot-test.py:
300         (wait_for_master_ready):
301
302 2018-02-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
303
304         re-add ARM JSCOnly bots on buildbot waterfall
305         https://bugs.webkit.org/show_bug.cgi?id=182428
306
307         Reviewed by Csaba Osztrogonác.
308
309         * BuildSlaveSupport/build.webkit.org-config/config.json:
310         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
311
312 2018-02-02  Csaba Osztrogonác  <ossy@webkit.org>
313
314         Remove ARM JSCOnly bots from buildbot waterfall
315         https://bugs.webkit.org/show_bug.cgi?id=182398
316
317         Reviewed by Alexey Proskuryakov.
318
319         * BuildSlaveSupport/build.webkit.org-config/config.json:
320         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
321
322 2018-02-02  Carlos Garcia Campos  <cgarcia@igalia.com>
323
324         Unreviewed. Try to avoid webdriver tests step timing out in the bots.
325
326         This is another speculative workaround. Carlos Lopez suggested to use os._exit() instead of sys.exit() as a
327         workaround for a bug in python2.7 when using multiprocess module.
328
329         * Scripts/run-webdriver-tests:
330
331 2018-02-01  Youenn Fablet  <youenn@apple.com>
332
333         Delay service worker process creation until actually needed by SWServer
334         https://bugs.webkit.org/show_bug.cgi?id=182301
335
336         Reviewed by Chris Dumez.
337
338         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
339         (function):
340
341 2018-02-01  Aakash Jain  <aakash_jain@apple.com>
342
343         Bubbles intermittently disappear from bot watchers dashboard
344         https://bugs.webkit.org/show_bug.cgi?id=182085
345
346         Reviewed by Alexey Proskuryakov.
347
348         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BuildbotIteration.js:
349         (BuildbotIteration.prototype.failureLogURL): failureLogURL doesn't depend on step in Buildbot 0.9.
350         Return the Build Page URL for Buildbot Buildbot 0.9. Earlier code was also doing the same using a
351         confusing if (!this._firstFailedStep.logs) statement which is always false for Buildbot 0.9.
352
353 2018-02-01  Carlos Garcia Campos  <cgarcia@igalia.com>
354
355         [GTK] Problem with Washington Post images
356         https://bugs.webkit.org/show_bug.cgi?id=181421
357
358         Reviewed by Carlos Alberto Lopez Perez.
359
360         Add test case for the new user agent quirk.
361
362         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
363         (TestWebKitAPI::TEST):
364
365 2018-02-01  Carlos Garcia Campos  <cgarcia@igalia.com>
366
367         [GTK] MiniBrowser settings are just a list of names
368         https://bugs.webkit.org/show_bug.cgi?id=182005
369
370         Reviewed by Sergio Villar Senin.
371
372         The default size we are using is too small to show the values column, and the window is not resizable because
373         GObjectClass::constructed() is not called in the parent class.
374
375         * MiniBrowser/gtk/BrowserSettingsDialog.c:
376         (browser_settings_dialog_init): Use 600x400 as default size.
377         (browserSettingsDialogConstructed): Chain up to parent constructed.
378
379 2018-01-31  Andres Gomez  <agomez@igalia.com>
380
381         Unreviewed. Remove WebInspectorUI watchlist and remove myself from 2 watchlists more
382
383         * Scripts/webkitpy/common/config/watchlist:
384
385 2018-01-31  Per Arne Vollan  <pvollan@apple.com>
386
387         Layout Test fast/events/beforeunload-dom-manipulation-crash.html is crashing
388         https://bugs.webkit.org/show_bug.cgi?id=181204
389         <rdar://problem/36256274>
390
391         Reviewed by Ryosuke Niwa.
392
393         Implement 'testRunner.forceImmediateCompletion()' for WK1.
394
395         * DumpRenderTree/TestRunner.cpp:
396         (forceImmediateCompletionCallback):
397         (TestRunner::staticFunctions):
398
399 2018-01-31  Alex Christensen  <achristensen@webkit.org>
400
401         Unreviewed, rolling out r227942.
402
403         r227875 should not have been rolled out.
404
405         Reverted changeset:
406
407         "Unreviewed, rolling out r227875."
408         https://bugs.webkit.org/show_bug.cgi?id=182357
409         https://trac.webkit.org/changeset/227942
410
411 2018-01-31  Michael Catanzaro  <mcatanzaro@igalia.com>
412
413         Unreviewed, rolling out r227875.
414         https://bugs.webkit.org/show_bug.cgi?id=182357
415
416         Missing cross-platform TestController implementation
417
418         Reverted changeset:
419
420         "Add callbacks to testRunner.statisticsSetShouldPartitionCookiesForHost() and testRunner.statisticsUpdateCookiePartitioning()"
421         https://bugs.webkit.org/show_bug.cgi?id=181958
422         https://trac.webkit.org/changeset/227875
423
424         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
425         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
426         (WTR::InjectedBundle::didReceiveMessageToPage):
427         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
428         (WTR::TestRunner::statisticsUpdateCookiePartitioning):
429         (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost):
430         (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback): Deleted.
431         * WebKitTestRunner/InjectedBundle/TestRunner.h:
432         * WebKitTestRunner/TestInvocation.cpp:
433         (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost): Deleted.
434         * WebKitTestRunner/TestInvocation.h:
435         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
436         (WTR::TestController::statisticsUpdateCookiePartitioning):
437         (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
438
439 2018-01-31  Michael Catanzaro  <mcatanzaro@igalia.com>
440
441         REGRESSION(r227223): http/tests/resourceLoadStatistics/clear-in-memory-and-persistent-store-one-hour.html, http/tests/resourceLoadStatistics/grandfathering.html timing out on GTK, WPE
442         https://bugs.webkit.org/show_bug.cgi?id=182222
443
444         Reviewed by Alex Christensen.
445
446         Use the new API to notify when resource load statistics deletion is complete.
447
448         * WebKitTestRunner/TestController.cpp:
449         (WTR::TestController::statisticsClearThroughWebsiteDataRemovalCallback):
450         (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
451         (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
452
453 2018-01-31  Ryosuke Niwa  <rniwa@webkit.org>
454
455         Add the support for running StyleBench to run-benchmark
456         https://bugs.webkit.org/show_bug.cgi?id=182323
457
458         Reviewed by Antti Koivisto.
459
460         Added the plan file and the patch needed to run StyleBench using run-benchmark as of r227863.
461
462         * Scripts/webkitpy/benchmark_runner/data/patches/webserver/StyleBench.patch: Added.
463         * Scripts/webkitpy/benchmark_runner/data/plans/stylebench.plan: Added.
464
465 2018-01-31  Wenson Hsieh  <wenson_hsieh@apple.com>
466
467         [iOS WK2] API test DataInteractionTests.ExternalSourceDataTransferItemGetFolderAsEntry is failing after an SDK update
468         https://bugs.webkit.org/show_bug.cgi?id=182339
469         <rdar://problem/36041396>
470
471         Reviewed by Andy Estes.
472
473         This API test wasn't meant to be dependent on the size of an image generated using UIImagePNGRepresentation().
474         To make this test robust against changes to image encoding, write the raw data to the test folder instead and
475         check against the length of the data written.
476
477         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
478         (testIconImageData):
479         (runTestWithTemporaryFolder):
480         (TestWebKitAPI::TEST):
481
482 2018-01-31  Dan Bernstein  <mitz@apple.com>
483
484         [macOS] MiniBrowser isn’t app-sandboxed
485         https://bugs.webkit.org/show_bug.cgi?id=182147
486
487         Reviewed by Sam Weinig.
488
489         Enable App Sandbox and add a temporary exception allowing read access to all files.
490
491         * MiniBrowser/Configurations/Base.xcconfig: Enabled ad-hoc code signing.
492         * MiniBrowser/Configurations/MiniBrowser.xcconfig: Specified the entitlements file to use.
493         * MiniBrowser/MiniBrowser.entitlements: Added. Enables App Sandbox with outbound networking
494           and read access from /.
495         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Added reference to new file.
496
497 2018-01-31  Philippe Normand  <pnormand@igalia.com>
498
499         [JHBuild] Add gstreamer-vaapi in moduleset
500         https://bugs.webkit.org/show_bug.cgi?id=182283
501
502         Reviewed by Carlos Alberto Lopez Perez.
503
504         GStreamer-VAAPI is required for hardware-accelerated video
505         playback support on Intel and AMD (using radeosi driver)
506         platforms.
507
508         * gstreamer/jhbuild.modules: Add gstreamer-vaapi.
509         * gtk/install-dependencies: Install libva.
510         * wpe/install-dependencies: Ditto.
511         * Scripts/webkitpy/port/gtk.py:
512         (GtkPort.setup_environ_for_server): Disable va-api support when
513         testing because it's incompatible with Mesa's softGL driver.
514
515 2018-01-31  Charlie Turner  <cturner@igalia.com>
516
517         [WPE] Update jhbuild dependencies
518         https://bugs.webkit.org/show_bug.cgi?id=182286
519
520         This upgrades the following packages,
521         glib 2.44.1 -> 2.54.3
522         glib-networking 2.42.0 -> 2.54.1
523         libsoup 2.48.0 -> 2.60.3
524
525         The initial reason for performing these upgrades was that when
526         visiting https://youtube.com, WPE was getting TLS certificate
527         errors. After upgrading glib-networking, these were fixed, but the
528         upgrade introduced dependencies on newer versions of the other
529         packages upgraded in this commit.
530
531         The upgrade to glib caused a linking error in gstreamer, the
532         following errors were being logged during linking,
533
534         //usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_glib_script_from_script'
535         //usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_glib_get_unicode_funcs'
536         //usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0: undefined reference to `hb_glib_script_to_script'
537
538         This was fixed by adding the glib package built in the jhbuild to
539         harfbuzz.
540
541         Finally, the upgrade of glib caused the glib-warning-fix.patch to
542         no longer apply, so this patch was removed.
543
544         Reviewed by Michael Catanzaro.
545
546         * wpe/jhbuild.modules: Added dependecies.
547         * wpe/patches/glib-warning-fix.patch: Removed.
548
549 2018-01-31  Carlos Garcia Campos  <cgarcia@igalia.com>
550
551         Unreviewed, rolling out r227782.
552
553         It didn't fix the problem
554
555         Reverted changeset:
556
557         "Unreviewed. Try to avoid webdriver tests step timing out in
558         the bots."
559         https://trac.webkit.org/changeset/227782
560
561 2018-01-31  Carlos Garcia Campos  <cgarcia@igalia.com>
562
563         WebDriver: add domains to server config in w3c tests
564         https://bugs.webkit.org/show_bug.cgi?id=182294
565
566         Reviewed by Carlos Alberto Lopez Perez.
567
568         Several cookie tests expect server_config to have a domains key.
569
570         Fixes: imported/w3c/webdriver/tests/cookies/add_cookie.py::test_add_domain_cookie
571                imported/w3c/webdriver/tests/cookies/add_cookie.py::test_add_session_cookie_with_leading_dot_character_in_domain
572
573         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
574         (WebDriverW3CExecutor.__init__):
575
576 2018-01-31  Carlos Garcia Campos  <cgarcia@igalia.com>
577
578         Unreviewed. Update W3C WebDriver imported tests.
579
580         Show full pytest failure logs.
581
582         pytest truncates long lists when printing a failed assertion.
583         This is not great for debugging and arguably it should be the
584         default to show the full diff when comparing lists.
585
586         * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
587         (run):
588
589 2018-01-30  John Wilander  <wilander@apple.com>
590
591         Add callbacks to testRunner.statisticsSetShouldPartitionCookiesForHost() and testRunner.statisticsUpdateCookiePartitioning()
592         https://bugs.webkit.org/show_bug.cgi?id=181958
593         https://bugs.webkit.org/show_bug.cgi?id=182072
594         <rdar://problem/36801804>
595         <rdar://problem/36845795>
596
597         Reviewed by Brent Fulgham.
598
599         Because of the asynchronous nature of XPC and cookies,
600         we need callbacks in these TestRunner functions so that
601         the layout tests can wait for state changes to finish
602         before checking test conditions.
603
604         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
605         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
606         (WTR::InjectedBundle::didReceiveMessageToPage):
607         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
608         (WTR::TestRunner::statisticsUpdateCookiePartitioning):
609         (WTR::TestRunner::statisticsSetShouldPartitionCookiesForHost):
610         (WTR::TestRunner::statisticsCallDidSetPartitionOrBlockCookiesForHostCallback):
611         * WebKitTestRunner/InjectedBundle/TestRunner.h:
612         * WebKitTestRunner/TestInvocation.cpp:
613         (WTR::TestInvocation::didSetPartitionOrBlockCookiesForHost):
614         * WebKitTestRunner/TestInvocation.h:
615         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
616         (WTR::TestController::statisticsUpdateCookiePartitioning):
617         (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
618
619 2018-01-30  Basuke Suzuki  <Basuke.Suzuki@sony.com>
620
621         [webkitpy] Config file for apache is copied twice.
622         https://bugs.webkit.org/show_bug.cgi?id=182131
623
624         Reviewed by Daniel Bates.
625
626         * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
627         (LayoutTestApacheHttpd.__init__):
628         (LayoutTestApacheHttpd._copy_apache_config_file):
629         (LayoutTestApacheHttpd._get_apache_config_file_path): Deleted.
630
631 2018-01-30  Don Olmstead  <don.olmstead@sony.com>
632
633         JSExports.h should be included as <JavaScriptCore/JSExportMacros.h>
634         https://bugs.webkit.org/show_bug.cgi?id=182312
635
636         Reviewed by Michael Catanzaro.
637
638         * DumpRenderTree/config.h:
639         * TestWebKitAPI/config.h:
640         * WebKitTestRunner/config.h:
641
642 2018-01-30  Wenson Hsieh  <wenson_hsieh@apple.com>
643
644         [iOS] API test UIPasteboardTests.DataTransferGetDataWhenPastingPlatformRepresentations fails after r223440
645         https://bugs.webkit.org/show_bug.cgi?id=182307
646         <rdar://problem/36041485>
647
648         Reviewed by Ryosuke Niwa.
649
650         Adjusts a failing API test that we forgot to rebaseline after r223440, which ensures that the result of reading
651         "text/html" from the DataTransfer is sanitized markup. To do this, teach the test harness
652         (dump-datatransfer-types.html) to ignore inline styles in markup if a flag is set, and then set that flag in
653         UIPasteboardTests.DataTransferGetDataWhenPastingPlatformRepresentations.
654
655         * TestWebKitAPI/Tests/WebKitCocoa/dump-datatransfer-types.html:
656         * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
657         (TestWebKitAPI::TEST):
658
659 2018-01-30  Sergio Villar Senin  <svillar@igalia.com>
660
661         [WebVR][GTK][WPE] Exclude OpenVR from tarballs
662         https://bugs.webkit.org/show_bug.cgi?id=182284
663
664         Reviewed by Michael Catanzaro.
665
666         * gtk/manifest.txt.in: Added ThirdParty/openvr to exclusions.
667         * wpe/manifest.txt.in: Ditto.
668
669 2018-01-30  Yusuke Suzuki  <utatane.tea@gmail.com>
670
671         Unreviewed, try to fix JSCOnly build
672         https://bugs.webkit.org/show_bug.cgi?id=177202
673
674         * CMakeLists.txt:
675
676 2018-01-30  Carlos Garcia Campos  <cgarcia@igalia.com>
677
678         Unreviewed. Try to avoid webdriver tests step timing out in the bots.
679
680         The process itself doesn't seem to be timing out, but the buildbot is always reporting the step as finished
681         after timeout. I think there's a race condition or something in buildbot, and it keeps watching the json log
682         file even when it has already been written. This is a speculative workaround, assuming that's the problem, that
683         creates the json file before running the tests. I'll revert this if it doesn't fix the issue in the end.
684
685         * Scripts/run-webdriver-tests:
686         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
687         (WebDriverTestRunner.dump_results_to_json_file):
688
689 2018-01-30  Basuke Suzuki  <Basuke.Suzuki@sony.com>
690
691         [WinCairo] Fix forwarding header conflict of WebKit on WinCairo
692         https://bugs.webkit.org/show_bug.cgi?id=177202
693
694         Reviewed by Alex Christensen.
695
696         * CMakeLists.txt:
697
698 2018-01-29  Alex Christensen  <achristensen@webkit.org>
699
700         Clean up API after bugs 178240 and 176474
701         https://bugs.webkit.org/show_bug.cgi?id=182259
702
703         Reviewed by Dan Bernstein.
704
705         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
706         (TEST):
707         (-[PinnedStateObserver observeValueForKeyPath:ofObject:change:context:]):
708
709 2018-01-29  Jiewen Tan  <jiewen_tan@apple.com>
710
711         [WebAuthN] Add a compile-time feature flag
712         https://bugs.webkit.org/show_bug.cgi?id=182211
713         <rdar://problem/36936365>
714
715         Reviewed by Brent Fulgham.
716
717         * Scripts/webkitperl/FeatureList.pm:
718         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
719
720 2018-01-29  Brady Eidson  <beidson@apple.com>
721
722         Make the API test added in r227737 be Mac-only.
723
724         Unreviewed gardening.
725
726         * TestWebKitAPI/Tests/WebKitCocoa/MessagePortProviders.mm:
727
728 2018-01-29  Matt Lewis  <jlewis3@apple.com>
729
730         Unreviewed, rolling out r227731.
731
732         This caused and assertion failure in API tests.
733
734         Reverted changeset:
735
736         "Layout Test fast/events/beforeunload-dom-manipulation-
737         crash.html is crashing"
738         https://bugs.webkit.org/show_bug.cgi?id=181204
739         https://trac.webkit.org/changeset/227731
740
741 2018-01-29  Youenn Fablet  <youenn@apple.com>
742
743         WPT test exporter should add WebKit export in its PR description
744         https://bugs.webkit.org/show_bug.cgi?id=182246
745
746         Reviewed by Chris Dumez.
747
748         Updating PR description body to contain the words 'WebKit export'.
749         That way, WPT PR bot will mark the PR as reviewed downstream.
750
751         * Scripts/webkitpy/w3c/test_exporter.py:
752         (TestExporter.__init__):
753         (TestExporter.make_pull_request):
754         * Scripts/webkitpy/w3c/test_exporter_unittest.py:
755         (TestExporterTest.test_export):
756
757 2018-01-29  Ryosuke Niwa  <rniwa@webkit.org>
758
759         Add the support for running Speedometer 2.0 to run-benchmark
760         https://bugs.webkit.org/show_bug.cgi?id=182231
761
762         Reviewed by Antti Koivisto.
763
764         Made it possible to run Speedometer 2.0 using run-benchmark. To do this, this patch adds the ability to
765         aggregate results using the differently aggregated values of subtests. In particular, Speedometer 2.0
766         requires aggregating the geometric mean out of total time spent in each suite.
767
768         Also added --show-iteration-values to show individual measured values in each iteration.
769
770         * Scripts/webkitpy/benchmark_runner/benchmark_results.py:
771         (BenchmarkResults.format): Added show_iteration_values as an option.
772         (BenchmarkResults._format_tests): Ditto.
773         (BenchmarkResults._format_values): Ditto. Added the code to show the measured values for each iteration
774         when show_iteration_values is set to True. We don't emit the unit in each value so that the list of values
775         is easily parsable as a JSON array.
776         (BenchmarkResults._format_values.format_scaled): Added. A helper function.
777         (BenchmarkResults._subtest_values_by_config_iteration): Added the support for aggregating values using
778         the aggregated values of a subtest even when they were computed using a different aggregator if the subtest
779         had exactly one aggregator.
780         (BenchmarkResults._lint_results):
781         (BenchmarkResults._lint_subtest_results): Replaced parent_needing_aggregation, which is set to the parent
782         test's name only when the parent test had an aggregator, by self-explanatory parent_test and
783         parent_aggregator_list.
784         (BenchmarkResults._lint_aggregator_list): Ditto. Added raise an exception when a test has an aggregator but
785         its subtest doesn't specify the same aggregator or it has more than one aggregators, making it ambiguous.
786         (BenchmarkResults._lint_configuration):
787         * Scripts/webkitpy/benchmark_runner/benchmark_results_unittest.py:
788         (test_format_values_with_no_unit_scaling): Added.
789         (test_format_values_with_iteration_values): Added.
790         (test_format_values_with_no_unit_scaling_and_iteration_values): Added.
791         (test_aggregate_results_from_another_aggregator): Added.
792         (test_lint_results): Added a test case.
793         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
794         (BenchmarkRunner.__init__): Added show_iteration_values as an argument.
795         (BenchmarkRunner._run_benchmark): Ditto.
796         (BenchmarkRunner.show_results): Ditto.
797         * Scripts/webkitpy/benchmark_runner/data/patches/webserver/Speedometer2.patch: Added.
798         * Scripts/webkitpy/benchmark_runner/data/plans/speedometer2.plan: Added.
799         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
800         (parse_args): Added --show-iteration-values as a boolean argument.
801         (run_benchmark_plan): Ditto.
802         (start): Ditto.
803         * Scripts/webkitpy/benchmark_runner/webserver_benchmark_runner.py:
804         (WebServerBenchmarkRunner.__init__): Ditto.
805
806 2018-01-29  Brady Eidson  <beidson@apple.com>
807
808         Make it possible for apps that use both WK1 and WK2 to use MessagePorts.
809         https://bugs.webkit.org/show_bug.cgi?id=182229
810
811         Reviewed by Chris Dumez.
812
813         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
814         * TestWebKitAPI/Tests/WebKitCocoa/MessagePortProviders.mm: Added.
815
816 2018-01-29  Carlos Garcia Campos  <cgarcia@igalia.com>
817
818         WebDriver: properly recover w3c tests after a webdriver server crash
819         https://bugs.webkit.org/show_bug.cgi?id=182242
820
821         Reviewed by Carlos Alberto Lopez Perez.
822
823         When a test makes the webdriver server crash, all other subsequent tests fail because they still try to send
824         messages to the server, gettin connection refused errors all the time. Selenium tests handle this correctly by
825         relaunching the server after every test failure, because other failures, even when not crashing the server,
826         might leave it in an bad state. WPT runner does the same for test files, it uses a subprocess to run the tests
827         and when any subtest fails, a new subsprocess is used for the following test file. We could do the same.
828
829         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
830         (WebDriverTestRunnerW3C.run): Restart the executor if any subtest failed.
831         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
832         (WebDriverW3CExecutor.__init__): Save timeout and expectations and do not import pytest.
833         (WebDriverW3CExecutor.setup): Create a subprocess to run the tests.
834         (WebDriverW3CExecutor.teardown): Send a message to the subprocess to terminate.
835         (WebDriverW3CExecutor._runner): Run the tests using pytest runner.
836         (WebDriverW3CExecutor.run): Send a message to the subprocess to run the given test and return the results message.
837
838 2018-01-29  Per Arne Vollan  <pvollan@apple.com>
839
840         Layout Test fast/events/beforeunload-dom-manipulation-crash.html is crashing
841         https://bugs.webkit.org/show_bug.cgi?id=181204
842         <rdar://problem/36256274>
843
844         Reviewed by Ryosuke Niwa.
845
846         Implement 'testRunner.forceImmediateCompletion()' for WK1.
847
848         * DumpRenderTree/TestRunner.cpp:
849         (forceImmediateCompletionCallback):
850         (TestRunner::staticFunctions):
851
852 2018-01-29  Frederic Wang  <fwang@igalia.com>
853
854         Unreviewed, add myself to some watch lists.
855
856         * Scripts/webkitpy/common/config/watchlist:
857
858 2018-01-27  Dan Bernstein  <mitz@apple.com>
859
860         HaveInternalSDK includes should be "#include?"
861         https://bugs.webkit.org/show_bug.cgi?id=179670
862
863         * DumpRenderTree/mac/Configurations/Base.xcconfig:
864
865 2018-01-26  Chris Dumez  <cdumez@apple.com>
866
867         Make sure service worker code does not launch a StorageProcess unnecessarily
868         https://bugs.webkit.org/show_bug.cgi?id=182192
869         <rdar://problem/36927427>
870
871         Reviewed by Geoffrey Garen.
872
873         Add API test coverage.
874
875         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
876
877 2018-01-26  Chris Dumez  <cdumez@apple.com>
878
879         Offlined content does not work for apps on home screen
880         https://bugs.webkit.org/show_bug.cgi?id=182070
881         <rdar://problem/36843906>
882
883         Reviewed by Youenn Fablet.
884
885         Add API test coverage to make sure an already registered service worker is able to intercept
886         the very first load.
887
888         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
889         (-[SWMessageHandlerWithExpectedMessage userContentController:didReceiveScriptMessage:]):
890
891 2018-01-26  Chris Nardi  <cnardi@chromium.org>
892
893         Addressing post-review comments after r226614
894         https://bugs.webkit.org/show_bug.cgi?id=182151
895
896         Reviewed by Myles C. Maxfield.
897
898         * TestWebKitAPI/Tests/WTF/TextBreakIterator.cpp:
899         (TestWebKitAPI::TEST):
900
901 2018-01-25  Per Arne Vollan  <pvollan@apple.com>
902
903         Unreviewed, rolling out r224920.
904
905         Some Win EWS bots are not coming back up after starting reboot.
906
907         * EWSTools/start-queue-win.sh:
908
909 2018-01-26  Carlos Garcia Campos  <cgarcia@igalia.com>
910
911         WebDriver: simplify the tests json report
912         https://bugs.webkit.org/show_bug.cgi?id=182171
913
914         Reviewed by Carlos Alberto Lopez Perez.
915
916         We are duplicating the test name in every subtest name. WPT already changed the format to remove the test name
917         form the subtest name. We should do the same for simplicity and compatibility with WPT.
918
919         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
920         (WebDriverTestRunner.dump_results_to_json_file):
921
922 2018-01-25  Alex Christensen  <achristensen@webkit.org>
923
924         REGRESSION (r221899): Web Content process hangs when webpage tries to make a new window if the WKWebView doesn’t have a UI delegate
925         https://bugs.webkit.org/show_bug.cgi?id=182152
926
927         Reviewed by Joseph Pecoraro.
928
929         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
930         (-[NoUIDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
931         (TEST):
932
933 2018-01-25  Youenn Fablet  <youenn@apple.com>
934
935         WebPluginInfoProvider should handle null host queries
936         https://bugs.webkit.org/show_bug.cgi?id=182112
937
938         Reviewed by Chris Dumez.
939
940         * TestWebKitAPI/Tests/WebKitCocoa/PluginLoadClientPolicies.mm:
941         (TEST):
942
943 2018-01-25  Basuke Suzuki  <Basuke.Suzuki@sony.com>
944
945         [webkitpy] Stop modifying path information only when running on Cygwin
946         https://bugs.webkit.org/show_bug.cgi?id=182136
947
948         On LayoutTestApacheHttpd, some path configuration is modified when platform
949         is Windows. This modification is only required for AppleWin running on Cygwin.
950         WinCairo uses native Windows environment, so the condition should be changed.
951
952         Reviewed by Per Arne Vollan.
953
954         * Scripts/webkitpy/layout_tests/servers/apache_http_server.py:
955         (LayoutTestApacheHttpd.__init__):
956         (LayoutTestApacheHttpd._get_apache_config_file_path):
957
958 2018-01-25  Eric Carlson  <eric.carlson@apple.com>
959
960         REGRESSION(r227457): Release assert in updateLayout while destructing a media element
961         https://bugs.webkit.org/show_bug.cgi?id=182038
962         <rdar://problem/36812083>
963
964         Reviewed by Jer Noble.
965
966         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
967         (TestWebKitAPI::TEST): Show/hide page so controls are always updated.
968
969 2018-01-24  Daniel Bates  <dabates@apple.com>
970
971         webkit-patch upload emits irrelevant simulator warnings
972         https://bugs.webkit.org/show_bug.cgi?id=181702
973         <rdar://problem/36556359>
974
975         Reviewed by Aakash Jain.
976
977         Remove warning when a person explicitly passes --child-processes with a value greater than
978         the default number of simulator instances webkitpy would have used had --child-processes
979         been omitted. Moreover, the placement of the warning logic to support printing such a message
980         (in the IOSSimulatorPort constructor) caused side effects that may print other warning messages.
981
982         By default, webkitpy will parallelize running tests using the maximum number of simulator
983         instances that can be supported based on available system resources at the time run-webkit-tests
984         is invoked. It seems reasonable to assume that a person that explicitly overrides this default
985         by specifying --child-processes knows what they are doing. The effects of picking a large
986         value be obvious, the system may become sluggish.
987
988         As a side benefit of this change we no longer will emit simulator warnings whenever the iOS
989         simulator port is instantiated by non-layout test related code (e.g. check-webkit-style).
990
991         * Scripts/webkitpy/port/ios_simulator.py:
992         (IOSSimulatorPort.__init__):
993
994 2018-01-25  Sergio Villar Senin  <svillar@igalia.com>
995
996         [WebVR][GTK][WPE] Remove the WebVR public API added in r227518
997         https://bugs.webkit.org/show_bug.cgi?id=182102
998
999         Reviewed by Carlos Garcia Campos.
1000
1001         * MiniBrowser/gtk/main.c:
1002         (main): Removed the call to set_enable_webvr().
1003
1004 2018-01-25  Carlos Garcia Campos  <cgarcia@igalia.com>
1005
1006         WebDriver: add support for slow tests
1007         https://bugs.webkit.org/show_bug.cgi?id=182095
1008
1009         Reviewed by Carlos Alberto Lopez Perez.
1010
1011         Add timeout mark to slow tests.
1012
1013         * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
1014         (TestExpectationsMarker.__init__): Save the timeout.
1015         (TestExpectationsMarker.pytest_collection_modifyitems): If test is slow use timeout * 5.
1016         (run): Pass timeout to TestExpectationsMarker constructor.
1017
1018 2018-01-24  Alex Christensen  <achristensen@webkit.org>
1019
1020         Gracefully recover from NetworkProcess crashes in private browsing
1021         https://bugs.webkit.org/show_bug.cgi?id=182073
1022         <rdar://problem/36572023>
1023
1024         Reviewed by Geoff Garen.
1025
1026         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1027         * TestWebKitAPI/Tests/WebKitCocoa/NetworkProcessCrashNonPersistentDataStore.mm: Added.
1028         (-[CrashDelegate webView:didFinishNavigation:]):
1029         (-[CrashDelegate webView:didFailProvisionalNavigation:withError:]):
1030         (-[CrashDelegate webView:didFailNavigation:withError:]):
1031         (TEST):
1032
1033 2018-01-24  Ali Juma  <ajuma@chromium.org>
1034
1035         REGRESSION (r227430): ASSERTION FAILED: !self.zoomToScaleCompletionHandler in TestRunnerWKWebView::zoomToScale
1036         https://bugs.webkit.org/show_bug.cgi?id=182052
1037
1038         Reviewed by Simon Fraser.
1039
1040         Don't set zoomToScaleCompletionHandler in zoomToScale:animated when calling the completion handler
1041         immediately.
1042
1043         Test: fast/visual-viewport/viewport-dimensions.html
1044
1045         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1046         (-[TestRunnerWKWebView zoomToScale:animated:completionHandler:]):
1047
1048 2018-01-24  Alex Christensen  <achristensen@webkit.org>
1049
1050         Remove pre-Sierra-OS-specific code in Tools
1051         https://bugs.webkit.org/show_bug.cgi?id=182034
1052
1053         Reviewed by Tim Horton.
1054
1055         * DumpRenderTree/mac/DumpRenderTree.mm:
1056         (setDefaultsToConsistentValuesForTesting):
1057         * MiniBrowser/mac/BrowserWindowController.m:
1058         (-[BrowserWindowController windowDidLoad]):
1059         (-[BrowserWindowController share:]):
1060         * MiniBrowser/mac/MiniBrowser_Prefix.pch:
1061         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
1062         (-[EventStreamPlayer playbackTimerFired:]):
1063         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1064         * TestWebKitAPI/Tests/WebCore/FontCache.cpp: Removed.
1065         * TestWebKitAPI/Tests/WebKitCocoa/RunOpenPanel.mm:
1066         * TestWebKitAPI/Tests/mac/PageVisibilityStateWithWindowChanges.mm:
1067         (TestWebKitAPI::PageVisibilityStateWithWindowChanges::runTest):
1068         * WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:
1069         (WTR::InjectedBundle::platformInitialize):
1070         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1071         (WTR::initializeWebViewConfiguration):
1072
1073 2018-01-24  Alexey Proskuryakov  <ap@apple.com>
1074
1075         REGRESSION (r226485): Many new wasm leaks detected by the leaks bot
1076         https://bugs.webkit.org/show_bug.cgi?id=181400
1077         <rdar://problem/36358768>
1078
1079         Reviewed by Joseph Pecoraro.
1080
1081         * BuildSlaveSupport/build.webkit.org-config/config.json: Remove incorrect option.
1082
1083         * Scripts/webkitpy/layout_tests/run_webkit_tests.py: (_set_up_derived_options):
1084         Always disable poisoning when running with --leaks, as this should work locally,
1085         not just on bots.
1086
1087 2018-01-24  Daniel Bates  <dabates@apple.com>
1088
1089         REGRESSION (r226138): Selecting a line that ends with zero-width joiner (ZWJ) may cause text transformation
1090         https://bugs.webkit.org/show_bug.cgi?id=181993
1091         <rdar://problem/36421080>
1092
1093         Reviewed by David Hyatt.
1094
1095         Remove unit test for overlap strategy FrontmostWithLongestEffectiveRange
1096         as we no longer support this strategy.
1097
1098         * TestWebKitAPI/Tests/WebCore/MarkerSubrange.cpp:
1099
1100 2018-01-24  David Kilzer  <ddkilzer@apple.com>
1101
1102         check-webkit-style reports false-positive whitespace/braces warning about blocks with return types as arguments in Objective-C
1103         <https://webkit.org/b/182015>
1104         <rdar://problem/36449728>
1105
1106         Reviewed by Tim Horton.
1107
1108         * Scripts/webkitpy/style/checkers/cpp.py:
1109         (regex_for_lambdas_and_blocks): Update regex to include
1110         optional return type for block argument in Objective-C.
1111         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1112         (WebKitStyleTest.test_braces): Add test.
1113
1114 2018-01-24  Ms2ger  <Ms2ger@igalia.com>
1115
1116         WPE-focused test gardening.
1117         https://bugs.webkit.org/show_bug.cgi?id=182051
1118
1119         Unreviewed test gardening.
1120
1121         * TestWebKitAPI/glib/TestExpectations.json: TestWebKitFindController failure was fixed in r227418.
1122
1123 2018-01-23  Mark Lam  <mark.lam@apple.com>
1124
1125         Update Poisoned pointers to take a Poison class instead of a uintptr_t&.
1126         https://bugs.webkit.org/show_bug.cgi?id=182017
1127         <rdar://problem/36795513>
1128
1129         Reviewed by Filip Pizlo and JF Bastien.
1130
1131         * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
1132         (TestWebKitAPI::TEST):
1133         * TestWebKitAPI/Tests/WTF/PoisonedRef.cpp:
1134         (TestWebKitAPI::TEST):
1135         (TestWebKitAPI::passWithRef):
1136         * TestWebKitAPI/Tests/WTF/PoisonedRefPtr.cpp:
1137         (TestWebKitAPI::TEST):
1138         (TestWebKitAPI::f1):
1139         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
1140         (TestWebKitAPI::TEST):
1141         (TestWebKitAPI::poisonedPtrFoo):
1142         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp:
1143         (TestWebKitAPI::TEST):
1144         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp:
1145         (TestWebKitAPI::TEST):
1146
1147 2018-01-18  Sergio Villar Senin  <svillar@igalia.com>
1148
1149         [WebVR] Add OpenVR to the tree and to the build
1150         https://bugs.webkit.org/show_bug.cgi?id=177298
1151
1152         Reviewed by Žan Doberšek.
1153
1154         * Scripts/webkitpy/style/checker.py: Added openvr to the list of third party libraries
1155         with reduced style checks.
1156
1157 2018-01-24  Chris Nardi  <cnardi@chromium.org>
1158
1159         Add Chris Nardi to contributors list
1160         https://bugs.webkit.org/show_bug.cgi?id=182029
1161
1162         Reviewed by Antti Koivisto.
1163
1164         * Scripts/webkitpy/common/config/contributors.json:
1165
1166 2018-01-22  Ryosuke Niwa  <rniwa@webkit.org>
1167
1168         Mac Sierra perf bots have been failing due to CG errors
1169         https://bugs.webkit.org/show_bug.cgi?id=181955
1170
1171         Reviewed by Antti Koivisto.
1172
1173         Ignore the CoreGraphics error messages on macOS Sierra.
1174
1175         Also added tests for ignoring lines in stdout and stderr.
1176
1177         * Scripts/webkitpy/performance_tests/perftest.py:
1178         (PerfTest.run_failed): Refactored for clarity.
1179         (PerfTest):
1180         (PerfTest.filter_ignored_lines): Added.
1181         (PerfTest._lines_to_ignore): Renamed from _lines_to_ignore_in_parser_result since these regular expressions
1182         are now used to ignore lines in other kinds of tests than parser tests.
1183         (PerfTest._errors_to_ignore_in_sierra): Added.
1184         (PerfTest._filter_output): Added the code to ignore errors only on macOS Sierra.
1185         * Scripts/webkitpy/performance_tests/perftest_unittest.py:
1186         (test_parse_output_with_ignored_stdout): Added.
1187         (test_parse_output_with_ignored_stderr): Added.
1188         (test_parse_output_with_ignored_stderr.MockPortWithSierraName): Added.
1189
1190 2018-01-23  Eric Carlson  <eric.carlson@apple.com>
1191
1192         Resign NowPlaying status when no media element is eligible
1193         https://bugs.webkit.org/show_bug.cgi?id=181914
1194         <rdar://problem/35294116>
1195
1196         Reviewed by Jer Noble.
1197
1198         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
1199         (-[NowPlayingTestWebView hasActiveNowPlayingSession]):
1200         (TestWebKitAPI::TEST):
1201         * TestWebKitAPI/Tests/WebKitCocoa/large-video-test-now-playing.html:
1202
1203 2018-01-23  Yoshiaki Jitsukawa  <Yoshiaki.Jitsukawa@sony.com>
1204
1205         [WinCairo] Use 64-bit toolset
1206         https://bugs.webkit.org/show_bug.cgi?id=181979
1207
1208         Reviewed by Alex Christensen.
1209
1210         Use 64-bit toolset for 64-bit build in order to improve build time. 
1211
1212         * Scripts/webkitdirs.pm:
1213         (generateBuildSystemFromCMakeProject):
1214
1215 2018-01-23  Simon Fraser  <simon.fraser@apple.com>
1216
1217         Element with position:fixed stops scrolling at the bottom of the page, but is painted in the right place on Chacos.com.
1218         https://bugs.webkit.org/show_bug.cgi?id=181741
1219         rdar://problem/36593581
1220
1221         Reviewed by Tim Horton.
1222         
1223         If zoomToScale:animated: is called with the current zoom level, call the callback
1224         rather than doing nothing.
1225
1226         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
1227         (-[TestRunnerWKWebView zoomToScale:animated:completionHandler:]):
1228
1229 2018-01-23  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1230
1231         Add ignore_errors keyword argument to Executive.run_command() for replacing the common pattern of error_handler usage
1232         https://bugs.webkit.org/show_bug.cgi?id=180820
1233
1234         Reviewed by David Kilzer.
1235
1236         * Scripts/webkitpy/common/checkout/scm/git.py:
1237         (Git.in_working_directory):
1238         (Git.clone):
1239         (Git.read_git_config):
1240         (Git.apply_reverse_diff):
1241         * Scripts/webkitpy/common/checkout/scm/scm.py:
1242         (SCM.run):
1243         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
1244         * Scripts/webkitpy/common/checkout/scm/svn.py:
1245         (SVNRepository.has_authorization_for_realm):
1246         * Scripts/webkitpy/common/net/credentials_unittest.py:
1247         * Scripts/webkitpy/common/system/abstractexecutive.py:
1248         (AbstractExecutive.run_command):
1249         * Scripts/webkitpy/common/system/executive.py:
1250         (Executive.kill_process.is):
1251         (Executive.running_pids):
1252         (Executive.kill_all):
1253         (Executive.run_command):
1254         * Scripts/webkitpy/common/system/executive_mock.py:
1255         (MockExecutive.run_command):
1256         (MockExecutive2.run_command):
1257         * Scripts/webkitpy/common/system/executive_unittest.py:
1258         (ExecutiveTest.test_run_command_with_bad_command.run_bad_command):
1259         * Scripts/webkitpy/common/system/platforminfo.py:
1260         (PlatformInfo.xcode_sdk_version):
1261         * Scripts/webkitpy/layout_tests/servers/http_server.py:
1262         (Lighttpd._check_and_kill):
1263         * Scripts/webkitpy/port/base.py:
1264         (Port._symbols_string):
1265         * Scripts/webkitpy/port/gtk.py:
1266         (GtkPort.setup_environ_for_server):
1267         * Scripts/webkitpy/port/win.py:
1268         (WinPort._runtime_feature_list):
1269         (WinPort.read_registry_value):
1270         * Scripts/webkitpy/port/win_unittest.py:
1271         (WinPortTest.test_runtime_feature_list):
1272         * Scripts/webkitpy/tool/commands/analyzechangelog.py:
1273         * Scripts/webkitpy/tool/commands/analyzechangelog_unittest.py:
1274
1275 2018-01-23  Commit Queue  <commit-queue@webkit.org>
1276
1277         Unreviewed, rolling out r227279 and r227373.
1278         https://bugs.webkit.org/show_bug.cgi?id=181988
1279
1280         The LayoutTest crash fix introduced an API test failure.
1281         (Requested by ryanhaddad on #webkit).
1282
1283         Reverted changesets:
1284
1285         "Resign NowPlaying status when no media element is eligible"
1286         https://bugs.webkit.org/show_bug.cgi?id=181914
1287         https://trac.webkit.org/changeset/227279
1288
1289         "Resign NowPlaying status when no media element is eligible"
1290         https://bugs.webkit.org/show_bug.cgi?id=181914
1291         https://trac.webkit.org/changeset/227373
1292
1293 2018-01-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1294
1295         Unreviewed. Add test case for slow in test_expectations.py.
1296
1297         I forgot to also check slow tests in test_expectations.py unit tests.
1298
1299         * Scripts/webkitpy/common/test_expectations_unittest.py:
1300         (assert_slow):
1301         (test_build_type):
1302         (test_slow):
1303
1304 2018-01-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1305
1306         Unreviewed. Mark test WTF_Lock.ManyContendedShortSections as slow.
1307
1308         * TestWebKitAPI/glib/TestExpectations.json:
1309
1310 2018-01-22  Ryosuke Niwa  <rniwa@webkit.org>
1311
1312         Blob conversion and sanitization doesn't work with Microsoft Word for Mac 2011
1313         https://bugs.webkit.org/show_bug.cgi?id=181616
1314         <rdar://problem/36484908>
1315
1316         Reviewed by Wenson Hsieh.
1317
1318         Added tests to make sure we sanitize plain HTML, not just web archives,
1319         when and only when custom pasteboard data is enabled.
1320
1321         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1322         * TestWebKitAPI/Tests/WebKitCocoa/PasteHTML.mm: Added.
1323         (writeHTMLToPasteboard): Added.
1324         (createWebViewWithCustomPasteboardDataSetting): Added.
1325
1326 2018-01-22  Alexey Proskuryakov  <ap@apple.com>
1327
1328         REGRESSION (r226485): Many new wasm leaks detected by the leaks bot
1329         https://bugs.webkit.org/show_bug.cgi?id=181400
1330         rdar://problem/36358768
1331
1332         Reviewed by JF Bastien.
1333
1334         * BuildSlaveSupport/build.webkit.org-config/config.json: Disable poisoning on the leaks bot.
1335
1336 2018-01-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1337
1338         [GTK] Test /webkit/WebKitWebsiteData/resource-load-statistics is failing since r227223
1339         https://bugs.webkit.org/show_bug.cgi?id=181929
1340
1341         Reviewed by Michael Catanzaro.
1342
1343         The test is checking that the resource load stats file is deleted after clearing website data. Since r227223,
1344         the website data completion callback is not called immediately, and a new file is created when the operation
1345         finishes. We need to check that the file was removing after calling clear.
1346
1347         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1348         (fileChangedCallback):
1349         (testWebsiteDataResourceLoadStatistics):
1350
1351 2018-01-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1352
1353         Reviewed GTK gardening. Mark /webkit/WebKitWebView/mouse-target as fail too.
1354
1355         * TestWebKitAPI/glib/TestExpectations.json:
1356
1357 2018-01-22  Carlos Garcia Campos  <cgarcia@igalia.com>
1358
1359         Unreviewed GTK+ gardening. Fix /webkit/WebKitConsoleMessage/network-error.
1360
1361         Partially revert r226782, the fix was wrong for the GLib version we currently use.
1362
1363         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp:
1364         (testWebKitConsoleMessageNetworkError):
1365
1366 2018-01-21  Carlos Garcia Campos  <cgarcia@igalia.com>
1367
1368         Unreviewed. Remove unused verbose mode from GLib API tests runner.
1369
1370         * glib/api_test_runner.py:
1371         (add_options):
1372
1373 2018-01-21  Wenson Hsieh  <wenson_hsieh@apple.com>
1374
1375         Add a new feature flag for EXTRA_ZOOM_MODE and reintroduce AdditionalFeatureDefines.h
1376         https://bugs.webkit.org/show_bug.cgi?id=181918
1377
1378         Reviewed by Tim Horton.
1379
1380         Add EXTRA_ZOOM_MODE to FeatureDefines.xconfig (off by default).
1381
1382         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1383
1384 2018-01-21  Eric Carlson  <eric.carlson@apple.com>
1385
1386         Resign NowPlaying status when no media element is eligible
1387         https://bugs.webkit.org/show_bug.cgi?id=181914
1388         <rdar://problem/35294116>
1389
1390         Reviewed by Jer Noble.
1391
1392         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
1393         (-[NowPlayingTestWebView hasActiveNowPlayingSession]):
1394         (TestWebKitAPI::TEST):
1395         * TestWebKitAPI/Tests/WebKitCocoa/large-video-test-now-playing.html:
1396
1397 2018-01-21  Aakash Jain  <aakash_jain@apple.com>
1398
1399         Fix broken unit-tests after r227192
1400         https://bugs.webkit.org/show_bug.cgi?id=181909
1401
1402         Reviewed by Carlos Garcia Campos.
1403
1404         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1405
1406 2018-01-20  Chris Dumez  <cdumez@apple.com>
1407
1408         API test URLSchemeHandler.Leaks1 is timing out on iOS simulator debug
1409         https://bugs.webkit.org/show_bug.cgi?id=174984
1410         <rdar://problem/33665676>
1411
1412         Reviewed by Alexey Proskuryakov.
1413
1414         Disable URLSchemeHandler.Leaks1 API test on iOS as it sometimes times out.
1415
1416         * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-leaks.mm:
1417         (TEST):
1418
1419 2018-01-20  Brian Burg  <bburg@apple.com>
1420
1421         WebDriver: fix some nits that prevent running W3C tests on Mac
1422         https://bugs.webkit.org/show_bug.cgi?id=181864
1423
1424         Reviewed by Carlos Garcia Campos.
1425
1426         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
1427         (WebDriverW3CWebServer.__init__): _wsout needs to always be defined,
1428         as we assume that the property exists later.
1429
1430         (WebDriverW3CWebServer.stop): If the temporary file doesn't
1431         exist for some reason, the remove call will raise and exception.
1432         Gracefully handle the case where the file isn't created due to
1433         a problem/exception that happened elsewhere.
1434
1435 2018-01-19  Ling Ho  <lingcherd_ho@apple.com>
1436
1437         Move Bingdings EWS and Webkitpy EWS queues to High Sierra on buildbot dashboard.
1438         https://bugs.webkit.org/show_bug.cgi?id=181881
1439
1440         Reviewed by Alexey Proskuryakov.
1441
1442         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1443         (BubbleQueueServer):
1444         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1445         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1446         (table.queue-grid tr.platform.mac-os-x-elcapitan img.logo): Deleted.
1447
1448 2018-01-19  Youenn Fablet  <youenn@apple.com>
1449
1450         Do not go to the storage process when registering a service worker client if there is no service worker registered
1451         https://bugs.webkit.org/show_bug.cgi?id=181740
1452         <rdar://problem/36650400>
1453
1454         Reviewed by Chris Dumez.
1455
1456         Add support for internals inside API tests.
1457
1458         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1459         * TestWebKitAPI/Tests/InjectInternals_Bundle.cpp: Added.
1460         (TestWebKitAPI::InternalsInjectedBundleTest::InternalsInjectedBundleTest):
1461         (TestWebKitAPI::InternalsInjectedBundleTest::initialize):
1462         (TestWebKitAPI::InternalsInjectedBundleTest::didCreatePage):
1463         (TestWebKitAPI::InternalsInjectedBundleTest::didClearWindowForFrame):
1464         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1465         (setConfigurationInjectedBundlePath):
1466         (-[RegularPageMessageHandler userContentController:didReceiveScriptMessage:]):
1467
1468 2018-01-19  John Wilander  <wilander@apple.com>
1469
1470         Resource Load Statistics: Implement callback support for removal of WebsiteDataType::ResourceLoadStatistics
1471         https://bugs.webkit.org/show_bug.cgi?id=181822
1472         https://bugs.webkit.org/show_bug.cgi?id=175263
1473         https://bugs.webkit.org/show_bug.cgi?id=178536
1474         https://bugs.webkit.org/show_bug.cgi?id=181223
1475         https://bugs.webkit.org/show_bug.cgi?id=181482
1476         <rdar://problem/33491222>
1477         <rdar://problem/33805293>
1478         <rdar://problem/36332683>
1479         <rdar://problem/36549026>
1480
1481         Reviewed by Alex Christensen.
1482
1483         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1484         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1485         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStore):
1486         (WTR::TestRunner::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
1487         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1488         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1489         (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
1490         (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
1491
1492 2018-01-19  Jonathan Bedard  <jbedard@apple.com>
1493
1494         run-webkit-tests fails when there is a curly brace in Xcode build output
1495         https://bugs.webkit.org/show_bug.cgi?id=181254
1496         <rdar://problem/36453374>
1497
1498         Reviewed by Daniel Bates.
1499
1500         * Scripts/webkitpy/port/base.py:
1501         (Port._run_script): Encode script output before logging it.
1502
1503 2018-01-19  Chris Dumez  <cdumez@apple.com>
1504
1505         Service worker registrations restored from disk may not be reused when the JS calls register() again
1506         https://bugs.webkit.org/show_bug.cgi?id=181810
1507         <rdar://problem/36591711>
1508
1509         Reviewed by Youenn Fablet.
1510
1511         Add API test coverage.
1512
1513         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1514         (-[SWMessageHandlerForRestoreFromDiskTest initWithExpectedMessage:]):
1515         (-[SWMessageHandlerForRestoreFromDiskTest userContentController:didReceiveScriptMessage:]):
1516
1517 2018-01-19  Ryan Haddad  <ryanhaddad@apple.com>
1518
1519         Remove El Capitan queues from flakiness dashboard
1520         https://bugs.webkit.org/show_bug.cgi?id=181860
1521
1522         Reviewed by Aakash Jain.
1523
1524         * TestResultServer/static-dashboards/builders.jsonp:
1525
1526 2018-01-19  Keith Miller  <keith_miller@apple.com>
1527
1528         HaveInternalSDK includes should be "#include?"
1529         https://bugs.webkit.org/show_bug.cgi?id=179670
1530
1531         Reviewed by Dan Bernstein.
1532
1533         * MiniBrowser/Configurations/Base.xcconfig:
1534         * MobileMiniBrowser/Configurations/Base.xcconfig:
1535         * TestWebKitAPI/Configurations/Base.xcconfig:
1536         * WebKitTestRunner/Configurations/Base.xcconfig:
1537
1538 2018-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1539
1540         WebDriver: driver environment not passed to pytest when running w3c tests
1541         https://bugs.webkit.org/show_bug.cgi?id=181852
1542
1543         Reviewed by Carlos Alberto Lopez Perez.
1544
1545         That's why color codes are not used in the bots log for selenium tests but they appear in w3c tests.
1546
1547         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
1548         (WebDriverW3CExecutor.run):
1549
1550 2018-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1551
1552         [GTK] WebDriver: wayland display no used in wayland bot
1553         https://bugs.webkit.org/show_bug.cgi?id=181851
1554
1555         Reviewed by Carlos Alberto Lopez Perez.
1556
1557         We need to handle the additionalArguments property in the WebDriverTests step.
1558
1559         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1560         (RunWebDriverTests.start):
1561
1562 2018-01-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1563
1564         [GTK] TERM environment variable is not passed to the test driver.
1565         https://bugs.webkit.org/show_bug.cgi?id=181847
1566
1567         Rubber-stamped by by Carlos Garcia Campos.
1568
1569         * Scripts/webkitpy/port/base.py:
1570         (Port.to.setup_environ_for_server):
1571
1572 2018-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1573
1574         WebDriver: run-webdriver-tests is crashing in the bots when creating results json file
1575         https://bugs.webkit.org/show_bug.cgi?id=181844
1576
1577         Reviewed by Carlos Alberto Lopez Perez.
1578
1579         We always try to create the directory where to store the json file, but when the filename is given directly,
1580         like in the bots, the current dir is used.
1581
1582         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
1583         (WebDriverTestRunner.dump_results_to_json_file): Do not try to create the directory if dirname() returns an
1584         empty string.
1585
1586 2018-01-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1587
1588         [GTK] WebDriver tests are running outside the jhbuild env
1589         https://bugs.webkit.org/show_bug.cgi?id=181842
1590
1591         Reviewed by Žan Doberšek.
1592
1593         We need to enter jhbuild env in run-webdriver-tests.
1594
1595         * Scripts/run-webdriver-tests:
1596
1597 2018-01-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1598
1599         [GTK] Run WebDriver tests in the bots
1600         https://bugs.webkit.org/show_bug.cgi?id=181787
1601
1602         Reviewed by Michael Catanzaro.
1603
1604         Add a step to run WebDriver tests in the GTK test bots. The new step is not GTK specific, but only added to the
1605         factory for the GTK port for now.
1606
1607         * BuildSlaveSupport/build.webkit.org-config/factories.py:
1608         (TestFactory.__init__):
1609         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1610         (RunWebDriverTests):
1611         (RunWebDriverTests.start):
1612         (RunWebDriverTests.commandComplete):
1613         (RunWebDriverTests.evaluateCommand):
1614         (RunWebDriverTests.getText):
1615         (RunWebDriverTests.getText2):
1616
1617 2018-01-18  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1618
1619         [WinCairo] Pass correct url for http test to test driver.
1620         https://bugs.webkit.org/show_bug.cgi?id=181814
1621
1622         Reviewed by Alex Christensen.
1623
1624         * Scripts/webkitpy/port/driver.py:
1625         (Driver):
1626         (Driver.http_test_path_to_uri):
1627         (Driver.is_secure_path):
1628         (Driver.http_base_url):
1629         (Driver.uri_to_test):
1630
1631 2018-01-18  Ryan Haddad  <ryanhaddad@apple.com>
1632
1633         Unreviewed, update the triggerable name for 'sierra-release-perf-tests'
1634
1635         * BuildSlaveSupport/build.webkit.org-config/config.json:
1636
1637 2018-01-18  Dan Bernstein  <mitz@apple.com>
1638
1639         [Xcode] Streamline and future-proof target-macOS-version-dependent build setting definitions
1640         https://bugs.webkit.org/show_bug.cgi?id=181803
1641
1642         Reviewed by Tim Horton.
1643
1644         * DumpRenderTree/mac/Configurations/Base.xcconfig: Updated.
1645         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig: Ditto.
1646         * ImageDiff/cg/Configurations/Base.xcconfig: Ditto.
1647         * ImageDiff/cg/Configurations/DebugRelease.xcconfig: Ditto.
1648         * MiniBrowser/Configurations/Base.xcconfig: Ditto.
1649         * MiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
1650         * TestWebKitAPI/Configurations/Base.xcconfig: Ditto.
1651         * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Ditto.
1652         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Adopted macOSTargetConditionals
1653           helpers.
1654         * TestWebKitAPI/Configurations/macOSTargetConditionals.xcconfig: Added. Defines helper build
1655           settings useful for defining settings that depend on the target macOS version.
1656         * WebKitTestRunner/Configurations/Base.xcconfig: Updated.
1657         * WebKitTestRunner/Configurations/DebugRelease.xcconfig: Updated.
1658
1659 2018-01-18  Ling Ho  <lingcherd_ho@apple.com>
1660
1661         Remove Opensource El Capitan queues from buildbot
1662         https://bugs.webkit.org/show_bug.cgi?id=181712
1663
1664         Reviewed by Aakash Jain.
1665
1666         * BuildSlaveSupport/build.webkit.org-config/config.json:
1667         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1668         (WebKitBuildbot):
1669         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1670
1671 2018-01-18  Chris Dumez  <cdumez@apple.com>
1672
1673         Service Workers restored from persistent storage have 'redundant' state
1674         https://bugs.webkit.org/show_bug.cgi?id=181749
1675         <rdar://problem/36556486>
1676
1677         Reviewed by Youenn Fablet.
1678
1679         Add API test coverage.
1680
1681         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1682         (-[SWMessageHandlerForFetchTest userContentController:didReceiveScriptMessage:]):
1683
1684 2018-01-18  Joanmarie Diggs  <jdiggs@igalia.com>
1685
1686         [GTK] AX: Two layout tests crash with error 'g_strstr_len: assertion 'haystack != NULL' failed' in Accessibility::UIElement::url
1687         https://bugs.webkit.org/show_bug.cgi?id=176796
1688
1689         Reviewed by Chris Fleizach.
1690
1691         Add sanity check that we have a URL before calling g_strstr_len().
1692
1693         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1694         (WTR::AccessibilityUIElement::url):
1695
1696 2018-01-18  Ryan Haddad  <ryanhaddad@apple.com>
1697
1698         Add triggers for Sierra test262 and perf queues
1699         https://bugs.webkit.org/show_bug.cgi?id=181799
1700
1701         Reviewed by Aakash Jain.
1702
1703         * BuildSlaveSupport/build.webkit.org-config/config.json:
1704
1705 2018-01-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1706
1707         [iOS] Specify -[NSURL _title] for the associated URL when copying an image element
1708         https://bugs.webkit.org/show_bug.cgi?id=181783
1709         <rdar://problem/35785445>
1710
1711         Reviewed by Ryosuke Niwa.
1712
1713         Augments an existing API test and adds a new test to make sure that the resulting NSItemProvider's NSURL when
1714         copying an image contains a relevant title.
1715
1716         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
1717         (TestWebKitAPI::TEST):
1718         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
1719         * TestWebKitAPI/ios/UIKitSPI.h:
1720
1721 2018-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1722
1723         WebDriver: ignore the driver in selenium test names when getting expectations
1724         https://bugs.webkit.org/show_bug.cgi?id=181738
1725
1726         Reviewed by Carlos Alberto Lopez Perez.
1727
1728         In selenium tests, the driver is added as a parameter to every test which results in tests names like
1729         foo[DriverName] or foo[DriverName-param2] in case of tests using more parameters. We don't want to include the
1730         driver name in the test expectations file, so we need to remove it when querying the expectations.
1731
1732         * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
1733         (TestExpectationsMarker.__init__): Save the param to ignore.
1734         (TestExpectationsMarker._item_name): Return the name of the test without the para to ignore.
1735         (TestExpectationsMarker.pytest_collection_modifyitems): Use _item_name().
1736         (run): Pass param to ignore to TestExpectationsMarker().
1737         * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
1738         (WebDriverSeleniumExecutor.__init__): Save the driver name.
1739         (WebDriverSeleniumExecutor.run): Pass the driver name as param to ignore.
1740
1741 2018-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1742
1743         [GTK][WPE] Show unit tests unexpectedly passing in the bots
1744         https://bugs.webkit.org/show_bug.cgi?id=181726
1745
1746         Reviewed by Michael Catanzaro.
1747
1748         Now that we have the info, let's show it also in the bots.
1749
1750         * BuildSlaveSupport/build.webkit.org-config/steps.py:
1751         (RunGLibAPITests.commandComplete):
1752
1753 2018-01-17  Ling Ho  <lingcherd_ho@apple.com>
1754
1755         Fix broken unittest after r227048
1756         https://bugs.webkit.org/show_bug.cgi?id=181760
1757
1758         Reviewed by Aakash Jain.
1759
1760
1761 2018-01-17  Michael Catanzaro  <mcatanzaro@igalia.com>
1762
1763         WEBKIT_FRAMEWORK should not modify file-global include directories
1764         https://bugs.webkit.org/show_bug.cgi?id=181656
1765
1766         Reviewed by Konstantin Tokarev.
1767
1768         * TestWebKitAPI/PlatformWPE.cmake:
1769         * TestWebKitAPI/glib/CMakeLists.txt:
1770
1771 2018-01-17  Alicia Boya García  <aboya@igalia.com>
1772
1773         Unreviewed, mark Alicia as committer in contributors.json
1774
1775         * Scripts/webkitpy/common/config/contributors.json:
1776
1777 2018-01-17  Youenn Fablet  <youenn@apple.com>
1778
1779         Put fetch Request.keepalive behind a runtime flag
1780         https://bugs.webkit.org/show_bug.cgi?id=181592
1781
1782         Reviewed by Chris Dumez.
1783
1784         * DumpRenderTree/mac/DumpRenderTree.mm:
1785         (enableExperimentalFeatures):
1786         * DumpRenderTree/win/DumpRenderTree.cpp:
1787         (enableExperimentalFeatures):
1788         * WebKitTestRunner/TestController.cpp:
1789         (WTR::TestController::resetPreferencesToConsistentValues):
1790
1791 2018-01-17  Wenson Hsieh  <wenson_hsieh@apple.com>
1792
1793         Add injected bundle SPI to replace subresource URLs when dropping or pasting rich content
1794         https://bugs.webkit.org/show_bug.cgi?id=181637
1795         <rdar://problem/36508471>
1796
1797         Reviewed by Tim Horton.
1798
1799         Add 2 new API tests to exercise injected bundle SPI for supplying replacement URLs when pasting an image, and an
1800         attributed string containing multiple NSTextAttachments. See WebKit and WebCore ChangeLogs for more detail.
1801
1802         * TestWebKitAPI/Tests/WebKitCocoa/BundleEditingDelegatePlugIn.mm:
1803         (-[BundleEditingDelegatePlugIn webProcessPlugIn:didCreateBrowserContextController:]):
1804         (-[BundleEditingDelegatePlugIn _webProcessPlugInBrowserContextController:replacementURLForResource:mimeType:]):
1805
1806         Implement the new Objective-C bundle SPI to look up the incoming MIME type in the dictionary supplied via the
1807         "MIMETypeToReplacementURLMap" bundle initialization parameter, and return it.
1808
1809         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1810         (webViewForTestingAttachments):
1811         (-[TestWKWebView tagsInBody]):
1812         (-[TestWKWebView expectElementTagsInOrder:]):
1813         (-[TestWKWebView expectElementTag:toComeBefore:]):
1814
1815         Add a test helper to check that the given list of element tags appears in the document body. Also, reimplement
1816         the existing -expectElementTag:toComeBefore: as a special case of -expectElementTagsInOrder:.
1817
1818         (TestWebKitAPI::TEST):
1819         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1820         (WTR::InjectedBundlePage::InjectedBundlePage):
1821
1822 2018-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1823
1824         WebDriver: add support for test expectations
1825         https://bugs.webkit.org/show_bug.cgi?id=180420
1826
1827         Reviewed by Carlos Alberto Lopez Perez.
1828
1829         Add support for parsing test expectations from a JSON file and mark tests on collection accordingly.
1830
1831         * Scripts/run-webdriver-tests: Get the retval from process_results().
1832         * Scripts/webkitpy/thirdparty/__init__.py:
1833         (AutoinstallImportHook._install_pytest): Install also py because pytest needs it.
1834         * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
1835         (TestExpectationsMarker): Plugin to mark tests based on given expectations.
1836         (TestExpectationsMarker.__init__): Initialize expectations.
1837         (TestExpectationsMarker.pytest_collection_modifyitems): Mark tests if needed,
1838         (run): Create and use TestExpectationsMarker plugin.
1839         * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
1840         (WebDriverSeleniumExecutor.run): Pass expectations to pytest_runner.
1841         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
1842         (WebDriverTestRunner.__init__): Create a TestExpectations and pass it to the runners.
1843         (WebDriverTestRunner.run): Do not count results here.
1844         (WebDriverTestRunner.process_results): Rename print_results() as process_results() since it now returns the
1845         amount of failures. Printing the test summary while processing results will be made optional in a follow up
1846         patch.
1847         (WebDriverTestRunner.process_results.report): Return the amount of failures.
1848         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
1849         (WebDriverTestRunnerSelenium.__init__): Initialize _expectations.
1850         (WebDriverTestRunnerSelenium.collect_tests): Do not include skipped tests.
1851         (WebDriverTestRunnerSelenium.run): Stop returning the tests count.
1852         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
1853         (WebDriverTestRunnerW3C.__init__): Initialize _expectations.
1854         (WebDriverTestRunnerW3C.collect_tests): Do not include skipped tests.
1855         (WebDriverTestRunnerW3C._scan_directory): Ditto.
1856         (WebDriverTestRunnerW3C.run): Stop returning the tests count.
1857         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
1858         (WebDriverW3CExecutor.run): Pass expectations to pytest_runner.
1859
1860 2018-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1861
1862         Unreviewed WPE gardening. Mark some known unit test failures.
1863
1864         * TestWebKitAPI/glib/TestExpectations.json:
1865
1866 2018-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1867
1868         [GTK][WPE] Use the same subtest names in GTK and WPE unit tests
1869         https://bugs.webkit.org/show_bug.cgi?id=181724
1870
1871         Reviewed by Philippe Normand.
1872
1873         We currently use /webkit2/foo/bar for GTK and /wpe/foo/bar for WPE. Many of the tests are common, so there's no
1874         reason to use different names. This way we can refer to the same test names for both and we can share the
1875         expectations in the TestExpectations.json file.
1876
1877         * TestWebKitAPI/glib/TestExpectations.json:
1878         * TestWebKitAPI/glib/WebKitGLib/TestMain.h: Use /webkit/foo/bar in GTK and WPE.
1879
1880 2018-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1881
1882         Unreviewed. Increase the slow timeout of GTK and WPE unit tests.
1883
1884         We are using now a lower default timeout, so multiplying by 5 is no longer enough for some of the WTF
1885         tests. Multiply by 10 so that we get the same slow timeout as before, 50.
1886
1887         * glib/api_test_runner.py:
1888         (TestRunner._run_test_glib):
1889         (TestRunner._run_google_test):
1890
1891 2018-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1892
1893         [GTK] Duplicated symbols in libjavascriptcoregtk and libwebkit2gtk can cause crashes in production builds
1894         https://bugs.webkit.org/show_bug.cgi?id=179914
1895
1896         Reviewed by Žan Doberšek.
1897
1898         Add two scripts to be run by dist-check step when releasing. One is to detect symbols duplicated in
1899         libjavascriptcoregtk and libwebkit2gtk that should be included to the version script. The other one is to ensure
1900         all symbols listed in the script are present in the library.
1901
1902         * Scripts/check-for-global-bss-symbols-in-webkigtk-libs: Added.
1903         (bss_symbols):
1904         * Scripts/check-for-invalid-symbols-in-version-script: Added.
1905         (script_symbols):
1906         * Scripts/make-dist:
1907         (Distcheck.build):
1908         (Distcheck):
1909         (Distcheck.check_symbols):
1910         (Distcheck.check):
1911
1912 2018-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
1913
1914         [GTK][WPE] Propagate the parameters when restarting glib api tests after a crash
1915         https://bugs.webkit.org/show_bug.cgi?id=181722
1916
1917         Reviewed by Žan Doberšek.
1918
1919         I forgot to pass the parameters to run() when restarting.
1920
1921         * glib/glib_test_runner.py:
1922         (GLibTestRunner.run):
1923
1924 2018-01-16  Fujii Hironori  <Hironori.Fujii@sony.com>
1925
1926         [CMake] Remove WebCoreDerivedSources library target
1927         https://bugs.webkit.org/show_bug.cgi?id=181664
1928
1929         Reviewed by Carlos Garcia Campos.
1930
1931         * TestWebKitAPI/PlatformWPE.cmake: Do not link WebCoreDerivedSources.
1932         * TestWebKitAPI/PlatformWin.cmake: Ditto.
1933
1934 2018-01-16  Ling Ho  <lingcherd_ho@apple.com>
1935
1936         Move Debug Test262, Release Test262 and Performance queues to Sierra
1937         https://bugs.webkit.org/show_bug.cgi?id=181692
1938
1939         Unreviewed
1940
1941 2018-01-16  Zach Li  <zachli@apple.com>
1942
1943         Add pop-up policy support in website policies.
1944         https://bugs.webkit.org/show_bug.cgi?id=181544.
1945         rdar://problem/30521400.
1946
1947         Reviewed by Alex Christensen.
1948
1949         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1950         Added pop-up-check.html.
1951
1952         * TestWebKitAPI/Tests/WebKit/pop-up-check.html: Added.
1953
1954         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1955         (-[PopUpPoliciesDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
1956         (-[PopUpPoliciesDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
1957         (-[PopUpPoliciesDelegate webView:createWebViewWithConfiguration:forNavigationAction:windowFeatures:]):
1958         (TEST):
1959
1960 2018-01-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1961
1962         [Attachment Support] Provide the `src` of an attachment to the UI delegate when an attachment is inserted
1963         https://bugs.webkit.org/show_bug.cgi?id=181638
1964         <rdar://problem/36508702>
1965
1966         Reviewed by Dan Bernstein.
1967
1968         Tweak an existing API test to check that the `src` of an attachment element inserted via script matches the
1969         `source` provided to the UI delegate via -[WKUIDelegate _webView:didInsertAttachment:withSource:].
1970
1971         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1972         (-[AttachmentUpdateObserver init]):
1973         (-[AttachmentUpdateObserver sourceForIdentifier:]):
1974         (-[AttachmentUpdateObserver _webView:didInsertAttachment:withSource:]):
1975         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectSourceForIdentifier):
1976         (TestWebKitAPI::TEST):
1977         (-[AttachmentUpdateObserver _webView:didInsertAttachment:]): Deleted.
1978
1979 2018-01-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1980
1981         Unreviewed. Fix GTK unit tests execution in the bots after r226967.
1982
1983         I forgot to pass the environment to the GLibTestRunner and Xvfb was not used in the bots.
1984
1985         * glib/api_test_runner.py:
1986         (TestRunner._run_test_glib): Pass env to GLibTestRunner.
1987         * glib/glib_test_runner.py:
1988         (GLibTestRunner.run): Use given env.
1989
1990 2018-01-16  Carlos Garcia Campos  <cgarcia@igalia.com>
1991
1992         [GTK][WPE] Stop passing --verbose to run-api-tests from the bots
1993         https://bugs.webkit.org/show_bug.cgi?id=181676
1994
1995         Reviewed by Carlos Alberto Lopez Perez.
1996
1997         The option was removed in r226967.
1998
1999         * BuildSlaveSupport/build.webkit.org-config/steps.py:
2000         (RunGtkAPITests):
2001         (RunWPEAPITests):
2002
2003 2018-01-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2004
2005         Unreviewed. Temporarily bring back --verbose option of api_test_runner.py.
2006
2007         The bots are still passing that option and the step is failing because it was removed in r226967.
2008
2009         * glib/api_test_runner.py:
2010         (add_options):
2011
2012 2018-01-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2013
2014         [GTK][WPE] Improve the way glib tests are run
2015         https://bugs.webkit.org/show_bug.cgi?id=181674
2016
2017         Reviewed by Žan Doberšek.
2018
2019         Stop using gtester external program and use our own tester from python directly. This way we no longer need to
2020         parse the tests output to get the results which is causing problems in WPE bot. We can now differentiate between
2021         tests failing due to an expected assert in the test and unexpected crashes.
2022         This also fixes a bug in previous code where we failed to properly detect tests timing out, because gtester was
2023         not showing the subtest name in stdout in case of timeouts.
2024         I've lowered the default timeout from 10 to 5, since we are now properly handling the timeout for every test
2025         case. I've also removed the verbose option, since it was only used by gtester and we now always show the result
2026         of every test case.
2027
2028         * glib/api_test_runner.py:
2029         (TestRunner._run_test_glib): Use GLibTestRunner.
2030         (TestRunner._run_google_test): Wrote tests timing out to stdout too.
2031         (add_options):
2032         * glib/glib_test_runner.py: Added.
2033         (TestTimeout):
2034         (Message):
2035         (Message.__init__):
2036         (Message.create):
2037         (Message.create.read_unsigned):
2038         (Message.create.read_double):
2039         (Message.create.read_string):
2040         (GLibTestRunner):
2041         (GLibTestRunner.__init__):
2042         (GLibTestRunner._process_data):
2043         (GLibTestRunner._process_message):
2044         (GLibTestRunner._read_from_pipe):
2045         (GLibTestRunner._read_from_stderr):
2046         (GLibTestRunner._start_timeout):
2047         (GLibTestRunner._start_timeout._alarm_handler):
2048         (GLibTestRunner._stop_timeout):
2049         (GLibTestRunner._subtest_start):
2050         (GLibTestRunner._subtest_message):
2051         (GLibTestRunner._subtest_stderr):
2052         (GLibTestRunner._subtest_end):
2053         (GLibTestRunner.run):
2054
2055 2018-01-15  Michael Catanzaro  <mcatanzaro@igalia.com>
2056
2057         Unreviewed, add Thibault to contributors.json
2058
2059         It's a bit weird to add someone here before their first contribution, but this affects
2060         Bugzilla autocomplete, and that is serious business.
2061
2062         * Scripts/webkitpy/common/config/contributors.json:
2063
2064 2018-01-15  JF Bastien  <jfbastien@apple.com>
2065
2066         Remove makePoisonedUnique
2067         https://bugs.webkit.org/show_bug.cgi?id=181630
2068         <rdar://problem/36498623>
2069
2070         Reviewed by Mark Lam.
2071
2072         Update tests.
2073
2074         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
2075         (TestWebKitAPI::TEST):
2076         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp:
2077         (TestWebKitAPI::TEST):
2078
2079 2018-01-15  Adrian Perez de Castro  <aperez@igalia.com>
2080
2081         [GTK][JHBuild] Tools/gtk/install-dependencies: Package libxfont does not exist anymore in Arch Linux
2082         https://bugs.webkit.org/show_bug.cgi?id=181476
2083
2084         Reviewed by Michael Catanzaro.
2085
2086         Update to xorg-server 1.19.6 which depends on libxfont2, and change
2087         the lists of packages to install libxfont2-devel (or equivalent).
2088
2089         * gtk/install-dependencies:
2090         * gtk/jhbuild.modules:
2091
2092 2018-01-15  Carlos Garcia Campos  <cgarcia@igalia.com>
2093
2094         [GTK][WPE] Add support for unit test expectations
2095         https://bugs.webkit.org/show_bug.cgi?id=181589
2096
2097         Reviewed by Michael Catanzaro.
2098
2099         We currently have a way to skip tests by annotating them in the api test runner script. The main problem of this
2100         approach is that we skip tests when they fail in the bots and we never notice if they stop failing, keeping the
2101         tests skipped forever. This is indeed the case of several WebKit2 C API tests. Annotating skipped tests in the
2102         script itself is not a good idea either.
2103
2104         This patch adds a generic TestExpectations class for simple tests based on tests with subtests, like our unit
2105         tests, but also WebDriver tests. It parses a json file with the tests and subtests expectations and provides
2106         convenient methods to query them.
2107
2108         * Scripts/run-gtk-tests:
2109         (GtkTestRunner): Remove all Skipped and Slow tests marked here.
2110         * Scripts/run-wpe-tests:
2111         (WPETestRunner): Ditto.
2112         * Scripts/webkitpy/common/test_expectations.py: Added.
2113         (TestExpectations):
2114         (TestExpectations.__init__):
2115         (TestExpectations._port_name_for_expected):
2116         (TestExpectations._expected_value):
2117         (TestExpectations.skipped_tests):
2118         (TestExpectations.skipped_subtests):
2119         (TestExpectations._expectation_value):
2120         (TestExpectations.is_slow):
2121         (TestExpectations.get_expectation):
2122         * Scripts/webkitpy/common/test_expectations_unittest.py: Added.
2123         (MockTestExpectations):
2124         (MockTestExpectations.__init__):
2125         (MockTestExpectations.is_skip):
2126         (ExpectationsTest):
2127         (assert_exp):
2128         (assert_not_exp):
2129         (assert_bad_exp):
2130         (assert_skip):
2131         (test_basic):
2132         (test_skip):
2133         (test_flaky):
2134         (test_build_type):
2135         * TestWebKitAPI/glib/TestExpectations.json: Added.
2136         * glib/api_test_runner.py:
2137         (TestRunner): Remove SkippedTest implementation.
2138         (TestRunner.__init__): Create a TestExpectations.
2139         (TestRunner._test_cases_to_skip): Use TestExpectations to check skipped tests.
2140         (TestRunner._should_run_test_program): Ditto.
2141         (TestRunner._run_test_glib): Use TestExpectations to check if test suite is slow.
2142         (TestRunner._run_test_glib.parse_line.set_test_result): Register also tests passing.
2143         (TestRunner._run_google_test): Use TestExpectations to check if test cases is slow and register tests passing.
2144         (TestRunner.run_tests): Check if actual result is the expected one and register also unexpected passes.
2145         (TestRunner.run_tests.report): Helper to write report to stdout.
2146
2147 2018-01-13  Mark Lam  <mark.lam@apple.com>
2148
2149         Replace all use of ConstExprPoisoned with Poisoned.
2150         https://bugs.webkit.org/show_bug.cgi?id=181542
2151         <rdar://problem/36442138>
2152
2153         Reviewed by JF Bastien.
2154
2155         1. Converted tests to using new uintptr_t& poison type.
2156         2. Added tests for Poisoned comparison operators.
2157
2158         * TestWebKitAPI/CMakeLists.txt:
2159         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2160         * TestWebKitAPI/Tests/WTF/ConstExprPoisoned.cpp: Removed.
2161         * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
2162         (TestWebKitAPI::TEST):
2163         (TestWebKitAPI::initializeTestPoison): Deleted.
2164         * TestWebKitAPI/Tests/WTF/PoisonedRef.cpp:
2165         (TestWebKitAPI::TEST):
2166         (TestWebKitAPI::passWithRef):
2167         * TestWebKitAPI/Tests/WTF/PoisonedRefPtr.cpp:
2168         (TestWebKitAPI::TEST):
2169         (TestWebKitAPI::f1):
2170         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
2171         (TestWebKitAPI::TEST):
2172         (TestWebKitAPI::poisonedPtrFoo):
2173         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForNonTriviallyDestructibleArrays.cpp:
2174         (TestWebKitAPI::TEST):
2175         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp:
2176         (TestWebKitAPI::TEST):
2177
2178 2018-01-13  David Kilzer  <ddkilzer@apple.com>
2179
2180         check-webkit-style: false positive for [whitespace/braces] with os_log format string
2181         <https://webkit.org/b/181606>
2182
2183         Reviewed by Darin Adler.
2184
2185         * Scripts/webkitpy/style/checkers/cpp.py:
2186         (check_spacing): Modify regular expression to ignore
2187         os_log format strings like '%{public}'.
2188         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2189         (CppStyleTest.test_spacing_before_braces): Add os_log
2190         format string test.
2191
2192 2018-01-12  Wenson Hsieh  <wenson_hsieh@apple.com>
2193
2194         [macOS] API tests ChangeAttachmentDataUpdatesWithInPlaceDisplay and InPlaceVideoAttachmentInsertionWithinList are failing
2195         https://bugs.webkit.org/show_bug.cgi?id=181626
2196
2197         Reviewed by Joseph Pecoraro.
2198
2199         Make the web view for WKAttachmentTests slightly bigger to avoid size clamping behavior introduced in r226915.
2200         Additionally, write a new API test covering the change in r226915.
2201
2202         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2203         (webViewForTestingAttachments):
2204         (TestWebKitAPI::TEST):
2205
2206 2018-01-12  Alex Christensen  <achristensen@webkit.org>
2207
2208         History state should be updated during client redirects with asynchronous policy decisions
2209         https://bugs.webkit.org/show_bug.cgi?id=181358
2210         <rdar://problem/35547689>
2211
2212         Reviewed by Andy Estes.
2213
2214         * TestWebKitAPI/Tests/WebKit/WKBackForwardList.mm:
2215         (-[AsyncPolicyDecisionDelegate webView:didFinishNavigation:]):
2216         (-[AsyncPolicyDecisionDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
2217         (TEST):
2218
2219 2018-01-12  Jonathan Bedard  <jbedard@apple.com>
2220
2221         webkitpy: Refactor simulator code (Part 4)
2222         https://bugs.webkit.org/show_bug.cgi?id=180555
2223         <rdar://problem/36131381>
2224
2225         Reviewed by Aakash Jain.
2226
2227         Move new_simulated_device.py to simulated_device.py.
2228
2229         * Scripts/webkitpy/port/ios_simulator.py: Update import statement.
2230         * Scripts/webkitpy/xcode/new_simulated_device.py: Removed.
2231         * Scripts/webkitpy/xcode/new_simulated_device_unittest.py: Removed.
2232         * Scripts/webkitpy/xcode/simulated_device.py: Copied from Tools/Scripts/webkitpy/xcode/new_simulated_device.py.
2233         * Scripts/webkitpy/xcode/simulated_device_unittest.py: Copied from Tools/Scripts/webkitpy/xcode/new_simulated_device_unittest.py.
2234
2235 2018-01-12  Alex Christensen  <achristensen@webkit.org>
2236
2237         REGRESSION (r226818): API test WebKitLegacy.LoadInvalidURLRequest is failing
2238         https://bugs.webkit.org/show_bug.cgi?id=181595
2239
2240         This test was testing behavior of an invalid URL that WebCore parses but NSURL does not.
2241         It was using example.com<> but after r226479 < and > are considered invalid by WebCore.
2242         I change the < and > to $ to make this test pass and continue to test what it used to.
2243
2244         * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.html:
2245         * TestWebKitAPI/Tests/mac/LoadInvalidURLRequest.mm:
2246         (-[LoadInvalidURLWebFrameLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
2247
2248 2018-01-11  Keith Miller  <keith_miller@apple.com>
2249
2250         Rename ENABLE_ASYNC_ITERATION to ENABLE_JS_ASYNC_ITERATION
2251         https://bugs.webkit.org/show_bug.cgi?id=181573
2252
2253         Reviewed by Simon Fraser.
2254
2255         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2256
2257 2018-01-11  Jiewen Tan  <jiewen_tan@apple.com>
2258
2259         [WebAuthN] Import a CBOR coder from Chromium
2260         https://bugs.webkit.org/show_bug.cgi?id=181522
2261         <rdar://problem/36055729>
2262
2263         Reviewed by Brent Fulgham.
2264
2265         This patch also imports all unit tests into our API tests to ensure all
2266         workarounds and modification against the original codebase doesn't change
2267         any original functionalities.
2268
2269         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2270         * TestWebKitAPI/Tests/WebCore/CBORReaderTest.cpp: Added.
2271         (TestWebKitAPI::TEST):
2272         * TestWebKitAPI/Tests/WebCore/CBORValueTest.cpp: Added.
2273         (TestWebKitAPI::TEST):
2274         * TestWebKitAPI/Tests/WebCore/CBORWriterTest.cpp: Added.
2275         (TestWebKitAPI::eq):
2276         Workarounds applied.
2277         (TestWebKitAPI::TEST):
2278
2279 2018-01-11  Jonathan Bedard  <jbedard@apple.com>
2280
2281         webkitpy: Use partially disambiguated type in SimulatedDeviceManager._disambiguate_device_type
2282         https://bugs.webkit.org/show_bug.cgi?id=181538
2283         <rdar://problem/36440580>
2284
2285         Reviewed by Aakash Jain.
2286
2287         When disambiguating a device type, it is possible that the provided device type is sufficiently
2288         ambiguous that the comparisons against complete device types without a disambiguated hardware_family
2289         will result in a failure to disambiguate the type.
2290
2291         * Scripts/webkitpy/xcode/new_simulated_device.py:
2292         (SimulatedDeviceManager._disambiguate_device_type):
2293
2294 2018-01-11  Brent Fulgham  <bfulgham@apple.com>
2295
2296         REGRESSION(r219530): ResourceLoadStatisticsPersistentStorage should be read-only in ephemeral sessions
2297         https://bugs.webkit.org/show_bug.cgi?id=181136
2298         <rdar://problem/36116604>
2299
2300         Reviewed by Chris Dumez.
2301
2302         Add a new API test to confirm that ResourceLoadStatistics can be turned on safely for ephemeral
2303         browsing sessions.
2304
2305         * Scripts/run-gtk-tests:
2306         (GtkTestRunner): Unskip test now that it passes.
2307         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
2308         (TEST): Add new WebsiteDataStoreEphemeral test.
2309
2310 2018-01-11  Ryan Haddad  <ryanhaddad@apple.com>
2311
2312         Unreviewed, rolling out r226816.
2313
2314         This change broke LayoutTests on the bots.
2315
2316         Reverted changeset:
2317
2318         "run-webkit-tests fails when there is a curly brace in Xcode
2319         build output"
2320         https://bugs.webkit.org/show_bug.cgi?id=181254
2321         https://trac.webkit.org/changeset/226816
2322
2323 2018-01-11  Jonathan Bedard  <jbedard@apple.com>
2324
2325         webkitpy: Fix flakey webserver tests
2326         https://bugs.webkit.org/show_bug.cgi?id=181555
2327         <rdar://problem/36448273>
2328
2329         Reviewed by Aakash Jain.
2330
2331         * Scripts/webkitpy/layout_tests/controllers/layout_test_runner_unittest.py:
2332         (LayoutTestRunnerTests.test_servers_started): Add and bind custom checks to
2333         determine if a specific server is running.
2334
2335 2018-01-11  Jonathan Bedard  <jbedard@apple.com>
2336
2337         Commit queue failed to land a bug, 'NoneType' object has no attribute 'strip'
2338         https://bugs.webkit.org/show_bug.cgi?id=181561
2339         <rdar://problem/36452652>
2340
2341         Reviewed by Aakash Jain.
2342
2343         BeautifulSoup.find may return None, this case should be gracefully handled.
2344
2345         * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
2346         (BugzillaQueries._parse_result_count):
2347         (BugzillaQueries._fetch_bugs_from_advanced_query): Added logging.
2348
2349 2018-01-11  Alexey Proskuryakov  <ap@apple.com>
2350
2351         run-webkit-tests fails when there is a curly brace in Xcode build output
2352         https://bugs.webkit.org/show_bug.cgi?id=181254
2353
2354         Reviewed by Daniel Bates.
2355
2356         * Scripts/webkitpy/layout_tests/views/metered_stream.py:
2357         (MeteredStream.write):
2358
2359 2018-01-11  Jonathan Bedard  <jbedard@apple.com>
2360
2361         webkitpy: Reimplement simulator code (Part 3)
2362         https://bugs.webkit.org/show_bug.cgi?id=180555
2363         <rdar://problem/36131381>
2364
2365         Reviewed by Aakash Jain.
2366
2367         Remove old simulator code.
2368
2369         * Scripts/webkitpy/xcode/__init__.py: Remove import statement.
2370         * Scripts/webkitpy/xcode/simulated_device.py: Removed.
2371         * Scripts/webkitpy/xcode/simulator.py: Removed.
2372         * Scripts/webkitpy/xcode/simulator_unittest.py: Removed.
2373
2374 2018-01-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2375
2376         [Attachment Support] Support moving attachment elements in editable areas using drag and drop
2377         https://bugs.webkit.org/show_bug.cgi?id=181337
2378         <rdar://problem/36324813>
2379
2380         Reviewed by Tim Horton.
2381
2382         Add 3 new API tests for attachment element dragging.
2383
2384         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2385         (-[TestWKWebView expectElementTag:toComeBefore:]):
2386         (-[NSItemProvider expectType:withData:]):
2387         (TestWebKitAPI::TEST):
2388
2389 2018-01-11  Jonathan Bedard  <jbedard@apple.com>
2390
2391         REGRESSION(r225856): Incorrectly managing 'future' baseline_search_paths. 
2392         https://bugs.webkit.org/show_bug.cgi?id=179621
2393         <rdar://problem/35589585>
2394
2395         Unreviewed infrastructure fix.
2396
2397         * Scripts/webkitpy/port/mac.py:
2398         (MacPort.default_baseline_search_path): Include 'future' in the version_fallback
2399         list if we are the VERSION_MAX, which usually corresponds with future.
2400
2401 2018-01-11  Filip Pizlo  <fpizlo@apple.com>
2402
2403         CodeBlocks should be in IsoSubspaces
2404         https://bugs.webkit.org/show_bug.cgi?id=180884
2405
2406         Reviewed by Saam Barati.
2407         
2408         Remove some less important benchmarks from the default run. Doing run-jsc-benchmarks
2409         shouldn't take a long time due to benchmarks we don't optimize for.
2410         
2411         * Scripts/run-jsc-benchmarks:
2412
2413 2018-01-11  Ms2ger  <Ms2ger@igalia.com>
2414
2415         Test gardening for GTK.
2416         https://bugs.webkit.org/show_bug.cgi?id=181477
2417
2418         Unreviewed test gardening.
2419
2420         * TestWebKitAPI/Tests/WebKitGLib/TestAuthentication.cpp: Correct the file name.
2421         * TestWebKitAPI/Tests/WebKitGLib/TestConsoleMessage.cpp: Adjust the expected console message.
2422
2423 2018-01-11  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2424
2425         Add the new JSCOnly bot to the scheduler.
2426         https://bugs.webkit.org/show_bug.cgi?id=181487
2427
2428         Unreviewed follow-up patch after r226729
2429
2430         On r226729 I missed to add the new JSCOnly bot the default scheduler.
2431         This is needed to make the bot automatically pick each commit for testing.
2432
2433         * BuildSlaveSupport/build.webkit.org-config/config.json:
2434
2435 2018-01-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2436
2437         [Attachment Support] Support dragging attachment elements out as files on iOS
2438         https://bugs.webkit.org/show_bug.cgi?id=181199
2439         <rdar://problem/36299316>
2440
2441         Reviewed by Tim Horton, Andy Estes and Joseph Pecoraro.
2442
2443         Add support in the drag and drop simulator for testing blob-backed attachment element dragging, and also add new
2444         attachment API tests.
2445
2446         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2447         (-[NSItemProvider expectType:withData:]):
2448         (TestWebKitAPI::TEST):
2449
2450         Add two new WKAttachmentTests to exercise dragging data- and file-backed blobs via attachment elements. These
2451         tests first insert attachments via drop or WKWebView SPI, and then drag these attachments out and use the
2452         -expectType:withData: helper to inspect the item providers created from the drag source.
2453
2454         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2455         (TestWebKitAPI::TEST):
2456         * TestWebKitAPI/ios/DataInteractionSimulator.h:
2457         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
2458         (-[MockDragSession localContext]):
2459         (-[MockDragSession setLocalContext:]):
2460         (-[DataInteractionSimulator _resetSimulatedState]):
2461         (-[DataInteractionSimulator simulateAllTouchesCanceled:]):
2462         (-[DataInteractionSimulator _concludeDataInteractionAndPerformOperationIfNecessary]):
2463         (-[DataInteractionSimulator _advanceProgress]):
2464         (-[DataInteractionSimulator endDataTransfer]):
2465
2466         Make some tweaks to the iOS drag and drop simulator. In particular, this patch (1) adds a new hook to tell
2467         WebKit that data transfers have been completed, (2) fixes incorrect drop proposal handling when returning
2468         UIDropOperationForbidden by replacing _shouldPerformOperation with a UIDropProposal, and (3) teach the
2469         MockDragSession to hold on to a localContext.
2470
2471 2018-01-11  Ali Juma  <ajuma@chromium.org>
2472
2473         Unreviewed. Add Ali Juma as contributor
2474
2475         * Scripts/webkitpy/common/config/contributors.json:
2476
2477 2018-01-11  Carlos Garcia Campos  <cgarcia@igalia.com>
2478
2479         Unreviewed. Update Selenium WebDriver imported tests.
2480
2481         New version of selenium uses command line options to pass driver and browser binaries to pytest instead of
2482         environment variables.
2483
2484         * Scripts/webkitpy/webdriver_tests/pytest_runner.py:
2485         (collect): Reorder the arguments to make pytest happy.
2486         (run): Ditto.
2487         * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py:
2488         (WebDriverSeleniumExecutor.__init__): Add driver binary, browser binary and browser args as arguments.
2489
2490 2018-01-11  Ling Ho  <lingcherd_ho@apple.com>
2491
2492         Move Commit Queue and EWS Queues to Sierra on Bot Watcher's Dasboard
2493         https://bugs.webkit.org/show_bug.cgi?id=181492
2494         <rdar://problem/36359679>
2495
2496         Reviewed by Alexey Proskuryakov. 
2497
2498 2018-01-10  Adrian Perez de Castro  <aperez@igalia.com>
2499
2500         [GTK] Tools/gtk/install-dependencies: Packages geoclue, ruby-highline, xorg-utils do not exist in Arch Linux
2501         https://bugs.webkit.org/show_bug.cgi?id=181475
2502
2503         Reviewed by Michael Catanzaro.
2504
2505         * gtk/install-dependencies: Update package list for Arch Linux, extend
2506         message shown at end of installation with additional tips.
2507
2508 2018-01-10  Wenson Hsieh  <wenson_hsieh@apple.com>
2509
2510         REGRESSION(r222507): Composition highlight doesn't render when using IME
2511         https://bugs.webkit.org/show_bug.cgi?id=181485
2512         <rdar://problem/35896516>
2513
2514         Reviewed by Ryosuke Niwa.
2515
2516         Add a `suppressUnderline` argument to TextInputController.setMarkedText. This suppresses the custom underlines
2517         rendered when testing IME on iOS in WebKit2. In this new test, suppressing underline rendering is needed to
2518         allow rendering composition backgrounds (see InlineTextBox::paint).
2519
2520         * DumpRenderTree/ios/TextInputControllerIOS.m:
2521         (+[TextInputController isSelectorExcludedFromWebScript:]):
2522         (+[TextInputController webScriptNameForSelector:]):
2523         (-[TextInputController setMarkedText:selectedFrom:length:suppressUnderline:]):
2524         (-[TextInputController setMarkedText:selectedFrom:length:]): Deleted.
2525         * DumpRenderTree/mac/TextInputControllerMac.m:
2526         (+[TextInputController isSelectorExcludedFromWebScript:]):
2527         (+[TextInputController webScriptNameForSelector:]):
2528         (-[TextInputController setMarkedText:selectedFrom:length:suppressUnderline:]):
2529         (-[TextInputController setMarkedText:selectedFrom:length:]): Deleted.
2530         * WebKitTestRunner/InjectedBundle/Bindings/TextInputController.idl:
2531         * WebKitTestRunner/InjectedBundle/TextInputController.cpp:
2532         (WTR::TextInputController::setMarkedText):
2533         * WebKitTestRunner/InjectedBundle/TextInputController.h:
2534
2535 2018-01-10  JF Bastien  <jfbastien@apple.com>
2536
2537         Poison small JSObject derivatives which only contain pointers
2538         https://bugs.webkit.org/show_bug.cgi?id=181483
2539         <rdar://problem/36407127>
2540
2541         Reviewed by Mark Lam.
2542
2543         Test the new move-assign and move-copy from unique_ptr, as well as
2544         nullptr_t ctors.
2545
2546         * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
2547         (TestWebKitAPI::TEST):
2548         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtr.cpp:
2549         (TestWebKitAPI::TEST):
2550         * TestWebKitAPI/Tests/WTF/PoisonedUniquePtrForTriviallyDestructibleArrays.cpp:
2551         (TestWebKitAPI::TEST):
2552
2553 2018-01-10  Chris Dumez  <cdumez@apple.com>
2554
2555         Multiple http/wpt/beacon/contentextensions/ test are flaky.
2556         https://bugs.webkit.org/show_bug.cgi?id=179256
2557         <rdar://problem/35401978>
2558
2559         Reviewed by Alex Christensen.
2560
2561         Update WebKitTestRunner to set a temporary path for content extensions so that its WKTR
2562         instance gets its own folder to avoid conflicts and flakiness.
2563
2564         * WebKitTestRunner/mac/TestControllerMac.mm:
2565         (WTR::TestController::platformConfigureViewForTest):
2566
2567 2018-01-10  Tim Horton  <timothy_horton@apple.com>
2568
2569         REGRESSION (r213590): Swipe from edge to go to previous page is significantly slower than tapping back button on Twitter
2570         https://bugs.webkit.org/show_bug.cgi?id=181269
2571         <rdar://problem/35110344>
2572
2573         Reviewed by Simon Fraser.
2574
2575         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2576         (WTR::UIScriptController::beginBackSwipe):
2577         (WTR::UIScriptController::completeBackSwipe):
2578         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2579         (WTR::UIScriptController::beginBackSwipe):
2580         (WTR::UIScriptController::completeBackSwipe):
2581         (WTR::UIScriptController::overridePreference):
2582         (WTR::UIScriptController::replaceTextAtRange):
2583         * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
2584         (WTR::PlatformWebView::setNavigationGesturesEnabled):
2585         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2586         (WTR::UIScriptController::beginBackSwipe):
2587         (WTR::UIScriptController::completeBackSwipe):
2588         Implement beginBackSwipe and completeBackSwipe on iOS (they already
2589         exist on Mac) in terms of the new WKWebView testing SPI.
2590
2591 2018-01-10  Jonathan Bedard  <jbedard@apple.com>
2592
2593         REGRESSION (r226715): ignore WARNING output in linter tests
2594         https://bugs.webkit.org/show_bug.cgi?id=181486
2595         <rdar://problem/36408847>
2596
2597         Reviewed by Aakash Jain.
2598
2599         Linter unit tests should not be interested in logs at the the INFO or WARNING levels.
2600
2601         * Scripts/webkitpy/common/system/outputcapture.py:
2602         (OutputCapture.__init__): Pass logging level to be captured.
2603         * Scripts/webkitpy/style/main_unittest.py:
2604         (ExpectationLinterInStyleCheckerTest.test_no_linter_errors): Capture logging at the ERROR level.
2605         (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line): Ditto.
2606         (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_no_edit): Ditto.
2607         (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_edit_in_file): Ditto.
2608         (ExpectationLinterInStyleCheckerTest.test_linter_duplicate_line_only_deletes): Ditto.
2609         (ExpectationLinterInStyleCheckerTest.test_linter_added_file_with_error): Ditto.
2610         (ExpectationLinterInStyleCheckerTest.test_linter_deleted_file): Ditto.
2611         (ExpectationLinterInStyleCheckerTest.test_linter_deleted_file_no_edit): Ditto.
2612
2613 2018-01-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2614
2615         Add a JSCOnly MIPS buildbot
2616         https://bugs.webkit.org/show_bug.cgi?id=181487
2617
2618         Reviewed by Michael Catanzaro.
2619
2620         Add the new bot configs definitions for the master and update the unit tests.
2621
2622         * BuildSlaveSupport/build.webkit.org-config/config.json:
2623         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2624
2625 2018-01-10  Jonathan Bedard  <jbedard@apple.com>
2626
2627         REGRESSION (r226715): don't re-check number of simulators in child processes
2628         https://bugs.webkit.org/show_bug.cgi?id=181484
2629         <rdar://problem/36407151>
2630
2631         Reviewed by Aakash Jain.
2632
2633         * Scripts/webkitpy/port/ios_simulator.py:
2634         (IOSSimulatorPort.__init__): Skip the number of simulators check if simulators
2635         are already initialized.
2636
2637 2018-01-10  Commit Queue  <commit-queue@webkit.org>
2638
2639         Unreviewed, rolling out r226667 and r226673.
2640         https://bugs.webkit.org/show_bug.cgi?id=181488
2641
2642         This caused a flaky crash. (Requested by mlewis13 on #webkit).
2643
2644         Reverted changesets:
2645
2646         "CodeBlocks should be in IsoSubspaces"
2647         https://bugs.webkit.org/show_bug.cgi?id=180884
2648         https://trac.webkit.org/changeset/226667
2649
2650         "REGRESSION (r226667): CodeBlocks should be in IsoSubspaces"
2651         https://bugs.webkit.org/show_bug.cgi?id=180884
2652         https://trac.webkit.org/changeset/226673
2653
2654 2018-01-10  Jonathan Bedard  <jbedard@apple.com>
2655
2656         Follow-up fix to r226715
2657         https://bugs.webkit.org/show_bug.cgi?id=180555
2658         <rdar://problem/36131381>
2659
2660         Unreviewed infrastructure fix.
2661
2662         * Scripts/webkitpy/xcode/new_simulated_device.py:
2663         (SimulatedDeviceManager._create_or_find_device_for_request): Use _delete instead
2664         of delete.
2665
2666 2018-01-10  Jonathan Bedard  <jbedard@apple.com>
2667
2668         webkitpy: Refactor simulator code (Part 2)
2669         https://bugs.webkit.org/show_bug.cgi?id=180555
2670         <rdar://problem/36131381>
2671
2672         Reviewed by Aakash Jain.
2673
2674         The patch leverages the SimulatedDeviceManager when running layout tests.
2675         This patch is primarily code removal, since much of the IOSSimulatorPort
2676         was dedicated to managing simulators. The removed code is either now owned by the
2677         SimulatedDeviceManager (and committed in Part 1) or supported a technique to
2678         boot multiple simulators which was made obsolete in Xcode 9.
2679
2680         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2681         (Manager._custom_device_for_test.in): Device names now have spaces in them,
2682         strip those spaces.
2683         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2684         (parse_args): Remove '--runtime' flag, this is achieved with the --version flag.
2685         * Scripts/webkitpy/port/ios.py:
2686         (IOSPort.__init__): The _current_device idiom is no longer required since the
2687         SimulatedDeviceManager keeps track of any previously booted devices.
2688         (IOSPort.target_host): Even when only a single device is used, it will be accessed
2689         through the array of managed devices.
2690         (IOSPort.using_multiple_devices): Deleted.
2691         * Scripts/webkitpy/port/ios_device.py:
2692         (IOSDevicePort.using_multiple_devices): Deleted.
2693         * Scripts/webkitpy/port/ios_simulator.py:
2694         (IOSSimulatorPort): Remove constants required to manage simulators, change device
2695         class strings so they can be parsed by the DeviceType class.
2696         (IOSSimulatorPort.__init__): Determine the number of processes to use by checking
2697         the number of simulators currently booted, the number of child processes specified
2698         and the maximum number of simulators supported by this system.
2699         (IOSSimulatorPort._device_for_worker_number_map):Return the array of initialized
2700         devices owned by the SimulatedDeviceManager.
2701         (IOSSimulatorPort.ios_version): Remove support for the --runtime option.
2702         (IOSSimulatorPort.default_child_processes): Use the SimulatedDeviceManager to check
2703         the maximum number of supported simulators on this system.
2704         (IOSSimulatorPort._create_devices): Construct a list of device requests with a
2705         request for each child process and send this list to the SimulatedDeviceManager to
2706         initialize the devices.
2707         (IOSSimulatorPort.clean_up_test_run):
2708         (IOSSimulatorPort.check_sys_deps): Check that there are simulators running the
2709         specified version of iOS.
2710         (IOSSimulatorPort.reset_preferences):
2711         (IOSSimulatorPort.simulator_runtime): Deleted.
2712         (IOSSimulatorPort.simulator_device_type): Deleted.
2713         (IOSSimulatorPort._teardown_managed_simulators): Deleted.
2714         (IOSSimulatorPort.use_multiple_simulator_apps): Deleted.
2715         (IOSSimulatorPort._create_simulators): Deleted.
2716         (IOSSimulatorPort._quit_ios_simulator): Deleted.
2717         (IOSSimulatorPort._using_dedicated_simulators): Deleted.
2718         (IOSSimulatorPort.using_multiple_devices): Deleted.
2719         (IOSSimulatorPort._create_device): Deleted.
2720         (IOSSimulatorPort.get_simulator_path): Deleted.
2721         (IOSSimulatorPort._createSimulatorApps): Deleted.
2722         (IOSSimulatorPort._createSimulatorApp): Deleted.
2723         * Scripts/webkitpy/tool/commands/rebaseline_unittest.py:
2724         (TestRebaseline.test_rebaseline): Filter out commands run when determining the
2725         maximum number of simulators run on this system.
2726         (TestRebaselineExpectations.test_rebaseline_expectations): Ditto.
2727         * Scripts/webkitpy/xcode/new_simulated_device.py:
2728         (SimulatedDeviceManager._does_fulfill_request): Fixed log statement.
2729
2730 2018-01-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2731
2732         WebDriver: run-webdriver-tests doesn't handle test names with a '/' correctly
2733         https://bugs.webkit.org/show_bug.cgi?id=181474
2734
2735         Reviewed by Carlos Alberto Lopez Perez.
2736
2737         We use os.path.basename() to get the subtest name. If the test name contains a slash we get part of the subtest
2738         name as the name.
2739
2740         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
2741         (WebDriverTestRunnerW3C._subtest_name): Helper function to get the subtest name.
2742         (WebDriverTestRunnerW3C.run): Use _subtest_name() instead of os.path.basename().
2743
2744 2018-01-09  Andy Estes  <aestes@apple.com>
2745
2746         [Xcode] Use the Apple Internal SDK if available when building ImageDiff
2747         https://bugs.webkit.org/show_bug.cgi?id=181459
2748
2749         Reviewed by Dan Bernstein.
2750
2751         * ImageDiff/cg/Configurations/Base.xcconfig:
2752
2753 2018-01-09  Myles C. Maxfield  <mmaxfield@apple.com>
2754
2755         font-display:fallback can cause a visual flash (which is supposed to be impossible)
2756         https://bugs.webkit.org/show_bug.cgi?id=181374
2757
2758         Reviewed by Simon Fraser.
2759
2760         The test requires Palatino.
2761
2762         * DumpRenderTree/mac/DumpRenderTree.mm:
2763         (allowedFontFamilySet):
2764         * WebKitTestRunner/mac/TestControllerMac.mm:
2765         (WTR::allowedFontFamilySet):
2766
2767 2018-01-09  Saam Barati  <sbarati@apple.com>
2768
2769         Give some slack in display-profiler-outputs computation of the terminal window's number of columns
2770         https://bugs.webkit.org/show_bug.cgi?id=181449
2771
2772         Reviewed by JF Bastien.
2773
2774         This allows me to Cmd+f in my terminal to search for things without
2775         having the results become misaligned.
2776
2777         * Scripts/display-profiler-output:
2778
2779 2018-01-09  Basuke Suzuki  <Basuke.Suzuki@sony.com>
2780
2781         [webkitpy] PlatformInfo should have default argument for casual use
2782         https://bugs.webkit.org/show_bug.cgi?id=180827
2783
2784         Reviewed by David Kilzer.
2785
2786         PlatformInfo should be the only way to check platform specific thing instead
2787         of sys.platform or other various checks. If there is something you want to check,
2788         it should be placed in PlatformInfo.
2789
2790         Currently to instantiate PlatformInfo, it requires arguments, which is usually
2791         sys, platform and Executive(). They are straight forward and should be handled
2792         by default arguments. Then we can instantiate PlatformInfo more casual.
2793
2794         * Scripts/webkitpy/common/system/platforminfo.py:
2795         (PlatformInfo): Use relative module path import
2796         (PlatformInfo.__init__):
2797         (PlatformInfo.executive): Lazy instantiation of Executive()
2798         (PlatformInfo.total_bytes_memory): Accessing via above property
2799         (PlatformInfo.xcode_sdk_version): Ditto
2800         (PlatformInfo.xcode_simctl_list): Ditto
2801         (PlatformInfo.xcode_version): Ditto
2802         (PlatformInfo._win_version_str): Ditto
2803         * Scripts/webkitpy/common/system/systemhost.py:
2804         (SystemHost.__init__):
2805         * Scripts/webkitpy/common/system/user.py:
2806         (User.__init__):
2807
2808 2018-01-09  Yoshiaki Jitsukawa  <Yoshiaki.Jitsukawa@sony.com>
2809
2810         [Win] Remove workaround for Bug 176442 after stopping MSVC 2015 support
2811         https://bugs.webkit.org/show_bug.cgi?id=176443
2812
2813         Reviewed by Darin Adler.
2814
2815         * TestWebKitAPI/Tests/WTF/PriorityQueue.cpp:
2816         (TEST):
2817
2818 2018-01-09  Frederic Wang  <fwang@igalia.com.fr>
2819
2820         check-webkit-style: Verify syntax for WK_API_AVAILABLE
2821         https://bugs.webkit.org/show_bug.cgi?id=181394
2822
2823         Reviewed by Darin Adler.
2824
2825         A common syntax error for WK_API_AVAILABLE is to write ios(WK_MAC_TBA)
2826         as the second parameter instead of ios(WK_IOS_TBA). This generally
2827         builds for iOS on EWS but not when using the public SDK. See r224057,
2828         r223207 and r226211 for example. This patch adds a basic style check
2829         for that macro to prevent this kind of mistake.
2830
2831         * Scripts/webkitpy/style/checkers/cpp.py:
2832         (check_min_versions_of_wk_api_available): New function to verify the parameters of WX_API_AVAILABLE.
2833         (check_style): Run new style check.
2834         (CppChecker): Add build type for the new style check.
2835         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2836         (WebKitStyleTest.test_min_versions_of_wk_api_available): Add tests for the new style check.
2837
2838 2018-01-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2839
2840         [Attachment Support] Expose HTMLAttachmentElement.uniqueIdentifier to bindings
2841         https://bugs.webkit.org/show_bug.cgi?id=181420
2842         <rdar://problem/36365827>
2843
2844         Reviewed by Alex Christensen.
2845
2846         Adjusts some existing API tests to verify that attachment elements' uniqueIdentifiers match the uniqueIdentifier
2847         of corresponding _WKAttachments.
2848
2849         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2850         (TestWebKitAPI::TEST):
2851
2852 2018-01-08  Alex Christensen  <achristensen@webkit.org>
2853
2854         Add WKNavigationDelegate SPI exposing WebProcess crash reason
2855         https://bugs.webkit.org/show_bug.cgi?id=181410
2856         <rdar://problem/36167199>
2857
2858         Reviewed by Wenson Hsieh.
2859
2860         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
2861         (-[CrashReasonDelegate _webView:webContentProcessDidTerminateWithReason:]):
2862         (TEST):
2863
2864 2018-01-08  Alex Christensen  <achristensen@webkit.org>
2865
2866         Add SPI for WKOpenPanelParameters._acceptedMIMETypes and _acceptedFileExtensions
2867         https://bugs.webkit.org/show_bug.cgi?id=181408
2868         <rdar://problem/35884960>
2869
2870         Reviewed by Tim Horton.
2871
2872         * TestWebKitAPI/Tests/WebKitCocoa/RunOpenPanel.mm:
2873         (-[RunOpenPanelUIDelegate webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
2874
2875 2018-01-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2876
2877         [Attachment Support] Expose file name and content type of WKAttachment
2878         https://bugs.webkit.org/show_bug.cgi?id=181390
2879         <rdar://problem/36336837>
2880
2881         Reviewed by Tim Horton.
2882
2883         Adjusts some existing tests in WKAttachmentTests to exercise -requestInfo:.
2884
2885         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2886         (-[_WKAttachment synchronouslyRequestInfo:]):
2887         (-[_WKAttachment synchronouslyRequestData:]):
2888
2889         Reimplement this in terms of -synchronouslyRequestInfo:.
2890
2891         (-[_WKAttachment expectRequestedDataToBe:]):
2892         (TestWebKitAPI::TEST):
2893
2894 2018-01-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2895
2896         Copying, pasting, and then deleting an attachment element breaks attachment data requests
2897         https://bugs.webkit.org/show_bug.cgi?id=181365
2898         <rdar://problem/36340647>
2899
2900         Reviewed by Tim Horton.
2901
2902         Adds two new attachment API tests to verify that copying and pasting an existing attachment inserts an
2903         attachment element that may be edited independently of the original attachment. See WebCore/ChangeLog for more
2904         detail.
2905
2906         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2907         (TestWebKitAPI::TEST):
2908
2909 2018-01-08  Youenn Fablet  <youenn@apple.com>
2910
2911         navigator.onLine does not work inside service workers
2912         https://bugs.webkit.org/show_bug.cgi?id=181079
2913         <rdar://problem/36178606>
2914
2915         Reviewed by Darin Adler.
2916
2917         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2918         (WTR::InjectedBundle::initialize): Setting service worker creation callback to inject ServiceWorkerInternals object.
2919
2920 2018-01-07  Saam Barati  <sbarati@apple.com>
2921
2922         Add total exits and total compilations sorting mode to the "full" command in display-profiler-output
2923         https://bugs.webkit.org/show_bug.cgi?id=181372
2924
2925         Reviewed by Filip Pizlo.
2926
2927         Adding these sorting modes makes it easier to analyze functions
2928         that recompile a lot and exit a lot.
2929
2930         * Scripts/display-profiler-output:
2931
2932 2018-01-06  Julien Brianceau  <julien.brianceau@gmail.com>
2933
2934         Unreviewed, remove my Cisco email from contributors.json
2935
2936         * Scripts/webkitpy/common/config/contributors.json:
2937
2938 2018-01-05  JF Bastien  <jfbastien@apple.com>
2939
2940         WebAssembly: poison JS object's secrets
2941         https://bugs.webkit.org/show_bug.cgi?id=181339
2942         <rdar://problem/36325001>
2943
2944         Reviewed by Mark Lam.
2945
2946         Update tests for swap(Poisoned<k, T>, T*)
2947
2948         * TestWebKitAPI/Tests/WTF/ConstExprPoisoned.cpp:
2949         (TestWebKitAPI::TEST):
2950         * TestWebKitAPI/Tests/WTF/Poisoned.cpp:
2951         (TestWebKitAPI::TEST):
2952         * TestWebKitAPI/Tests/WTF/PoisonedRef.cpp:
2953         (TestWebKitAPI::TEST):
2954
2955 2018-01-05  Wenson Hsieh  <wenson_hsieh@apple.com>
2956
2957         REGRESSION(r226396) DataInteractionTests: ContentEditableToContentEditable and ContentEditableToTextarea are failing
2958         https://bugs.webkit.org/show_bug.cgi?id=181359
2959
2960         Reviewed by Tim Horton.
2961
2962         Ensure that these tests still pass using older SDKs.
2963
2964         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2965         (TestWebKitAPI::TEST):
2966
2967 2018-01-05  Alex Christensen  <achristensen@webkit.org>
2968
2969         Rebase API test after r226469
2970         https://bugs.webkit.org/show_bug.cgi?id=181308
2971
2972         * TestWebKitAPI/Tests/WebKitCocoa/LoadInvalidURLRequest.mm:
2973         (-[LoadInvalidURLNavigationActionDelegate webView:didFailProvisionalNavigation:withError:]):
2974         A URL with < or > in it is now recognized as invalid by WebKit.  This is intentional, and matches our behavior before enabling the new URLParser.
2975
2976 2018-01-05  Alex Christensen  <achristensen@webkit.org>
2977
2978         Restrict navigation-time WKWebsiteDataStore swapping to main frame navigations
2979         https://bugs.webkit.org/show_bug.cgi?id=181217
2980
2981         Reviewed by Tim Horton.
2982
2983         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2984         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2985         (TEST):
2986
2987 2018-01-05  Alex Christensen  <achristensen@webkit.org>
2988
2989         Add WKBundleFrameCreateFrameHandle
2990         https://bugs.webkit.org/show_bug.cgi?id=181232
2991         <rdar://problem/35926696>
2992
2993         Reviewed by Tim Horton.
2994
2995         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2996         * TestWebKitAPI/Tests/WebKitCocoa/FrameHandleSerialization.mm: Added.
2997         (mouseDidMoveOverElement):
2998         (-[FrameHandleSerialization webProcessPlugIn:didCreateBrowserContextController:]):
2999         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
3000         (-[MouseMoveOverElementDelegate _webView:mouseDidMoveOverElement:withFlags:userInfo:]):
3001         (TEST):
3002
3003 2018-01-05  Chris Fleizach  <cfleizach@apple.com>
3004
3005         iOS: Build fix after r226432.
3006         
3007         Unreviewed. Stop duplicating speakAs symbols for iOS.
3008
3009         * DumpRenderTree/AccessibilityUIElement.cpp:
3010         (AccessibilityUIElement::speakAs):
3011
3012 2018-01-05  Javier Fernandez  <jfernandez@igalia.com>
3013
3014         Unreviewed, added myself as WebKit reviewer
3015
3016         * Scripts/webkitpy/common/config/contributors.json:
3017
3018 2018-01-05  Claudio Saavedra  <csaavedra@igalia.com>
3019
3020         WPE: Build fix after r226432.
3021
3022         Unreviewed. Rename ::speak() to ::speakAs().
3023         * WebKitTestRunner/InjectedBundle/wpe/AccessibilityUIElementWPE.cpp:
3024         (WTR::AccessibilityUIElement::speakAs):
3025         (WTR::AccessibilityUIElement::speak): Deleted.
3026
3027 2018-01-04  Chris Fleizach  <cfleizach@apple.com>
3028
3029         AX: Implement updated CSS3 Speech for 'speak' and 'speak-as' properties
3030         https://bugs.webkit.org/show_bug.cgi?id=180361
3031
3032         Reviewed by Zalan Bujtas.
3033
3034         * DumpRenderTree/AccessibilityUIElement.cpp:
3035         (speakAsCallback):
3036         (AccessibilityUIElement::speakAs):
3037         (AccessibilityUIElement::getJSClass):
3038         (speakCallback): Deleted.
3039         (AccessibilityUIElement::speak): Deleted.
3040         * DumpRenderTree/AccessibilityUIElement.h:
3041         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
3042         (AccessibilityUIElement::speakAs):
3043         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
3044         (AccessibilityUIElement::speakAs):
3045         (AccessibilityUIElement::speak): Deleted.
3046         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.h:
3047         * WebKitTestRunner/InjectedBundle/Bindings/AccessibilityUIElement.idl:
3048         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3049         (WTR::AccessibilityUIElement::speakAs):
3050         (WTR::AccessibilityUIElement::speak): Deleted.
3051         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
3052         (WTR::AccessibilityUIElement::speakAs):
3053         (WTR::AccessibilityUIElement::speak): Deleted.
3054
3055 2018-01-04  Jonathan Bedard  <jbedard@apple.com>
3056
3057         REGRESSION (r226395): test-webkitperl test expectations incorrect
3058         https://bugs.webkit.org/show_bug.cgi?id=181307
3059         <rdar://problem/36306558>
3060
3061         Rubber-stamped by Aakash Jain.
3062
3063         r226395 added two lines towards the beginning of
3064         Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests.pl, the line
3065         numbers in the test expectations need to update.
3066
3067         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests-expected.txt:
3068
3069 2018-01-04  Tim Horton  <timothy_horton@apple.com>
3070
3071         WKWebView loses minimum layout size overrides that happen while the process is terminated
3072         https://bugs.webkit.org/show_bug.cgi?id=181306
3073         <rdar://problem/34398288>
3074
3075         Reviewed by Dan Bernstein.
3076
3077         * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
3078         (TEST):
3079         Add a test that calling _overrideLayoutParametersWithMinimumLayoutSize
3080         while the process is terminated results in the page getting the correct
3081         minimum layout size.
3082
3083 2018-01-04  Eric Carlson  <eric.carlson@apple.com>
3084
3085         [MediaStream] Add Mock screen capture source
3086         https://bugs.webkit.org/show_bug.cgi?id=181291
3087         <rdar://problem/36298164>
3088
3089         Reviewed by Dean Jackson.
3090
3091         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new test.
3092         * TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
3093         * TestWebKitAPI/Tests/WebKit/getDisplayMedia.html:
3094
3095 2018-01-04  Lucas Forschler  <lforschler@apple.com>
3096
3097         <rdar://problem/36300930> Change proxy server setting on master config to reach s3 servers
3098
3099         Reviewed by Ling Ho.
3100
3101         * BuildSlaveSupport/build.webkit.org-config/steps.py:
3102
3103 2018-01-03  Wenson Hsieh  <wenson_hsieh@apple.com>
3104
3105         [Attachment Support] Create attachment elements when dropping files on iOS
3106         https://bugs.webkit.org/show_bug.cgi?id=181192
3107         <rdar://problem/36280945>
3108
3109         Reviewed by Tim Horton.
3110
3111         Adds 3 new API tests to exercise different use cases of dropping content as attachment elements when the runtime
3112         switch is enabled. See below for more details.
3113
3114         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3115         (-[NSItemProvider registerData:type:]):
3116         (platformCopyPNG):
3117         (TestWebKitAPI::TEST):
3118         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3119
3120         Fix some currently failing iOS drag and drop tests. In this case, there's no reason RTFD should appear in the
3121         source item provider when dragging rich text *without* attachments, so this should have been a check for just
3122         kUTTypeRTF instead.
3123
3124         (TestWebKitAPI::TEST):
3125
3126         Tests a few cases of inserting attachment elements via drop:
3127         1.  We should distinguish between drops containing rich/plain text files from just dropping rich/plain text.
3128             Instead of inserting the contents as inline web content, this should generate attachment elements.
3129         2.  Test the fallback mechanism for inserting attachment elements. If the preferred presentation style is not
3130             explicitly set, but there's nothing WebKit would otherwise do with the dropped content, then we should fall
3131             back to inserting the content as an attachment.
3132         3.  Test that if multiple attachments and inline item providers are present, WebKit will respect the order in
3133             which they were inserted by the source (as opposed to, for instance, putting all of the attachments in front
3134             or at the end).
3135
3136         * TestWebKitAPI/cocoa/TestWKWebView.h:
3137         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3138         (-[TestWKWebView objectByEvaluatingJavaScript:]):
3139
3140         Add a helper method to return an object that represents the result of evaluating some given script, and rewrite
3141         -stringByEvaluatingJavaScript to just turn around and call this.
3142
3143         (-[TestWKWebView stringByEvaluatingJavaScript:]):
3144
3145 2018-01-03  Ting-Wei Lan  <lantw44@gmail.com>
3146
3147         Replace hard-coded paths in shebangs with #!/usr/bin/env
3148         https://bugs.webkit.org/show_bug.cgi?id=181040
3149
3150         Reviewed by Alex Christensen.
3151
3152         * BuildSlaveSupport/build-launcher-app:
3153         * BuildSlaveSupport/build-launcher-dmg:
3154         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
3155         * BuildSlaveSupport/built-product-archive:
3156         * BuildSlaveSupport/clean-build:
3157         * BuildSlaveSupport/delete-stale-build-files:
3158         * BuildSlaveSupport/download-built-product:
3159         * BuildSlaveSupport/gtk/buildbot/log/run:
3160         * BuildSlaveSupport/gtk/buildbot/run:
3161         * BuildSlaveSupport/gtk/pulseaudio/run:
3162         * BuildSlaveSupport/kill-old-processes:
3163         * BuildSlaveSupport/test-result-archive:
3164         * BuildSlaveSupport/win/kill-old-processes:
3165         * Scripts/SpacingHeuristics.pm:
3166         * Scripts/add-include:
3167         * Scripts/build-api-tests:
3168         * Scripts/build-dumprendertree:
3169         * Scripts/build-imagediff:
3170         * Scripts/build-jsc:
3171         * Scripts/build-webkit:
3172         * Scripts/build-webkittestrunner:
3173         * Scripts/check-Xcode-source-file-types:
3174         * Scripts/check-dom-results:
3175         * Scripts/check-for-exit-time-destructors:
3176         * Scripts/check-for-global-initializers:
3177         * Scripts/check-for-inappropriate-objc-class-names:
3178         * Scripts/check-for-weak-vtables-and-externals:
3179         * Scripts/clean-header-guards:
3180         * Scripts/compare-timing-files:
3181         * Scripts/configure-xcode-for-ios-development:
3182         * Scripts/copy-webkitlibraries-to-product-directory:
3183         * Scripts/create-exports:
3184         * Scripts/debug-minibrowser:
3185         * Scripts/debug-safari:
3186         * Scripts/debug-test-runner:
3187         * Scripts/do-file-rename:
3188         * Scripts/do-webcore-rename:
3189         * Scripts/dump-webkit-tests-run:
3190         * Scripts/ensure-valid-python:
3191         * Scripts/execAppWithEnv:
3192         * Scripts/extract-localizable-js-strings:
3193         * Scripts/filter-build-webkit:
3194         * Scripts/find-extra-includes:
3195         * Scripts/fix-blink-patch:
3196         * Scripts/generate-coverage-data:
3197         * Scripts/git-add-reviewer:
3198         * Scripts/jsc-stress-test-helpers/js-exception-fuzz:
3199         * Scripts/jsc-stress-test-helpers/js-executable-allocation-fuzz:
3200         * Scripts/jsc-stress-test-helpers/js-osr-exit-fuzz:
3201         * Scripts/make-new-script-test:
3202         * Scripts/make-script-test-wrappers:
3203         * Scripts/package-root:
3204         * Scripts/parse-malloc-history:
3205         * Scripts/report-include-statistics:
3206         * Scripts/resolve-ChangeLogs:
3207         * Scripts/run-api-tests:
3208         * Scripts/run-bindings-tests:
3209         * Scripts/run-content-extension-tester:
3210         * Scripts/run-iexploder-tests:
3211         * Scripts/run-javascriptcore-tests:
3212         * Scripts/run-jsc:
3213         * Scripts/run-leaks:
3214         * Scripts/run-mangleme-tests:
3215         * Scripts/run-minibrowser:
3216         * Scripts/run-pageloadtest:
3217         * Scripts/run-regexp-tests:
3218         * Scripts/run-safari:
3219         * Scripts/run-sunspider:
3220         * Scripts/run-test-runner:
3221         * Scripts/run-webkit-app:
3222         * Scripts/run-webkit-httpd:
3223         * Scripts/run-webkit-websocketserver:
3224         * Scripts/set-webkit-configuration:
3225         * Scripts/show-pretty-diff:
3226         * Scripts/sort-Xcode-project-file:
3227         * Scripts/split-file-by-class:
3228         * Scripts/sunspider-compare-results:
3229         * Scripts/svn-apply:
3230         * Scripts/svn-unapply:
3231         * Scripts/test-webkit-scripts:
3232         * Scripts/test-webkitperl:
3233         * Scripts/update-iexploder-cssproperties:
3234         * Scripts/update-javascriptcore-test-results:
3235         * Scripts/update-webkit:
3236         * Scripts/update-webkit-auxiliary-libs:
3237         * Scripts/update-webkit-dependency:
3238         * Scripts/update-webkit-libs-jhbuild:
3239         * Scripts/update-webkit-localizable-strings:
3240         * Scripts/update-webkit-support-libs:
3241         * Scripts/update-webkitgtk-libs:
3242         * Scripts/update-webkitwpe-libs:
3243         * Scripts/webkit-build-directory:
3244         * Scripts/webkitperl/LoadAsModule.pm:
3245         * Scripts/webkitperl/VCSUtils_unittest/decodeGitBinaryPatch.pl:
3246         * Scripts/webkitperl/VCSUtils_unittest/fixChangeLogPatch.pl:
3247         * Scripts/webkitperl/VCSUtils_unittest/fixChangeLogPatchThenSetChangeLogDateAndReviewer.pl:
3248         * Scripts/webkitperl/VCSUtils_unittest/fixSVNPatchForAdditionWithHistory.pl:
3249         * Scripts/webkitperl/VCSUtils_unittest/generatePatchCommand.pl:
3250         * Scripts/webkitperl/VCSUtils_unittest/mergeChangeLogs.pl:
3251         * Scripts/webkitperl/VCSUtils_unittest/parseChunkRange.pl:
3252         * Scripts/webkitperl/VCSUtils_unittest/parseDiff.pl:
3253         * Scripts/webkitperl/VCSUtils_unittest/parseDiffHeader.pl:
3254         * Scripts/webkitperl/VCSUtils_unittest/parseDiffWithMockFiles.pl:
3255         * Scripts/webkitperl/VCSUtils_unittest/parseFirstEOL.pl:
3256         * Scripts/webkitperl/VCSUtils_unittest/parseGitDiffHeader.pl:
3257         * Scripts/webkitperl/VCSUtils_unittest/parsePatch.pl:
3258         * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffFooter.pl:
3259         * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl:
3260         * Scripts/webkitperl/VCSUtils_unittest/parseSvnProperty.pl:
3261         * Scripts/webkitperl/VCSUtils_unittest/parseSvnPropertyValue.pl:
3262         * Scripts/webkitperl/VCSUtils_unittest/parseUnifiedDiffHeader.pl:
3263         * Scripts/webkitperl/VCSUtils_unittest/prepareParsedPatch.pl:
3264         * Scripts/webkitperl/VCSUtils_unittest/removeEOL.pl:
3265         * Scripts/webkitperl/VCSUtils_unittest/runCommand.pl:
3266         * Scripts/webkitperl/VCSUtils_unittest/runPatchCommand.pl:
3267         * Scripts/webkitperl/VCSUtils_unittest/setChangeLogDateAndReviewer.pl:
3268         * Scripts/webkitperl/auto-version_unittest/autoVersionTests.pl:
3269         * Scripts/webkitperl/auto-version_unittest/versionStampTests.pl:
3270         * Scripts/webkitperl/filter-build-webkit_unittest/shouldIgnoreLine_unittests.pl:
3271         * Scripts/webkitperl/prepare-ChangeLog_unittest/extractLineRangeBeforeAndAfterChange.pl:
3272         * Scripts/webkitperl/prepare-ChangeLog_unittest/fetchRadarURLFromBugXMLData.pl:
3273         * Scripts/webkitperl/prepare-ChangeLog_unittest/generateFunctionLists.pl:
3274         * Scripts/webkitperl/prepare-ChangeLog_unittest/parser_unittests.pl:
3275         * Scripts/webkitperl/prepare-ChangeLog_unittest/resources/perl_unittests.pl:
3276         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v1.0.pl:
3277         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-new.pl:
3278         * Scripts/webkitperl/run-leaks_unittest/run-leaks-report-v2.0-old.pl:
3279         * Scripts/webkitperl/webkitdirs_unittest/appendToEnvironmentVariableList.pl:
3280         * Scripts/webkitperl/webkitdirs_unittest/checkForArgumentAndRemoveFromArrayRef.pl:
3281         * Scripts/webkitperl/webkitdirs_unittest/checkForArgumentAndRemoveFromArrayRefGettingValue.pl:
3282         * Scripts/webkitperl/webkitdirs_unittest/extractNonMacOSHostConfiguration.pl:
3283         * Scripts/webkitperl/webkitdirs_unittest/prependToEnvironmentVariableList.pl:
3284         * Scripts/webkitpy/layout_tests/servers/run_webkit_httpd.py:
3285         * ccache/ccache-clang:
3286         * ccache/ccache-clang++:
3287         * ccache/ccache-wrapper:
3288         * gtk/install-dependencies:
3289         * iExploder/iexploder-1.3.2/htdocs/iexploder.cgi:
3290         * iExploder/iexploder-1.3.2/htdocs/webserver.rb:
3291         * iExploder/iexploder-1.3.2/tools/lasthit.rb:
3292         * iExploder/iexploder-1.3.2/tools/osx_last_crash.rb:
3293         * iExploder/iexploder-1.3.2/tools/showtest.rb:
3294         * iExploder/iexploder-1.7.2/src/browser_harness.rb:
3295         * iExploder/iexploder-1.7.2/src/iexploder.cgi:
3296         * iExploder/iexploder-1.7.2/src/webserver.rb:
3297         * iExploder/iexploder-1.7.2/tools/lasthit.rb:
3298         * iExploder/iexploder-1.7.2/tools/osx_last_crash.rb:
3299         * wpe/install-dependencies:
3300
3301 2018-01-03  Simon Fraser  <simon.fraser@apple.com>
3302
3303         filter-build-webkit filters out useful compiler error lines
3304         https://bugs.webkit.org/show_bug.cgi?id=179864
3305
3306         Reviewed by Tim Horton.
3307
3308         Don't filter out lines that contain information about build errors by always showing lines
3309         after a line that contains "note:" or "error:".
3310
3311         * Scripts/filter-build-webkit:
3312         (shouldShowSubsequentLine):
3313         (shouldIgnoreLine):
3314
3315 2018-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
3316
3317         REGRESSION(r226366): [GTK] Broke TestBackForwardList and TestWebKitWebView
3318         https://bugs.webkit.org/show_bug.cgi?id=173915
3319
3320         Unreviewed follow-up. Fix /webkit2/WebKitWebView/session-state-with-form-data and
3321         /webkit2/WebKitWebView/submit-form. The form ID may be NULL, but we can't put NULL into a
3322         GVariant unless we use maybe types, and maybe types are incompatible with D-Bus. So use an
3323         empty string in this case.
3324
3325         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
3326         (emitFormSubmissionEvent):
3327
3328 2018-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
3329
3330         [GTK] Add web process API to detect when form is submitted via JavaScript
3331         https://bugs.webkit.org/show_bug.cgi?id=173915
3332
3333         Reviewed by Carlos Garcia Campos.
3334
3335         Test it.
3336
3337         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
3338         (FormSubmissionTest::FormSubmissionTest):
3339         (FormSubmissionTest::~FormSubmissionTest):
3340         (FormSubmissionTest::testFormSubmissionResult):
3341         (FormSubmissionTest::willSendDOMEventCallback):
3342         (FormSubmissionTest::willCompleteCallback):
3343         (FormSubmissionTest::runJavaScriptAndWaitUntilFormSubmitted):
3344         (testWebExtensionFormSubmissionSteps):
3345         (beforeAll):
3346         * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
3347         (DelayedSignal::DelayedSignal):
3348         (emitFormSubmissionEvent):
3349         (handleFormSubmissionCallback):
3350         (willSubmitFormCallback):
3351         (pageCreatedCallback):
3352
3353 2018-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
3354
3355         Unreviewed, skip broken API test /webkit2/WebKitWebsiteData/databases
3356         https://bugs.webkit.org/show_bug.cgi?id=181251
3357
3358         * Scripts/run-gtk-tests:
3359         (GtkTestRunner):
3360
3361 2018-01-03  Michael Catanzaro  <mcatanzaro@igalia.com>
3362
3363         Unreviewed, skip broken API test /webkit2/WebKitWebsiteData/ephemeral
3364         https://bugs.webkit.org/show_bug.cgi?id=181136
3365
3366         * Scripts/run-gtk-tests:
3367         (GtkTestRunner):
3368
3369 2018-01-02  Brent Fulgham  <bfulgham@apple.com>
3370
3371         [macOS, iOS] Adopt new secure coding APIs in WebKit
3372         https://bugs.webkit.org/show_bug.cgi?id=181085
3373         <rdar://problem/34837397>
3374
3375         Reviewed by Tim Horton.
3376
3377         Update API tests to use secure coding wherever possible. Currently, NSView/UIView-based classes are not
3378         capable of supporting NSSecureCoding, so pass through the current coding routines.
3379
3380         * TestWebKitAPI/Tests/WebKitCocoa/ApplicationManifest.mm: Updated for NSSecureCoding.
3381         * TestWebKitAPI/Tests/WebKitCocoa/Coding.mm:
3382         (encodeAndDecode): Check if class supports the NSSecureCoding protocol and use non-secure coding
3383         routines if necessary.
3384         (TEST): Updated for NSSecureCoding.
3385         * TestWebKitAPI/Tests/mac/EarlyKVOCrash.mm:
3386         (TestWebKitAPI::TEST): Updated for NSSecureCoding.
3387
3388 2017-12-28  Yusuke Suzuki  <utatane.tea@gmail.com>
3389
3390         Remove std::chrono completely
3391         https://bugs.webkit.org/show_bug.cgi?id=181186
3392
3393         Reviewed by Alex Christensen.
3394
3395         * WebKitTestRunner/gtk/TestControllerGtk.cpp:
3396         (WTR::TestController::platformRunUntil):
3397
3398 2018-01-02  Michael Catanzaro  <mcatanzaro@igalia.com>
3399
3400         REGRESSION(r223253): Broke ResourceLoadStatistics layout tests for non-Cocoa ports
3401         https://bugs.webkit.org/show_bug.cgi?id=181231
3402
3403         Reviewed by Alex Christensen.
3404
3405         Implement TestController APIs needed by ResourceLoadStatistics tests.
3406
3407         * WebKitTestRunner/TestController.cpp:
3408         (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
3409         (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
3410
3411 2018-01-02  Tim Horton  <timothy_horton@apple.com>
3412
3413         Disable WKAttachmentTests if UIPasteboard.itemProviders is not available
3414         https://bugs.webkit.org/show_bug.cgi?id=181219
3415
3416         Reviewed by Wenson Hsieh.
3417
3418         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3419
3420 2018-01-02  Jiewen Tan  <jiewen_tan@apple.com>
3421
3422         Add a WebAuthentication runtime feature flag
3423         https://bugs.webkit.org/show_bug.cgi?id=181220
3424         <rdar://problem/36055305>
3425
3426         Reviewed by Brent Fulgham.
3427
3428         Renames the CredentialManagement runtime feature flag into WebAuthentication.
3429
3430         * DumpRenderTree/TestOptions.h:
3431         * DumpRenderTree/TestOptions.mm:
3432         (TestOptions::TestOptions):
3433         * DumpRenderTree/mac/DumpRenderTree.mm:
3434         (enableExperimentalFeatures):
3435         (setWebPreferencesForTestOptions):
3436         * WebKitTestRunner/TestController.cpp:
3437         (WTR::TestController::resetPreferencesToConsistentValues):
3438         (WTR::updateTestOptionsFromTestHeader):
3439         * WebKitTestRunner/TestOptions.h:
3440         (WTR::TestOptions::hasSameInitializationOptions const):
3441
3442 2018-01-02  Wenson Hsieh  <wenson_hsieh@apple.com>
3443
3444         [Attachment Support] Don't Blob-convert images and attachments with https:, http: or data: urls
3445         https://bugs.webkit.org/show_bug.cgi?id=181143
3446         <rdar://problem/36200381>
3447
3448         Reviewed by Tim Horton.
3449
3450         Add a new API test to ensure that a copied image with a data URL does not get pasted as an attachment when
3451         attachment elements are enabled.
3452
3453         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3454         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
3455         (TestWebKitAPI::TEST):
3456
3457 2018-01-02  Jiewen Tan  <jiewen_tan@apple.com>
3458
3459         Update Credential Management API for WebAuthentication
3460         https://bugs.webkit.org/show_bug.cgi?id=181082
3461         <rdar://problem/36055239>
3462
3463         Reviewed by Brent Fulgham.
3464
3465         Enable Credential Management API for testing.
3466
3467         * DumpRenderTree/TestOptions.h:
3468         * WebKitTestRunner/TestOptions.h:
3469
3470 2018-01-02  Michael Catanzaro  <mcatanzaro@igalia.com>
3471
3472         [GTK] Test /webkit2/WebKitWebExtension/form-controls-associated-signal is flaky
3473         https://bugs.webkit.org/show_bug.cgi?id=168194
3474
3475         Reviewed by Carlos Garcia Campos.
3476
3477         Fix an assertion and unskip the test. The order that form controls are associated is not
3478         guaranteed.
3479
3480         * Scripts/run-gtk-tests:
3481         (GtkTestRunner):
3482         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
3483         (didAssociateFormControlsCallback):
3484
3485 2018-01-02  Alex Christensen  <achristensen@webkit.org>
3486
3487         Use new WebsiteDataStore passed in through decidePolicyForNavigation SPI
3488         https://bugs.webkit.org/show_bug.cgi?id=180897
3489         <rdar://problem/35535328>
3490
3491         Reviewed by Brent Fulgham.
3492
3493         Test two forms of storage to be sure we are using a different WebsiteDataStore: cookies and sessionStorage.
3494
3495         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
3496         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
3497         (-[WebsitePoliciesWebsiteDataStoreDelegate webView:startURLSchemeTask:]):
3498         (-[WebsitePoliciesWebsiteDataStoreDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3499         (websiteDataStoreTestWebView):
3500         (TEST):
3501
3502 == Rolled over to ChangeLog-2018-01-01 ==