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