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