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