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