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