Web Inspector: move Inspector::Protocol::Array<T> to JSON namespace
[WebKit-https.git] / Tools / ChangeLog
1 2017-12-01  Brian Burg  <bburg@apple.com>
2
3         Web Inspector: move Inspector::Protocol::Array<T> to JSON namespace
4         https://bugs.webkit.org/show_bug.cgi?id=173662
5
6         Reviewed by Joseph Pecoraro.
7
8         Add duplicate test cases for JSON::ArrayOf<T> based on JSON::Array.
9
10         * TestWebKitAPI/Tests/WTF/JSONValue.cpp:
11         (TestWebKitAPI::TEST):
12
13 2017-12-01  Wenson Hsieh  <wenson_hsieh@apple.com>
14
15         [Attachment Support] Implement SPI for clients to update a given attachment's data
16         https://bugs.webkit.org/show_bug.cgi?id=180184
17         <rdar://problem/35355731>
18
19         Reviewed by Tim Horton.
20
21         Adds two new API tests to exercise the attachment data update flow.
22
23         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
24         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::ObserveAttachmentUpdatesForScope):
25         (-[_WKAttachment synchronouslySetDisplayOptions:error:]):
26         (-[_WKAttachment synchronouslyRequestData:]):
27         (-[_WKAttachment synchronouslySetData:newContentType:newFilename:error:]):
28         (TestWebKitAPI::TEST):
29
30 2017-12-01  Alicia Boya García  <aboya@igalia.com>
31
32         [GTK] Add SampleMap.cpp API tests to CMake
33         https://bugs.webkit.org/show_bug.cgi?id=180252
34
35         Reviewed by Žan Doberšek.
36
37         * TestWebKitAPI/PlatformGTK.cmake:
38
39 2017-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
40
41         WebDriver: add support for importing and running selenium tests
42         https://bugs.webkit.org/show_bug.cgi?id=180145
43
44         Reviewed by Brian Burg.
45
46         We currently import and run W3C tests, which are the best ones to ensure our implementation is spec
47         compliant. However, the selenium API is what user will actually use in the end, so it's important to ensure that
48         we don't break the selenium support. This patch adds webdriver_test_runner_selenium.py and
49         webdriver_selenium_executor.py to run selenium tests. The script import-w3c-webdriver-tests has been renamed as
50         import-webdriver-tests and it can now import selenium tests too.
51
52         * Scripts/import-w3c-webdriver-tests: Removed.
53         * Scripts/import-webdriver-tests: Added.
54         (Importer):
55         (Importer.__init__):
56         (Importer.download_tests):
57         (Importer.import_tests):
58         (Importer.import_tests.should_skip_file):
59         * Scripts/webkitpy/webdriver_tests/webdriver_driver.py:
60         (WebDriver.browser_path):
61         (WebDriver):
62         (WebDriver.browser_args):
63         (WebDriver.selenium_name):
64         * Scripts/webkitpy/webdriver_tests/webdriver_driver_gtk.py:
65         (WebDriverGtk.browser_path):
66         (WebDriverGtk):
67         (WebDriverGtk.browser_args):
68         (WebDriverGtk.capabilities):
69         (WebDriverGtk.selenium_name):
70         * Scripts/webkitpy/webdriver_tests/webdriver_driver_wpe.py:
71         (WebDriverWPE.browser_args):
72         (WebDriverWPE.capabilities):
73         * Scripts/webkitpy/webdriver_tests/webdriver_selenium_executor.py: Added.
74         (_ensure_directory_in_path):
75         (CollectRecorder):
76         (CollectRecorder.__init__):
77         (CollectRecorder.pytest_collectreport):
78         (WebDriverSeleniumExecutor):
79         (WebDriverSeleniumExecutor.__init__):
80         (WebDriverSeleniumExecutor.collect):
81         (WebDriverSeleniumExecutor.run):
82         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
83         (WebDriverTestRunner):
84         (WebDriverTestRunner.__init__):
85         (WebDriverTestRunner.run):
86         (WebDriverTestRunner.print_results):
87         (WebDriverTestRunner.dump_results_to_json_file):
88         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py: Added.
89         (WebDriverTestRunnerSelenium):
90         (WebDriverTestRunnerSelenium.__init__):
91         (WebDriverTestRunnerSelenium._tests_dir):
92         (WebDriverTestRunnerSelenium.collect_tests):
93         (WebDriverTestRunnerSelenium.run):
94         (WebDriverTestRunnerSelenium.results):
95         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
96         (WebDriverTestRunnerW3C.__init__):
97         (WebDriverTestRunnerW3C.run):
98         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
99
100 2017-11-30  Alex Christensen  <achristensen@webkit.org>
101
102         REGRESSION (r224791): cookies are shared between ephemeral sessions in the same process pool
103         https://bugs.webkit.org/show_bug.cgi?id=180235
104
105         Reviewed by Joseph Pecoraro.
106
107         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
108         * TestWebKitAPI/Tests/WebKitCocoa/CookiePrivateBrowsing.mm: Added.
109         (-[CookiePrivateBrowsingDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
110         (TEST):
111
112 2017-11-30  Stephan Szabo  <stephan.szabo@sony.com>
113
114         Make LegacyCustomProtocolManager optional for network process
115         https://bugs.webkit.org/show_bug.cgi?id=176230
116
117         Reviewed by Alex Christensen.
118
119         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
120
121 2017-11-30  Dewei Zhu  <dewei_zhu@apple.com>
122
123         HTTP server driver is responsible for ensuring the dependencies of HTTP server.
124         https://bugs.webkit.org/show_bug.cgi?id=180231
125
126         Reviewed by Stephanie Lewis.
127
128         Added the logic to ensure system environment meet the requirments of launching the http server.
129
130         * Scripts/webkitpy/benchmark_runner/http_server_driver/simple_http_server_driver.py:
131         (SimpleHTTPServerDriver.serve):
132         (SimpleHTTPServerDriver.set_device_id):
133         (SimpleHTTPServerDriver):
134         (SimpleHTTPServerDriver._ensure_http_server_dependencies):
135
136 2017-11-30  Basuke Suzuki  <Basuke.Suzuki@sony.com>
137
138         [WinCairo] Cannot build without Internet connection
139         https://bugs.webkit.org/show_bug.cgi?id=180068
140
141         Reviewed by Alex Christensen
142
143         With no Internet connection, if libraries has been downloaded
144         before, trust that version and keep building.
145
146         * Scripts/download-latest-github-release.py:
147         (Status):
148         (current_release):
149         (has_latest_release):
150         (main):
151
152 2017-11-30  Alex Christensen  <achristensen@webkit.org>
153
154         WKURLSchemeHandler.request should include HTTPBody
155         https://bugs.webkit.org/show_bug.cgi?id=180220
156
157         Reviewed by Brady Eidson.
158
159         * TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm:
160         (-[FormSubmissionDelegate webView:startURLSchemeTask:]):
161
162 2017-11-30  Carlos Alberto Lopez Perez  <clopez@igalia.com>
163
164         Add a script for automatically running the buildbot configurations on a test environment.
165         https://bugs.webkit.org/show_bug.cgi?id=169084
166
167         Reviewed by Michael Catanzaro.
168
169         This new script does the following:
170         - Creates a temporal workingdir.
171         - Installs buildbot and its dependencies there (very same version used by the webkit.org buildbot master https://build.webkit.org/about ).
172           This is important as there are problems that that may not be detected if you don't test with the same version that will be used on production.
173         - Copies the buildmaster config files to the temporal workingdir.
174         - Performs the required steps to start a buildmaster.
175         - Creates the required config for each slave and starts all of them.
176
177         The test buildmaster should be accessible at http://localhost:8710/ allowing to trigger manual builds.
178         This allows to test any configuration changes on this test environment that is pretty much identical to the production one.
179
180         * BuildSlaveSupport/build.webkit.org-config/run-buildbot-test.py: Added.
181         (check_tcp_port_open):
182         (upgrade_db_needed):
183         (create_tempdir):
184         (print_if_error_stdout_stderr):
185         (setup_master_workdir):
186         (wait_for_master_ready):
187         (start_master):
188         (get_list_workers):
189         (start_worker):
190         (clean):
191         (cmd_exists):
192         (check_buildbot_installed):
193         (setup_virtualenv):
194         (configdir_is_valid):
195         (main):
196
197 2017-11-30  Aakash Jain  <aakash_jain@apple.com>
198
199         [build.webkit.org] Move python code from master.cfg in separate files
200         https://bugs.webkit.org/show_bug.cgi?id=180180
201
202         Reviewed by Alexey Proskuryakov.
203
204         * BuildSlaveSupport/build.webkit.org-config/master.cfg: Moved code to steps.py and master.cfg appropriately.
205         * BuildSlaveSupport/build.webkit.org-config/factories.py: Moved all factory related code from master.cfg.
206         * BuildSlaveSupport/build.webkit.org-config/steps.py: Moved all steps related code from master.cfg
207
208 2017-11-30  Wenson Hsieh  <wenson_hsieh@apple.com>
209
210         WKAttachmentTests.InPlaceImageAttachmentToggleDisplayMode times out on macOS bots
211         https://bugs.webkit.org/show_bug.cgi?id=180200
212
213         Reviewed by Alexey Proskuryakov.
214
215         Rewrites an API test to avoid checking against the hard-coded platform-dependent size of an attachment element.
216         Instead, first insert the attachment element as an icon and compute its size, and then check that the size of
217         the element is restored to this original value after toggling the display mode to in-place mode and back.
218
219         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
220         (-[TestWKWebView attachmentElementSize]):
221         (-[TestWKWebView waitForAttachmentElementSizeToBecome:]):
222         (TestWebKitAPI::TEST):
223         (platformAttachmentIconElementSize): Deleted.
224
225 2017-11-30  Michael Catanzaro  <mcatanzaro@igalia.com>
226
227         [WPE] Stop building Wayland in JHBuild moduleset
228         https://bugs.webkit.org/show_bug.cgi?id=179951
229
230         Reviewed by Žan Doberšek.
231
232         Since Wayland is not used for running tests, and since it does not seem to depend on
233         anything in the JHBuild moduleset, I think we can remove it safely without having to worry
234         that the system version of Wayland might use libraries in the JHBuild environment (which
235         would be unsafe).
236
237         * wpe/install-dependencies: Install Wayland.
238         * wpe/jhbuild.modules: Stop building Wayland.
239
240 2017-11-30  Alexey Proskuryakov  <ap@apple.com>
241
242         Silence the BitVector leak for
243         https://bugs.webkit.org/show_bug.cgi?id=121662
244
245         The out of line data pointer isn't stored directly, so the leaks tool cannot see it.
246
247         * Scripts/webkitpy/port/leakdetector.py:
248         (LeakDetector._callstacks_to_exclude_from_leaks):
249
250 2017-11-29  Aakash Jain  <aakash_jain@apple.com>
251
252         Fix build.webkit.org broken unit-test after r225080
253         https://bugs.webkit.org/show_bug.cgi?id=180176
254
255         Reviewed by Carlos Garcia Campos.
256
257         * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Updated expected_build_steps.
258
259 2017-11-29  Wenson Hsieh  <wenson_hsieh@apple.com>
260
261         [Attachment Support] Implement SPI for clients to make an attachment element display in-place
262         https://bugs.webkit.org/show_bug.cgi?id=180153
263         <rdar://problem/35735252>
264
265         Reviewed by Tim Horton.
266
267         Adds new API tests to cover inserting in-place attachments and updating the display mode of existing attachments,
268         as well as performing a few editing operations (paragraph insertion, cut/paste, list insertion) on attachment
269         elements.
270
271         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
272         (platformAttachmentIconElementSize):
273         (testVideoData):
274         (testPDFData):
275         (displayOptionsWithMode):
276         (-[TestWKWebView waitForAttachmentElementSizeToBecome:]):
277         (-[_WKAttachment synchronouslySetDisplayOptions:error:]):
278         (TestWebKitAPI::TEST):
279
280 2017-11-29  Simon Fraser  <simon.fraser@apple.com>
281
282         API test fix after r225288.
283
284         Make the test work on iOS.
285
286         * TestWebKitAPI/Tests/WebKit/NoHistoryItemScrollToFragment.mm:
287         (-[DidScrollToFragmentScrollViewDelegate scrollViewDidScroll:]):
288         (TestWebKitAPI::TEST):
289
290 2017-11-29  Simon Fraser  <simon.fraser@apple.com>
291
292         REGRESSION (r213590): Scrolling to anchors broken in web views when content loaded via HTML string
293         https://bugs.webkit.org/show_bug.cgi?id=180155
294         rdar://problem/34220827
295
296         Reviewed by Zalan Bujtas.
297
298         API test that loads a page with a relative anchor, and simulates a click to scroll to it.
299
300         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
301         * TestWebKitAPI/Tests/WebKit/MediaStreamTrackDetached.mm:
302         (TestWebKitAPI::TEST):
303         * TestWebKitAPI/Tests/WebKit/NoHistoryItemScrollToFragment.mm: Added.
304         (-[DidScrollToFragmentDelegate _webViewDidScroll:]):
305         (TestWebKitAPI::TEST):
306         * TestWebKitAPI/Tests/WebKit/scroll-to-anchor.html: Added.
307
308 2017-11-29  Ryan Haddad  <ryanhaddad@apple.com>
309
310         webkitpy EWS should be present on the dashboard.
311         https://bugs.webkit.org/show_bug.cgi?id=179801
312
313         Reviewed by Aakash Jain.
314
315         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
316         (BubbleQueueServer): Add Webkitpy EWS.
317
318 2017-11-29  Simon Fraser  <simon.fraser@apple.com>
319
320         Viewport unit values affected by Comand-+ zoom
321         https://bugs.webkit.org/show_bug.cgi?id=145614
322
323         Reviewed by Zalan Bujtas.
324         
325         Fix Command+ and Command- in MiniBrowser to do zooming, rather than being tied
326         to editing commands.
327
328         * MiniBrowser/mac/MainMenu.xib:
329
330 2017-11-29  Alex Christensen  <achristensen@webkit.org>
331
332         Add test for _WKVisitedLinkStore.addVisitedLinkWithString
333         https://bugs.webkit.org/show_bug.cgi?id=180152
334
335         Reviewed by Chris Dumez.
336
337         * TestWebKitAPI/Tests/WebKitCocoa/VisitedLinkStore.mm:
338         (TestWebKitAPI::TEST):
339
340 2017-11-29  Jonathan Bedard  <jbedard@apple.com>
341
342         webkitpy: Trying to use iOS versions from machines without iOS SDKs doesn't make sense
343         https://bugs.webkit.org/show_bug.cgi?id=179534
344         <rdar://problem/35469509>
345
346         Reviewed by Brent Fulgham.
347
348         Provide more specific information in builders.py so that machines do not try and calculate
349         an iOS SDK version while running tests.
350
351         * Scripts/webkitpy/port/builders.py: Explicitly specify a version for iOS Simulator.
352         * Scripts/webkitpy/port/ios_simulator.py:
353         (IOSSimulatorPort._version_from_name): Attempt to extract the iOS version from the name
354         of the port.
355         (IOSSimulatorPort.ios_version): Use specified iOS version if a version is detected in
356         in the provided name string (just like Mac).
357
358 2017-11-29  Robin Morisset  <rmorisset@apple.com>
359
360         The recursive tail call optimisation is wrong on closures
361         https://bugs.webkit.org/show_bug.cgi?id=179835
362
363         Reviewed by Saam Barati.
364
365         This just includes merge-sort-cps.js to the list of benchmarks ran by run-jsc-benchmarks --tail-bench
366
367         * Scripts/run-jsc-benchmarks:
368
369 2017-11-28  Carlos Garcia Campos  <cgarcia@igalia.com>
370
371         WebDriver: add an option to dump test results to a json file
372         https://bugs.webkit.org/show_bug.cgi?id=180082
373
374         Reviewed by Brian Burg.
375
376         Add --json-output command line option to run-webdriver-tests to dump test results to a json file in a format
377         compatible with the W3C report. WebDriverTestResult now represents a test file and contains a list of
378         subtests, instead of having one WebDriverTestResult per subtest. This way we can store also the harness result
379         and dump the results to different formats.
380
381         * Scripts/run-webdriver-tests:
382         * Scripts/webkitpy/webdriver_tests/webdriver_test_result.py:
383         (WebDriverTestResult.__init__):
384         (WebDriverTestResult):
385         (WebDriverTestResult.add_subtest_results):
386         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py:
387         (WebDriverTestRunner.print_results):
388         (WebDriverTestRunner):
389         (WebDriverTestRunner.dump_results_to_json_file):
390         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
391         (WebDriverTestRunnerW3C.run):
392
393 2017-11-28  Alexey Proskuryakov  <ap@apple.com>
394
395         Stop silencing leaks in TextCodecICU::registerCodecs, as the problem was fixed a while ago.
396         https://bugs.webkit.org/show_bug.cgi?id=118505
397
398         Reviewed by Joseph Pecoraro.
399
400         * Scripts/valgrind/suppressions.txt:
401         * Scripts/webkitpy/port/leakdetector.py:
402         (LeakDetector._callstacks_to_exclude_from_leaks):
403
404 2017-11-28  Ms2ger  <Ms2ger@igalia.com>
405
406         Stop modifying self.expectations in TestExpectationLine.expected_behavior.
407         https://bugs.webkit.org/show_bug.cgi?id=180074
408
409         Reviewed by Simon Fraser.
410
411         In particular, getting the property multiple times on a skipped test
412         expectation line (which happens when using
413         `Tools/Scripts/run-webkit-tests --print-expectations` if a directory
414         containing multiple tests is skipped) would yield [pass, skip], then
415         [pass, skip, skip], then [pass, skip, skip, skip], and so on.
416
417         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
418         (TestExpectationLine.expected_behavior): copy self.expectations before modifying it.
419
420 2017-11-14  Carlos Garcia Campos  <cgarcia@igalia.com>
421
422         Move JSONValues to WTF and convert uses of InspectorValues.h to JSONValues.h
423         https://bugs.webkit.org/show_bug.cgi?id=173793
424
425         Reviewed by Joseph Pecoraro.
426
427         * TestWebKitAPI/CMakeLists.txt:
428         * TestWebKitAPI/PlatformGTK.cmake:
429         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
430         * TestWebKitAPI/Tests/WTF/JSONValue.cpp: Renamed from Tools/TestWebKitAPI/Tests/JavaScriptCore/InspectorValue.cpp.
431         (TestWebKitAPI::TEST):
432
433 2017-11-28  Ryan Haddad  <ryanhaddad@apple.com>
434
435         Bugs filed from the flakiness dashboard should include a link to the dashboard
436         https://bugs.webkit.org/show_bug.cgi?id=180090
437
438         Reviewed by Aakash Jain.
439
440         * TestResultServer/static-dashboards/flakiness_dashboard.js:
441         (createBugHTML):
442         Open the bug compose page in a new tab and include a link
443         to the flakiness dashboard results for the selected test.
444
445 2017-11-28  Jonathan Bedard  <jbedard@apple.com>
446
447         webkitpy: Standardize Version representation
448         https://bugs.webkit.org/show_bug.cgi?id=179677
449         <rdar://problem/35711277>
450
451         Reviewed by Alex Christensen.
452
453         Standardize a single method of representing versions in the Version object
454         constructor. Provide static methods for converting string and lists/tuples
455         to Version objects.
456
457         * Scripts/webkitpy/common/system/platforminfo.py:
458         (PlatformInfo.__init__): Parse Version object from string instead of using
459         the constructor.
460         (PlatformInfo.xcode_sdk_version): Ditto.
461         (PlatformInfo.xcode_version): Ditto.
462         (PlatformInfo._win_version): Construct Version object from list.
463         * Scripts/webkitpy/common/system/platforminfo_mock.py:
464         (MockPlatformInfo.xcode_sdk_version):
465         (MockPlatformInfo.xcode_version):
466         * Scripts/webkitpy/common/version.py:
467         (Version):
468         (Version.from_string): Parse string of the form 'x.x.x'.
469         (Version.from_iterable): Construct a version object from a list, tuple or
470         other indexable object.
471         (Version.__init__): Construct a Version object from integers.
472         * Scripts/webkitpy/common/version_name_map.py:
473         (VersionNameMap.__init__): Use integer Version constructor.
474         (VersionNameMap._automap_to_major_version): Ditto.
475         (VersionNameMap.to_name):
476         (VersionNameMap.strip_name_formatting): Construct Version from string.
477         * Scripts/webkitpy/common/version_name_map_unittest.py:
478         (VersionMapTestCase.test_mac_version_by_name): Use integer Version constructor.
479         (VersionMapTestCase.test_mac_name_by_version): Ditto.
480         (VersionMapTestCase.test_ios_name_by_version): Ditto.
481         * Scripts/webkitpy/common/version_unittest.py:
482         (VersionTestCase.test_string_constructor):
483         (VersionTestCase.test_from_list):
484         (VersionTestCase.test_from_tuple):
485         (VersionTestCase.test_int_constructor):
486         (VersionTestCase.test_len):
487         (VersionTestCase.test_set_by_int):
488         (VersionTestCase.test_set_by_string):
489         (VersionTestCase.test_get_by_int):
490         (VersionTestCase.test_get_by_string):
491         (VersionTestCase.test_string):
492         (VersionTestCase.test_contained_in):
493         (VersionTestCase.test_compare_versions):
494         (VersionTestCase.test_list_constructor): Deleted.
495         (VersionTestCase.test_tuple_constructor): Deleted.
496         (VersionTestCase.test_copy_constructor): Deleted.
497         (VersionTestCase.test_none_constructor): Deleted.
498         * Scripts/webkitpy/port/ios.py:
499         (IOSPort.default_baseline_search_path): Handle case where ios_version is None.
500         * Scripts/webkitpy/port/ios_device.py:
501         (IOSDevicePort.ios_version): Return None rather than an empty version.
502         * Scripts/webkitpy/port/ios_simulator.py:
503         (IOSSimulatorPort.simulator_runtime): Parse Version object from string instead
504         of using the constructor.
505         (IOSSimulatorPort.ios_version): Return None rather than an empty version.
506         * Scripts/webkitpy/xcode/simulator.py:
507         (Simulator._parse_runtimes): Parse Version object from string instead of using
508         the constructor.
509         (Simulator._parse_devices): Ditto.
510         * Scripts/webkitpy/xcode/simulator_unittest.py:
511
512 2017-11-28  Daniel Bates  <dabates@apple.com>
513
514         [Cocoa] First pass at implementing alternative presentation button element
515         https://bugs.webkit.org/show_bug.cgi?id=179785
516         Part of <rdar://problem/34917108>
517
518         Reviewed by Brent Fulgham.
519
520         Add a test that substitutes the alternative presentation button for an element in
521         the page and clicks it.
522
523         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add test.
524         * TestWebKitAPI/Tests/WebKitCocoa/ClickAlternativePresentationButton.mm: Added.
525         (didClickAlternativePresentationButton):
526         (-[ClickAlternativePresentationButton webProcessPlugIn:didCreateBrowserContextController:]):
527         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
528         (TEST):
529         (-[AlternativePresentationButtonDelegate _webView:didClickAlternativePresentationButtonWithUserInfo:]):
530         (-[AlternativePresentationButtonDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
531
532 2017-11-28  Carlos Garcia Campos  <cgarcia@igalia.com>
533
534         REGRESSION(r225166): [GTK] Skipped unit tests are considered failures after glib upgrade
535         https://bugs.webkit.org/show_bug.cgi?id=180072
536
537         Reviewed by Michael Catanzaro.
538
539         This is a bug in GLib that has already been fixed. Backport the patch to fix it until there's a new GLib release
540         we can depend on.
541
542         * gtk/jhbuild.modules:
543         * gtk/patches/glib-gtester-do-not-consider-skipped-tests-as-failures.patch: Added.
544
545 2017-11-28  Fujii Hironori  <Hironori.Fujii@sony.com>
546
547         webkitpy: PlatformInfo raises AssertionError "assert self.os_version is not None" in Cygwin since Bug 179621
548         https://bugs.webkit.org/show_bug.cgi?id=180069
549
550         Reviewed by Daniel Bates.
551
552         "Version 10.0.16299" was interpreted as 0.0.16299. Fix the wrong
553         regexp for 'ver' command.
554
555         * Scripts/webkitpy/common/system/platforminfo.py:
556         (PlatformInfo._win_version_from_cmd): Replace \d with \d+.
557
558 2017-11-28  Carlos Garcia Campos  <cgarcia@igalia.com>
559
560         [GTK] WebDriver: disable XSS auditor when running WebDriver tests
561         https://bugs.webkit.org/show_bug.cgi?id=180075
562
563         Reviewed by Carlos Alberto Lopez Perez.
564
565         Some tests are now doing inline('<script>window.alert()</script>') which is rejected by the XSS auditor because
566         the script source is part of the request URL.
567
568         * Scripts/webkitpy/webdriver_tests/webdriver_driver_gtk.py:
569         (WebDriverGtk.capabilities): Disable XSS auditor.
570
571 2017-11-28  Carlos Garcia Campos  <cgarcia@igalia.com>
572
573         WebDriver: add timeout option to run-webdriver-tests script
574         https://bugs.webkit.org/show_bug.cgi?id=179940
575
576         Reviewed by Carlos Alberto Lopez Perez.
577
578         We need to handle timeouts to be able to run the tests in the bots. pytest doesn't support timeouts, but there's
579         a plugin pytest_timeout that can be used for that.
580
581         * Scripts/run-webdriver-tests: Add --timeout command line option.
582         * Scripts/webkitpy/thirdparty/__init__.py:
583         (AutoinstallImportHook.find_module): Check if pytest_timeout is imported to install it.
584         (AutoinstallImportHook._install_pytest_timeout): Install pytest_timeout from pypi.
585         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py:
586         (WebDriverTestRunnerW3C.__init__): Set PYTEST_TIMEOUT env var with the timeout given.
587         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
588         (WebDriverW3CExecutor.run): Clarify that the timeout received by do_wdspec() is ignored, and pass 0 instead of 25.
589
590 2017-11-27  Aakash Jain  <aakash_jain@apple.com>
591
592         Do not run webkitpy tests on multiple EWSes
593         https://bugs.webkit.org/show_bug.cgi?id=179834
594
595         Reviewed by Alexey Proskuryakov.
596
597         Do not run webkitpy tests in every EWS. We now have
598         a dedicated webkitpy test EWS.
599
600         * Scripts/webkitpy/tool/steps/runtests.py:
601         (RunTests.run): Do not run webkitpy tests in EWSes. These tests will still run
602         when --non-interactive option is not passed. 
603
604 2017-11-27  Jonathan Bedard  <jbedard@apple.com>
605
606         webkitpy: Better name-version mapping (Part 1)
607         https://bugs.webkit.org/show_bug.cgi?id=179621
608         <rdar://problem/35589585>
609
610         Reviewed by David Kilzer.
611
612         Mapping version numbers to version names should occur in a central location.
613         This has a few advantages. First, it makes iterating through versions easier.
614         Second, it allows for apple_additions to define an additional set of name
615         mappings. Lastly, it will allow, in a future patch, for us to track version
616         instead of version name, only mapping version to version name when required.
617
618         * Scripts/webkitpy/common/system/platforminfo.py:
619         (PlatformInfo.__init__):
620         (PlatformInfo._determine_os_name): Use VersionNameMap instead of custom functions
621         mapping version to name.
622         (PlatformInfo._determine_linux_version): Deleted.
623         (PlatformInfo._determine_mac_version): Deleted.
624         (PlatformInfo._determine_win_version): Deleted.
625         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
626         (TestPlatformInfo.test_os_name_and_wrappers):
627         (TestPlatformInfo.test_os_version):
628         (TestPlatformInfo.test_display_name):
629         (TestPlatformInfo.test_total_bytes_memory):
630         * Scripts/webkitpy/common/version.py:
631         (Version.contained_in): Add partial version mapping.
632         * Scripts/webkitpy/common/version_name_map.py: Added.
633         (VersionNameMap): Holds a mapping of version name to version object.
634         (VersionNameMap.map): Don't re-create VersionNameMap every time.
635         (VersionNameMap.__init__): Initialize mapping, use platform to
636         define the default system platform.
637         (VersionNameMap._automap_to_major_version): Some operating systems, such
638         as iOS, have a naming scheme based on their major version and os name.
639         Automatically generate such mappings.
640         (VersionNameMap.to_name): Given a version object, platform name and
641         table, find the closest matching version name.
642         (VersionNameMap.strip_name_formatting): Remove spaces and extract the major version,
643         if a version string is included in the name.
644         (VersionNameMap.from_name): Return an os name and version given a version name.
645         * Scripts/webkitpy/common/version_name_map_unittest.py: Added.
646         (VersionMapTestCase):
647         (VersionMapTestCase.test_default_system_platform):
648         (VersionMapTestCase.test_mac_version_by_name):
649         (VersionMapTestCase.test_ios_version_by_name):
650         (VersionMapTestCase.test_mac_name_by_version):
651         (VersionMapTestCase.test_ios_name_by_version):
652         * Scripts/webkitpy/common/version_unittest.py:
653         (VersionTestCase.test_contained_in):
654         * Scripts/webkitpy/port/ios_device.py:
655         (IOSDevicePort.ios_version): Map os_version name to version number.
656
657 2017-11-27  Don Olmstead  <don.olmstead@sony.com>
658
659         [CMake][Win] Conditionally select DLL CRT or static CRT
660         https://bugs.webkit.org/show_bug.cgi?id=170594
661
662         Reviewed by Alex Christensen.
663
664         * DumpRenderTree/PlatformWin.cmake:
665         * MiniBrowser/win/CMakeLists.txt:
666
667 2017-11-27  Yacine Bandou  <yacine.bandou_ext@softathome.com>
668
669         [GTK][WPE] Add "enable-encrypted-media" property to WebKitWebSettings
670         https://bugs.webkit.org/show_bug.cgi?id=18005
671
672         Reviewed by Michael Catanzaro.
673
674         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
675         (testWebKitSettings):
676
677 2017-11-27  Tim Horton  <timothy_horton@apple.com>
678
679         One too many zeroes in macOS version number in FeatureDefines
680         https://bugs.webkit.org/show_bug.cgi?id=180011
681
682         Reviewed by Dan Bernstein.
683
684         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
685
686 2017-11-27  Per Arne Vollan  <pvollan@apple.com>
687
688         [Win] The number of webkit-patch iterations on EWS should be configurable.
689         https://bugs.webkit.org/show_bug.cgi?id=178517
690
691         Reviewed by Darin Adler.
692
693         Add a new RESET_AFTER_ITERATION argument to the EWS shell script.
694
695         * EWSTools/start-queue-win.sh:
696
697 2017-11-27  Per Arne Vollan  <pvollan@apple.com>
698
699         [Win] Switch to VS2017 on EWS bots.
700         https://bugs.webkit.org/show_bug.cgi?id=178516
701
702         Reviewed by Darin Adler.
703
704         * EWSTools/start-queue-win.sh:
705
706 2017-11-27  Carlos Garcia Campos  <cgarcia@igalia.com>
707
708         [SOUP] Layout test media/track/track-text-track-cue-list.html crash with g_source_set_ready_time: assertion 'source->ref_count > 0' failed
709         https://bugs.webkit.org/show_bug.cgi?id=176806
710
711         Reviewed by Carlos Alberto Lopez Perez.
712
713         This was caused by a GLib bug that has already been fixed. Upgrade glib to 2.54.2.
714
715         * gtk/jhbuild.modules:
716         * gtk/patches/gdate-suppress-string-format-literal-warning.patch: Removed.
717
718 2017-11-24  Darin Adler  <darin@apple.com>
719
720         * TestWebKitAPI/Tests/WTF/OptionSet.cpp:
721         (TestWebKitAPI::TEST): Added a test for OptionSet operator|.
722
723 2017-11-24  Mark Lam  <mark.lam@apple.com>
724
725         Move unsafe jsc shell test functions to the $vm object.
726         https://bugs.webkit.org/show_bug.cgi?id=179980
727
728         Reviewed by Yusuke Suzuki.
729
730         Always set --useDollarVM=true for jsc runs of benchmarks.  This is needed because
731         some microbenchmarks relies on createBuiltin().
732
733         Also set --useDollarVM=true for runExceptionFuzz and runExecutableAllocationFuzz.
734
735         * Scripts/run-jsc-benchmarks:
736         * Scripts/run-jsc-stress-tests:
737
738 2017-11-23  Darin Adler  <darin@apple.com>
739
740         Reduce WTF::String operations that do unnecessary Unicode operations instead of ASCII
741         https://bugs.webkit.org/show_bug.cgi?id=179907
742
743         Reviewed by Sam Weinig.
744
745         * DumpRenderTree/mac/DumpRenderTree.mm:
746         (changeWindowScaleIfNeeded): Use containsIgnoringASCIICase.
747         * WebKitTestRunner/TestInvocation.cpp:
748         (WTR::TestInvocation::urlContains const): Ditto.
749
750 2017-11-22  Ali Juma  <ajuma@chromium.org>
751
752         Implement VisualViewport API attributes
753         https://bugs.webkit.org/show_bug.cgi?id=179385
754
755         Reviewed by Frédéric Wang.
756
757         Enable the VisualViewportAPI in layout tests.
758
759         * DumpRenderTree/mac/DumpRenderTree.mm:
760         (enableExperimentalFeatures):
761         * DumpRenderTree/win/DumpRenderTree.cpp:
762         (enableExperimentalFeatures):
763
764 2017-11-22  Tim Horton <timothy_horton@apple.com> and Michael Catanzaro <mcatanzaro@igalia.com>
765
766         Remove build-webkit's notion of feature flags having a default value
767         https://bugs.webkit.org/show_bug.cgi?id=177338
768
769         Reviewed by Carlos Alberto Lopez Perez.
770
771         Delegate feature flag default values to the build system.
772         (FeatureDefines.xcconfig for Xcode, WebKitFeatures.cmake and Options*.cmake for CMake, and FeatureDefines.h for everyone)
773
774         * BuildSlaveSupport/build.webkit.org-config/config.json:
775         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
776         (Factory.__init__):
777         Update GTK and WPE buildbot configuration to use --no-experimental-features on old stable
778         bots instead of --default-cmake-features.
779  
780         * Scripts/build-webkit:
781         (cMakeArgsFromFeatures): Deleted.
782         Default feature values to 'undef'.
783         Remove the --default-cmake-features argument; it is now the default.
784         Add --no-experimental-features to replace it.
785         Stop printing the default feature flag value in the help.
786         Avoid propagating undefined values to the build system;
787         only mention flags that are overridden on the command line.
788
789         This has the nice side effect of using the default CMake features
790         for CMake builds, but still allowing toggling of them using the
791         prettier --FEATURE and --no-FEATURE arguments.
792
793         * Scripts/webkitdirs.pm:
794         (generateBuildSystemFromCMakeProject):
795         No longer need to suppress CMake warnings about unused arguments.
796
797         * Scripts/webkitperl/FeatureList.pm:
798         Remove the default values from the feature list.
799
800 2017-11-22  Mark Lam  <mark.lam@apple.com>
801
802         [Re-landing] Pass --useDollarVM=true to all JSC tests.
803         https://bugs.webkit.org/show_bug.cgi?id=179647
804
805         Reviewed by Saam Barati.
806
807         * Scripts/run-jsc-stress-tests:
808
809 2017-11-22  Commit Queue  <commit-queue@webkit.org>
810
811         Unreviewed, rolling out r225093.
812         https://bugs.webkit.org/show_bug.cgi?id=179938
813
814         Compilation failed on WinCairo 64-bit Release (Requested by
815         fredw on #webkit).
816
817         Reverted changeset:
818
819         "Implement VisualViewport API attributes"
820         https://bugs.webkit.org/show_bug.cgi?id=179385
821         https://trac.webkit.org/changeset/225093
822
823 2017-11-21  Ali Juma  <ajuma@chromium.org>
824
825         Implement VisualViewport API attributes
826         https://bugs.webkit.org/show_bug.cgi?id=179385
827
828         Reviewed by Frédéric Wang.
829
830         Enable the VisualViewportAPI in layout tests.
831
832         * DumpRenderTree/mac/DumpRenderTree.mm:
833         (enableExperimentalFeatures):
834         * DumpRenderTree/win/DumpRenderTree.cpp:
835         (enableExperimentalFeatures):
836
837 2017-11-21  Carlos Garcia Campos  <cgarcia@igalia.com>
838
839         [WPE] Run unit tests in the bots
840         https://bugs.webkit.org/show_bug.cgi?id=179910
841
842         Reviewed by Michael Catanzaro.
843
844         Add a step to run unit tests in WPE test bots.
845
846         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
847         (RunGLibAPITests):
848         (RunGtkAPITests):
849         (RunWPEAPITests):
850         (TestFactory.__init__):
851         (RunGtkAPITests.start): Deleted.
852         (RunGtkAPITests.commandComplete): Deleted.
853         (RunGtkAPITests.evaluateCommand): Deleted.
854         (RunGtkAPITests.getText): Deleted.
855         (RunGtkAPITests.getText2): Deleted.
856         * wpe/jhbuild.modules: Upgrade WPEBackend-mesa to fix crashes when running unit tests.
857
858 2017-11-21  Tomas Popela  <tpopela@redhat.com>
859
860         Fix WebKitGTK+ compilation
861
862         Reviewed by Carlos Garcia Campos.
863
864         File "/builddir/build/BUILD/webkitgtk-2.19.2/Tools/gtk/generate-gtkdoc", line 31, in <module>
865         import common
866         ImportError: No module named common
867
868         * gtk/manifest.txt.in:
869         Add Tools/glib/common.py to the tarball.
870
871 2017-11-21  Ms2ger  <Ms2ger@igalia.com>
872
873         [GTK] Avoid warning in jhbuildrc.
874         https://bugs.webkit.org/show_bug.cgi?id=179913
875
876         Reviewed by Carlos Garcia Campos.
877
878         Apparently this is not quite a real python file; this declaration causes
879         warnings like
880           I: unknown keys defined in configuration file: top_level_directory
881         which break run-webkit-tests.
882
883         * gtk/jhbuildrc:
884
885 2017-11-21  Carlos Garcia Campos  <cgarcia@igalia.com>
886
887         Unreviewed. Fix WPE make distcheck.
888
889         * wpe/manifest.txt.in: Add generate-inspector-gresource-manifest.py to the tarball.
890
891 2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
892
893         Unreviewed. Fix GTK+ make distcheck.
894
895         * gtk/manifest.txt.in: Add generate-inspector-gresource-manifest.py to the tarball.
896
897 2017-11-20  Michael Catanzaro  <mcatanzaro@igalia.com>
898
899         [WPE] Disable ACCELERATED_2D_CANVAS in FeatureList.pm
900         https://bugs.webkit.org/show_bug.cgi?id=179889
901
902         Reviewed by Darin Adler.
903
904         * Scripts/webkitperl/FeatureList.pm:
905
906 2017-11-20  Michael Catanzaro  <mcatanzaro@igalia.com>
907
908         Unreviewed, speculative attempt to fix run-gtk-tests after r225047
909         https://bugs.webkit.org/show_bug.cgi?id=173772
910
911         * jhbuild/jhbuildutils.py:
912         (enter_jhbuild_environment_if_available):
913
914 2017-11-20  Mario Sanchez Prada  <mario@endlessm.com>
915
916         [GTK] New API to add, retrieve and delete cookies via WebKitCookieManager
917         https://bugs.webkit.org/show_bug.cgi?id=177932
918
919         Reviewed by Carlos Garcia Campos.
920
921         Added new test cases to cover the newly added API for WebKitCookieManager:
922         webkit_cookie_manager_add_cookie, webkit_cookie_manager_get_cookies and
923         webkit_cookie_manager_delete_cookie.
924
925         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
926         (testCookieManagerAddCookie): Added.
927         (testCookieManagerGetCookies): Added.
928         (testCookieManagerDeleteCookie): Added.
929         (serverCallback): Small update to avoid hardcoding strings we reuse.
930         (beforeAll): Added the new test cases to the test suite.
931
932 2017-11-20  Stephan Szabo  <stephan.szabo@sony.com>
933
934         [Win] Update ruby JSC test writer for gigacage changes
935         https://bugs.webkit.org/show_bug.cgi?id=178757
936
937         Reviewed by Keith Miller.
938
939         * Scripts/webkitruby/jsc-stress-test-writer-ruby.rb:
940         Add additionalEnv to ruby test writer Plan
941
942 2017-11-20  Michael Catanzaro  <mcatanzaro@igalia.com>
943
944         Remove ENABLE_ALLINONE_BUILD option
945         https://bugs.webkit.org/show_bug.cgi?id=179823
946
947         Reviewed by Darin Adler.
948
949         * Scripts/webkitperl/FeatureList.pm:
950
951 2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
952
953         Unreviewed. Fix WPE build after r225047.
954
955         Remove changes from an old patch committed by mistake in r225047.
956
957         * WebKitTestRunner/PlatformWebView.h:
958         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
959         (WTR::PlatformWebView::windowSnapshotImage):
960
961 2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
962
963         [WPE] Add run-wpe-tests script to run WPE glib API tests
964         https://bugs.webkit.org/show_bug.cgi?id=173772
965
966         Reviewed by Michael Catanzaro.
967
968         Move common code from run-gtk-tests to api_test_runner.py, to be shared by both run-gtk-tests and un-wpe-tests.
969
970         * Scripts/run-gtk-tests:
971         (GtkTestRunner):
972         (GtkTestRunner.__init__):
973         (GtkTestRunner._start_accessibility_daemons):
974         (GtkTestRunner._setup_testing_environment):
975         (GtkTestRunner._tear_down_testing_environment):
976         (GtkTestRunner.is_glib_test):
977         (GtkTestRunner.is_google_test):
978         * Scripts/run-wpe-tests: Added.
979         (WPETestRunner):
980         (WPETestRunner.__init__):
981         (WPETestRunner.is_glib_test):
982         (WPETestRunner.is_google_test):
983         * Scripts/webkitpy/port/headlessdriver.py: Added.
984         (HeadlessDriver):
985         (HeadlessDriver._setup_environ_for_test):
986         (HeadlessDriver._start):
987         * Scripts/webkitpy/port/headlessdriver_unittest.py: Added.
988         (HeadlessDriverTest):
989         (HeadlessDriverTest.make_driver):
990         (HeadlessDriverTest.make_environment):
991         (HeadlessDriverTest.test_environment_needed_variables):
992         (HeadlessDriverTest.test_environment_forbidden_variables):
993         * Scripts/webkitpy/port/wpe.py:
994         (WPEPort._driver_class):
995         * WebKitTestRunner/PlatformWebView.h:
996         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
997         (WTR::PlatformWebView::windowSnapshotImage):
998         * glib/api_test_runner.py: Copied from Tools/Scripts/run-gtk-tests.
999         (SkippedTest):
1000         (SkippedTest.__init__):
1001         (SkippedTest.__str__):
1002         (SkippedTest.skip_entire_suite):
1003         (SkippedTest.skip_for_build_type):
1004         (TestTimeout):
1005         (TestRunner):
1006         (TestRunner.__init__):
1007         (TestRunner._test_programs_base_dir):
1008         (TestRunner._get_tests_from_dir):
1009         (TestRunner._get_tests):
1010         (TestRunner._create_driver):
1011         (TestRunner._setup_testing_environment):
1012         (TestRunner._tear_down_testing_environment):
1013         (TestRunner._test_cases_to_skip):
1014         (TestRunner._should_run_test_program):
1015         (TestRunner._kill_process):
1016         (TestRunner._start_timeout):
1017         (TestRunner._start_timeout._alarm_handler):
1018         (TestRunner._stop_timeout):
1019         (TestRunner._waitpid):
1020         (TestRunner._run_test_glib):
1021         (TestRunner._run_test_glib.parse_line):
1022         (TestRunner._run_test_glib.parse_line.set_test_result):
1023         (TestRunner._get_tests_from_google_test_suite):
1024         (TestRunner._run_google_test):
1025         (TestRunner._run_google_test_suite):
1026         (TestRunner.is_glib_test):
1027         (TestRunner.is_google_test):
1028         (TestRunner._run_test):
1029         (TestRunner.run_tests):
1030         (add_options):
1031         * glib/common.py: Renamed from Tools/gtk/common.py.
1032         (get_build_path.is_valid_build_directory):
1033         * gtk/generate-gtkdoc:
1034         * gtk/jhbuildrc:
1035         * gtk/ycm_extra_conf.py:
1036
1037 2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1038
1039         [WPE] Build C API tests
1040         https://bugs.webkit.org/show_bug.cgi?id=179817
1041
1042         Reviewed by Michael Catanzaro.
1043
1044         * TestWebKitAPI/CMakeLists.txt:
1045         * TestWebKitAPI/PlatformGTK.cmake:
1046         * TestWebKitAPI/PlatformWPE.cmake:
1047         * TestWebKitAPI/PlatformWebView.h:
1048         * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp:
1049         (TestWebKitAPI::Util::URLForNonExistentResource):
1050         (TestWebKitAPI::Util::isKeyDown):
1051         * TestWebKitAPI/wpe/PlatformWebViewWPE.cpp: Added.
1052         (TestWebKitAPI::PlatformWebView::PlatformWebView):
1053         (TestWebKitAPI::PlatformWebView::~PlatformWebView):
1054         (TestWebKitAPI::PlatformWebView::initialize):
1055         (TestWebKitAPI::PlatformWebView::page const):
1056         (TestWebKitAPI::PlatformWebView::resizeTo):
1057         (TestWebKitAPI::PlatformWebView::simulateSpacebarKeyPress):
1058         (TestWebKitAPI::PlatformWebView::simulateAltKeyPress):
1059         (TestWebKitAPI::PlatformWebView::simulateRightClick):
1060         (TestWebKitAPI::PlatformWebView::simulateMouseMove):
1061
1062 2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1063
1064         [WPE] Add env var WPE_USE_HEADLESS_VIEW_BACKEND
1065         https://bugs.webkit.org/show_bug.cgi?id=173770
1066
1067         Reviewed by Michael Catanzaro.
1068
1069         Move HeadlessViewBackend implementation to a common place and build it as a private static library to be used by
1070         WTR, GLib API tests and eventually C API tests too. WTR uses the HeadlessViewBackend unconditionally, but GLib
1071         API tests use it only when WPE_USE_HEADLESS_VIEW_BACKEND environment variable is present and not "0".
1072
1073         * CMakeLists.txt: Include wpe/HeadlessViewBackend directory for developer builds.
1074         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
1075         (testAutomationSessionRequestSession):
1076         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
1077         (testCookieManagerEphemeral):
1078         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
1079         (testPrivateBrowsing):
1080         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
1081         (testWebContextProxySettings):
1082         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1083         (testWebViewWebContext):
1084         (testWebViewEphemeral):
1085         * TestWebKitAPI/glib/PlatformWPE.cmake:
1086         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1087         (Test::createWebViewBackend):
1088         (Test::createWebView):
1089         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1090         (WebViewTest::initializeWebView):
1091         * WebKitTestRunner/PlatformWPE.cmake:
1092         * wpe/HeadlessViewBackend/CMakeLists.txt: Added.
1093         * wpe/HeadlessViewBackend/HeadlessViewBackend.cpp: Renamed from Tools/WebKitTestRunner/wpe/HeadlessViewBackend.cpp.
1094         (HeadlessViewBackend::HeadlessViewBackend):
1095         * wpe/HeadlessViewBackend/HeadlessViewBackend.h: Renamed from Tools/WebKitTestRunner/wpe/HeadlessViewBackend.h.
1096
1097 2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1098
1099         [WPE] webkit_web_view_new() should enable specifying wpe_view_backend object
1100         https://bugs.webkit.org/show_bug.cgi?id=178655
1101
1102         Reviewed by Michael Catanzaro.
1103
1104         Update unit tests to create web views using helper methods that have a different implementation for GTK and
1105         WPE. Also add a new test case to check the new API to create a WebKitWebView with a WPE backend. Use
1106         WKViewCreate in WTR and fix a memory leak in HeadlessViewBackend.
1107
1108         * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
1109         (testAutomationSessionRequestSession):
1110         * TestWebKitAPI/Tests/WebKitGLib/TestBackForwardList.cpp:
1111         (testWebKitWebViewSessionState):
1112         (testWebKitWebViewSessionStateWithFormData):
1113         (testWebKitWebViewNavigationAfterSessionRestore):
1114         * TestWebKitAPI/Tests/WebKitGLib/TestMultiprocess.cpp:
1115         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
1116         (testWebResourceGetDataError):
1117         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
1118         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitUserContentManager.cpp:
1119         (testWebViewNewWithUserContentManager):
1120         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
1121         (testWebContextEphemeral):
1122         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
1123         (testWebViewWebContext):
1124         (testWebViewWebContextLifetime):
1125         (testWebViewWebBackend):
1126         (testWebViewSettings):
1127         (beforeAll):
1128         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
1129         (testWebsiteDataEphemeral):
1130         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
1131         (Test::createWebView):
1132         * WebKitTestRunner/wpe/HeadlessViewBackend.cpp:
1133         (HeadlessViewBackend::~HeadlessViewBackend):
1134         * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
1135         (WTR::PlatformWebView::PlatformWebView):
1136
1137 2017-11-20  Carlos Garcia Campos  <cgarcia@igalia.com>
1138
1139         [GTK][WPE] webkit_cookie_manager_delete_all_cookies doesn't delete the cookies if called before a web process is running
1140         https://bugs.webkit.org/show_bug.cgi?id=175265
1141
1142         Reviewed by Michael Catanzaro.
1143
1144         Add test case.
1145
1146         * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
1147         (testCookieManagerPersistentStorageDeleteAll):
1148         (serverCallback):
1149         (beforeAll):
1150
1151 2017-11-19  Tim Horton  <timothy_horton@apple.com>
1152
1153         Remove unused TOUCH_ICON_LOADING feature flag
1154         https://bugs.webkit.org/show_bug.cgi?id=179873
1155
1156         Reviewed by Simon Fraser.
1157
1158         * Scripts/webkitperl/FeatureList.pm:
1159         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1160
1161 2017-11-19  Tim Horton  <timothy_horton@apple.com>
1162
1163         Remove unused LEGACY_VENDOR_PREFIXES feature flag
1164         https://bugs.webkit.org/show_bug.cgi?id=179872
1165
1166         Reviewed by Darin Adler.
1167
1168         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1169
1170 2017-11-19  Yusuke Suzuki  <utatane.tea@gmail.com>
1171
1172         Unreviewed, rolling out r225016.
1173
1174         Break webkit-patch on Ubuntu and Debian Linux
1175
1176         Reverted changeset:
1177
1178         "webkitpy: Better name-version mapping (Part 1)"
1179         https://bugs.webkit.org/show_bug.cgi?id=179621
1180         https://trac.webkit.org/changeset/225016
1181
1182 2017-11-18  Jonathan Bedard  <jbedard@apple.com>
1183
1184         webkitpy: Better name-version mapping (Part 1)
1185         https://bugs.webkit.org/show_bug.cgi?id=179621
1186         <rdar://problem/35589585>
1187
1188         Reviewed by David Kilzer.
1189
1190         Mapping version numbers to version names should occur in a central location.
1191         This has a few advantages. First, it makes iterating through versions easier.
1192         Second, it allows for apple_additions to define an additional set of name
1193         mappings. Lastly, it will allow, in a future patch, for us to track version
1194         instead of version name, only mapping version to version name when required.
1195
1196         * Scripts/webkitpy/common/system/platforminfo.py:
1197         (PlatformInfo.__init__):
1198         (PlatformInfo._determine_os_name): Use VersionNameMap instead of custom functions
1199         mapping version to name.
1200         (PlatformInfo._determine_linux_version): Deleted.
1201         (PlatformInfo._determine_mac_version): Deleted.
1202         (PlatformInfo._determine_win_version): Deleted.
1203         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
1204         (TestPlatformInfo.test_os_name_and_wrappers):
1205         (TestPlatformInfo.test_os_version):
1206         (TestPlatformInfo.test_display_name):
1207         (TestPlatformInfo.test_total_bytes_memory):
1208         * Scripts/webkitpy/common/version.py:
1209         (Version.contained_in): Add partial version mapping.
1210         * Scripts/webkitpy/common/version_name_map.py: Added.
1211         (VersionNameMap): Holds a mapping of version name to version object.
1212         (VersionNameMap.map): Don't re-create VersionNameMap every time.
1213         (VersionNameMap.__init__): Initialize mapping, use platform to
1214         define the default system platform.
1215         (VersionNameMap._automap_to_major_version): Some operating systems, such
1216         as iOS, have a naming scheme based on their major version and os name.
1217         Automatically generate such mappings.
1218         (VersionNameMap.to_name): Given a version object, platform name and
1219         table, find the closest matching version name.
1220         (VersionNameMap.strip_name_formatting): Remove spaces and extract the major version,
1221         if a version string is included in the name.
1222         (VersionNameMap.from_name): Return an os name and version given a version name.
1223         * Scripts/webkitpy/common/version_name_map_unittest.py: Added.
1224         (VersionMapTestCase):
1225         (VersionMapTestCase.test_default_system_platform):
1226         (VersionMapTestCase.test_mac_version_by_name):
1227         (VersionMapTestCase.test_ios_version_by_name):
1228         (VersionMapTestCase.test_mac_name_by_version):
1229         (VersionMapTestCase.test_ios_name_by_version):
1230         * Scripts/webkitpy/common/version_unittest.py:
1231         (VersionTestCase.test_contained_in):
1232
1233 2017-11-17  John Wilander  <wilander@apple.com>
1234
1235         Storage Access API: UI process should update network process about granted access
1236         https://bugs.webkit.org/show_bug.cgi?id=176943
1237         <rdar://problem/34440612>
1238
1239         Reviewed by Alex Christensen.
1240
1241         This adds the TestRunner function setStatisticsHasHadNonRecentUserInteraction()
1242         which enables testing of prevalent resources with user interaction outside the
1243         24 hour window.
1244
1245         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1246         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1247         (WTR::TestRunner::setStorageAccessAPIEnabled):
1248         (WTR::TestRunner::setStatisticsHasHadNonRecentUserInteraction):
1249         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1250         * WebKitTestRunner/TestController.cpp:
1251         (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction):
1252         * WebKitTestRunner/TestController.h:
1253         * WebKitTestRunner/TestInvocation.cpp:
1254         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1255         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1256         (WTR::initializeWebViewConfiguration):
1257         (WTR::TestController::setStatisticsHasHadNonRecentUserInteraction):
1258
1259 2017-11-17  Ryan Haddad  <ryanhaddad@apple.com>
1260
1261         Disable failing API tests for rdar://problem/35344202.
1262
1263         Unreviewed test gardening.
1264
1265         * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
1266
1267 2017-11-17  Joanmarie Diggs  <jdiggs@igalia.com>
1268
1269         AX: [ATK] Fix WKTR's methods for testing row header and column header presence and count
1270         https://bugs.webkit.org/show_bug.cgi?id=179837
1271
1272         Reviewed by Chris Fleizach.
1273
1274         Add support to rowHeaders() for tables. Return an empty array in rowHeaders()
1275         and columnHeaders() upon failure. Rename getRowHeaders() and getColumnHeaders()
1276         to getTableRowHeaders() and getTableColumnHeaders() respectively.
1277
1278         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
1279         (WTR::AccessibilityUIElement::rowHeaders const):
1280         (WTR::AccessibilityUIElement::columnHeaders const):
1281         (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
1282         (WTR::AccessibilityUIElement::attributesOfRowHeaders):
1283
1284 2017-11-16  Don Olmstead  <don.olmstead@sony.com>
1285
1286         [WinCairo] Update WinCairoRequirements
1287         https://bugs.webkit.org/show_bug.cgi?id=179790
1288
1289         Reviewed by Alex Christensen.
1290
1291         * TestWebKitAPI/PlatformWin.cmake:
1292
1293 2017-11-16  Daniel Bates  <dabates@apple.com>
1294
1295         Add feature define for alternative presentation button element
1296         https://bugs.webkit.org/show_bug.cgi?id=179692
1297         Part of <rdar://problem/34917108>
1298
1299         Reviewed by Andy Estes.
1300
1301         Only enabled on Cocoa platforms by default.
1302
1303         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1304
1305 2017-11-16  Per Arne Vollan  <pvollan@apple.com>
1306
1307         Win EWS bots should reboot after N webkit-patch iterations.
1308         https://bugs.webkit.org/show_bug.cgi?id=177970
1309
1310         Reviewed by Brent Fulgham.
1311
1312         * EWSTools/start-queue-win.sh:
1313
1314 2017-11-15  Carlos Garcia Campos  <cgarcia@igalia.com>
1315
1316         [WPE] Add initial support for WebDriver
1317         https://bugs.webkit.org/show_bug.cgi?id=179727
1318
1319         Reviewed by Michael Catanzaro.
1320
1321         Make it possible to run WebDriver tests with WPE.
1322
1323         * Scripts/run-webdriver-tests: Add --wpe alias for --platform=wpe.
1324         * Scripts/webkitpy/port/wpe.py:
1325         (WPEPort.__init__): Initialize _display_server from options.
1326         (WPEPort._driver_class): Use WaylandDriver when wayland is passed as display server option.
1327         * Scripts/webkitpy/webdriver_tests/webdriver_driver.py:
1328         (WebDriver.browser_env): Add virtual method to get the environment that should be used.
1329         * Scripts/webkitpy/webdriver_tests/webdriver_driver_wpe.py: Copied from Tools/Scripts/webkitpy/webdriver_tests/webdriver_driver.py.
1330         (WebDriverWPE):
1331         (WebDriverWPE.__init__):
1332         (WebDriverWPE.binary_path):
1333         (WebDriverWPE.browser_name):
1334         (WebDriverWPE.capabilities):
1335         (WebDriverWPE.browser_env):
1336         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py:
1337         (WebDriverW3CExecutor.__init__): Update the environment with the one provided by the driver.
1338         * wpe/jhbuild.modules: Upgrade dyz to newer version that supports automation.
1339
1340 2017-11-15  Alex Christensen  <achristensen@webkit.org>
1341
1342         WebViews scheduled in custom run loop modes should be able to do more than 50ms of work at a time
1343         https://bugs.webkit.org/show_bug.cgi?id=179742
1344         <rdar://problem/35519421>
1345
1346         Reviewed by Jer Noble.
1347
1348         * TestWebKitAPI/Tests/mac/WebViewScheduleInRunLoop.mm:
1349         (-[ScheduleInRunLoopDelegate webView:didFinishLoadForFrame:]):
1350         (TestWebKitAPI::TEST):
1351         Load more than one scheduled WebView to test work that typically takes more than 50 ms.
1352
1353 2017-11-15  Ryan Haddad  <ryanhaddad@apple.com>
1354
1355         Unreviewed, rolling out r223781.
1356
1357         The test is now returning false, so the FIXME is not needed
1358         anymore.
1359
1360         Reverted changeset:
1361
1362         "WebsiteDataStoreCustomPaths.mm is failing after r223718"
1363         https://bugs.webkit.org/show_bug.cgi?id=178596
1364         https://trac.webkit.org/changeset/223781
1365
1366 2017-11-15  Ryan Haddad  <ryanhaddad@apple.com>
1367
1368         Unreviewed, rolling out r224863.
1369
1370         Introduced LayoutTest crashes on iOS Simulator.
1371
1372         Reverted changeset:
1373
1374         "Move JSONValues to WTF and convert uses of InspectorValues.h
1375         to JSONValues.h"
1376         https://bugs.webkit.org/show_bug.cgi?id=173793
1377         https://trac.webkit.org/changeset/224863
1378
1379 2017-11-15  Michael Catanzaro  <mcatanzaro@igalia.com>
1380
1381         Remove GTK web inspector images
1382         https://bugs.webkit.org/show_bug.cgi?id=179716
1383
1384         Reviewed by Carlos Garcia Campos.
1385
1386         * Scripts/webkitdirs.pm:
1387         (shouldRemoveCMakeCache):
1388         * glib/generate-inspector-gresource-manifest.py:
1389         (get_filenames.should_ignore_resource):
1390         * gtk/manifest.txt.in:
1391         * wpe/manifest.txt.in:
1392
1393 2017-11-15  Jonathan Bedard  <jbedard@apple.com>
1394
1395         REGRESSION(r221877): 'future' handled incorrectly for mac
1396         https://bugs.webkit.org/show_bug.cgi?id=179711
1397         <rdar://problem/35546604>
1398
1399         Reviewed by Alex Christensen.
1400
1401         * Scripts/webkitpy/port/mac.py:
1402         (MacPort.default_baseline_search_path): Use platform/mac-<version> instead of
1403         platform/<version> as the baseline search path.
1404
1405 2017-11-14  Nan Wang  <n_wang@apple.com>
1406
1407         AX: AOM: Implement AccessibleNode class and support label and role attributes
1408         https://bugs.webkit.org/show_bug.cgi?id=179494
1409
1410         Reviewed by Ryosuke Niwa.
1411
1412         * DumpRenderTree/mac/DumpRenderTree.mm:
1413         (enableExperimentalFeatures):
1414         * WebKitTestRunner/TestController.cpp:
1415         (WTR::TestController::resetPreferencesToConsistentValues):
1416
1417 2017-11-14  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1418
1419         [Windows] Fix error while launching subprocess on Windows Python
1420         https://bugs.webkit.org/show_bug.cgi?id=179637
1421
1422         Reviewed by Alex Christensen.
1423
1424         To pass environment variables to subprocess.popen on Windows Python 2,
1425         the dict values must be str not unicode.
1426         Also is_native_win() method is added to port.
1427
1428         * Scripts/webkitpy/common/system/platforminfo.py:
1429         (PlatformInfo.is_native_win):
1430         * Scripts/webkitpy/common/system/platforminfo_mock.py:
1431         (MockPlatformInfo.is_native_win):
1432         * Scripts/webkitpy/common/system/platforminfo_unittest.py:
1433         (TestPlatformInfo.test_os_name_and_wrappers):
1434         * Scripts/webkitpy/port/server_process.py:
1435         (ServerProcess.__init__):
1436
1437 2017-11-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1438
1439         Move JSONValues to WTF and convert uses of InspectorValues.h to JSONValues.h
1440         https://bugs.webkit.org/show_bug.cgi?id=173793
1441
1442         Reviewed by Brian Burg.
1443
1444         * TestWebKitAPI/CMakeLists.txt:
1445         * TestWebKitAPI/PlatformGTK.cmake:
1446         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1447         * TestWebKitAPI/Tests/WTF/JSONValue.cpp: Renamed from Tools/TestWebKitAPI/Tests/JavaScriptCore/InspectorValue.cpp.
1448         (TestWebKitAPI::TEST):
1449
1450 2017-11-14  Jonathan Bedard  <jbedard@apple.com>
1451
1452         webkitpy: Use more verbose version info from simctl
1453         https://bugs.webkit.org/show_bug.cgi?id=179687
1454         <rdar://problem/35539392>
1455
1456         Reviewed by Tim Horton.
1457
1458         * Scripts/webkitpy/xcode/simulator.py:
1459         (Simulator): Address FIXME, use more verbose version.
1460         (Simulator._parse_runtimes): 'Internal' no longer stands along, check os for this
1461         string instead.
1462         * Scripts/webkitpy/xcode/simulator_unittest.py: Mock simctl output specifies iOS
1463         8.4.1, not iOS 8.4.
1464
1465 2017-11-14  Daniel Bates  <dabates@apple.com>
1466
1467         Update comment in FeatureDefines.xcconfig to reflect location of Visual Studio property files
1468         for feature defines
1469
1470         Following r195498 and r201917 the Visual Studio property files for feature defines have
1471         moved from directory WebKitLibraries/win/tools/vsprops to directory Source/cmake/tools/vsprops.
1472         Update the comment in FeatureDefines.xcconfig to reflect the new location and names of these
1473         files.
1474
1475         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1476
1477 2017-11-14  Jer Noble  <jer.noble@apple.com>
1478
1479         Enable Modern EME tests in DumpRenderTree
1480         https://bugs.webkit.org/show_bug.cgi?id=179544
1481
1482         Reviewed by Alex Christensen.
1483
1484         * DumpRenderTree/mac/DumpRenderTree.mm:
1485         (enableExperimentalFeatures):
1486
1487 2017-11-14  Commit Queue  <commit-queue@webkit.org>
1488
1489         Unreviewed, rolling out r224800.
1490         https://bugs.webkit.org/show_bug.cgi?id=179684
1491
1492         "Broke CLoop test mozilla/js1_6/Array/regress-304828.js"
1493         (Requested by mlam on #webkit).
1494
1495         Reverted changeset:
1496
1497         "Pass --useDollarVM=true to all JSC tests."
1498         https://bugs.webkit.org/show_bug.cgi?id=179647
1499         https://trac.webkit.org/changeset/224800
1500
1501 2017-11-14  Antti Koivisto  <antti@apple.com>
1502
1503         Enable display:contents by default
1504         https://bugs.webkit.org/show_bug.cgi?id=179655
1505
1506         Reviewed by Sam Weinig.
1507
1508         No need to enable this specifically for tests anymore.
1509
1510         * DumpRenderTree/mac/DumpRenderTree.mm:
1511         (enableExperimentalFeatures):
1512         * WebKitTestRunner/TestController.cpp:
1513         (WTR::TestController::resetPreferencesToConsistentValues):
1514
1515 2017-11-14  Tim Horton  <timothy_horton@apple.com>
1516
1517         Long pressing a phone number with spaces in it results in a link sheet instead of a data detectors sheet
1518         https://bugs.webkit.org/show_bug.cgi?id=179646
1519         <rdar://problem/35337288>
1520
1521         Reviewed by Simon Fraser.
1522
1523         * TestWebKitAPI/Tests/ios/ActionSheetTests.mm:
1524         (-[ActionSheetObserver _dataDetectionContextForWebView:]):
1525         (TestWebKitAPI::TEST):
1526         Add a test that ensures that a phone number with spaces in it
1527         invokes a data detectors sheet, not a normal link sheet.
1528
1529 2017-11-14  Emilio Cobos Álvarez  <emilio@crisal.io>
1530
1531         Add committer status for Emilio Cobos Álvarez.
1532         https://bugs.webkit.org/show_bug.cgi?id=179667
1533
1534         Unreviewed.
1535
1536         * Scripts/webkitpy/common/config/contributors.json:
1537
1538 2017-11-13  Mark Lam  <mark.lam@apple.com>
1539
1540         Pass --useDollarVM=true to all JSC tests.
1541         https://bugs.webkit.org/show_bug.cgi?id=179647
1542
1543         Reviewed by Saam Barati.
1544
1545         * Scripts/run-jsc-stress-tests:
1546
1547 2017-11-13  Simon Fraser  <simon.fraser@apple.com>
1548
1549         When navigating back to a page, compositing layers may not use accelerated drawing
1550         https://bugs.webkit.org/show_bug.cgi?id=178749
1551         rdar://problem/35158946
1552
1553         Reviewed by Dean Jackson.
1554
1555         Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
1556         and use it to set the state of the web view.
1557
1558         * DumpRenderTree/TestOptions.h:
1559         * DumpRenderTree/TestOptions.mm:
1560         (TestOptions::TestOptions):
1561         * DumpRenderTree/mac/DumpRenderTree.mm:
1562         (setWebPreferencesForTestOptions):
1563         * WebKitTestRunner/TestController.cpp:
1564         (WTR::TestController::resetPreferencesToConsistentValues):
1565         (WTR::updateTestOptionsFromTestHeader):
1566         * WebKitTestRunner/TestOptions.h:
1567         (WTR::TestOptions::hasSameInitializationOptions const):
1568
1569 2017-11-13  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1570
1571         [Windows] Fix Python error for subprocess.popen with close_fds
1572         https://bugs.webkit.org/show_bug.cgi?id=179553
1573
1574         Reviewed by Per Arne Vollan.
1575
1576         * Scripts/webkitpy/port/server_process.py:
1577         (ServerProcess._start):
1578         (ServerProcess._should_close_fds):
1579
1580 2017-11-13  Michael Catanzaro  <mcatanzaro@igalia.com>
1581
1582         [GTK] Require woff2 1.0.2 and drop direct brotli dependency
1583         https://bugs.webkit.org/show_bug.cgi?id=179630
1584
1585         Reviewed by Frédéric Wang.
1586
1587         * gtk/jhbuild.modules:
1588
1589 2017-11-08  Keith Miller  <keith_miller@apple.com>
1590
1591         Async iteration should only fetch the next method once and add feature flag
1592         https://bugs.webkit.org/show_bug.cgi?id=179451
1593
1594         Reviewed by Geoffrey Garen.
1595
1596         Add feature flag for Async iteration.
1597
1598         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1599
1600 2017-11-13  Gabriel Ivascu  <givascu@igalia.com>
1601
1602         [GTK] Automatically adjust font size when gtk-xft-dpi changes
1603         https://bugs.webkit.org/show_bug.cgi?id=142673
1604
1605         Reviewed by Michael Catanzaro.
1606
1607         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
1608         (testWebKitSettings):
1609
1610 2017-11-13  Jonathan Bedard  <jbedard@apple.com>
1611
1612         check-webkit-style cannot construct valid iOS version without an iOS SDK
1613         https://bugs.webkit.org/show_bug.cgi?id=179616
1614         <rdar://problem/35507018>
1615
1616         Reviewed by David Kilzer.
1617
1618         Instead of throwing an exception when we ask for an unavailable SDK on Mac,
1619         we should return None.
1620
1621         * Scripts/webkitpy/common/system/platforminfo.py:
1622         (PlatformInfo.xcode_sdk_version): Return 'None' version if the machine does not
1623         have the requested SDK.
1624
1625 2017-11-13  Keith Miller  <keith_miller@apple.com>
1626
1627         Uninitialized variable in sort-Xcode-project-file
1628         https://bugs.webkit.org/show_bug.cgi?id=179581
1629
1630         Reviewed by Simon Fraser.
1631
1632         Previously all the unified source files were named
1633         UnifiedSource<some-number>.mm. This was changed to
1634         UnifiedSource<some-number>-mm.mm to stop Xcode from creating
1635         hashes for mm and cpp unified source files with the same
1636         number. This broke the expectations in sort-Xcode-project-file.
1637
1638         * Scripts/sort-Xcode-project-file:
1639         (sortChildrenByFileName):
1640         (sortFilesByFileName):
1641
1642 2017-11-13  JF Bastien  <jfbastien@apple.com>
1643
1644         std::expected: fix and test move
1645         https://bugs.webkit.org/show_bug.cgi?id=179617
1646
1647         Reviewed by Alex Christensen.
1648
1649         Test that unique_ptr can be moved around properly, both has a
1650         value and an error (and in a <void, unique> specialization).
1651
1652         * TestWebKitAPI/Tests/WTF/Expected.cpp:
1653         (TestWebKitAPI::snowflake::reset):
1654         (TestWebKitAPI::snowflake::snowflake):
1655         (TestWebKitAPI::snowflake::~snowflake):
1656         (TestWebKitAPI::TEST):
1657
1658 2017-11-13  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1659
1660         [Windows] Make the port's normalize_test_name() method platform independent.
1661         https://bugs.webkit.org/show_bug.cgi?id=179572
1662
1663         Reviewed by Alexey Proskuryakov.
1664
1665         * Scripts/webkitpy/port/base.py:
1666         (Port.normalize_test_name):
1667
1668 2017-11-13  Wenson Hsieh  <wenson_hsieh@apple.com>
1669
1670         [Attachment Support] Implement SPI for clients to request data for a given attachment
1671         https://bugs.webkit.org/show_bug.cgi?id=179586
1672         <rdar://problem/35355720>
1673
1674         Reviewed by Darin Adler.
1675
1676         Augments existing API tests in WKAttachmentTests to additionally check that -requestData: yields the correct
1677         result when performing various editing operations. Also adds a new API test that cuts and pastes an attachment
1678         inserted using WKWebView attachment SPI, and expects that the data of the attachment can still be fetched using
1679         the _WKAttachment SPI, as well as another test that inserts an empty NSData and expects that requestData: also
1680         yields an empty NSData result.
1681
1682         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1683         (-[NSData shortDescription]):
1684         (-[_WKAttachment synchronouslyRequestData:]):
1685         (-[_WKAttachment expectRequestedDataToBe:]):
1686         (TestWebKitAPI::TEST):
1687
1688 2017-11-12  Gabriel Ivascu  <givascu@igalia.com>
1689
1690         [GTK] Add functionality to handle font sizes in points
1691         https://bugs.webkit.org/show_bug.cgi?id=179285
1692
1693         Reviewed by Carlos Garcia Campos and Michael Catanzaro.
1694
1695         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
1696         (testWebKitSettings):
1697
1698 2017-11-10  Fujii Hironori  <Hironori.Fujii@sony.com>
1699
1700         check-webkit-style: AttributeError: 'NoneType' object has no attribute 'major'
1701         https://bugs.webkit.org/show_bug.cgi?id=179522
1702
1703         Reviewed by Aakash Jain.
1704
1705         IOSSimulatorPort.ios_version should return a Version object.
1706
1707         * Scripts/webkitpy/port/ios_simulator.py:
1708         (IOSSimulatorPort.ios_version): Return a Version object.
1709
1710 2017-11-10  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1711
1712         [Win] The way to detect Windows 10 is wrong
1713         https://bugs.webkit.org/show_bug.cgi?id=179344
1714
1715         Reviewed by Alex Christensen.
1716
1717         * Scripts/webkitpy/common/system/platforminfo.py:
1718         (PlatformInfo._determine_win_version):
1719
1720 2017-11-10  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1721
1722         [WinCairo] LayoutTests doesn't read TextExpectations files correctly
1723         https://bugs.webkit.org/show_bug.cgi?id=179219
1724
1725         Reviewed by Alex Christensen.
1726
1727         * Scripts/webkitpy/layout_tests/models/test_expectations.py:
1728         (TestExpectationParser._parse_line):
1729         * Scripts/webkitpy/port/apple.py:
1730         (ApplePort.__init__):
1731         (ApplePort._allowed_port_names):
1732         (ApplePort):
1733         (ApplePort._future_port_name):
1734         (ApplePort._generate_all_test_configurations):
1735         * Scripts/webkitpy/port/win.py:
1736         (WinCairoPort.default_baseline_search_path):
1737         (WinCairoPort):
1738         (WinCairoPort._future_port_name):
1739
1740 2017-11-10  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1741
1742         [WinCairo] Treat 'future' version correctly
1743         https://bugs.webkit.org/show_bug.cgi?id=179345
1744
1745         Reviewed by Alex Christensen.
1746
1747         * Scripts/webkitpy/port/win.py:
1748         (WinCairoPort.default_baseline_search_path):
1749
1750 2017-11-10  Wenson Hsieh  <wenson_hsieh@apple.com>
1751
1752         Finish rolling out r224544
1753
1754         Rubber-stamped by Tim Horton.
1755
1756         Now that https://bugs.webkit.org/show_bug.cgi?id=179431 has been fixed, we can once again allow one of the API
1757         tests added in r224512 (WKAttachmentTests.AttachmentUpdatesWhenChangingFontStyles) to test toggling underline
1758         style with a selected attachment element.
1759
1760         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
1761         (TestWebKitAPI::TEST):
1762
1763 2017-11-10  Alex Christensen  <achristensen@webkit.org>
1764
1765         _WKThumbnailView initialization with WKWebView needs to call correct initWithFrame
1766         https://bugs.webkit.org/show_bug.cgi?id=179537
1767         <rdar://problem/35275219>
1768
1769         Reviewed by Darin Adler.
1770
1771         * TestWebKitAPI/Tests/WebKit/WKThumbnailView.mm:
1772         (-[WKThumbnailViewDelegate webView:didFinishNavigation:]):
1773         (TestWebKitAPI::TEST):
1774
1775 2017-11-10  Jonathan Bedard  <jbedard@apple.com>
1776
1777         webkitpy: Remove find_system_pid from port classes
1778         https://bugs.webkit.org/show_bug.cgi?id=179514
1779         <rdar://problem/35456900>
1780
1781         Reviewed by David Kilzer.
1782
1783         Removing dead code.
1784
1785         * Scripts/webkitpy/port/base.py:
1786         (Port.find_system_pid): Deleted.
1787         * Scripts/webkitpy/port/server_process.py:
1788         (ServerProcess._start):
1789         * Scripts/webkitpy/port/win.py:
1790         (WinPort.find_system_pid): Deleted.
1791
1792 2017-11-10  Aakash Jain  <aakash_jain@apple.com>
1793
1794         fix style failures in webkitpy: multiple statements on one line (semicolon)
1795         https://bugs.webkit.org/show_bug.cgi?id=179530
1796
1797         Reviewed by Alex Christensen.
1798
1799         * Scripts/webkitpy/common/net/buildbot/buildbot.py: Removed semicolon.
1800         * Scripts/webkitpy/layout_tests/controllers/test_result_writer.py: Ditto.
1801         * Scripts/webkitpy/tool/steps/runtests.py: Ditto.
1802
1803 2017-11-10  Aakash Jain  <aakash_jain@apple.com>
1804
1805         fix style failures in webkitpy: expected 2 blank lines found 1
1806         https://bugs.webkit.org/show_bug.cgi?id=179529
1807
1808         Reviewed by Alex Christensen.
1809
1810         * Scripts/webkitpy/benchmark_runner/run_benchmark.py: Added a blank line to follow style guidelines.
1811         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_chrome_driver.py: Ditto.
1812         * Scripts/webkitpy/common/system/platforminfo_mock.py: Ditto.
1813         * Scripts/webkitpy/common/version.py: Ditto.
1814         * Scripts/webkitpy/layout_tests/models/test_failures.py: Ditto.
1815         * Scripts/webkitpy/port/mac_unittest.py: Ditto.
1816         * Scripts/webkitpy/port/simulator_process.py: Ditto.
1817
1818 2017-11-10  Alex Christensen  <achristensen@webkit.org>
1819
1820         REGRESSION(r224267): WebViews scheduled with custom run loop modes don't load
1821         https://bugs.webkit.org/show_bug.cgi?id=179515
1822
1823         Reviewed by Andy Estes.
1824
1825         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1826         * TestWebKitAPI/Tests/mac/WebViewScheduleInRunLoop.mm: Added.
1827         (-[ScheduleInRunLoopDelegate webView:didFinishLoadForFrame:]):
1828         (TestWebKitAPI::TEST):
1829
1830 2017-11-10  Fujii Hironori  <Hironori.Fujii@sony.com>
1831
1832         [webkitpy] Fix PlatformInfo._win_version since r224657
1833         https://bugs.webkit.org/show_bug.cgi?id=179520
1834
1835         Reviewed by Aakash Jain.
1836
1837         There are two problems.
1838
1839         The return value of sys.getwindowsversion() doesn't match with
1840         Version.__init__ expects. Truncate the 4th and 5th of it.
1841
1842         _win_version_tuple_from_cmd was deleted in r224657. But, it is
1843         still needed for Cygwin Python.
1844
1845         * Scripts/webkitpy/common/system/platforminfo.py:
1846         (PlatformInfo._win_version): Return [0:3] of getwindowsversion().
1847         Call _win_version_from_cmd for Cygwin Python.
1848         (PlatformInfo._win_version_from_cmd): Restored.
1849
1850 2017-11-10  Guillaume Emont  <guijemont@igalia.com>
1851
1852         build-jsc: build testmasm for all platforms using cmake
1853         https://bugs.webkit.org/show_bug.cgi?id=179512
1854
1855         Reviewed by Michael Catanzaro.
1856
1857         * Scripts/build-jsc:
1858
1859 2017-11-09  Jonathan Bedard  <jbedard@apple.com>
1860
1861         webkitpy: Unify version parsing code
1862         https://bugs.webkit.org/show_bug.cgi?id=179426
1863         <rdar://problem/35415191>
1864
1865         Unreviewed fix to r224657.
1866
1867         * Scripts/webkitpy/common/version.py:
1868         (Version.__init__): Check if an object is iterable.
1869
1870 2017-11-09  Jonathan Bedard  <jbedard@apple.com>
1871
1872         webkitpy: Unify version parsing code
1873         https://bugs.webkit.org/show_bug.cgi?id=179426
1874         <rdar://problem/35415191>
1875
1876         Reviewed by David Kilzer.
1877
1878         webkitpy needs to parse version strings or version lists frequently. Rather than
1879         duplicate this code each time it's needed, unify it in a Version class.
1880
1881         * Scripts/webkitpy/common/system/platforminfo.py:
1882         (PlatformInfo.__init__): Convert mac version string to version object and
1883         use _win_version instead of _win_version_tuple.
1884         (PlatformInfo.xcode_sdk_version): Convert SDK version string to Version object
1885         before returning it.
1886         (PlatformInfo.xcode_version): Return Version object instead of version string.
1887         (PlatformInfo._determine_mac_version): Accept Version object instead of string,
1888         eliminate parsing.
1889         (PlatformInfo._determine_win_version): Accept Version object instead of tuple.
1890         (PlatformInfo._win_version): Return Version object instead of tuple, have Version
1891         object own version string parsing.
1892         (PlatformInfo._win_version_tuple): Renamed to _win_version().
1893         (PlatformInfo._win_version_tuple_from_cmd): Deleted.
1894         * Scripts/webkitpy/common/system/platforminfo_mock.py:
1895         (MockPlatformInfo.xcode_sdk_version): Return Version object instead of string.
1896         (MockPlatformInfo.xcode_version): Dittio.
1897         * Scripts/webkitpy/common/version.py: Added.
1898         (Version): Version object.
1899         (Version.__init__): Initialize the Version object with a string, integer,
1900         tuple of integers, list of integers or another Version object.
1901         (Version.__len__): Return 5 so that the Version object can be treated as
1902         a list or tuple.
1903         (Version.__getitem__): Get item in Version object by index or string.
1904         (Version.__setitem__): Set item in Version object by index or string.
1905         (Version.__str__): Convert version to printable string, omitting trailing 0's.
1906         (Version.__cmp__): Compare two version strings, major taking precedence over
1907         minor, minor taking precedence over build.
1908         * Scripts/webkitpy/common/version_unittest.py: Added.
1909         (VersionTestCase): Test behavior of Version object.
1910         * Scripts/webkitpy/port/ios.py:
1911         (IOSPort.default_baseline_search_path): ios_version now returns a Version object.
1912         (IOSPort._is_valid_ios_version): Deleted.
1913         (IOSPort.get_option): Deleted.
1914         * Scripts/webkitpy/port/ios_device.py:
1915         (IOSDevicePort.determine_full_port_name): Use Version object instead of owning parsing.
1916         (IOSDevicePort.ios_version): Return Version object instead of string.
1917         * Scripts/webkitpy/port/ios_simulator.py:
1918         (IOSSimulatorPort.simulator_runtime): Use from_version instead of from_version_string.
1919         (IOSSimulatorPort.ios_version): Return Version object instead of string.
1920         (IOSSimulatorPort.use_multiple_simulator_apps): Use Version object instead of string.
1921         * Scripts/webkitpy/xcode/simulator.py:
1922         (Runtime.from_version): Accept Version object instead of string.
1923         (Runtime.from_version_string): Replaced by from_version.
1924         (Runtime.__repr__): When printing, a runtime's version will be a Version object instead
1925         of a tuple.
1926         (Simulator._parse_runtimes): Use Version object instead of tuple.
1927         (Simulator._parse_devices): Ditto.
1928         * Scripts/webkitpy/xcode/simulator_unittest.py: Use Version object instead of tuples.
1929
1930 2017-11-09  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1931
1932         [WinCairo] Cannot find ImageDiff executable
1933         https://bugs.webkit.org/show_bug.cgi?id=179508
1934
1935         Reviewed by Per Arne Vollan.
1936
1937         * Scripts/webkitpy/port/win.py:
1938         (WinPort.is_cygwin):
1939         (WinPort._path_to_image_diff):
1940         (WinPort.find_system_pid):
1941
1942 2017-11-09  Fujii Hironori  <Hironori.Fujii@sony.com>
1943
1944         [WinCairo EWS] svn-apply: 'cp' is not recognized as an internal or external command
1945         https://bugs.webkit.org/show_bug.cgi?id=179469
1946
1947         Reviewed by Per Arne Vollan.
1948
1949         WinCairo EWS bots haven't installed Cygwin.
1950
1951         * Scripts/svn-apply:
1952         (scmCopy): Use 'copy' function instead of 'cp' command.
1953
1954 2017-11-09  Carlos Alberto Lopez Perez  <clopez@igalia.com>
1955
1956         [WPE] Update dyz (WPE MiniBrowser)
1957         https://bugs.webkit.org/show_bug.cgi?id=179492
1958
1959         Reviewed by Michael Catanzaro.
1960
1961         Update it to the last version as of today.
1962         This version not longer uses the C API.
1963
1964         * wpe/jhbuild.modules:
1965
1966 2017-11-09  Christopher Reid  <chris.reid@sony.com>
1967
1968         Use enum classes within FileSystem
1969         https://bugs.webkit.org/show_bug.cgi?id=175172
1970
1971         Reviewed by Darin Adler.
1972
1973         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
1974         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
1975
1976 2017-11-09  Brent Fulgham  <bfulgham@apple.com>
1977
1978         Test fix after r224609
1979         https://bugs.webkit.org/show_bug.cgi?id=178565
1980         <rdar://problem/11115901>
1981
1982         Unreviewed test fix after r224609.
1983
1984         Correct two test cases that attempt to push local file URLs in violation of our
1985         same origin policies. The fix is to grant universal file access, as we do for similar
1986         LayoutTests.
1987
1988         * TestWebKitAPI/Tests/WebKit/EphemeralSessionPushStateNoHistoryCallback.cpp:
1989         (TestWebKitAPI::TEST):
1990         * TestWebKitAPI/Tests/WebKit/PrivateBrowsingPushStateNoHistoryCallback.cpp:
1991         (TestWebKitAPI::TEST):
1992
1993 2017-11-09  Michael Catanzaro  <mcatanzaro@igalia.com>
1994
1995         Unreviewed, remove Dan from the soup network watchlist
1996
1997         Per his request. It's not Hotel California; we should probably let him leave.
1998
1999         * Scripts/webkitpy/common/config/watchlist:
2000
2001 2017-11-08  Don Olmstead  <don.olmstead@sony.com>
2002
2003         Add Windows powershell EWS script
2004         https://bugs.webkit.org/show_bug.cgi?id=179453
2005
2006         Reviewed by Brent Fulgham.
2007
2008         * EWSTools/Start-Queue.ps1: Added.
2009
2010 2017-11-08  Jeremy Jones  <jeremyj@apple.com>
2011
2012         HTMLMediaElement should not use element fullscreen on iOS
2013         https://bugs.webkit.org/show_bug.cgi?id=179418
2014         rdar://problem/35409277
2015
2016         Reviewed by Eric Carlson.
2017
2018         Add ENABLE_VIDEO_USES_ELEMENT_FULLSCREEN to determine if HTMLMediaElement should use element full screen or not.
2019
2020         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2021
2022 2017-11-08  Tim Horton  <timothy_horton@apple.com>
2023
2024         [ios-simulator] API test WebKit.BundleParameters is a flaky failure
2025         https://bugs.webkit.org/show_bug.cgi?id=178363
2026         <rdar://problem/35043144>
2027
2028         Reviewed by Brent Fulgham.
2029
2030         * TestWebKitAPI/Tests/WTF/RefCounter.cpp:
2031         (TestWebKitAPI::TEST):
2032         Add a test.
2033
2034 2017-11-08  Wenson Hsieh  <wenson_hsieh@apple.com>
2035
2036         [Attachment Support] Implement delegate hooks for attachment element insertion and removal
2037         https://bugs.webkit.org/show_bug.cgi?id=179016
2038         <rdar://problem/35250890>
2039
2040         Reviewed by Tim Horton.
2041
2042         See WebCore/ChangeLog for more details.
2043
2044         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2045         (-[AttachmentUpdateObserver init]):
2046         (-[AttachmentUpdateObserver inserted]):
2047         (-[AttachmentUpdateObserver removed]):
2048         (-[AttachmentUpdateObserver _webView:didInsertAttachment:]):
2049         (-[AttachmentUpdateObserver _webView:didRemoveAttachment:]):
2050         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::ObserveAttachmentUpdatesForScope):
2051         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::~ObserveAttachmentUpdatesForScope):
2052         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::observer const):
2053         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
2054         (-[TestWKWebView _synchronouslyExecuteEditCommand:argument:]):
2055         (-[TestWKWebView expectUpdatesAfterCommand:withArgument:expectedRemovals:expectedInsertions:]):
2056         (TestWebKitAPI::TEST):
2057
2058 2017-11-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2059
2060         Web Inspector: use JSON::{Array,Object,Value} instead of Inspector{Array,Object,Value}
2061         https://bugs.webkit.org/show_bug.cgi?id=173619
2062
2063         Reviewed by Brian Burg.
2064
2065         Update InspectorValue unit tests to use JSON namespace and add more basic tests to cover all the API.
2066
2067         * TestWebKitAPI/PlatformGTK.cmake:
2068         * TestWebKitAPI/Tests/JavaScriptCore/InspectorValue.cpp:
2069         (TestWebKitAPI::TEST):
2070
2071 2017-11-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2072
2073         REGRESSION(r224179): [GTK] Several WebViewEditor tests are failing since r224179
2074         https://bugs.webkit.org/show_bug.cgi?id=179366
2075
2076         Reviewed by Michael Catanzaro.
2077
2078         Use always a toplevel window for WebViewEditor tests instead of creating and destroying one only to flush editor
2079         state.
2080
2081         * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
2082
2083 2017-11-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2084
2085         [GTK][WPE] Build inspector resources using copy-user-interface-resources.pl script
2086         https://bugs.webkit.org/show_bug.cgi?id=179317
2087
2088         Reviewed by Michael Catanzaro.
2089
2090         Move generate-inspector-gresource-manifest.py to glib dir to be shared by GTK+ and WPE ports and update it to
2091         receive an input directory instead of a list of patterns.
2092         File::Copy::Recursive is required by copy-user-interface-resources.pl, so make sure it's installed.
2093
2094         * glib/generate-inspector-gresource-manifest.py: Renamed from Tools/gtk/generate-inspector-gresource-manifest.py.
2095         (get_filenames):
2096         (get_filenames.should_ignore_resource):
2097         * gtk/install-dependencies:
2098         * wpe/generate-inspector-gresource-manifest.py: Removed.
2099         * wpe/install-dependencies:
2100
2101 2017-11-07  Don Olmstead  <don.olmstead@sony.com>
2102
2103         Fix webkitpy tests after rev 224549.
2104
2105         Unreviewed build fix.
2106
2107         * Scripts/webkitpy/common/config/ports.py:
2108         (WinCairoPort.run_webkit_tests_command):
2109         * Scripts/webkitpy/common/config/ports_unittest.py:
2110         (DeprecatedPortTest.test_wincairo_port):
2111
2112 2017-11-07  Aakash Jain  <aakash_jain@apple.com>
2113
2114         Enable webkitpy EWS bubbles
2115         https://bugs.webkit.org/show_bug.cgi?id=178539
2116
2117         Reviewed by Alexey Proskuryakov.
2118
2119         * QueueStatusServer/config/queues.py: Added webkitpy EWS.
2120
2121 2017-11-07  Don Olmstead  <don.olmstead@sony.com>
2122
2123         Add a WinCairo EWS queue
2124         https://bugs.webkit.org/show_bug.cgi?id=179390
2125
2126         Reviewed by Lucas Forschler.
2127
2128         * QueueStatusServer/config/queues.py:
2129         * QueueStatusServer/model/queues.py:
2130         * Scripts/webkitpy/common/config/ews.json:
2131         * Scripts/webkitpy/common/config/ports.py:
2132         * Scripts/webkitpy/common/config/ports_unittest.py:
2133         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
2134
2135 2017-11-07  Aakash Jain  <aakash_jain@apple.com>
2136
2137         fix check-webkit-style errors in webkitpy about not having two spaces before inline comment
2138         https://bugs.webkit.org/show_bug.cgi?id=171506
2139
2140         Reviewed by Alexey Proskuryakov.
2141
2142         * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
2143         (SCMTest._shared_test_reverse_diff): Added two spaces before inline comment.
2144         (test_create_patch_is_full_patch): Ditto.
2145         * Scripts/webkitpy/common/thread/messagepump.py:
2146         (MessagePump): Ditto.
2147         * Scripts/webkitpy/layout_tests/servers/http_server.py:
2148         (Lighttpd._prepare_config): Ditto.
2149         * Scripts/webkitpy/style/checker.py: Ditto.
2150         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
2151         (OrderOfIncludesTest.test_check_preprocessor_in_include_section): Ditto.
2152
2153 2017-11-07  Aakash Jain  <aakash_jain@apple.com>
2154
2155         Add support for webkitpy tests EWS
2156         https://bugs.webkit.org/show_bug.cgi?id=178480
2157
2158         Reviewed by Alexey Proskuryakov.
2159
2160         * Scripts/webkitpy/common/config/ews.json: Added webkitpy EWS.
2161         * Scripts/webkitpy/common/net/generictestresults.py: Renamed from Scripts/webkitpy/common/net/bindingstestresults.py.
2162         * Scripts/webkitpy/common/net/generictestresults_unittest.py: Renamed from Scripts/webkitpy/common/net/bindingstestresults_unittest.py.
2163         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
2164         (PatchAnalysisTask._test_patch): Do not retry webkitpy test since they are not flaky.
2165         * Scripts/webkitpy/tool/bot/bindingstestresultsreader.py: Updated import for BindingsTestResult.
2166         * Scripts/webkitpy/tool/bot/retrylogic_unittest.py: Ditto.
2167         * Scripts/webkitpy/tool/bot/webkitpytestresultsreader.py: Copied from Scripts/webkitpy/tool/bot/bindingstestresultsreader.py.
2168         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
2169         (AbstractEarlyWarningSystem.begin_work_queue): Added webkitpy test result reader.
2170         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: Updated unit-tests.
2171         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py: Run webkitpy EWS only for relevant changes.
2172         * Scripts/webkitpy/tool/steps/runtests.py:
2173         (RunTests.run): Run webkitpy tests when --group=webkitpy is passed.
2174         (RunTests._run_webkitpy_tests): Method to invoke webkitpy tests.
2175         * Scripts/webkitpy/tool/steps/steps_unittest.py:
2176         (test_runtests_webkitpy): Added unit-test.
2177
2178 2017-11-07  Commit Queue  <commit-queue@webkit.org>
2179
2180         Unreviewed, rolling out r224512 and r224521.
2181         https://bugs.webkit.org/show_bug.cgi?id=179388
2182
2183         An API test added with this change is failing an assertion on
2184         the bots. (Requested by ryanhaddad on #webkit).
2185
2186         Reverted changesets:
2187
2188         "[Attachment Support] Implement delegate hooks for attachment
2189         element insertion and removal"
2190         https://bugs.webkit.org/show_bug.cgi?id=179016
2191         https://trac.webkit.org/changeset/224512
2192
2193         "Remove stray logging from a newly added API test"
2194         https://trac.webkit.org/changeset/224521
2195
2196 2017-11-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2197
2198         Remove stray logging from a newly added API test
2199
2200         This was only for debugging purposes, and should have been removed before landing.
2201
2202         Rubber-stamped by Tim Horton.
2203
2204         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2205         (TestWebKitAPI::TEST):
2206
2207 2017-11-06  Jonathan Bedard  <jbedard@apple.com>
2208
2209         Only build ImageDiff for mac
2210         https://bugs.webkit.org/show_bug.cgi?id=179349
2211         <rdar://problem/35376237>
2212
2213         Reviewed by Tim Horton.
2214
2215         * ImageDiff/Makefile:
2216
2217 2017-11-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2218
2219         Unreviewed, fix the internal build after updating to a newer SDK
2220
2221         There shouldn't be any need to include and implement these method stubs anymore,
2222         even when building against the shipping iOS 11 SDK.
2223
2224         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
2225         (-[MockDropSession session]): Deleted.
2226
2227 2017-11-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2228
2229         [Attachment Support] Implement delegate hooks for attachment element insertion and removal
2230         https://bugs.webkit.org/show_bug.cgi?id=179016
2231         <rdar://problem/35250890>
2232
2233         Reviewed by Tim Horton.
2234
2235         Introduces new API tests to check that various editing operations will or won't result in the new attachment
2236         insertion and removal delegate hooks being fired. Additionally refactors an existing test to verify that
2237         attachments insertion and removal is observable by the UI delegate.
2238
2239         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
2240         (-[AttachmentUpdateObserver init]):
2241         (-[AttachmentUpdateObserver inserted]):
2242         (-[AttachmentUpdateObserver removed]):
2243         (-[AttachmentUpdateObserver _webView:didInsertAttachment:]):
2244         (-[AttachmentUpdateObserver _webView:didRemoveAttachment:]):
2245         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::ObserveAttachmentUpdatesForScope):
2246         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::~ObserveAttachmentUpdatesForScope):
2247         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
2248
2249         Implement a testing mechanism to temporarily bind a UI delegate to a given WKWebView and listen for inserted or
2250         removed attachments over the course of a particular scope. The API tests use this mechanism to check that the UI
2251         delegate hooks added in this patch are invoked with the right attachments when performing edit commands.
2252
2253         (-[TestWKWebView _synchronouslyExecuteEditCommand:argument:]):
2254         (-[TestWKWebView expectUpdatesAfterCommand:withArgument:expectedRemovals:expectedInsertions:]):
2255         (TestWebKitAPI::TEST):
2256
2257 2017-11-06  Christopher Reid  <chris.reid@sony.com>
2258
2259         Use enum classes within FileSystem
2260         https://bugs.webkit.org/show_bug.cgi?id=175172
2261
2262         Reviewed by Myles C. Maxfield.
2263
2264         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
2265         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
2266
2267 2017-11-06  Michael Catanzaro  <mcatanzaro@igalia.com>
2268
2269         [WPE] -Wsign-compare warning in EventSenderProxyWPE.cpp
2270         https://bugs.webkit.org/show_bug.cgi?id=179039
2271
2272         Reviewed by Žan Doberšek.
2273
2274         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2275         (WTR::EventSenderProxy::updateTouchPoint):
2276         (WTR::EventSenderProxy::releaseTouchPoint):
2277
2278 2017-11-06  Robin Morisset  <rmorisset@apple.com>
2279
2280         Add a third benchmark to TailBench
2281         https://bugs.webkit.org/show_bug.cgi?id=178815
2282
2283         Reviewed by Saam Barati.
2284
2285         Add a new benchmark to TailBench: a BF interpreter written in a weird kinda functional style
2286
2287         * Scripts/run-jsc-benchmarks:
2288
2289 2017-11-04  Michael Catanzaro  <mcatanzaro@igalia.com>
2290
2291         [GTK] Fix gtk-doc generation with gtk-doc master
2292         https://bugs.webkit.org/show_bug.cgi?id=179252
2293
2294         Reviewed by Carlos Garcia Campos.
2295
2296         gtkdoc-scangobj has changed to no longer use a shell when executing its subcommands. In
2297         particular, this means we can no longer rely on shell stuff in our run command that we use
2298         to run the scanner. We currently use the RUN envvar to set LD_LIBRARY_PATH, and the end
2299         result is gtkdoc-scangobj now attempts to execute our environment variable instead of the
2300         scanner itself. We can just set LD_LIBRARY_PATH directly, instead of using RUN, in order to
2301         make documentation generation work again.
2302
2303         * gtk/gtkdoc.py:
2304         (GTKDoc._run_gtkdoc_scangobj):
2305
2306 2017-11-04  Aishwarya Nirmal  <anirmal@apple.com>
2307
2308         [Touch Bar Web API] Add support for menuitem tag
2309         https://bugs.webkit.org/show_bug.cgi?id=179020
2310
2311         Reviewed by Ryosuke Niwa.
2312
2313         Defines flags for the menu item test so that the element is recognized
2314         only while its test is being run.
2315
2316         * DumpRenderTree/TestOptions.h:
2317         * DumpRenderTree/TestOptions.mm:
2318         (TestOptions::TestOptions):
2319         * DumpRenderTree/mac/DumpRenderTree.mm:
2320         (setWebPreferencesForTestOptions):
2321         * WebKitTestRunner/TestController.cpp:
2322         (WTR::TestController::resetPreferencesToConsistentValues):
2323         (WTR::updateTestOptionsFromTestHeader):
2324         * WebKitTestRunner/TestOptions.h:
2325         (WTR::TestOptions::hasSameInitializationOptions const):
2326
2327 2017-11-03  Andy Estes  <aestes@apple.com>
2328
2329         [iOS] Append the platform name to the product directory on all embedded platforms
2330         https://bugs.webkit.org/show_bug.cgi?id=179271
2331
2332         Reviewed by Joseph Pecoraro.
2333
2334         * Scripts/webkitdirs.pm:
2335         (determineConfigurationProductDir):
2336
2337 2017-11-03  Basuke Suzuki  <Basuke.Suzuki@sony.com>
2338
2339         [WinCairo] Add --wincairo option to run-webkit-tests
2340         https://bugs.webkit.org/show_bug.cgi?id=179217
2341
2342         Reviewed by Alex Christensen.
2343
2344         * Scripts/webkitpy/port/factory.py:
2345         (platform_options):
2346
2347 2017-11-03  Michael Catanzaro  <mcatanzaro@igalia.com>
2348
2349         [WPE][GTK] Avoid duplicating code for dist and distcheck targets
2350         https://bugs.webkit.org/show_bug.cgi?id=179154
2351
2352         Reviewed by Carlos Garcia Campos.
2353
2354         Move the script out of Tools/gtk because it is already used by WPE. Also, drop the .py
2355         prefix because it is executable.
2356
2357         * Scripts/make-dist: Renamed from Tools/gtk/make-dist.py.
2358
2359 2017-11-03  Jonathan Bedard  <jbedard@apple.com>
2360
2361         TestController platformAdjustContext should use provided WKContext for Mac
2362         https://bugs.webkit.org/show_bug.cgi?id=179124
2363         <rdar://problem/35295176>
2364
2365         Reviewed by Darin Adler.
2366
2367         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2368         (WTR::initializeWebViewConfiguration): Use the provided WKContext, since that is
2369         a WebProcessPool, instead of creating a second one.
2370
2371 2017-11-02  Christopher Reid  <chris.reid@sony.com>
2372
2373         Add a FileSystem namespace to FileSystem.cpp
2374         https://bugs.webkit.org/show_bug.cgi?id=179063
2375
2376         Reviewed by Darin Adler.
2377
2378         * DumpRenderTree/win/DumpRenderTree.cpp:
2379         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
2380         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
2381         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
2382         * TestWebKitAPI/Tests/WebCore/SharedBufferTest.cpp:
2383         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
2384         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
2385
2386 2017-11-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
2387
2388         [WPE][JHBuild] Update WPEBackend and WPEBackend-mesa
2389         https://bugs.webkit.org/show_bug.cgi?id=179169
2390
2391         Reviewed by Michael Catanzaro.
2392
2393         Update WPEBackend and WPEBackend-mesa to last master as of today.
2394
2395         * wpe/jhbuild.modules:
2396
2397 2017-11-02  Frederic Wang  <fwang@igalia.com>
2398
2399         Add references to bug 179167 in FIXME comments
2400         https://bugs.webkit.org/show_bug.cgi?id=179168
2401
2402         Reviewed by Daniel Bates.
2403
2404         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2405
2406 2017-11-01  Jeremy Jones  <jeremyj@apple.com>
2407
2408         Implement WKFullscreenWindowController for iOS.
2409         https://bugs.webkit.org/show_bug.cgi?id=178924
2410         rdar://problem/34697120
2411
2412         Reviewed by Simon Fraser.
2413
2414         Enable ENABLE_FULLSCREEN_API for iOS.
2415
2416         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2417
2418 2017-11-01  Simon Fraser  <simon.fraser@apple.com>
2419
2420         Misc display list and other cleanup
2421         https://bugs.webkit.org/show_bug.cgi?id=179150
2422
2423         Reviewed by Tim Horton.
2424
2425         Add system trace points for display list recording.
2426
2427         * Tracing/SystemTracePoints.plist:
2428
2429 2017-11-01  Stephan Szabo  <stephan.szabo@sony.com>
2430
2431         [Win] Detect Visual Studio 2017 location
2432         https://bugs.webkit.org/show_bug.cgi?id=175275
2433
2434         Reviewed by Yusuke Suzuki.
2435
2436         * Scripts/build-jsc:
2437         * Scripts/build-webkit:
2438         * Scripts/update-vswhere.py: Added.
2439         * Scripts/webkitdirs.pm:
2440         (requireModulesForVSWhere):
2441         (pickCurrentVisualStudioInstallation):
2442         (pickLegacyVisualStudioInstallation):
2443         (visualStudioInstallDir):
2444         (visualStudioInstallDirVSWhere):
2445         (visualStudioInstallDirLegacy):
2446         (visualStudioInstallDirFallback):
2447         (msBuildInstallDir):
2448         (visualStudioVersion):
2449         (visualStudioVersionFromInstallDir):
2450         (generateBuildSystemFromCMakeProject):
2451
2452 2017-11-01  Tim Horton  <timothy_horton@apple.com>
2453
2454         Fix the !USE(QUICKLOOK) build
2455         https://bugs.webkit.org/show_bug.cgi?id=179128
2456
2457         Reviewed by Wenson Hsieh.
2458
2459         * TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp:
2460
2461 2017-11-01  Frederic Wang  <fwang@igalia.com>
2462
2463         Make iOS Find UI reveal matches in scrollable elements
2464         https://bugs.webkit.org/show_bug.cgi?id=178789
2465
2466         Reviewed by Tim Horton.
2467
2468         This patch exposes WKWebView's findString function in order to test the fix for bug 178789.
2469
2470         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
2471         (WTR::UIScriptController::findString): Dummy implementation of findString.
2472         * DumpRenderTree/mac/UIScriptControllerMac.mm:
2473         (WTR::UIScriptController::findString): Ditto.
2474         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: Declare findString.
2475         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2476         (WTR::UIScriptController::findString): Dummy implementation of findString.
2477         * TestRunnerShared/UIScriptContext/UIScriptController.h: Declare findString.
2478         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
2479         (WTR::UIScriptController::findString): Implement findString by forwarding the call to the
2480         web view.
2481         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
2482         (WTR::UIScriptController::findString): Dummy implementation of findString.
2483
2484 2017-11-01  Alex Christensen  <achristensen@webkit.org>
2485
2486         Add a test for _WKInputDelegate.willSubmitFormValues
2487         https://bugs.webkit.org/show_bug.cgi?id=179086
2488
2489         Reviewed by Darin Adler.
2490
2491         Hidden input types are not included in this submission because FormSubmission::create ignores them
2492         because input.isTextField() returns false.  This is existing behavior that wasn't shown by a test.
2493         HTTPBodies are also not sent to WKURLSchemeHandlers.  This is existing behavior that wasn't shown by a test.
2494
2495         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2496         * TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm: Added.
2497         (-[FormSubmissionDelegate _webView:willSubmitFormValues:userObject:submissionHandler:]):
2498         (TEST):
2499
2500 2017-10-31  Ross Kirsling  <ross.kirsling@sony.com>
2501
2502         Web Inspector: Add Inspector menu items to Mac MiniBrowser
2503         https://bugs.webkit.org/show_bug.cgi?id=65218
2504
2505         Reviewed by Joseph Pecoraro.
2506
2507         Add Option-Command-I shortcut and corresponding Show/Close Web Inspector menu item to Mac MiniBrowser.
2508         Only works when browser window is focused, but at least WI can be opened without having to Inspect Element.
2509
2510         * MiniBrowser/mac/BrowserWindowController.h:
2511         * MiniBrowser/mac/BrowserWindowController.m:
2512         (-[BrowserWindowController showHideWebInspector:]):
2513         * MiniBrowser/mac/MainMenu.xib:
2514         * MiniBrowser/mac/WK1BrowserWindowController.m:
2515         (-[WK1BrowserWindowController validateMenuItem:]):
2516         (-[WK1BrowserWindowController showHideWebInspector:]):
2517         * MiniBrowser/mac/WK2BrowserWindowController.m:
2518         (-[WK2BrowserWindowController validateMenuItem:]):
2519         (-[WK2BrowserWindowController showHideWebInspector:]):
2520
2521 2017-10-31  Alex Christensen  <achristensen@webkit.org>
2522
2523         Use asynchronous ResourceHandleClient calls for WebKit1
2524         https://bugs.webkit.org/show_bug.cgi?id=160677
2525
2526         Reviewed by Brady Eidson.
2527
2528         * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:
2529         (TestWebKitAPI::TEST):
2530         The HTML being loaded contains an iframe, so testing if the main resource has loaded doesn't necessarily mean all subresources are loaded.
2531         Wait until they are loaded before continuing the test.  This is a test of editing commands once the page has loaded, not a test of loading.
2532
2533 2017-10-31  Commit Queue  <commit-queue@webkit.org>
2534
2535         Unreviewed, rolling out r224143.
2536         https://bugs.webkit.org/show_bug.cgi?id=179091
2537
2538         The patch requires non-standard perl modules in macOS and
2539         breaks AWFY (Requested by yusukesuzuki on #webkit).
2540
2541         Reverted changeset:
2542
2543         "[Win] Detect Visual Studio 2017 location"
2544         https://bugs.webkit.org/show_bug.cgi?id=175275
2545         https://trac.webkit.org/changeset/224143
2546
2547 2017-10-31  Tim Horton  <timothy_horton@apple.com>
2548
2549         Clean up some drag and drop feature flags
2550         https://bugs.webkit.org/show_bug.cgi?id=179082
2551
2552         Reviewed by Simon Fraser.
2553
2554         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2555         * TestWebKitAPI/ios/UIKitSPI.h:
2556
2557 2017-10-31  Tim Horton  <timothy_horton@apple.com>
2558
2559         Fix up some content filtering feature flags
2560         https://bugs.webkit.org/show_bug.cgi?id=179079
2561
2562         Reviewed by Simon Fraser.
2563
2564         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2565         * TestWebKitAPI/Tests/WebKitCocoa/ContentFilteringPlugIn.mm:
2566         (-[MockContentFilterEnabler initWithCoder:]):
2567         (-[MockContentFilterEnabler dealloc]):
2568
2569 2017-10-31  Youenn Fablet  <youenn@apple.com>
2570
2571         rwt should allow service worker to load localhost HTTPS resources with any certificate
2572         https://bugs.webkit.org/show_bug.cgi?id=179018
2573
2574         Reviewed by Chris Dumez.
2575
2576         * WebKitTestRunner/TestController.cpp:
2577         (WTR::TestController::resetStateToConsistentValues): allowing any SSL certificate for service workers.
2578
2579 2017-10-31  Wenson Hsieh  <wenson_hsieh@apple.com>
2580
2581         [Attachment Support] Implement WKWebView SPI for inserting attachment elements
2582         https://bugs.webkit.org/show_bug.cgi?id=179013
2583         <rdar://problem/35249668>
2584
2585         Reviewed by Tim Horton.
2586
2587         Adds a new API test suite to exercise attachment element insertion and manipulation.
2588
2589         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2590         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm: Added.
2591         (webViewForTestingAttachments):
2592         (testHTMLData):
2593         (testImageData):
2594         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:options:]):
2595         (-[TestWKWebView valueOfAttribute:forQuerySelector:]):
2596         (TestWebKitAPI::TEST):
2597
2598 2017-10-31  Alex Christensen  <achristensen@webkit.org>
2599
2600         Fix custom header field setting with reloads and asynchronous navigation action policy decisions
2601         https://bugs.webkit.org/show_bug.cgi?id=179064
2602
2603         Reviewed by Tim Horton.
2604
2605         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2606         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2607         (TEST):
2608
2609 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
2610
2611         WKBundlePageWillSendSubmitEventCallback is called with incorrect frame parameter
2612         https://bugs.webkit.org/show_bug.cgi?id=176719
2613
2614         Reviewed by Chris Dumez.
2615
2616         Test that WKBundlePageWillSendSubmitEventCallback is called with separate frame and
2617         sourceFrame parameters when the target frame of the form submission is not the source frame.
2618
2619         * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
2620         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
2621         * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent_Bundle.cpp:
2622         (TestWebKitAPI::willSendSubmitEvent):
2623         * TestWebKitAPI/Tests/WebKit/auto-submitting-form.html:
2624
2625 2017-10-30  Alex Christensen  <achristensen@webkit.org>
2626
2627         ASSERTION FAILED: internalValuesConsistent(m_url) in WebCore::URLParser::URLParser
2628         https://bugs.webkit.org/show_bug.cgi?id=178861
2629
2630         Reviewed by Tim Horton.
2631
2632         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
2633         (TestWebKitAPI::TEST_F):
2634
2635 2017-10-30  Commit Queue  <commit-queue@webkit.org>
2636
2637         Unreviewed, rolling out r224078.
2638         https://bugs.webkit.org/show_bug.cgi?id=179026
2639
2640         MotionMark regression (Requested by shallawa on #webkit).
2641
2642         Reverted changeset:
2643
2644         "When navigating back to a page, compositing layers may not
2645         use accelerated drawing"
2646         https://bugs.webkit.org/show_bug.cgi?id=178749
2647         https://trac.webkit.org/changeset/224078
2648
2649 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
2650
2651         [WPE] Fix build warnings
2652         https://bugs.webkit.org/show_bug.cgi?id=178899
2653
2654         Reviewed by Carlos Alberto Lopez Perez.
2655
2656         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
2657         (testContextMenuDownloadActions):
2658         (testBlobDownload):
2659         (beforeAll):
2660         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
2661         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
2662         (testWebViewJavaScriptDialogs):
2663         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
2664         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
2665         * WebKitTestRunner/PlatformWPE.cmake:
2666         * WebKitTestRunner/wpe/HeadlessViewBackend.cpp:
2667         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
2668         (WTR::threadDefaultContext): Deleted.
2669
2670 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
2671
2672         [WPE] Upstream or stop using cairo-egl-device-create-for-egl-surface.patch
2673         https://bugs.webkit.org/show_bug.cgi?id=178898
2674
2675         Reviewed by Žan Doberšek.
2676
2677         This patch seems to be unused.
2678
2679         * wpe/jhbuild.modules:
2680         * wpe/patches/cairo-egl-device-create-for-egl-surface.patch: Removed.
2681
2682 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
2683
2684         [WPE] Build more files under WebCore as unified sources and get rid of WebCorePlatformWPE build target
2685         https://bugs.webkit.org/show_bug.cgi?id=178964
2686
2687         Reviewed by Carlos Alberto Lopez Perez.
2688
2689         * TestWebKitAPI/PlatformWPE.cmake:
2690
2691 2017-10-12  Frederic Wang  <fwang@igalia.com>
2692
2693         Remove support for running safari on the iOS simulator with Xcode < 9.0
2694         https://bugs.webkit.org/show_bug.cgi?id=178203
2695
2696         Reviewed by Alexey Proskuryakov.
2697
2698         This is a follow-up of r223234. We no longer support iOS WebKit development for Xcode < 9.0
2699         and do not have any iOS simulator builders in our infrastructure. Hence we can remove the
2700         special case to calculate the iOS simulator applications path for these old versions.
2701
2702         * Scripts/webkitdirs.pm:
2703         (iosSimulatorApplicationsPath): Remove special case for XCode < 9.0
2704
2705 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
2706
2707         [WPE][GTK] Expose availability of certain editing commands in WebKitEditorState
2708         https://bugs.webkit.org/show_bug.cgi?id=168219
2709
2710         Reviewed by Ryosuke Niwa.
2711
2712         Test it.
2713
2714         * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
2715         (testWebViewEditorCutCopyPasteNonEditable):
2716         (testWebViewEditorCutCopyPasteEditable):
2717         (testWebViewEditorSelectAllNonEditable):
2718         (testWebViewEditorSelectAllEditable):
2719         (loadContentsAndTryToCutSelection):
2720         (testWebViewEditorNonEditable):
2721         (testWebViewEditorEditorStateTypingAttributes):
2722         (testWebViewEditorInsertImage):
2723         (testWebViewEditorCreateLink):
2724
2725 2017-10-28  Michael Catanzaro  <mcatanzaro@igalia.com>
2726
2727         [WPE] Build gst-plugins-base without pango support
2728         https://bugs.webkit.org/show_bug.cgi?id=178918
2729
2730         Reviewed by Carlos Garcia Campos.
2731
2732         We need to build gst-plugins-base without pango support for WPE. Let's use JHBuild
2733         conditions so we can make platform-specific changes in the shared GStreamer moduleset.
2734
2735         * gstreamer/jhbuild.modules:
2736         * gtk/jhbuildrc:
2737         * wpe/jhbuildrc:
2738
2739 2017-10-27  Stephan Szabo  <stephan.szabo@sony.com>
2740
2741         [Win] Detect Visual Studio 2017 location
2742         https://bugs.webkit.org/show_bug.cgi?id=175275
2743
2744         Reviewed by Per Arne Vollan.
2745
2746         * Scripts/build-jsc:
2747         * Scripts/build-webkit:
2748         * Scripts/update-vswhere.py: Added.
2749         * Scripts/webkitdirs.pm:
2750         (pickCurrentVisualStudioInstallation):
2751         (pickLegacyVisualStudioInstallation):
2752         (visualStudioInstallDir):
2753         (visualStudioInstallDirVSWhere):
2754         (visualStudioInstallDirLegacy):
2755         (visualStudioInstallDirFallback):
2756         (msBuildInstallDir):
2757         (visualStudioVersion):
2758         (visualStudioVersionFromInstallDir):
2759         (generateBuildSystemFromCMakeProject):
2760
2761 2017-10-27  Devin Rousso  <webkit@devinrousso.com>
2762
2763         Create watchlist for files related WebInspector Recording
2764         https://bugs.webkit.org/show_bug.cgi?id=178965
2765
2766         Reviewed by Joseph Pecoraro.
2767
2768         * Scripts/webkitpy/common/config/watchlist:
2769
2770 2017-10-27  Jonathan Bedard  <jbedard@apple.com>
2771
2772         Windows and WebViews are retained after re-configure
2773         https://bugs.webkit.org/show_bug.cgi?id=178902
2774         <rdar://problem/35211518>
2775
2776         Reviewed by Alexey Proskuryakov.
2777
2778         The test runner effectively leaks windows every time a test changes configuration.
2779         We give each test it's own AutoreleasePool to fix this problem.
2780
2781         * WebKitTestRunner/TestController.cpp:
2782         (WTR::TestController::runTest): Add an AutoRelease pool scoping a test run
2783         so that when a configuration changes, the old window and WebView are released.
2784
2785 2017-10-27  Eric Carlson  <eric.carlson@apple.com>
2786
2787         NowPlayingInfo should contain a unique identifier
2788         https://bugs.webkit.org/show_bug.cgi?id=178872
2789         <rdar://problem/34924012>
2790
2791         Unreviewed, fix a flakey test.
2792
2793         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
2794         (-[NowPlayingTestWebView hasActiveNowPlayingSession]): Update _lastUpdatedElapsedTime.
2795         (-[NowPlayingTestWebView _handleActiveNowPlayingSessionInfoResponse:title:duration:elapsedTime:]): Deleted.
2796
2797 2017-10-27  Fujii Hironori  <Hironori.Fujii@sony.com>
2798
2799         autoinstall can't download from http://pypi.python.org
2800         https://bugs.webkit.org/show_bug.cgi?id=178925
2801
2802         Reviewed by Ryosuke Niwa.
2803
2804         The web server pypi.python.org rejects non secure http.
2805
2806         * Scripts/webkitpy/thirdparty/__init__.py:
2807         (AutoinstallImportHook._install_mechanize): Use https instead of http.
2808         (AutoinstallImportHook._install_pep8): Ditto.
2809         (AutoinstallImportHook._install_pylint): Ditto.
2810         (AutoinstallImportHook._install_buildbot): Ditto.
2811         (AutoinstallImportHook._install_coverage): Ditto.
2812
2813 2017-10-26  Fujii Hironori  <Hironori.Fujii@sony.com>
2814
2815         [GTK][WPE] install-dependencies can't find libapache2-mod-php7.0 on Ubuntu 17.10
2816         https://bugs.webkit.org/show_bug.cgi?id=178854
2817
2818         Reviewed by Michael Catanzaro.
2819
2820         * Scripts/webkitpy/port/base.py:
2821         (Port._debian_php_version): Return "-php7.1" if libphp7.1.so found.
2822         (Port._is_debian_php_version_7): Deleted.
2823         * gtk/install-dependencies: Install libapache2-mod-php instead of libapache2-mod-php7.0.
2824         * wpe/install-dependencies: Ditto.
2825
2826 2017-10-25  Simon Fraser  <simon.fraser@apple.com>
2827
2828         When navigating back to a page, compositing layers may not use accelerated drawing
2829         https://bugs.webkit.org/show_bug.cgi?id=178749
2830         rdar://problem/35158946
2831
2832         Reviewed by Dean Jackson.
2833
2834         Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
2835         and use it to set the state of the web view.
2836
2837         * DumpRenderTree/TestOptions.h:
2838         * DumpRenderTree/TestOptions.mm:
2839         (TestOptions::TestOptions):
2840         * DumpRenderTree/mac/DumpRenderTree.mm:
2841         (setWebPreferencesForTestOptions):
2842         * WebKitTestRunner/TestController.cpp:
2843         (WTR::TestController::resetPreferencesToConsistentValues):
2844         (WTR::updateTestOptionsFromTestHeader):
2845         * WebKitTestRunner/TestOptions.h:
2846         (WTR::TestOptions::hasSameInitializationOptions const):
2847
2848 2017-10-26  Alex Christensen  <achristensen@webkit.org>
2849
2850         Move WKWebViewConfiguration validation to WKWebView construction
2851         https://bugs.webkit.org/show_bug.cgi?id=178840
2852
2853         Reviewed by Tim Horton.
2854
2855         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2856         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm: Added.
2857         (TEST):
2858
2859 2017-10-26  Myles C. Maxfield  <mmaxfield@apple.com>
2860
2861         Demonstrate a possible structure of the WebGPU API
2862         https://bugs.webkit.org/show_bug.cgi?id=178874
2863
2864         Reviewed by Dean Jackson.
2865
2866         Over the past few weeks, we've been putting together an example showing that a WebGPU API
2867         which has implicit barriers can work on all three low-level graphics APIs. We've implemented
2868         it on top of Vulkan first, because this is the API which has the strictest requirements and
2869         is most difficult to use.
2870
2871         With this API, this is a valid WebGPU snippet:
2872
2873         auto device = WebGPU::Device::create(hInstance, hWnd);
2874         auto& commandQueue = device->getCommandQueue();
2875         auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { }, { }, { }, nullptr);
2876         
2877         … later, in the draw() function …
2878         
2879         auto renderPass = commandQueue->createRenderPass(nullptr);
2880         renderPass->setRenderState(renderState);
2881         renderPass->setViewport(0, 0, width, height);
2882         renderPass->setScissorRect(0, 0, width, height);
2883         renderPass->draw(3);
2884         commandQueue->commitRenderPass(std::move(renderPass));
2885         commandQueue->present();
2886
2887         This snippet doesn’t hook up any vertex attributes or resources, which means the vertex
2888         shader has to say something like ({vec4(…), vec4(…), vec4(…)})[gl_VertexIndex]. It also
2889         passes in “nullptr” when creating the render pass, which means “render to the screen, rather
2890         than to a frame buffer.” You can also see that it doesn’t attach any resources to the draw
2891         call.
2892
2893         In Direct3D 12 and Vulkan, resources are bound in sets, rather than individually. For
2894         example, a set might contain two uniform buffers, a texture, and another uniform buffer. At
2895         draw time, you swap in whole sets of resources with a single call. A shader invocation can
2896         access a collection of sets. Because all shader resource accesses are indirected through
2897         these sets, the shape of these sets needs to be supplied at the time you compile the render
2898         state. Here is a snippet which bounds a single set which contains a uniform buffer and a
2899         texture:
2900
2901         auto buffer = device->getBuffer(bufferInitialContents);
2902         auto texture = device->getTexture(buffer width, height, WebGPU::PixelFormat::RGBA8, textureInitialContents);
2903         // One resource set, which holds a single uniform buffer object and a single texture
2904         auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { }, { }, { { WebGPU::ResourceType::UniformBufferObject, WebGPU::ResourceType::Texture } }, nullptr);
2905         
2906         … later, in the draw() function …
2907         
2908         auto renderPass = commandQueue->createRenderPass(nullptr);
2909         renderPass->setRenderState(renderState);
2910         renderPass->setResources(0, { WebGPU::UniformBufferObjectReference(buffer.get()), WebGPU::TextureReference(texture.get()) });
2911         …
2912         renderPass->draw(3);
2913         commandQueue->commitRenderPass(std::move(renderPass));
2914         commandQueue->present();
2915         
2916         The first argument to the setResources() call identifies which set to populate with the supplied resources.
2917
2918         One tenant of the low-level graphics APIs is that, if you’ve enabled double buffering (or
2919         triple buffering), the GPU is executing one frame at the same time you are recording the
2920         next frame. This often means that you need duplicate resources so the CPU and GPU don’t step
2921         on each other’s toes. However, platforms have platform-specific requirements about whether
2922         or not they can be double / triple buffered, and we don’t want to expose this to the Web for
2923         fear of badly-authored programs.
2924
2925         To solve this, resources are reference counted, and the return type of getBuffer() is an
2926         RAII type called BufferHolder which increments and decrements the reference count
2927         automatically. The reference count is also incremented and decremented when the GPU is using
2928         the resource in a Pass. When the reference count reaches 0, the resource isn’t destroyed;
2929         instead, it’s simply moved to a “free list” which getBuffer() may pull from. Therefore,
2930         applications don’t need to know whether the frame buffer is double buffered or triple
2931         buffered; they can just getBuffer() each frame, and the correct number of buffers will be
2932         created and recycled.
2933         
2934         {
2935             auto buffer = device->getBuffer(bufferSize); // These get recycled
2936             … populate the buffer …
2937             auto renderPass = commandQueue->createRenderPass(nullptr);
2938             renderPass->setRenderState(renderState);
2939             renderPass->setResources(0, { WebGPU::UniformBufferObjectReference(buffer.get()) });
2940             …
2941             renderPass->draw(…);
2942             commandQueue->commitRenderPass(std::move(renderPass));
2943         }
2944         commandQueue->present();
2945
2946         In Direct3D and Vulkan, vertex buffers and index buffers are not part of the resource sets
2947         mentioned above. Instead, you tell the render state about the shape of the vertex and index
2948         buffers, and you swap them out independently in the draw loop. Metal and Vulkan have almost
2949         identical API to specify this shape of the vertex buffers, so I’ve mostly copied it. In this
2950         example, we have two vertex attributes, a vec2 and a vec3, which both come from the same
2951         buffer:
2952         
2953         // { Attribute format, offset within stride, buffer to pull from }
2954         std::vector<WebGPU::RenderState::VertexAttribute> vertexAttributes = { {WebGPU::RenderState::VertexFormat::Float2, 0, 0}, {WebGPU::RenderState::VertexFormat::Float3, sizeof(float) * 2, 0} };
2955         // A single vertex buffer, with a stride of 5 floats
2956         auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { sizeof(float) * 5 }, vertexAttributes, resourceTypes, nullptr);
2957         
2958         … later, in the draw() function …
2959         
2960         auto renderPass = commandQueue->createRenderPass(nullptr);
2961         renderPass->setRenderState(renderState);
2962         renderPass->setVertexAttributeBuffers({ vertexBuffer.get() }); // The one vertex buffer which both attributes pull from
2963         renderPass->setResources(…);
2964         …
2965         renderPass->draw(…);
2966         commandQueue->commitRenderPass(std::move(renderPass));
2967         commandQueue->present();
2968
2969         You can also tell the RenderState about how many render targets you have and their formats,
2970         and then when you create the RenderPass, you specify the specific textures you want to
2971         render into.
2972
2973         std::vector<WebGPU::PixelFormat> colorPixelFormats = { WebGPU::PixelFormat::RGBA8, WebGPU::PixelFormat::RGBA8 }; // Two render targets, with these formats
2974         auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", vertexBufferStrides, vertexAttributes, resourceTypes, &colorPixelFormats);
2975         
2976         … later, in the draw() function …
2977         
2978         std::vector<std::reference_wrapper<WebGPU::Texture>> destinationTextures = { texture1->get(), texture2->get() };
2979         auto renderPass = commandQueue->createRenderPass(&destinationTextures);
2980         renderPass->setRenderState(renderState);
2981         …
2982         renderPass->draw(…);
2983         commandQueue->commitRenderPass(std::move(renderPass));
2984         
2985         // Now, draw one of the textures to the screen. Note that no synchronization is necessary here!
2986         auto renderPass = commandQueue->createRenderPass(nullptr);
2987         renderPass->setRenderState(renderState2);
2988         renderPass->setResources(0, { WebGPU:: TextureReference(texture1.get()) });
2989         …
2990         renderPass->draw(…);
2991         commandQueue->commitRenderPass(std::move(renderPass));
2992         commandQueue->present();
2993
2994         Just like how in Metal has Render Encoders and Compute Encoders, WebGPU has RenderPasses
2995         and ComputePasses.
2996
2997         auto& computeState = device->getComputeState(computeShader, "main", resourceTypes);
2998         …
2999         auto computePass = commandQueue->createComputePass();
3000         computePass->setComputeState(computeState);
3001         computePass->setResources(0, resources);
3002         computePass->dispatch(width, height, depth);
3003         commandQueue->commitComputePass(std::move(computePass));
3004         
3005         // Now, draw the resources we just computed. Note that no synchronization is necessary here!
3006         auto renderPass = commandQueue->createRenderPass(nullptr);
3007         renderPass->setRenderState(renderState);
3008         renderPass->setResources(0, resources });
3009         …
3010         renderPass->draw(…);
3011         commandQueue->commitRenderPass(std::move(renderPass));
3012         commandQueue->present();
3013
3014         There are also two other types of passes: one that corresponds to a Metal blit encoder, and
3015         one that allows the CPU to change the contents of GPU buffers and textures. This last kind
3016         of pass is a little interesting: you can’t just change the contents of a buffer at any time
3017         you feel like it, because that resource might be in use by the GPU. Therefore, we need to do
3018         the same kind of synchronization that we already do at render pass boundaries.
3019
3020         In addition, both Vulkan and Direct3D have a concept of a memory heap. A resource might
3021         exist inside a heap which is fast, but invisible from the CPU, or in a heap which is slow,
3022         but visible by the CPU. Certain operations are not possible from some types of images (e.g.
3023         non-tiled textures may not be able to be sampled from). The usual way to get around this
3024         problem is to have two resources: a slow staging resource which the CPU can see, and a fast
3025         resource which the CPU can’t see. Uploading data is a two-pass algorithm, where the CPU
3026         memcpy()s into the slow staging resource, and then a blit command is enqueued on the GPU to
3027         copy the contents of the staging resource to the real resource. This requires that the
3028         upload have access to the commandQueue so it can possibly enqueue a blit between the staging
3029         and real resources. Therefore, a pass is the right level of abstraction for these facilities.
3030
3031         std::queue<boost::unique_future<std::vector<uint8_t>>> futureQueue; // Promises for data downloads from the GPU
3032         
3033         … later, in the draw() function …
3034         
3035         // See if any of the previously-enqueued downloads are finished
3036         while (!futureQueue.empty() && futureQueue.front(). has_value()) {
3037             std::vector<uint8_t>& data = futureQueue.front().get();
3038             // Use the downloaded data
3039             futureQueue.pop();
3040         }
3041         …
3042         auto hostAccessPass = commandQueue->createHostAccessPass();
3043         hostAccessPass->overwriteBuffer(buffer->get(), bufferContents); // Upload data to a resource
3044         
3045         futureQueue.emplace(hostAccessPass->getBufferContents(buffer->get()));
3046         commandQueue->commitHostAccessPass(std::move(hostAccessPass));
3047         
3048         You can also issue copy commands between resources entirely on the GPU:
3049         
3050         auto blitPass = commandQueue->createBlitPass();
3051         blitPass->copyTexture(source->get(), destination->get(), sourceX, sourceY, destinationX, destinationY, width, height);
3052         commandQueue->commitBlitPass(std::move(blitPass));
3053
3054         * Scripts/webkitpy/style/checker.py:
3055         * WebGPUAPIStructure/Example/Example.cpp: Added.
3056         (readFile):
3057         (drawWebGPU):
3058         (wWinMain):
3059         (MyRegisterClass):
3060         (InitInstance):
3061         (WndProc):
3062         * WebGPUAPIStructure/Example/Example.h: Added.
3063         * WebGPUAPIStructure/Example/Example.ico: Added.
3064         * WebGPUAPIStructure/Example/Example.rc: Added.
3065         * WebGPUAPIStructure/Example/Example.vcxproj: Added.
3066         * WebGPUAPIStructure/Example/Example.vcxproj.filters: Added.
3067         * WebGPUAPIStructure/Example/Example.vcxproj.user: Added.
3068         * WebGPUAPIStructure/Example/resource.h: Added.
3069         * WebGPUAPIStructure/Example/small.ico: Added.
3070         * WebGPUAPIStructure/Example/stdafx.cpp: Added.
3071         * WebGPUAPIStructure/Example/stdafx.h: Added.
3072         * WebGPUAPIStructure/Example/targetver.h: Added.
3073         * WebGPUAPIStructure/WebGPU-Common/WebGPU-Common.vcxproj: Added.
3074         * WebGPUAPIStructure/WebGPU-Common/WebGPU-Common.vcxproj.filters: Added.
3075         * WebGPUAPIStructure/WebGPU-Common/WebGPU.cpp: Added.
3076         (WebGPU::BufferHolder::BufferHolder):
3077         (WebGPU::BufferHolder::~BufferHolder):
3078         (WebGPU::TextureHolder::TextureHolder):
3079         (WebGPU::TextureHolder::~TextureHolder):
3080         (WebGPU::SamplerHolder::SamplerHolder):
3081         (WebGPU::SamplerHolder::~SamplerHolder):
3082         * WebGPUAPIStructure/WebGPU-Common/WebGPU.h: Added.
3083         (WebGPU::Queue::~Queue):
3084         (WebGPU::RenderState::~RenderState):
3085         (WebGPU::ComputeState::~ComputeState):
3086         (WebGPU::Buffer::~Buffer):
3087         (WebGPU::Texture::~Texture):
3088         (WebGPU::Sampler::~Sampler):
3089         (WebGPU::TextureReference::TextureReference):
3090         (WebGPU::TextureReference::get const):
3091         (WebGPU::SamplerReference::SamplerReference):
3092         (WebGPU::SamplerReference::get const):
3093         (WebGPU::UniformBufferObjectReference::UniformBufferObjectReference):
3094         (WebGPU::UniformBufferObjectReference::get const):
3095         (WebGPU::ShaderStorageBufferObjectReference::ShaderStorageBufferObjectReference):
3096         (WebGPU::ShaderStorageBufferObjectReference::get const):
3097         (WebGPU::RenderPass::~RenderPass):
3098         (WebGPU::ComputePass::~ComputePass):
3099         (WebGPU::BlitPass::~BlitPass):
3100         (WebGPU::HostAccessPass::~HostAccessPass):
3101         (WebGPU::BufferHolder::get):
3102         (WebGPU::TextureHolder::get):
3103         (WebGPU::SamplerHolder::get):
3104         (WebGPU::Device::~Device):
3105         * WebGPUAPIStructure/WebGPU-Vulkan/BlitPassImpl.cpp: Added.
3106         (WebGPU::BlitPassImpl::BlitPassImpl):
3107         (WebGPU::BlitPassImpl::copyTexture):
3108         * WebGPUAPIStructure/WebGPU-Vulkan/BlitPassImpl.h: Added.
3109         * WebGPUAPIStructure/WebGPU-Vulkan/BufferImpl.cpp: Added.
3110         (WebGPU::BufferImpl::BufferImpl):
3111         (WebGPU::BufferImpl::decrementReferenceCount):
3112         * WebGPUAPIStructure/WebGPU-Vulkan/BufferImpl.h: Added.
3113         (WebGPU::BufferImpl::getBuffer const):
3114         (WebGPU::BufferImpl::getDeviceMemory const):
3115         (WebGPU::BufferImpl::incrementReferenceCount):
3116         (WebGPU::BufferImpl::getLength const):
3117         * WebGPUAPIStructure/WebGPU-Vulkan/ComputePassImpl.cpp: Added.
3118         (WebGPU::ComputePassImpl::ComputePassImpl):
3119         (WebGPU::ComputePassImpl::setComputeState):
3120         (WebGPU::ComputePassImpl::setResources):
3121         (WebGPU::ComputePassImpl::dispatch):
3122         * WebGPUAPIStructure/WebGPU-Vulkan/ComputePassImpl.h: Added.
3123         * WebGPUAPIStructure/WebGPU-Vulkan/ComputeStateImpl.cpp: Added.
3124         (WebGPU::ComputeStateImpl::ComputeStateImpl):
3125         * WebGPUAPIStructure/WebGPU-Vulkan/ComputeStateImpl.h: Added.
3126         (WebGPU::ComputeStateImpl::getPipeline const):
3127         (WebGPU::ComputeStateImpl::getPipelineLayout const):
3128         (WebGPU::ComputeStateImpl::getDescriptorSetLayouts const):
3129         * WebGPUAPIStructure/WebGPU-Vulkan/DeviceImpl.cpp: Added.
3130         (WebGPU::Device::create):
3131         (WebGPU::convertPixelFormat):
3132         (WebGPU::convertFormat):
3133         (WebGPU::debugReport):
3134         (WebGPU::DeviceImpl::DeviceImpl):
3135         (WebGPU::DeviceImpl::getCommandQueue):
3136         (WebGPU::DeviceImpl::prepareShader):
3137         (WebGPU::DeviceImpl::createPipelineLayout):
3138         (WebGPU::DeviceImpl::createCompatibleRenderPass):
3139         (WebGPU::convertVertexFormat):
3140         (WebGPU::DeviceImpl::getRenderState):
3141         (WebGPU::DeviceImpl::getComputeState):
3142         (WebGPU::DeviceImpl::getBuffer):
3143         (WebGPU::DeviceImpl::returnBuffer):
3144         (WebGPU::DeviceImpl::getTexture):
3145         (WebGPU::DeviceImpl::returnTexture):
3146         (WebGPU::DeviceImpl::getSampler):
3147         (WebGPU::DeviceImpl::returnSampler):
3148         (WebGPU::DeviceImpl::~DeviceImpl):
3149         * WebGPUAPIStructure/WebGPU-Vulkan/DeviceImpl.h: Added.
3150         (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::UniqueDebugReportCallbackEXT):
3151         (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::operator=):
3152         (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::~UniqueDebugReportCallbackEXT):
3153         (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::destroy):
3154         (WebGPU::DeviceImpl::TextureParameters::operator== const):
3155         (WebGPU::DeviceImpl::TextureParametersHash::operator() const):
3156         * WebGPUAPIStructure/WebGPU-Vulkan/HostAccessPassImpl.cpp: Added.
3157         (WebGPU::HostAccessPassImpl::HostAccessPassImpl):
3158         (WebGPU::HostAccessPassImpl::overwriteBuffer):
3159         (WebGPU::HostAccessPassImpl::getBufferContents):
3160         (WebGPU::HostAccessPassImpl::execute):
3161         * WebGPUAPIStructure/WebGPU-Vulkan/HostAccessPassImpl.h: Added.
3162         (WebGPU::HostAccessPassImpl::getFinishedEvent const):
3163         * WebGPUAPIStructure/WebGPU-Vulkan/PassImpl.cpp: Added.
3164         (WebGPU::PassImpl::PassImpl):
3165         (WebGPU::ResourceVisitor::operator()):
3166         (WebGPU::ResourceVisitor::getBindings const):
3167         (WebGPU::ResourceVisitor::releaseWriteDescriptorSets):
3168         (WebGPU::ResourceVisitor::getDescriptorImageInfos const):
3169         (WebGPU::ResourceVisitor::getDescriptorBufferInfos const):
3170         (WebGPU::ResourceVisitor::getBuffers const):
3171         (WebGPU::ResourceVisitor::getTextures const):
3172         (WebGPU::ResourceVisitor::getSamplers const):
3173         (WebGPU::ResourceVisitor::getImageCount const):
3174         (WebGPU::ResourceVisitor::getSamplerCount const):
3175         (WebGPU::ResourceVisitor::getUniformBufferCount const):
3176         (WebGPU::ResourceVisitor::getStorageBufferCount const):
3177         (WebGPU::PassImpl::setResources):
3178         (WebGPU::PassImpl::insertBuffer):
3179         (WebGPU::PassImpl::insertTexture):
3180         (WebGPU::PassImpl::insertSampler):
3181         * WebGPUAPIStructure/WebGPU-Vulkan/PassImpl.h: Added.
3182         (WebGPU::PassImpl::getCommandBuffer const):
3183         (WebGPU::PassImpl::iterateBuffers):
3184         (WebGPU::PassImpl::iterateTextures):
3185         (WebGPU::PassImpl::ResourceReference::ResourceReference):
3186         (WebGPU::PassImpl::ResourceReference::~ResourceReference):
3187         (WebGPU::PassImpl::ResourceReference::operator=):
3188         (WebGPU::PassImpl::ResourceReference::operator== const):
3189         (WebGPU::PassImpl::ResourceReference::get const):
3190         (WebGPU::PassImpl::ResourceReference::release):
3191         (WebGPU::PassImpl::ResourceReferenceHash::operator() const):
3192         * WebGPUAPIStructure/WebGPU-Vulkan/QueueImpl.cpp: Added.
3193         (WebGPU::QueueImpl::QueueImpl):
3194         (WebGPU::QueueImpl::prepareCurrentFrame):
3195         (WebGPU::QueueImpl::createSpecificRenderPass):
3196         (WebGPU::QueueImpl::createFramebuffer):
3197         (WebGPU::QueueImpl::createRenderPass):
3198         (WebGPU::QueueImpl::commitRenderPass):
3199         (WebGPU::QueueImpl::createComputePass):
3200         (WebGPU::QueueImpl::commitComputePass):
3201         (WebGPU::QueueImpl::createBlitPass):
3202         (WebGPU::QueueImpl::commitBlitPass):
3203         (WebGPU::QueueImpl::createHostAccessPass):
3204         (WebGPU::QueueImpl::commitHostAccessPass):
3205         (WebGPU::QueueImpl::present):
3206         (WebGPU::QueueImpl::commitPass):
3207         (WebGPU::QueueImpl::synchronizeResources):
3208         (WebGPU::QueueImpl::~QueueImpl):
3209         * WebGPUAPIStructure/WebGPU-Vulkan/QueueImpl.h: Added.
3210         * WebGPUAPIStructure/WebGPU-Vulkan/RenderPassImpl.cpp: Added.
3211         (WebGPU::RenderPassImpl::RenderPassImpl):
3212         (WebGPU::RenderPassImpl::setRenderState):
3213         (WebGPU::RenderPassImpl::setVertexAttributeBuffers):
3214         (WebGPU::RenderPassImpl::setResources):
3215         (WebGPU::RenderPassImpl::setViewport):
3216         (WebGPU::RenderPassImpl::setScissorRect):
3217         (WebGPU::RenderPassImpl::draw):
3218         * WebGPUAPIStructure/WebGPU-Vulkan/RenderPassImpl.h: Added.
3219         * WebGPUAPIStructure/WebGPU-Vulkan/RenderStateImpl.cpp: Added.
3220         (WebGPU::RenderStateImpl::RenderStateImpl):
3221         * WebGPUAPIStructure/WebGPU-Vulkan/RenderStateImpl.h: Added.
3222         (WebGPU::RenderStateImpl::getPipeline const):
3223         (WebGPU::RenderStateImpl::getPipelineLayout const):
3224         (WebGPU::RenderStateImpl::getDescriptorSetLayouts const):
3225         * WebGPUAPIStructure/WebGPU-Vulkan/SamplerImpl.cpp: Added.
3226         (WebGPU::SamplerImpl::SamplerImpl):
3227         (WebGPU::SamplerImpl::decrementReferenceCount):
3228         * WebGPUAPIStructure/WebGPU-Vulkan/SamplerImpl.h: Added.
3229         (WebGPU::SamplerImpl::getSampler):
3230         (WebGPU::SamplerImpl::incrementReferenceCount):
3231         (WebGPU::SamplerImpl::getFilter):
3232         (WebGPU::SamplerImpl::getMipmapMode):
3233         (WebGPU::SamplerImpl::getAddressMode):
3234         * WebGPUAPIStructure/WebGPU-Vulkan/TextureImpl.cpp: Added.
3235         (WebGPU::TextureImpl::TextureImpl):
3236         (WebGPU::TextureImpl::decrementReferenceCount):
3237         * WebGPUAPIStructure/WebGPU-Vulkan/TextureImpl.h: Added.
3238         (WebGPU::TextureImpl::getImage const):
3239         (WebGPU::TextureImpl::getImageView const):
3240         (WebGPU::TextureImpl::getFormat const):
3241         (WebGPU::TextureImpl::incrementReferenceCount):
3242         (WebGPU::TextureImpl::getWidth const):
3243         (WebGPU::TextureImpl::getHeight const):
3244         (WebGPU::TextureImpl::getTransferredToGPU const):
3245         (WebGPU::TextureImpl::setTransferredToGPU):
3246         * WebGPUAPIStructure/WebGPU-Vulkan/WebGPU-Vulkan.vcxproj: Added.
3247         * WebGPUAPIStructure/WebGPU-Vulkan/WebGPU-Vulkan.vcxproj.filters: Added.
3248         * WebGPUAPIStructure/WebGPU.sln: Added.
3249
3250 2017-10-26  Eric Carlson  <eric.carlson@apple.com>
3251
3252         NowPlayingInfo should contain a unique identifier
3253         https://bugs.webkit.org/show_bug.cgi?id=178872
3254
3255         Reviewed by Jer Noble.
3256
3257         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
3258         (-[NowPlayingTestWebView hasActiveNowPlayingSession]): Use completion handler.
3259         (TestWebKitAPI::TEST): Cleanup tests. Use new API.
3260         (-[NowPlayingTestWebView waitForNowPlayingInfoToChange]): Deleted.
3261
3262 2017-10-26  Eric Carlson  <eric.carlson@apple.com>
3263
3264         [MediaStream] Clear cached gUM prompt state
3265         https://bugs.webkit.org/show_bug.cgi?id=178754
3266         <rdar://problem/32742356>
3267
3268         Unreviewed, fix a flakey test.
3269
3270         * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm:
3271         (-[GetUserMediaRepromptTestView haveStream:]): New, check several times for expected state.
3272         (TestWebKitAPI::TEST): Don't assume stream state changes in the page immediately.
3273
3274 2017-10-26  Andy Estes  <aestes@apple.com>
3275
3276         [Payment Request] Enable Payment Request whenever Apple Pay is enabled
3277         https://bugs.webkit.org/show_bug.cgi?id=178880
3278
3279         Reviewed by Tim Horton.
3280
3281         * WebKitTestRunner/TestController.cpp:
3282         (WTR::TestController::resetPreferencesToConsistentValues):
3283
3284 2017-10-26  Joseph Pecoraro  <pecoraro@apple.com>
3285
3286         Add and update some watchlists
3287         https://bugs.webkit.org/show_bug.cgi?id=178304
3288
3289         Reviewed by Simon Fraser.
3290
3291         * Scripts/webkitpy/common/config/watchlist:
3292
3293 2017-10-26  Ryan Haddad  <ryanhaddad@apple.com>
3294
3295         Unreviewed, rolling out r223984.
3296
3297         Caused LayoutTest assertion failures.
3298
3299         Reverted changeset:
3300
3301         "When navigating back to a page, compositing layers may not
3302         use accelerated drawing"
3303         https://bugs.webkit.org/show_bug.cgi?id=178749
3304         https://trac.webkit.org/changeset/223984
3305
3306 2017-10-26  Christopher Reid  <chris.reid@sony.com>
3307
3308         Remove scopeguard from platform
3309         https://bugs.webkit.org/show_bug.cgi?id=178681
3310
3311         Reviewed by Brady Eidson.
3312
3313         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
3314
3315 2017-09-21  Carlos Garcia Campos  <cgarcia@igalia.com>
3316
3317         WebDriver: Add support to import and run W3C tests
3318         https://bugs.webkit.org/show_bug.cgi?id=177304
3319
3320         Reviewed by Brian Burg.
3321
3322         WPT has now several WebDriver tests, and new ones are going to be added to cover the whole spec. This patch
3323         adds the initial support for running W3C tests. The script import-w3c-webdriver-tests reuses parts of the W3C
3324         test downloader to download the tests and required tools from WPT repository into WebDriverTests
3325         directory. Tests can be run with run-webdriver-tests, a new script that works similar to other test runner
3326         scripts. For now it shows a summary at the end of the execution, there aren't expectations yet, since we are not
3327         ready to run those tests in the bots. Once we are ready to properly run the tests, we can add the expectations
3328         support and run the tests in the bots.
3329
3330         * Scripts/import-w3c-webdriver-tests: Added.
3331         * Scripts/run-webdriver-tests: Added.
3332         * Scripts/webkitpy/style/checker.py: Skip WebDriverTests directory since it only contains third-party python
3333         code.
3334         * Scripts/webkitpy/thirdparty/__init__.py: Add support to autodownload mozlog and mozprocess since they are
3335         required by the WebDriver tests.
3336         * Scripts/webkitpy/webdriver_tests/__init__.py: Added.
3337         * Scripts/webkitpy/webdriver_tests/webdriver_driver.py: Added.
3338         * Scripts/webkitpy/webdriver_tests/webdriver_driver_gtk.py: Added.
3339         * Scripts/webkitpy/webdriver_tests/webdriver_test_result.py: Added.
3340         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py: Added.
3341         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py: Added.
3342         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py: Added.
3343         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py: Added.
3344
3345 2017-10-25  Eric Carlson  <eric.carlson@apple.com>
3346
3347         [MediaStream] Clear cached gUM prompt state
3348         https://bugs.webkit.org/show_bug.cgi?id=178754
3349         <rdar://problem/32742356>
3350
3351         Reviewed by Youenn Fablet.
3352
3353         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new test
3354
3355         * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm: Added.
3356         (-[GetUserMediaRepromptUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
3357         (-[GetUserMediaRepromptUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
3358         (TestWebKitAPI::TEST):
3359
3360         * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
3361
3362 2017-10-25  Ross Kirsling  <ross.kirsling@sony.com>
3363
3364         Add committer status for Ross Kirsling
3365         https://bugs.webkit.org/show_bug.cgi?id=178832
3366
3367         Unreviewed.
3368
3369         * Scripts/webkitpy/common/config/contributors.json:
3370
3371 2017-10-25  Simon Fraser  <simon.fraser@apple.com>
3372
3373         When navigating back to a page, compositing layers may not use accelerated drawing
3374         https://bugs.webkit.org/show_bug.cgi?id=178749
3375         rdar://problem/35158946
3376
3377         Reviewed by Dean Jackson.
3378
3379         Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
3380         and use it to set the state of the web view.
3381
3382         * DumpRenderTree/TestOptions.h:
3383         * DumpRenderTree/TestOptions.mm:
3384         (TestOptions::TestOptions):
3385         * DumpRenderTree/mac/DumpRenderTree.mm:
3386         (setWebPreferencesForTestOptions):
3387         * WebKitTestRunner/TestController.cpp:
3388         (WTR::TestController::resetPreferencesToConsistentValues):
3389         (WTR::updateTestOptionsFromTestHeader):
3390         * WebKitTestRunner/TestOptions.h:
3391         (WTR::TestOptions::hasSameInitializationOptions const):
3392
3393 2017-10-25  Robin Morisset  <rmorisset@apple.com>
3394
3395         Support the TailBench9000 benchmark in run-jsc-benchmarks
3396         https://bugs.webkit.org/show_bug.cgi?id=178451
3397
3398         Reviewed by Saam Barati.
3399
3400         * Scripts/run-jsc-benchmarks:
3401
3402 2017-10-25  Adrian Perez de Castro  <aperez@igalia.com>
3403
3404         [WPE] Remove GLib API functions which use Cairo
3405         https://bugs.webkit.org/show_bug.cgi?id=178205
3406
3407         Reviewed by Michael Catanzaro.
3408
3409         Add PLATFORM(GTK) guards for the API tests (or parts of them) which use cairo_surface_t (web
3410         page snapshots and favicons) which are not available in the WPE version of the GLib API.
3411
3412         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
3413         (testNotInitialized):
3414         (testPrivateBrowsing):
3415         (testFaviconDatabase):
3416         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
3417         (testFindControllerHide):
3418         (beforeAll):
3419         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
3420         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
3421
3422 2017-10-25  Zan Dobersek  <zdobersek@igalia.com>
3423
3424         Make SERVICE_WORKER feature buildable on GTK, WPE
3425         https://bugs.webkit.org/show_bug.cgi?id=178574
3426
3427         Reviewed by Carlos Garcia Campos.
3428
3429         * Scripts/webkitperl/FeatureList.pm: Add the --service-worker option
3430         that enables the SERVICE_WORKER feature flag. For now it's enabled
3431         on Apple's Cocoa ports (even when build-webkit isn't used for those
3432         builds, the flag is enabled here for consistency).
3433
3434 2017-10-24  Michael Catanzaro  <mcatanzaro@igalia.com>
3435
3436         Unreviewed, fix name of Perl LibXML package on Fedora
3437         https://bugs.webkit.org/show_bug.cgi?id=178206
3438         <rdar://problem/35028586>
3439
3440         * gtk/install-dependencies:
3441         * wpe/install-dependencies:
3442
3443 2017-10-24  Alex Christensen  <achristensen@webkit.org>
3444
3445         Selecting and right-clicking URL-like strings with IDNA-disallowed characters in host or authority causes rendering engine crash
3446         https://bugs.webkit.org/show_bug.cgi?id=174267
3447
3448         Reviewed by Tim Horton.
3449
3450         * TestWebKitAPI/Tests/WebKit/CanHandleRequest_Bundle.cpp:
3451         (TestWebKitAPI::runTest):
3452
3453 2017-10-24  Eric Carlson  <eric.carlson@apple.com>
3454
3455         Web Inspector: Enable WebKit logging configuration and display
3456         https://bugs.webkit.org/show_bug.cgi?id=177027
3457         <rdar://problem/33964767>
3458
3459         Reviewed by Joseph Pecoraro.
3460
3461         Allow new 'dumpJSConsoleLogInStdErr' test header to redirect log console output to stderr.
3462
3463         * DumpRenderTree/TestOptions.h:
3464         * DumpRenderTree/TestOptions.mm:
3465         (TestOptions::TestOptions):
3466         * DumpRenderTree/mac/DumpRenderTree.mm:
3467         (runTest):
3468         * WebKitTestRunner/TestController.cpp:
3469         (WTR::updateTestOptionsFromTestHeader):
3470         (WTR::TestController::runTest):
3471         * WebKitTestRunner/TestOptions.h:
3472         (WTR::TestOptions::hasSameInitializationOptions const):
3473
3474 2017-10-24  Alex Christensen  <achristensen@webkit.org>
3475
3476         Apply custom header fields from WebsitePolicies to same-domain requests
3477         https://bugs.webkit.org/show_bug.cgi?id=178356
3478
3479         Reviewed by Brady Eidson.
3480
3481         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
3482         (expectHeaders):
3483
3484 2017-10-24  Stephan Szabo  <stephan.szabo@sony.com>
3485
3486         [Win][JSCOnly] Make jsconly build testapi and dlls and copy dlls when running tests
3487         https://bugs.webkit.org/show_bug.cgi?id=177279
3488
3489         Reviewed by Yusuke Suzuki.
3490
3491         * Scripts/build-jsc:
3492         * Scripts/run-jsc-stress-tests:
3493
3494 2017-10-23  Lucas Forschler  <lforschler@apple.com>
3495
3496         <rdar://problem/35045445>
3497         Update README to reference WebKit build archives, instead of 'nightly'
3498
3499         Reviewed by Aakash Jain.
3500
3501         * WebKitArchiveSupport/README:
3502
3503 2017-10-21  Tim Horton  <timothy_horton@apple.com>
3504
3505         Turn on ccache for Mac cmake builds by default
3506         https://bugs.webkit.org/show_bug.cgi?id=177059
3507
3508         Reviewed by Sam Weinig.
3509
3510         * ccache/ccache-clang:
3511         * ccache/ccache-wrapper: Added.
3512         Add a pass-through ccache wrapper to be used with CMake, in addition
3513         to the existing faux-clang wrappers.
3514
3515         * Scripts/build-webkit:
3516         Add --use-ccache and --no-use-ccache option, which will define
3517         WK_USE_CCACHE to YES or NO, respectively, which the underlying
3518         build systems respect. We do not define WK_USE_CCACHE if the option
3519         is not specified, because the underlying build systems have different
3520         default values.
3521
3522 2017-10-20  Aakash Jain  <aakash_jain@apple.com>
3523
3524         Do not run binding tests on multiple EWSes
3525         https://bugs.webkit.org/show_bug.cgi?id=178599
3526
3527         Reviewed by Alexey Proskuryakov. 
3528
3529         Remove old code which runs bindings tests and ignore it's result. We now have
3530         a dedicated bindings test EWS.
3531
3532         * Scripts/webkitpy/tool/steps/runtests.py:
3533         (RunTests.run): Removed bindings tests code.
3534         * Scripts/webkitpy/tool/steps/runtests_unittest.py: Updated unit-tests.
3535         (RunTestsTest.test_webkit_run_unit_tests): Ditto.
3536         * Scripts/webkitpy/tool/steps/steps_unittest.py: Ditto.
3537         * Scripts/webkitpy/tool/commands/download_unittest.py: Ditto.
3538
3539 2017-10-20  Youenn Fablet  <youenn@apple.com>
3540
3541         WebsiteDataStoreCustomPaths.mm is failing after r223718
3542         https://bugs.webkit.org/show_bug.cgi?id=178596
3543
3544         Unreviewed.
3545
3546         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
3547         (TEST): Making default web site data store creation expected at the end of the test.
3548         We should probably not need need to create it.
3549         This should be fixed as a follow-up.
3550
3551 2017-10-20  Antoine Quint  <graouts@apple.com>
3552
3553         [Web Animations] Provide basic timeline and animation interfaces
3554         https://bugs.webkit.org/show_bug.cgi?id=178526
3555
3556         Reviewed by Dean Jackson.
3557
3558         Remove the WEB_ANIMATIONS compile-time flag.
3559
3560         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3561
3562 2017-10-20  Tomas Popela  <tpopela@redhat.com>
3563
3564         Missing some perl packages in install-dependencies
3565         https://bugs.webkit.org/show_bug.cgi?id=178571
3566
3567         Reviewed by Žan Doberšek.
3568
3569         Install per-version and perl-Time-HiRes so we can use build-webkit
3570         script. Also add missing backlashes.
3571
3572         * wpe/install-dependencies:
3573
3574 2017-10-20  Commit Queue  <commit-queue@webkit.org>
3575
3576         Unreviewed, rolling out r222709 and r223572.
3577         https://bugs.webkit.org/show_bug.cgi?id=178587
3578
3579         Still getting mac-wk2 EWS bots stuck (Requested by ap on
3580         #webkit).
3581
3582         Reverted changesets:
3583
3584         "Log stack-trace for run-webkit-tests when interrupted"
3585         https://bugs.webkit.org/show_bug.cgi?id=176393
3586         https://trac.webkit.org/changeset/222709
3587
3588         "webkitpy: Hang when workers write to the same stack trace
3589         file"
3590         https://bugs.webkit.org/show_bug.cgi?id=178402
3591         https://trac.webkit.org/changeset/223572
3592
3593 2017-10-19  Nan Wang  <n_wang@apple.com>
3594
3595         AX: Provide a way for Accessibility to cache the selection while retrieving rects for speak selection
3596         https://bugs.webkit.org/show_bug.cgi?id=176247
3597         <rdar://problem/34217143>
3598
3599         Reviewed by Ryosuke Niwa.
3600
3601         * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
3602         (TestWebKitAPI::TEST):
3603
3604 2017-10-19  Sam Weinig  <sam@webkit.org>
3605
3606         [Settings] Move global settings into their own file
3607         https://bugs.webkit.org/show_bug.cgi?id=178512
3608
3609         Reviewed by Darin Adler.
3610
3611         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
3612         (TestWebKitAPI::TEST):
3613
3614 2017-10-19  Andy Estes  <aestes@apple.com>
3615
3616         [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
3617         https://bugs.webkit.org/show_bug.cgi?id=178181
3618         <rdar://problem/33660282>
3619
3620         Reviewed by Dan Bernstein.
3621
3622         * WebKitTestRunner/TestController.cpp:
3623         (WTR::TestController::databaseProcessName):
3624
3625 2017-10-19  Saam Barati  <sbarati@apple.com>
3626
3627         Turn poly proto back on by default and remove the option
3628         https://bugs.webkit.org/show_bug.cgi?id=178525
3629
3630         Reviewed by Mark Lam.
3631
3632         * Scripts/run-jsc-stress-tests:
3633
3634 2017-10-18  Ryosuke Niwa  <rniwa@webkit.org>
3635
3636         Don't expose raw HTML in pasteboard to the web content
3637         https://bugs.webkit.org/show_bug.cgi?id=178422
3638
3639         Reviewed by Wenson Hsieh.
3640
3641         Added a test case for sanitizing web archive in the system pasteboard to strip privacy sensitive information
3642         such as local file paths and potentially harmful scripts like event handlers serialized by WebKit prior to r223462.
3643
3644         * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
3645         (PasteWebArchive.SanitizesHTML):
3646
3647 2017-10-18  Youenn Fablet  <youenn@apple.com>
3648
3649         TestController should clear all fetch caches when resetting its state
3650         https://bugs.webkit.org/show_bug.cgi?id=178486
3651
3652         Reviewed by Chris Dumez.
3653
3654         Adding clearDOMCaches test runner method.
3655         Using that method when resetting state.
3656
3657         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3658         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3659         (WTR::TestRunner::clearDOMCaches):
3660         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3661         * WebKitTestRunner/TestInvocation.cpp:
3662         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3663
3664 2017-10-18  Chelsea Pugh  <cpugh@apple.com>
3665
3666         [iOS] Use new class name from UIKit when checking UITextSuggestion type
3667         https://bugs.webkit.org/show_bug.cgi?id=178416
3668
3669         Reviewed by Tim Horton.
3670
3671         This updates our test using/mocking out UITextAutofillSuggestion instead of UIKeyboardLoginCredentialsSuggestion.
3672
3673         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
3674         (-[UITextAutofillSuggestion initWithUsername:password:]): Copied from UIKit's implementation. This will serve as
3675         a mock of this method for builds not containingit.
3676         (+[UITextAutofillSuggestion autofillSuggestionWithUsername:password:]): Ditto.
3677         (TestWebKitAPI::TEST): Use +[UITextAutofillSuggestion autofillSuggestionWithUsername:password:] inline instead of
3678         helper function for creating a new suggestion.
3679         (newUIKeyboardLoginCredentialsSuggestion): Deleted.
3680
3681         * TestWebKitAPI/ios/UIKitSPI.h:
3682
3683 2017-10-18  Fujii Hironori  <Hironori.Fujii@sony.com>
3684
3685         update-webkit-auxiliary-libs can't download WebKitAuxiliaryLibrary.zip due to 403 Forbidden
3686         https://bugs.webkit.org/show_bug.cgi?id=178381
3687
3688         Reviewed by Alexey Proskuryakov.
3689
3690         The web server developer.apple.com seems to reject HTTP requests
3691         without Accept header field.
3692
3693         * Scripts/update-webkit-dependency: Add 'Accept' header field to requests.
3694
3695 2017-10-18  Aakash Jain  <aakash_jain@apple.com>
3696
3697         webkitpy tests should have --json-output option
3698         https://bugs.webkit.org/show_bug.cgi?id=178481
3699
3700         Reviewed by Alexey Proskuryakov.
3701
3702         * Scripts/webkitpy/test/main.py:
3703         (Tester._parse_args): Added json-output argument.
3704         (Tester._run_tests): Write output to json file.
3705
3706 2017-10-18  Wenson Hsieh  <wenson_hsieh@apple.com>
3707
3708         Unreviewed, rolling out r223291.
3709
3710         See WebCore ChangeLog for more detail.
3711
3712         Reverted changeset:
3713
3714         "Remove Editor::simplifyMarkup"
3715         https://bugs.webkit.org/show_bug.cgi?id=178271
3716         https://trac.webkit.org/changeset/223291
3717
3718 2017-10-18  Chris Dumez  <cdumez@apple.com>
3719
3720         Add an efficient data structure for WebCore to query if there is a Service Worker registered for a given origin
3721         https://bugs.webkit.org/show_bug.cgi?id=177876
3722         <rdar://problem/34813129>
3723
3724         Reviewed by Ryosuke Niwa.
3725
3726         Clear service worker registrations between test runs to avoid flakiness.
3727
3728         * WebKitTestRunner/TestController.cpp:
3729         (WTR::TestController::resetStateToConsistentValues):
3730
3731 2017-10-18  Zan Dobersek  <zdobersek@igalia.com>
3732
3733         Remove remnants of OpenWebRTC
3734         https://bugs.webkit.org/show_bug.cgi?id=178437
3735
3736         Reviewed by Alejandro G. Castro.
3737
3738         Drop OpenWebRTC packages from the GTK's Jhbuild modules file. Relevant
3739         patches are also removed.
3740
3741         * gtk/jhbuild.modules:
3742         * gtk/patches/libnice-0001-TURN-allow-REALM-to-be-empty.patch: Removed.
3743         * gtk/patches/libnice-0001-nicesrc-spin-the-agent-mainloop-in-a-separate-thread.patch: Removed.
3744         * gtk/patches/rtspsrc-timeout-on-udpsrc-is-in-nanoseconds.patch: Removed.
3745         * gtk/patches/udpsrc-improve-timeouts.patch: Removed.
3746
3747 2017-10-17  Jonathan Bedard  <jbedard@apple.com>
3748
3749         webkitpy: Hang when workers write to the same stack trace file
3750         https://bugs.webkit.org/show_bug.cgi?id=178402
3751         <rdar://problem/35033432>
3752
3753         Reviewed by Aakash Jain.
3754
3755         Workers can hang if they all write to the same stack trace file when receiving
3756         a SIGTERM. Attach the pid to the stack trace file name so that each worker
3757         writes to a different file.
3758
3759         * Scripts/webkitpy/common/interupt_debugging.py:
3760         (log_stack_trace_on_term.handler): Name stack trace file path/<pid>-filename.
3761         (log_stack_trace_on_cntrl_c.handler): Ditto.
3762
3763 2017-10-17  John Wilander  <wilander@apple.com>
3764
3765         Add and remove cookie partition accordingly in intermediary redirect requests
3766         https://bugs.webkit.org/show_bug.cgi?id=178369
3767         <rdar://problem/34467603>
3768
3769         Reviewed by Brent Fulgham.
3770
3771         Adds the function statisticsNotifyObserver().
3772
3773         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3774         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3775         (WTR::InjectedBundle::statisticsNotifyObserver):
3776         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
3777         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3778         (WTR::TestRunner::statisticsNotifyObserver):
3779         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3780
3781 2017-10-17  Youenn Fablet  <youenn@apple.com>
3782
3783         Cache API implementation should be able to compute storage size for WebKit client applications.
3784         https://bugs.webkit.org/show_bug.cgi?id=178350
3785
3786         Reviewed by Chris Dumez.
3787
3788         Adding support for a domCacheSize getter.
3789
3790         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3791         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3792         (WTR::TestRunner::domCacheSize):
3793         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3794         * WebKitTestRunner/TestController.cpp:
3795         (WTR::FetchCacheSizeForOriginCallbackContext::FetchCacheSizeForOriginCallbackContext):
3796         (WTR::fetchCacheSizeForOriginCallback):
3797         (WTR::TestController::domCacheSize):
3798         * WebKitTestRunner/TestController.h:
3799         * WebKitTestRunner/TestInvocation.cpp:
3800         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3801
3802 2017-10-17  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
3803
3804         [GStreamer][GTK][WPE] update-webkit-libs-jhbuild fails to detect changes in included moduleset files
3805         https://bugs.webkit.org/show_bug.cgi?id=178206
3806
3807         Reviewed by Michael Catanzaro.
3808
3809         The update-webkit-libs-jhbuild scripts computes MD5 sum of GTK/WPE jhbuild configuration files to check if it
3810         needs to rebuild the dependencies libraries. This patch fixes a bug when main GTK/WPE jhbuild modules
3811         configuration file includes additional files (for example GStreamer module). It parses jhbuild.modules file to
3812         check if additional files are included. If any, it computes MD5 sum for each of these included files.
3813
3814         * Scripts/update-webkit-libs-jhbuild:
3815         (getJhbuildIncludedFilePaths): New function that returns included files in jhbuild.modules
3816         (jhbuildConfigurationCheckFile): New function to check if MD5 sum file changes.
3817         (jhbuildConfigurationChanged): Add MD5 sum check for included files.
3818         (saveMd5File): New function to save MD5 sum of a file.
3819         (saveJhbuildMd5): Add saving included files MD5 sum.
3820         (deleteJhbuildMd5): Delete included files MD5 sum
3821         * gtk/install-dependencies: Add perl-libXML lib that is used to parse jhbuild file.
3822         * wpe/install-dependencies: Ditto.
3823
3824 2017-10-17  Tomas Popela  <tpopela@redhat.com>
3825
3826         Undefined WK_API_ENABLED warning when compiling COCOA content on WebKitGTK+
3827         https://bugs.webkit.org/show_bug.cgi?id=178208
3828
3829         Check whether we are on COCOA platform before checking for
3830         WK_API_ENABLED.
3831
3832         Reviewed by Ryosuke Niwa.
3833
3834         * WebKitTestRunner/TestController.cpp:
3835         (WTR::TestController::clearDOMCache):
3836
3837 2017-10-17  Keith Miller  <keith_miller@apple.com>
3838
3839         Change WebCore sources to work with unified source builds
3840         https://bugs.webkit.org/show_bug.cgi?id=178229
3841
3842         Rubber stamped by Tim Horton.
3843
3844         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
3845
3846 2017-10-16  Christopher Reid  <chris.reid@sony.com>
3847
3848         [Win] Webkit should still be able to build when unable to check if libraries are up to date
3849         https://bugs.webkit.org/show_bug.cgi?id=178367
3850
3851         Adding a option to skip the check to see if windows libraries are up to date.
3852         This option is useful when testing modified libraries. This option also allows
3853         building webkit when GitHub blocks requests to verify the latest library version.
3854
3855
3856         Reviewed by Per Arne Vollan.
3857
3858         * Scripts/build-webkit:
3859
3860 2017-10-12  Matt Rajca  <mrajca@apple.com>
3861
3862         Add API support for quirk that lets an arbitrary click allow auto-play.
3863         https://bugs.webkit.org/show_bug.cgi?id=178227
3864
3865         Reviewed by Alex Christensen.
3866
3867         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
3868         (TEST): Added API test.
3869
3870 2017-10-16  Maureen Daum  <mdaum@apple.com>
3871
3872         If an origin doesn't have databases in the Databases table we should still remove its information from disk in DatabaseTracker::deleteOrigin()
3873         https://bugs.webkit.org/show_bug.cgi?id=178281
3874         <rdar://problem/34576132>
3875
3876         Reviewed by Brent Fulgham.
3877
3878         Verify that if there is an entry in the Origins table but no entries in the Databases
3879         table that we still remove the directory for the origin, and that we remove the
3880         entry from the Origins table.
3881
3882         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
3883         (TestWebKitAPI::TEST):
3884
3885 2017-10-15  Ryosuke Niwa  <rniwa@webkit.org>
3886
3887         Cannot access images included in the content pasted from Microsoft Word
3888         https://bugs.webkit.org/show_bug.cgi?id=124391
3889         <rdar://problem/26862741>
3890
3891         Reviewed by Antti Koivisto.
3892
3893         Added tests for sanitizing HTML contents for copy & paste and drag & drop.
3894
3895         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3896         * TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm: Added.
3897         (readHTMLFromPasteboard): Added.
3898         (createWebViewWithCustomPasteboardDataEnabled): Added.
3899         (CopyHTML.Sanitizes): Added.
3900
3901         * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
3902         (createWebViewWithCustomPasteboardDataEnabled): Added to enable more tests on bots.
3903
3904         * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
3905         (writeRTFToPasteboard): Added.
3906         (createWebViewWithCustomPasteboardDataEnabled): Added.
3907         (createHelloWorldString): Added.
3908         (PasteRTF.ExposesHTMLTypeInDataTransfer): Added.
3909         (PasteRTFD.ExposesHTMLTypeInDataTransfer): Added.
3910         (PasteRTFD.ImageElementUsesBlobURLInHTML): Added.
3911
3912         * TestWebKitAPI/Tests/WebKitCocoa/copy-html.html: Added.
3913         * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html: Store the clipboardData contents for
3914         PasteRTF.ExposesHTMLTypeInDataTransfer and PasteRTFD.ExposesHTMLTypeInDataTransfer.
3915
3916         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3917         (DataInteractionTests.DataTransferSanitizeHTML):
3918
3919 2017-10-16  Youenn Fablet  <youenn@apple.com>
3920
3921         Activate Cache API by default
3922         https://bugs.webkit.org/show_bug.cgi?id=178186
3923
3924         Reviewed by Chris Dumez.
3925
3926         Removing explicit activation of cache api.
3927
3928         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
3929         (WTR::InjectedBundle::beginTesting):
3930         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3931         (WTR::TestRunner::setCacheAPIEnabled): Deleted.
3932         * WebKitTestRunner/InjectedBundle/TestRunner.h:
3933
3934 2017-10-16  Ross Kirsling  <ross.kirsling@sony.com>
3935
3936         run-webkit-tests help text should mention arguments too
3937         https://bugs.webkit.org/show_bug.cgi?id=178352
3938
3939         Reviewed by Tim Horton.
3940
3941         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3942         (parse_args):
3943
3944 2017-10-16  Maureen Daum  <mdaum@apple.com>
3945
3946         If we fail to delete any database file, don't remove its information from the tracker database
3947         <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
3948
3949         Reviewed by Brady Eidson.
3950
3951         Add tests that verify we correctly delete databases and remove their information from
3952         the tracker database, even if the database doesn't exist. Verify that if we fail to
3953         delete a database, we don't remove its information from the tracker database.
3954
3955         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3956         Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
3957         method for creating a temporary directory in the tests.
3958         * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
3959         The existing test was copied to DatabaseTrackerTest.mm.
3960         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
3961         (TestWebKitAPI::TEST):
3962         (TestWebKitAPI::addToDatabasesTable):
3963         (TestWebKitAPI::removeDirectoryAndAllContents):
3964         (TestWebKitAPI::createFileAtPath):
3965
3966 2017-10-16  Ryan Haddad  <ryanhaddad@apple.com>
3967
3968         Unreviewed, rolling out r223422.
3969
3970         These tests are for a change that was rolled out in r223420
3971
3972         Reverted changeset:
3973
3974         "If we fail to delete any database file, don't remove its
3975         information from the tracker database"
3976         https://bugs.webkit.org/show_bug.cgi?id=178251
3977         https://trac.webkit.org/changeset/223422
3978
3979 2017-10-16  Maureen Daum  <mdaum@apple.com>
3980
3981         If we fail to delete any database file, don't remove its information from the tracker database
3982         <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
3983
3984         Reviewed by Brady Eidson.
3985
3986         Add tests that verify we correctly delete databases and remove their information from
3987         the tracker database, even if the database doesn't exist. Verify that if we fail to
3988         delete a database, we don't remove its information from the tracker database.
3989
3990         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3991         Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
3992         method for creating a temporary directory in the tests.
3993         * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
3994         The existing test was copied to DatabaseTrackerTest.mm.
3995         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
3996         (TestWebKitAPI::TEST):
3997         (TestWebKitAPI::addToDatabasesTable):
3998         (TestWebKitAPI::removeDirectoryAndAllContents):
3999         (TestWebKitAPI::createFileAtPath):
4000
4001 2017-10-16  David Kilzer  <ddkilzer@apple.com>
4002
4003         Add RELEASE_ASSERT_WITH_SECURITY_IMPLICATION() macro
4004         <https://webkit.org/b/178269>
4005
4006         Reviewed by Alex Christensen.
4007
4008         * Scripts/webkitpy/style/checkers/cpp.py:
4009         (check_language): Add checker to warn about using
4010         ASSERT_WITH_SECURITY_IMPLICATION().
4011         (CppChecker.categories): Add 'security/assertion' to list of
4012         enabled checkers.
4013         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
4014         (CppStyleTest.test_debug_security_assertion): Add tests for
4015         new checker.
4016
4017 2017-10-16  Chris Dumez  <cdumez@apple.com>
4018
4019         Clicks on Link with download attribute causes all (other) links to trigger download when clicked
4020         https://bugs.webkit.org/show_bug.cgi?id=178267
4021         <rdar://problem/34985016>
4022
4023         Reviewed by Darin Adler.
4024
4025         Use PassThrough policy in WKTR's InjectedBundle's decidePolicyForNewWindowAction so that the
4026         request is sent to the UIProcess. This gets WKTR's closer to Safari behavior and helps
4027         reproduce the bug. Without this change, I would not be able to write a regression test for
4028         this bug that is very easily reproducible in Safari.
4029
4030         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
4031         (WTR::InjectedBundlePage::decidePolicyForNewWindowAction):
4032
4033 2017-10-16  Emilio Cobos Álvarez  <emilio@crisal.io>
4034
4035         Add Emilio Cobos Álvarez to the contributors list.
4036         https://bugs.webkit.org/show_bug.cgi?id=178334
4037
4038         Reviewed by Antti Koivisto.
4039
4040         * Scripts/webkitpy/common/config/contributors.json:
4041
4042 2017-10-07  Maciej Stachowiak  <mjs@apple.com>
4043
4044         Improve --help documentation and add --list-plans to show available benchmarks.
4045         https://bugs.webkit.org/show_bug.cgi?id=178059
4046
4047         Reviewed by Ryosuke Niwa.
4048
4049         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
4050         (BenchmarkRunner.available_plans): New function that returns the list of available plans.
4051         (BenchmarkRunner.plan_directory): New method to centralize knowledge of where the plan files live.
4052         (BenchmarkRunner._find_plan_file): Updated to use BenchmarkRunner.plan_directory
4053
4054         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
4055         
4056         (parse_args): Help cleanup: Reordered options to put more common
4057         ones at the top. Fixed wording. Added help for each
4058         option. Explained default for each option that has one.
4059
4060         New option: --list-plans which tells you the available benchmarks.
4061         
4062         Code cleanup: Removed use of dest where redundant, made variable
4063         names conforming to Python coding style.
4064         
4065         (run_benchmark_plan): Adapted for new variable names.
4066         (list_benchmark_plans): New helper for --list-plans option.
4067         (start): Account for --list-plans. Also use
4068         BechmarkRunner.available_plans and use
4069         BenchmarkRunner.plan_directory instead of duplicating
4070         code/knowledge here.
4071
4072 2017-10-16  Wenson Hsieh  <wenson_hsieh@apple.com>
4073
4074         On ToT, event.dataTransfer.getData("text/uri-list") returns an empty string when dragging an image
4075         https://bugs.webkit.org/show_bug.cgi?id=178301
4076         <rdar://problem/34990050>
4077
4078         Reviewed by Darin Adler.
4079
4080         Fixes issues in DumpRenderTree's LocalPasteboard to ensure that drag-drop-href-as-url.html exposes files, and
4081         also adds a new iOS drag and drop API test.
4082
4083         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
4084         (-[LocalPasteboard addTypes:owner:]):
4085         (-[LocalPasteboard setData:forType:]):
4086
4087         Fixes LocalPasteboard's implementation of changeCount to incremement when the pasteboard owner changes, rather
4088         than every time data is changed. This is consistent with NSPasteboard behavior.
4089
4090         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
4091         (TestWebKitAPI::TEST):
4092
4093         Adds a new API test to verify that an image and HTTP URL written by the platform is correctly web exposed.
4094
4095 2017-10-15  Darin Adler  <darin@apple.com>
4096
4097         UTF-8 decoding produces one replacement character per byte; Encoding standard requires one replacement character per illegal sequence instead
4098         https://bugs.webkit.org/show_bug.cgi?id=178207
4099
4100         Reviewed by Sam Weinig.
4101
4102         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added test.
4103         * TestWebKitAPI/Tests/WebCore/TextCodec.cpp: Added.
4104         (TestWebKitAPI::decodeHexTestBytes): Decodes a string so we can write readable tests.
4105         (TestWebKitAPI::escapeNonPrintableASCIICharacters): Encodes a string so we can write readable tests.
4106         (TestWebKitAPI::TEST): Added some UTF-8 tests and UTF-8 invalid sequences tests.
4107         Would be smart to add more tests for other cases, exercising the fast ASCII loop for example, and
4108         other encodings.
4109
4110 2017-10-14  Adrian Perez de Castro  <aperez@igalia.com>
4111
4112         [WPE] JHBuild build directory DependenciesWPE/Build is not removed by update-webkit-libs-jhbuild
4113         https://bugs.webkit.org/show_bug.cgi?id=178212
4114
4115         Reviewed by Michael Catanzaro.
4116
4117         * Scripts/update-webkit-libs-jhbuild:
4118         (cleanJhbuild): The WPE JHBuild also uses a separate "Build" subdirectory, so do not skip
4119         cleaning it when "--wpe" is passed to the script.
4120
4121 2017-10-13  Adrian Perez de Castro  <aperez@igalia.com>
4122
4123         [WPE] Fontconfig fails build in JHBuild with “error: conflicting types for ‘FcObjectTypeHash’”
4124         https://bugs.webkit.org/show_bug.cgi?id=178283
4125
4126         Reviewed by Žan Doberšek.
4127
4128         * wpe/jhbuild.modules: Flag Fontconfig to be built inside the source directory, otherwise
4129         compilation fails. While at it, pass "--disable-docs" to cut a bit on build time.
4130
4131 2017-10-13  Youenn Fablet  <youenn@apple.com>
4132
4133         Implement listing origins for which CacheStorage is storing data
4134         https://bugs.webkit.org/show_bug.cgi?id=178236
4135
4136         Reviewed by Chris Dumez.
4137
4138         Adding hasDOMCache API for checking whether origin is storing data through Cache API.
4139
4140         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
4141         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4142         (WTR::TestRunner::hasDOMCache):
4143         * WebKitTestRunner/InjectedBundle/TestRunner.h:
4144         * WebKitTestRunner/TestController.cpp:
4145         (WTR::FetchCacheOriginsCallbackContext::FetchCacheOriginsCallbackContext):
4146         (WTR::fetchCacheOriginsCallback):
4147         (WTR::TestController::hasDOMCache):
4148         * WebKitTestRunner/TestController.h:
4149         * WebKitTestRunner/TestInvocation.cpp:
4150         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
4151
4152 2017-10-13  Alex Christensen  <achristensen@webkit.org>
4153
4154         Remove Editor::simplifyMarkup
4155         https://bugs.webkit.org/show_bug.cgi?id=178271
4156
4157         Reviewed by Wenson Hsieh.
4158
4159         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4160         * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm: Removed.
4161
4162 2017-10-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
4163
4164         [GLib] WebKitNavigationAction should tell whether it is a redirect
4165         https://bugs.webkit.org/show_bug.cgi?id=178178
4166
4167         Test that WebKitNavigationAction properly reports being a redirect.
4168
4169         Reviewed by Carlos Garcia Campos.
4170
4171         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
4172         (testNavigationPolicy): test that loading /redirect leads to a redirect WebKitNavigationAction.
4173         (serverCallback): add a /redirect path to the server, which causes a redirect.
4174
4175 2017-10-13  Chris Dumez  <cdumez@apple.com>
4176
4177         Unreviewed, fix webkitpy failure after r223273
4178
4179         * Scripts/webkitpy/w3c/test_importer_unittest.py:
4180         (TestImporterTest.test_harnesslinks_conversion):
4181
4182 2017-10-12  Chris Dumez  <cdumez@apple.com>
4183
4184         import-w3c-tests modifies test sources and sometimes causes them to fail
4185         https://bugs.webkit.org/show_bug.cgi?id=178234
4186
4187         Reviewed by Ryosuke Niwa.
4188
4189         Update import-w3c-tests to stop rewriting tests as this is causing some tests
4190         to fail unexpectedly.
4191
4192         * Scripts/webkitpy/w3c/test_importer.py:
4193         (TestImporter.import_tests):
4194
4195 2017-10-12  Youenn Fablet  <youenn@apple.com>
4196
4197         Layout Test http/tests/cache-storage/cache-clearing.https.html is failing
4198         https://bugs.webkit.org/show_bug.cgi?id=178200
4199
4200         Reviewed by Chris Dumez.
4201
4202         Making clearDOMCache wait for removal completion to exit.
4203         This removes the risk to interact with the cache while deleting it which will end up be racy in tests.
4204
4205         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4206         (WTR::TestRunner::clearDOMCache):
4207         * WebKitTestRunner/TestController.cpp:
4208         (WTR::ClearDOMCacheCallbackContext::ClearDOMCacheCallbackContext):
4209         (WTR::clearDOMCacheCallback):
4210         (WTR::TestController::clearDOMCache):
4211         * WebKitTestRunner/TestInvocation.cpp:
4212         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
4213         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
4214
4215 2017-10-12  John Wilander  <wilander@apple.com>
4216
4217         ResourceLoadObserver::logFrameNavigation() should use redirectResponse.url()
4218         https://bugs.webkit.org/show_bug.cgi?id=175257
4219         <rdar://problem/33359866>
4220
4221         Reviewed by Brent Fulgham.
4222
4223         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
4224         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
4225         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
4226         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
4227         * WebKitTestRunner/InjectedBundle/TestRunner.h:
4228         * WebKitTestRunner/TestController.cpp:
4229         (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
4230             Not implemented.
4231         (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
4232             Not implemented.
4233         * WebKitTestRunner/TestController.h:
4234         * WebKitTestRunner/TestInvocation.cpp:
4235         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
4236         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
4237         (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
4238             Implemented platform-specific.
4239         (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
4240             Implemented platform-specific.
4241
4242 2017-10-12  Andy Estes  <aestes@apple.com>
4243
4244         [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
4245         https://bugs.webkit.org/show_bug.cgi?id=178181
4246         <rdar://problem/33660282>
4247
4248         Reviewed by Dan Bernstein.
4249
4250         * WebKitTestRunner/TestController.cpp:
4251         (WTR::TestController::databaseProcessName):
4252
4253 2017-10-12  Myles C. Maxfield  <mmaxfield@apple.com>
4254
4255         Emit SPIR-V from WSL compiler (Part 1)
4256         https://bugs.webkit.org/show_bug.cgi?id=177998
4257
4258         Reviewed by Filip Pizlo.
4259
4260         This patch implements the first half of a SPIR-V codegen phase for WSL.
4261         This includes all the operations which aren't actually emitting the contents
4262         of functions themselves. For example, this includes things like representing
4263         WSL types with SPIR-V types, and declaring shaders' inputs and outputs. A
4264         future patch will actually emit the contents of functions.
4265
4266         There are two helper visitors here: SPIRVTypeAnalyzer which generates SPIR-V
4267         types from WSL types, and SPIRVPrimitiveVariableAnalyzer which identifies
4268         input&n