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