1 2018-06-30 Thibault Saunier <tsaunier@igalia.com>
3 Make check_flatpak() not verbose when only trying to run command inside flatpak
4 https://bugs.webkit.org/show_bug.cgi?id=187187
6 Reviewed by Michael Catanzaro.
8 * flatpak/flatpakutils.py:
9 (run_in_sandbox_if_available):
11 2018-06-29 Daniel Bates <dabates@apple.com>
13 build-webkit: Perl "use of uninitialized value $previousContents"
14 https://bugs.webkit.org/show_bug.cgi?id=185776
16 Reviewed by Michael Catanzaro.
18 Fixes an issue where reading an empty cached argument file would cause
19 Perl "uninitialized value" warnings of the form:
20 Use of uninitialized value $previousContents in chomp at C:/WebKit-BuildWorker/wincairo-wkl-debug/build/Tools/Scripts/webkitdirs.pm line 1969.
21 Use of uninitialized value $previousContents in string ne at C:/WebKit-BuildWorker/wincairo-wkl-debug/build/Tools/Scripts/webkitdirs.pm line 1972.
23 * Scripts/webkitdirs.pm:
24 (isCachedArgumentfileOutOfDate):
26 2018-06-29 Daniel Bates <dabates@apple.com>
28 Perl uninitialized value $isEnabled when running build-jsc using a CMake build
29 https://bugs.webkit.org/show_bug.cgi?id=187208
31 Reviewed by Tim Horton.
33 Share logic for computing the feature flags to enable in CMake with both script
34 build-webkit and script build-jsc instead of duplicating it. This also fixes a
35 bug in the version of this logic in build-jsc that was inadvertently not updated
36 in r222394. In r222394 we removed the notion of a default value for a feature flag
37 listed in webkitperl::FeatureList.
39 We keep the current behavior of build-jsc and leave it up to the build system
40 to determine whether to enable or disable ENABLE_EXPERIMENTAL_FEATURES.
44 (cMakeArgsFromFeatures): Deleted.
45 * Scripts/build-webkit:
46 (cMakeArgsFromFeatures): Deleted; moved to webkitdirs.pm.
47 * Scripts/webkitdirs.pm:
48 (cmakeArgsFromFeatures): Moved code from script build-webkit so that it can be shared
51 2018-06-29 Tim Horton <timothy_horton@apple.com>
53 Add -apple-color-filter and system appearance toggles to MiniBrowser
54 https://bugs.webkit.org/show_bug.cgi?id=187210
56 Reviewed by Simon Fraser.
58 * MiniBrowser/mac/AppDelegate.m:
59 (defaultConfiguration):
60 * MiniBrowser/mac/SettingsController.h:
61 * MiniBrowser/mac/SettingsController.m:
62 (-[SettingsController _populateMenu]):
63 (-[SettingsController validateMenuItem:]):
64 (-[SettingsController toggleAppleColorFilterEnabled:]):
65 (-[SettingsController appleColorFilterEnabled]):
66 (-[SettingsController toggleUseSystemAppearance:]):
67 (-[SettingsController useSystemAppearance]):
68 * MiniBrowser/mac/WK1BrowserWindowController.m:
69 (-[WK1BrowserWindowController didChangeSettings]):
70 * MiniBrowser/mac/WK2BrowserWindowController.m:
71 (-[WK2BrowserWindowController didChangeSettings]):
73 2018-06-29 Aditya Keerthi <akeerthi@apple.com>
75 [macOS] Do not crash if there is an attempt to copy a file URL to the clipboard
76 https://bugs.webkit.org/show_bug.cgi?id=187183
78 Reviewed by Wenson Hsieh.
80 Added a 'runSingly' option to the TestOptions struct. Setting this option to true
81 will force a new PlatformWebView to be created before running a test. This ensures
82 that any state set by previous tests are not preserved.
84 One example of the importance of having this ability is in the case where we want
85 to test functionality that deals with read access to files. If a test were to
86 load a valid file URL, universal read access will be granted in WebProcessProxy.
87 This prevents us from testing cases that rely on us not have universal read
88 access. Now, if we write the test using the 'runSingly' option, any state set
89 by previous tests is cleared. Consequently, our test will behave as expected.
91 * WebKitTestRunner/PlatformWebView.h:
92 (WTR::PlatformWebView::viewSupportsOptions const):
93 * WebKitTestRunner/TestController.cpp:
94 (WTR::updateTestOptionsFromTestHeader):
95 * WebKitTestRunner/TestOptions.h:
96 (WTR::TestOptions::hasSameInitializationOptions const):
98 2018-06-29 Daniel Bates <dabates@apple.com>
100 [lldb-webkit] Non-empty strings may be pretty-printed as empty
101 https://bugs.webkit.org/show_bug.cgi?id=187185
103 Reviewed by Simon Fraser.
105 For some reason lldb(1) sometimes has an issue accessing members of WTF::StringImplShape
106 via a WTF::StringImpl pointer (why?). Explicitly casting a WTF::StringImpl* to a
107 WTF::StringImplShape* before accessing such members makes LLDB happy.
109 I tried writing a test for this both for the LLVM project and to add to our lldb_webkit unit
110 tests to no avail. I have only been able to reproduce this bug sporadically during my WebCore/WebKit
111 debugging sessions so far.
113 * lldb/lldb_webkit.py:
114 (WTFStringImplProvider.__init__): Explicitly cast the WTF::StringImpl* to WTF::StringImplShape*.
115 (WTFStringImplProvider.get_data8): Update code now that we are directly accessing WTF::StringImplShape*.
116 (WTFStringImplProvider.get_data16): Ditto.
118 2018-06-29 Chris Dumez <cdumez@apple.com>
120 WebKitLegacy: Can trigger recursive loads triggering debug assertions
121 https://bugs.webkit.org/show_bug.cgi?id=187121
122 <rdar://problem/41259430>
124 Reviewed by Brent Fulgham.
126 Add API test coverage.
128 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
129 * TestWebKitAPI/Tests/mac/StartLoadInDidFailProvisionalLoad.mm: Added.
130 (-[StartLoadInDidFailProvisionalLoadDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
131 (-[StartLoadInDidFailProvisionalLoadDelegate webView:didFinishLoadForFrame:]):
132 (TestWebKitAPI::TEST):
134 2018-06-29 Lucas Forschler <lforschler@apple.com>
136 Teach bisect-builds to retrieve supported platforms from the rest api.
137 https://bugs.webkit.org/show_bug.cgi?id=187195
139 This patch updates bisect-builds to use v2_2 of the API. v2_2 adds two api endpoints: /platforms, and /minified-platforms.
140 These endpoints scan a dynamoDB database, returning the identifier key for all available platforms.
141 The identifier keys are in the format: platform-architecture-configuration.
143 Reviewed by Aakash Jain.
145 * Scripts/bisect-builds:
146 (get_api_archive_url): refactored from get_api_url.
147 (get_platforms): helper function to retrieve from the platforms api.
148 (minified_platforms): returns a list of minified platforms currently in the database
149 (unminified_platforms): returns a list of unminified platforms currently in the database
150 (is_supported_platform): checks if the platform-architecture-configuration combo is supported
151 (fetch_revision_list): refactored to use get_api_archive_url
152 (get_api_url): Deleted/refactored to get_api_archive_url.
154 2018-06-29 Keith Miller <keith_miller@apple.com>
156 run-jsc should print when jsc exits with non-zero status
157 https://bugs.webkit.org/show_bug.cgi?id=187192
159 Reviewed by Saam Barati.
163 2018-06-29 Aakash Jain <aakash_jain@apple.com>
165 [ews-build] Add timeout to webkitpy and webkitperl tests
166 https://bugs.webkit.org/show_bug.cgi?id=187191
168 Reviewed by Lucas Forschler.
170 * BuildSlaveSupport/ews-build/steps.py:
171 (RunWebKitPerlTests.__init__): Set timeout of 2 minutes.
172 (RunWebKitPyTests.__init__): Ditto.
173 * BuildSlaveSupport/ews-build/steps_unittest.py: Updated unit-tests.
175 2018-06-29 Carlos Alberto Lopez Perez <clopez@igalia.com>
177 [WPE]: Fix exception handling when flatpak is not installed
178 https://bugs.webkit.org/show_bug.cgi?id=186771
180 Unreviewed followup-fix after r233362
182 This was causing failures when flatpak is not installed.
184 * flatpak/flatpakutils.py:
187 2018-06-29 Ross Kirsling <ross.kirsling@sony.com>
189 [JSCOnly] Restore Windows build.
190 https://bugs.webkit.org/show_bug.cgi?id=187127
192 Reviewed by Michael Catanzaro.
195 Fix condition for disabling FTL JIT on Windows.
197 * Scripts/webkitdirs.pm:
198 (executableProductDir):
199 JSCOnly should still use bin64 on Windows (for consistency with full WebKit build).
201 JSCOnly already defaults to 64-bit on Windows with Ninja -- ensure that this is true even with MSBuild.
203 2018-06-29 Thibault Saunier <tsaunier@igalia.com>
205 [GTK][WPE]: Add a way to setup our development environment inside flatpak
206 https://bugs.webkit.org/show_bug.cgi?id=186771
208 Reviewed by Carlos Alberto Lopez Perez.
210 This patch introduce a way to setup the development environment inside flatpak[0]
211 removing the need for jhbuild when doing so. Anything needed to build/run minibrowser/ run
212 layout tests is provided either but the org.gnome.Sdk runtime or built with flatpak-builder.
214 The workflow is very similar to the "jhbuild based" one except that you should use update-webkit$PORTNAME-flatpak instead
215 of update-webkit$PORTNAME-libs and that script requires to specify a build configuration (--release is default).
217 Our scripts have been updated to be able to run inside that new build environment.
219 Since everything runs inside a flatpak sandbox, gdb needs to be run from within the sandbox, the script exposes a way to do it
220 easily with the `--gdb` option:
222 $ webkit-flatpak --gdb [-m COREDUMPCTL MATCHES]
224 The Layout test `GDBCrashLogGenerator` has been taugth how to use that and is able to retrieve stacktrace as with the jhbuild based workflow.
226 [0] http://flatpak.org
228 * Scripts/build-webkit:
229 * Scripts/generate-jsc-bundle:
231 * Scripts/run-gtk-tests:
232 * Scripts/run-minibrowser:
233 * Scripts/run-webdriver-tests:
234 * Scripts/run-webkit-tests:
235 * Scripts/run-wpe-tests:
236 * Scripts/update-webkitgtk-libs:
237 * Scripts/update-webkitwpe-libs:
238 * Scripts/webkit-flatpak: Added.
239 * Scripts/webkitdirs.pm:
244 (runInFlatpakIfAvalaible):
245 (wrapperPrefixIfNeeded):
247 * Scripts/webkitpy/port/base.py:
248 (Port._path_to_apache):
250 (Port._apache_config_file_name_for_platform):
251 (Port._should_use_flatpak):
253 (Port._in_flatpak_sandbox):
254 (Port._should_use_jhbuild):
255 * Scripts/webkitpy/port/gtk.py:
256 (GtkPort.setup_environ_for_server):
257 * Scripts/webkitpy/port/linux_get_crash_log.py:
258 (GDBCrashLogGenerator._get_trace_from_systemd):
259 (GDBCrashLogGenerator.generate_crash_log):
260 * Scripts/webkitpy/port/wpe.py:
261 (WPEPort.setup_environ_for_server):
262 * Scripts/webkitpy/w3c/wpt_runner.py:
264 * flatpak/files/default.xkm: Added.
265 * flatpak/files/httpd-autogen.sh: Added.
266 * flatpak/flatpakutils.py: Added.
270 (remove_extension_points):
272 (remove_comments._replacer):
276 (FlatpakObject.__init__):
277 (FlatpakObject.flatpak):
279 (FlatpakPackages.__init__):
280 (FlatpakPackages.__detect_packages):
281 (FlatpakPackages.__detect_packages.in):
282 (FlatpakPackages.__detect_runtimes):
283 (FlatpakPackages.__detect_apps):
284 (FlatpakPackages.__iter__):
286 (FlatpakRepos.__init__):
287 (FlatpakRepos.update):
290 (FlatpakRepo.__init__):
291 (FlatpakRepo.repo_file):
293 (FlatpakPackage.__init__):
294 (FlatpakPackage.__str__):
295 (FlatpakPackage.is_installed):
296 (FlatpakPackage.install):
297 (FlatpakPackage.update):
299 (WebkitFlatpak.load_from_args):
300 (WebkitFlatpak.__init__):
301 (WebkitFlatpak.check_flatpak):
302 (WebkitFlatpak.check_flatpak.comparable_version):
303 (WebkitFlatpak.clean_args):
304 (WebkitFlatpak.run_in_sandbox):
306 (WebkitFlatpak.has_environment):
307 (WebkitFlatpak.setup_dev_env):
308 (WebkitFlatpak.install_all):
309 (WebkitFlatpak.run_gdb):
310 (WebkitFlatpak.update_all):
312 (run_in_sandbox_if_available):
313 * flatpak/org.webkit.GTK.yaml: Added.
314 * flatpak/org.webkit.WPE.yaml: Added.
315 * flatpak/org.webkit.WebKit.yaml: Added.
316 * flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Added.
317 * flatpak/patches/xvfb-0001-HACK-Avoid-compiling-a-kbm-file.patch: Added.
319 2018-06-28 Wenson Hsieh <wenson_hsieh@apple.com>
321 [iOS] DataTransfer.getData always returns the empty string when dropping text
322 https://bugs.webkit.org/show_bug.cgi?id=187130
323 <rdar://problem/41014117>
325 Reviewed by Ryosuke Niwa.
327 Add 2 new API tests to verify that:
328 - When dropping an item with text, markup, and URL representations, the page is allowed to get "text/html",
329 "text/plain" and "text/uri-list" data.
330 - Adding a suggested name to a plain text item causes WebKit to treat it as a file, and suppress access to
331 DataTransfer.getData().
333 Additionally tweaks a couple of existing API tests. Namely, in two API tests
334 (ExternalSourceOverrideDropFileUpload and ExternalSourceHTMLToUploadArea) only a markup string is dropped, and
335 we previously expected to handle the drop as a file. To allow this test to continue serving its purpose, tweak
336 them such that the registered items appear to be file-backed (i.e. by adding a suggested filename in one of the
337 tests, and specifying UIPreferredPresentationStyleAttachment in the other).
339 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
340 (TestWebKitAPI::TEST):
342 2018-06-28 Basuke Suzuki <Basuke.Suzuki@sony.com>
344 Unreviewed, rolling out r226652.
345 https://bugs.webkit.org/show_bug.cgi?id=180827
347 "PlatformInfo should never be instantiated in isolation. So, PlatformInfo should
348 not have default argument values. The preferred way to get a PlatformInfo object
349 is to instantiate a Host object." (Requested by dbates).
353 "[webkitpy] PlatformInfo should have default argument for casual use"
354 https://bugs.webkit.org/show_bug.cgi?id=180827
356 2018-06-28 Simon Fraser <simon.fraser@apple.com>
358 Try to address test failures on the bots.
360 Allow the test to distinguish between a failure to find the variable, and an error
361 reporting vector capacity.
363 * lldb/lldb_webkit_unittest.py:
364 (TestSummaryProviders.serial_test_WTFVectorProvider_empty_vector):
365 (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
367 2018-06-28 Lucas Forschler <lforschler@apple.com>
369 Add Windows support for WEBKIT_API_KEY.
370 https://bugs.webkit.org/show_bug.cgi?id=187155
372 Reviewed by Daniel Bates.
374 * EWSTools/start-queue-win.sh:
376 2018-06-28 Aakash Jain <aakash_jain@apple.com>
378 [ews-build] Add support for WebKitPy-Tests-EWS
379 https://bugs.webkit.org/show_bug.cgi?id=187148
381 Reviewed by Lucas Forschler.
383 * BuildSlaveSupport/ews-build/factories.py: Added WebKitPyFactory.
384 * BuildSlaveSupport/ews-build/steps.py: Added build step RunWebKitPyTests.
385 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
386 * BuildSlaveSupport/ews-build/config.json: Updated to use CamelCase.
388 2018-06-28 Daniel Bates <dabates@apple.com>
390 Fix the iOS build following r233299
391 (https://bugs.webkit.org/show_bug.cgi?id=183744)
393 Only build lldbWebKitTester on Mac as that is the only supported platform at the time of writing.
397 2018-06-28 Sihui Liu <sihui_liu@apple.com>
399 Cookie API: cookie creation time is wrong
400 https://bugs.webkit.org/show_bug.cgi?id=187101
402 Reviewed by Geoffrey Garen.
404 Add test coverage: make sure the cookie creation time returned is the same as set.
406 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
409 2018-06-28 Simon Fraser <simon.fraser@apple.com>
411 The lldb vector summary provider always shows zero capacity
412 https://bugs.webkit.org/show_bug.cgi?id=187132
414 Reviewed by Daniel Bates.
416 WTFVectorProvider in lldb_webkit.py was calling GetChildMemberWithName('m_capacity')
417 on the buffer instead of the valobj.
419 * lldb/lldbWebKitTester/main.cpp:
420 (testSummaryProviders):
421 * lldb/lldb_webkit.py:
422 (WTFVectorProvider.update):
423 * lldb/lldb_webkit_unittest.py:
424 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_16bit_string):
425 (TestSummaryProviders):
426 (TestSummaryProviders.serial_test_WTFVectorProvider_empty_vector):
427 (TestSummaryProviders.serial_test_WTFVectorProvider_vector_size_and_capacity):
429 2018-06-28 Adam Barth <abarth@webkit.org>
431 Switch OS(FUCHSIA) to using JSCOnly
432 https://bugs.webkit.org/show_bug.cgi?id=187133
434 Reviewed by Yusuke Suzuki.
436 Switch Fuchsia from being a port to just being an OS. We now use a
437 CMAKE_TOOLCHAIN_FILE to configure the toolchain and the target triple.
439 * Scripts/webkitdirs.pm: Remove isFuchsia() and clients. Turns out we
440 can do everything we need using a CMAKE_TOOLCHAIN_FILE via the
443 2018-06-27 Ryosuke Niwa <rniwa@webkit.org>
445 Make MotionMark's plan file more robust against code changes
446 https://bugs.webkit.org/show_bug.cgi?id=187116
447 <rdar://problem/41533956>
449 Reviewed by Saam Barati.
451 Moved the code to auto-start the test to the load event listener.
453 * Scripts/webkitpy/benchmark_runner/data/patches/webserver/MotionMark.patch:
455 2018-06-27 Daniel Bates <dabates@apple.com>
457 Add some tests for lldb_webkit.py
458 https://bugs.webkit.org/show_bug.cgi?id=183744
460 Reviewed by Alexey Proskuryakov.
462 Adds some tests to ensure we do not regress LLDB pretty-printing of WTF::StringImpl
463 and WTF::String objects.
465 The tests make use of the LLDB Python API (lldb.py) and a simple debug-built test
466 program, lldbWebKitTester, to run. For now, we only support building lldbWebKitTester
469 * Makefile: Build the simple test tool lldbWebKitTester on Mac.
470 * Scripts/build-lldbwebkittester: Added.
472 * Scripts/dump-class-layout: Extract logic to compute the path to the LLDB Python module
473 from here to Scripts/webkitpy/common/system/systemhost.py so that it can used by both
474 this script and lldb/lldb_webkit_unittest.py. Also import the lldb module at the top of
475 the file and take advantage of Python's default error semantics to throw an exception
476 if the import fails instead of handling it ourself. This has the side effect that we
477 now always import the LLDB Python module even if this script is invoked with --help.
478 If this turns out to be a significant annoyance then we can look to dynamically import
479 the module as we did before this change.
482 (developer_dir): Deleted.
483 (import_lldb): Deleted.
484 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py: Update FIXME comment to reflect
485 that fact that test-webkitpy does not support class and module fixtures. This is because
486 test-webkitpy currently implements parallelism by breaking down existing test classes
487 into individual test methods itself and having each worker run exactly one test method (via
488 unittest.TestLoader.loadTestsFromName()) at a time. As a result of this reorganization,
489 setUpModule()/setUpClass() are called for each test method as opposed to once per test
492 * Scripts/webkitpy/common/system/systemhost.py:
494 (SystemHost.path_to_lldb_python_directory): Added.
495 * Scripts/webkitpy/test/main.py:
496 (_find_lldb_webkit_tester): Returns whether there exists a Debug or Release-built lldbWebKitTester.
497 (_build_lldb_webkit_tester): Builds lldbWebKitTester. For now, we only support building
498 lldbWebKitTester on Mac.
499 (main): Add Tools/lldb to the test search path if the platform has lldb.py.
500 (Tester.run): Pass a boolean as to whether we will run the lldb_webkit unit tests.
501 (Tester._run_tests): Modified to take a boolean as to whether to run the lldb_webkit unit tests.
502 If we will run these tests then build lldbWebKitTester if it has not already been built as the
503 unit tests depend on this program.
504 * lldb/lldbWebKitTester/Configurations/Base.xcconfig: Added.
505 * lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig: Added.
506 * lldb/lldbWebKitTester/Configurations/lldbWebKitTester.xcconfig: Added.
507 * lldb/lldbWebKitTester/Makefile: Added.
508 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Added.
509 * lldb/lldbWebKitTester/main.cpp: Added.
510 (breakForTestingSummaryProviders):
512 (testSummaryProviders):
514 * lldb/lldb_webkit_unittest.py: Added.
515 (destroy_cached_debug_session):
517 (LLDBDebugSession.setup):
518 (LLDBDebugSession.tearDown):
519 (TestSummaryProviders):
520 (TestSummaryProviders.setUpClass):
521 (TestSummaryProviders._sbFrame):
522 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_null_string):
523 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_empty_string):
524 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_8bit_string):
525 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_16bit_string):
526 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_null_string):
527 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_empty_string):
528 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_8bit_string):
529 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_16bit_string):
531 2018-06-27 Adam Barth <abarth@webkit.org>
533 Add Fuchsia support to build-jsc
534 https://bugs.webkit.org/show_bug.cgi?id=187086
536 Reviewed by Yusuke Suzuki.
538 Add Fuchsia port to webkitdirs.pm. This patch is sufficient to make
539 build-jsc kick off a cmake for Fuchsia.
541 * Scripts/webkitdirs.pm:
542 (determineSourceDir):
543 (argumentsForConfiguration):
545 (findMatchingArguments):
549 (wrapperPrefixIfNeeded):
550 (relaunchIOSSimulator):
553 2018-06-27 Daniel Bates <dabates@apple.com>
555 style-queue "AttributeError: 'NoneType' object has no attribute 'is_obsolete'" when processing security patch
556 https://bugs.webkit.org/show_bug.cgi?id=187120
558 Reviewed by David Kilzer.
560 Teach the style queue how to refetch a patch from the status server as we did for non-Style
563 * Scripts/webkitpy/tool/bot/stylequeuetask.py:
564 (StyleQueueTask.validate): Similar to change made to EarlyWarningSystemTask.validate() in r233107,
565 only check if the bug associated with the patch we are processing is closed if the attachment has a
567 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
568 (AbstractEarlyWarningSystem.refetch_patch): Extract logic to refetch a patch from here...
569 * Scripts/webkitpy/tool/commands/queues.py:
570 (PatchProcessingQueue._refetch_patch): ... to here.
571 (StyleQueue.refetch_patch): Turn around and call PatchProcessingQueue._refetch_patch().
573 2018-06-27 Tadeu Zagallo <tzagallo@apple.com>
575 Unreviewed, add myself as a WebKit committer.
577 * Scripts/webkitpy/common/config/contributors.json:
579 2018-06-27 Daniel Bates <dabates@apple.com>
581 webkit-patch should ignore non-ASCII characters in the status server API key
582 https://bugs.webkit.org/show_bug.cgi?id=187107
584 Reviewed by Lucas Forschler.
586 The API key should only consists of ASCII characters. If it contains any
587 non-ASCII characters then log a warning and ignore them.
589 * Scripts/webkitpy/common/net/statusserver.py:
590 (StatusServer.set_api_key): Force conversion to ASCII.
591 * Scripts/webkitpy/tool/main.py:
592 (WebKitPatch._status_server_api_key): Convert to ASCII, ignoring non-ASCII
593 characters and logging a warning.
595 2018-06-27 Jonathan Bedard <jbedard@apple.com>
597 Enable WebKit iOS 12 build
598 https://bugs.webkit.org/show_bug.cgi?id=187024
599 <rdar://problem/39759057>
601 Reviewed by David Kilzer.
603 * Scripts/configure-xcode-for-ios-development:
604 (copyMissingHeadersFromSDKToSDKIfNeeded): Copy launch.h into embedded SDKs.
606 2018-06-27 Robin Morisset <rmorisset@apple.com>
608 [WSL] Add a control-flow stack to the execution rules in WSL.ott
609 https://bugs.webkit.org/show_bug.cgi?id=186310
611 Rubberstamped by Filip Pizlo.
613 The goal of this is to enable (future) rules about uniform control flow for barriers.
614 It required adding two new special construct: Join(s) and JoinExpr(e) whose only role is to pop the last element of the stack.
616 * WebGPUShadingLanguageRI/SpecWork/WSL.ott:
618 2018-06-27 Robin Morisset <rmorisset@apple.com>
620 [WSL] Fix minor formatting issues in the grammar section
621 https://bugs.webkit.org/show_bug.cgi?id=186310
623 Rubberstamped by Filip Pizlo.
625 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
627 2018-06-27 Robin Morisset <rmorisset@apple.com>
629 [WSL] Put the full grammar in the Sphinx document
630 https://bugs.webkit.org/show_bug.cgi?id=186310
632 Rubberstamped by Filip Pizlo.
634 Put the grammar's production rules in the Sphinx document, along with a few comments and the rules for desugaring.
635 Also includes a bit of clean-up of the antlr rules.
637 * WebGPUShadingLanguageRI/SpecWork/WSL.g4:
638 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
640 2018-06-26 Chris Dumez <cdumez@apple.com>
642 Deal better with the network process crashing on startup
643 https://bugs.webkit.org/show_bug.cgi?id=187065
644 <rdar://problem/41451622>
646 Reviewed by Geoffrey Garen.
648 Add layout test coverage.
650 * TestWebKitAPI/Tests/WebKit/NetworkProcessCrashWithPendingConnection.mm:
651 (-[MonitorWebContentCrashNavigationDelegate _webView:webContentProcessDidTerminateWithReason:]):
652 (-[MonitorWebContentCrashNavigationDelegate webView:didFinishNavigation:]):
653 (TestWebKitAPI::TEST):
655 2018-06-25 Yusuke Suzuki <utatane.tea@gmail.com>
657 Remove static initializers more
658 https://bugs.webkit.org/show_bug.cgi?id=186969
660 Reviewed by Michael Catanzaro.
662 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
663 (WTR::assignedUrlsCache):
664 (WTR::dumpResourceURL):
665 (WTR::InjectedBundlePage::resetAfterTest):
666 (WTR::InjectedBundlePage::didInitiateLoadForResource):
667 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
668 (WTR::AccessibilityNotificationHandler::setNotificationFunctionCallback):
669 (WTR::AccessibilityNotificationHandler::removeAccessibilityNotificationHandler):
670 (WTR::AccessibilityNotificationHandler::connectAccessibilityCallbacks):
671 (WTR::AccessibilityNotificationHandler::disconnectAccessibilityCallbacks):
672 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
673 (WTR::AccessibilityUIElement::stringAttributeValue):
674 Use NeverDestroyed<> and static functions.
676 2018-06-26 Aakash Jain <aakash_jain@apple.com>
678 [ews-build] Add support for compiling WebKit
679 https://bugs.webkit.org/show_bug.cgi?id=187019
681 Reviewed by Lucas Forschler.
683 * BuildSlaveSupport/ews-build/steps.py:
684 (CompileWebKit): Added, class to compile WebKit.
685 (CleanBuild): Added, class to clean up the build.
686 (KillOldProcesses): Added, class to kill old processes.
687 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
688 * BuildSlaveSupport/ews-build/config.json: Renamed ios-11-simulator to ios-simulator-11, to match with build.webkit.org code.
689 Added configuration, architecture which is required for compiling. Renamed Release to release as the tools expect lower-case release.
690 * BuildSlaveSupport/ews-build/factories.py: Added BuildFactory.
691 * BuildSlaveSupport/ews-build/loadConfig.py: Renamed configuraton value to lower-case as tools expect lower-case values.
692 * BuildSlaveSupport/ews-build/loadConfig_unittest.py: Ditto.
694 2018-06-26 Aakash Jain <aakash_jain@apple.com>
696 [ews-build] Add support for WebKitPerl-Tests-EWS
697 https://bugs.webkit.org/show_bug.cgi?id=187023
699 Reviewed by Lucas Forschler.
701 * BuildSlaveSupport/ews-build/config.json: Added WebKitPerl-tests-EWS.
702 * BuildSlaveSupport/ews-build/factories.py: Added WebKitPerlFactory.
703 * BuildSlaveSupport/ews-build/steps.py: Added build step RunWebKitPerlTests.
704 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-test.
706 2018-06-26 Aakash Jain <aakash_jain@apple.com>
708 [build.webkit.org] Rename badly named variable kls to schedulerType
709 https://bugs.webkit.org/show_bug.cgi?id=186926
711 Reviewed by Lucas Forschler.
713 * BuildSlaveSupport/build.webkit.org-config/loadConfig.py:
714 (loadBuilderConfig): Renamed kls to schedulerType.
716 2018-06-26 Daniel Bates <dabates@apple.com>
718 EWS should pass --status-host-uses-http when invoking webkit-patch, if needed
719 https://bugs.webkit.org/show_bug.cgi?id=187061
721 Reviewed by Per Arne Vollan.
723 When EWS invokes webkit-patch to perform an operation (e.g. apply an attachment)
724 it should pass the command line option --status-host-uses-http, if EWS was
725 started with this command line option, so that we query the status server over
726 HTTP in child "webkit-patch" processes as we do in the main EWS process.
728 * Scripts/webkitpy/common/net/statusserver_mock.py:
729 (MockStatusServer.__init__):
730 * Scripts/webkitpy/tool/commands/queues.py:
731 (AbstractQueue.run_webkit_patch):
733 2018-06-26 Daniel Bates <dabates@apple.com>
735 webkit-patch: Make attachment commands work with status-server hosted attachments
736 https://bugs.webkit.org/show_bug.cgi?id=187056
738 Reviewed by Per Arne Vollan.
740 Allow the EWS bots to apply, build, test, check-style, and (in the future) land
741 attachments hosted on the status server. We only download an attachment from the
742 status server if we do not have sufficient permission to download it from Bugzilla
743 (e.g. security-sensitive patches).
745 A valid status server API key is required to run these commands by hand. Otherwise,
746 the status server will not provide attachment data.
748 * Scripts/webkitpy/common/net/statusserver_mock.py:
749 (MockStatusServer.fetch_attachment): Log a message for testing purposes.
750 * Scripts/webkitpy/tool/commands/download.py:
751 (ProcessAttachmentsMixin._fetch_list_of_patches_to_process): Fetch the attachment
752 from the status server if we do not have permission to fetch it from Bugzilla.
753 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
754 (EarlyWarningSystemTest._default_expected_logs): Update expected result when
755 using a custom work item and when fetching an attachment from the status server.
756 (_test_ews): Modified to take use_security_sensitive_patch (defaults to False) as
757 to whether to use a security-sensitive patch when testing.
758 (test_ewses_with_security_sensitive_patch): Added.
760 2018-06-26 Daniel Bates <dabates@apple.com>
762 contributors.json fails to parse after r233209
764 Removing trailing ',' that caused this file to be malformed. Also ran
765 "validate-committer-lists -c" to canonicalize the style of this file.
767 * Scripts/webkitpy/common/config/contributors.json:
769 2018-06-26 Timothy Horton <timothy_horton@apple.com>
771 Add Aditya to contributors.json as a contributor
773 * Scripts/webkitpy/common/config/contributors.json:
775 2018-06-26 Brent Fulgham <bfulgham@apple.com>
777 Provide a way for Injected Bundles to indicate classes approved for NSSecureCoding
778 https://bugs.webkit.org/show_bug.cgi?id=186788
779 <rdar://problem/41094167>
781 Reviewed by Chris Dumez.
783 Add a new test case to exercise the class check during NSSecureCoding.
785 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
786 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleObject.h: Added.
787 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleObject.mm: Added.
788 (-[CustomBundleObject initWithValue:]):
789 (+[CustomBundleObject supportsSecureCoding]):
790 (-[CustomBundleObject copyWithZone:]):
791 (-[CustomBundleObject initWithCoder:]):
792 (-[CustomBundleObject encodeWithCoder:]):
793 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter.mm: Added.
794 (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
795 (TestWebKitAPI::didFinishLoadForFrame):
796 * TestWebKitAPI/Tests/WebKit/mac/CustomBundleParameter_Bundle.mm: Added.
797 (TestWebKitAPI::CustomBundleParameterTest::CustomBundleParameterTest):
798 (TestWebKitAPI::CustomBundleParameterTest::didCreatePage):
800 2018-06-25 Daniel Bates <dabates@apple.com>
802 Log a message when fetching attachment data from the status server
803 https://bugs.webkit.org/show_bug.cgi?id=187032
805 Reviewed by Zalan Bujtas.
807 Currently we silently fetch from the status server an attachment when fetching
808 the attachment from Bugzilla fails due to an access denied error. Instead we
809 should emit a message when fetching data from the status server to indicate
810 that webkit-patch/EWS is still processing the command/trying to obtain the
813 * Scripts/webkitpy/common/net/statusserver.py:
814 (StatusServer._fetch_attachment_page):
816 2018-06-25 Aakash Jain <aakash_jain@apple.com>
818 [ews-build] Add support for Bindings-tests-EWS
819 https://bugs.webkit.org/show_bug.cgi?id=187014
821 Reviewed by Lucas Forschler.
823 * BuildSlaveSupport/ews-build/factories.py:
824 (BindingsFactory): Added RunBindingsTests build step to BindingsFactory.
825 * BuildSlaveSupport/ews-build/steps.py:
826 (RunBindingsTests): Added build-step for running Bindings tests.
827 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
829 2018-06-25 Aakash Jain <aakash_jain@apple.com>
831 [ews-build] Add support for Style-EWS
832 https://bugs.webkit.org/show_bug.cgi?id=186955
834 Reviewed by Lucas Forschler.
836 * BuildSlaveSupport/ews-build/factories.py:
837 (Factory): Base class for all the factory.
838 * BuildSlaveSupport/ews-build/loadConfig.py: Initialize factory with required parameters.
839 * BuildSlaveSupport/ews-build/runUnittests.py: Added, script to run all the unit tests.
840 * BuildSlaveSupport/ews-build/steps.py: Added.
841 * BuildSlaveSupport/ews-build/steps_unittest.py: Added unit-tests.
843 2018-06-25 Youenn Fablet <youenn@apple.com>
845 Add API to control mock media devices
846 https://bugs.webkit.org/show_bug.cgi?id=186958
848 Reviewed by Eric Carlson.
850 Add test runner API to clear/add/remove/reset mock media devices.
852 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
853 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
854 (WTR::TestRunner::addMockMediaDevice):
855 (WTR::TestRunner::addMockCameraDevice):
856 (WTR::TestRunner::addMockMicrophoneDevice):
857 (WTR::TestRunner::addMockScreenDevice):
858 (WTR::TestRunner::clearMockMediaDevices):
859 (WTR::TestRunner::removeMockMediaDevice):
860 (WTR::TestRunner::resetMockMediaDevices):
861 * WebKitTestRunner/InjectedBundle/TestRunner.h:
862 * WebKitTestRunner/TestController.cpp:
863 (WTR::TestController::addMockMediaDevice):
864 (WTR::TestController::clearMockMediaDevices):
865 (WTR::TestController::removeMockMediaDevice):
866 (WTR::TestController::resetMockMediaDevices):
867 * WebKitTestRunner/TestController.h:
868 * WebKitTestRunner/TestInvocation.cpp:
869 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
871 2018-06-25 Aakash Jain <aakash_jain@apple.com>
873 [ews-build] Add support for try Buildbot try schedulers
874 https://bugs.webkit.org/show_bug.cgi?id=186948
876 Reviewed by Lucas Forschler.
878 * BuildSlaveSupport/ews-build/config.json: Use Try_Userpass scheduler.
879 * BuildSlaveSupport/ews-build/loadConfig.py: Updated to use try scheduler.
881 2018-06-25 Ross Kirsling <ross.kirsling@sony.com>
883 [WinCairo] Unreviewed build fix for r233088.
885 * BuildSlaveSupport/built-product-archive:
886 (extractBuiltProduct):
887 "move" throws instead of overwriting, so just use "copy" instead.
889 2018-06-25 Leo Balter <leonardo.balter@gmail.com>
891 [test262-runner] Sort the list of failing files in the HTML report
892 https://bugs.webkit.org/show_bug.cgi?id=186998
894 Reviewed by Michael Saboff.
896 * Scripts/test262/Runner.pm:
897 (printHTMLResults): The current list of failing files it not ordered and it's hard to read.
898 This small patch will sort the list.
900 2018-06-25 Robin Morisset <rmorisset@apple.com>
902 [WSL] Start writing the Sphinx document
903 https://bugs.webkit.org/show_bug.cgi?id=186310
905 Rubberstamped by Filip Pizlo.
907 Very early work, just has the lexer and a few fragments of the parser so far.
908 Also fixing some minor mistake in the formal rules.
910 * WebGPUShadingLanguageRI/SpecWork/WSL.g4:
911 * WebGPUShadingLanguageRI/SpecWork/WSL.ott:
912 * WebGPUShadingLanguageRI/SpecWork/source/conf.py:
913 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
915 2018-06-23 Yusuke Suzuki <utatane.tea@gmail.com>
917 [WTF] Add user-defined literal for ASCIILiteral
918 https://bugs.webkit.org/show_bug.cgi?id=186839
920 Reviewed by Darin Adler.
922 * TestWebKitAPI/Tests/WTF/StringOperators.cpp:
923 (TestWebKitAPI::TEST):
924 * TestWebKitAPI/Tests/WTF/WTFString.cpp:
925 (TestWebKitAPI::TEST):
926 * TestWebKitAPI/Tests/WTF/WorkerPool.cpp:
927 (TestWebKitAPI::TEST):
928 * TestWebKitAPI/Tests/WebCore/ApplicationManifestParser.cpp:
930 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
931 (TestWebKitAPI::TEST_F):
932 * TestWebKitAPI/Tests/WebCore/URL.cpp:
933 (TestWebKitAPI::TEST_F):
934 * TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp:
935 (TestWebKitAPI::TEST):
936 * TestWebKitAPI/Tests/WebCore/mac/GPUCommandQueue.mm:
937 (TestWebKitAPI::TEST_F):
938 * TestWebKitAPI/Tests/WebCore/mac/GPUTest.h:
939 * TestWebKitAPI/Tests/WebKitCocoa/ContentFilteringPlugIn.mm:
940 (-[MockContentFilterEnabler initWithCoder:]):
941 * TestWebKitAPI/Tests/mac/ContentFiltering.mm:
942 (TestWebKitAPI::loadAlternateTest):
944 2018-06-22 Brady Eidson <beidson@apple.com>
946 WKURLSchemeHandler doesn't handle sync XHR.
947 <rdar://problem/40955884> and https://bugs.webkit.org/show_bug.cgi?id=186902
949 Reviewed by Chris Dumez.
951 * TestWebKitAPI/Tests/WebKitCocoa/WKURLSchemeHandler-1.mm:
952 (-[SyncScheme webView:startURLSchemeTask:]):
953 (-[SyncScheme webView:stopURLSchemeTask:]):
954 (-[SyncMessageHandler userContentController:didReceiveScriptMessage:]):
957 2018-06-22 Daniel Bates <dabates@apple.com>
959 Security EWS: bots fails with exception 'NoneType' object has no attribute 'is_closed'
960 https://bugs.webkit.org/show_bug.cgi?id=186923
962 Reviewed by Lucas Forschler.
964 Attachments downloaded from the status server (http://webkit-queues.webkit.org) do not
965 have an associated Bug object (i.e. Attachment.bug() is None) and reflect the state they
966 were in, including flags set, at the time they were uploaded to the status server. We
967 will add support for fetching up-to-date status info about the attachment and its bug
968 in <https://bugs.webkit.org/show_bug.cgi?id=186817>. For now, we only check if the
969 bug associated with the patch we are processing is closed if the attachment has a
972 * Scripts/webkitpy/tool/bot/earlywarningsystemtask.py:
973 (EarlyWarningSystemTask.validate):
975 2018-06-22 Ross Kirsling <ross.kirsling@sony.com>
977 [Win] ImageDiff should use DLLLauncher
978 https://bugs.webkit.org/show_bug.cgi?id=186927
980 ImageDiff should use DLLLauncher to find DLLs under WEBKIT_LIBRARIES, in the same way as DRT & TestWebKitAPI.
982 Reviewed by Per Arne Vollan.
984 * ImageDiff/CMakeLists.txt:
985 * ImageDiff/ImageDiff.cpp:
986 (dllLauncherEntryPoint):
987 * ImageDiff/PlatformWin.cmake:
989 2018-06-22 Basuke Suzuki <Basuke.Suzuki@sony.com>
991 [style] Fix --git-index option for check-webkit-style command
992 https://bugs.webkit.org/show_bug.cgi?id=186810
994 When --git-index is specified, it should be compared with HEAD, not the origin/master.
996 Reviewed by Daniel Bates.
998 * Scripts/webkitpy/common/checkout/scm/git.py:
1000 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
1001 (test_create_patch_with_git_index): Added.
1003 2018-06-22 Ryan Haddad <ryanhaddad@apple.com>
1005 Unreviewed, fix syntax error introduced by r233088.
1007 * BuildSlaveSupport/built-product-archive:
1008 (extractBuiltProduct):
1010 2018-06-22 Ross Kirsling <ross.kirsling@sony.com>
1012 [WinCairo][Buildbot] Test bots should use same WinCairoRequirements version as the triggering build
1013 https://bugs.webkit.org/show_bug.cgi?id=186857
1015 Reviewed by Lucas Forschler.
1017 * BuildSlaveSupport/built-product-archive:
1018 (archiveBuiltProduct):
1019 (extractBuiltProduct):
1020 Save and restore the WinCairoRequirements version using the build archive.
1022 * Scripts/download-github-release.py: Renamed from Tools/Scripts/download-latest-github-release.py.
1023 Generalize download script -- get the latest version by default, but allow an arbitrary version to be specified.
1025 * Scripts/update-vswhere.py:
1026 Consume renamed script.
1028 * Scripts/update-webkit-wincairo-libs.py:
1029 Consume renamed script and specify a version to download when a config file is present.
1031 2018-06-20 Darin Adler <darin@apple.com>
1033 [Cocoa] Use the isDirectory: variants of NSURL methods more to eliminate unnecessary file system activity
1034 https://bugs.webkit.org/show_bug.cgi?id=186875
1036 Reviewed by Anders Carlsson.
1038 * DumpRenderTree/mac/DumpRenderTree.mm:
1039 (activateTestingFonts): Use isDirectory:NO to create a URL for a font file.
1040 * WebKitTestRunner/InjectedBundle/cocoa/ActivateFontsCocoa.mm:
1041 (WTR::activateFonts): Ditto.
1042 (WTR::installFakeHelvetica): Ditto.
1044 2018-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
1046 [GTK] WebDriver: use a dictionary for session capabilities in StartAutomationSession message
1047 https://bugs.webkit.org/show_bug.cgi?id=186915
1049 Reviewed by Žan Doberšek.
1051 Update /webkit/WebKitAutomationSession/request-session to use the new StartAutomationSession message signature.
1053 * TestWebKitAPI/Tests/WebKitGLib/TestAutomationSession.cpp:
1055 2018-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
1057 Unreviewed. Fix GLib test /webkit/WebKitSecurityManager/file-xhr after r231000
1059 We are now receiving two console messages instead of one. Simply update the test to check both messages.
1061 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebContext.cpp:
1062 (consoleMessageReceivedCallback):
1063 (testWebContextSecurityFileXHR):
1065 2018-06-22 Carlos Garcia Campos <cgarcia@igalia.com>
1067 Unreviewed GLib gardening. Update expectations of TestSSL.
1069 /webkit/WebKitWebView/tls-errors-policy and /webkit/WebKitWebView/load-failed-with-tls-errors are failing only
1072 * TestWebKitAPI/glib/TestExpectations.json:
1074 2018-06-21 Daniel Bates <dabates@apple.com>
1076 EWS for security bugs
1077 https://bugs.webkit.org/show_bug.cgi?id=186291
1078 <rdar://problem/40829658>
1080 Substitute webkit.status-api-key for webkit.status_api_key as Git configuration variables can
1081 only consist of alphanumeric characters and underscores (_) per the second paragraph of section
1082 Configuration File of <https://git-scm.com/docs/git-config/2.18.0#_configuration_file>:
1084 The variable names are case-insensitive, allow only alphanumeric characters and -, and must
1085 start with an alphabetic character.
1087 * Scripts/webkitpy/tool/main.py:
1088 (WebKitPatch._status_server_api_key_from_git):
1090 2018-06-21 Daniel Bates <dabates@apple.com>
1092 EWS for security bugs
1093 https://bugs.webkit.org/show_bug.cgi?id=186291
1094 <rdar://problem/40829658>
1096 In r232979, I inadvertently removed a line of code in _parse_authorized_api_keys() to define a local called api_keys.
1099 * QueueStatusServer/config/authorization.py:
1100 (_parse_authorized_api_keys):
1102 2018-06-21 Daniel Bates <dabates@apple.com>
1104 EWS should not try to post comments or upload result archives to security-sensitive
1105 bugs unless it has access
1106 https://bugs.webkit.org/show_bug.cgi?id=186831
1108 Reviewed by Lucas Forschler.
1110 Following r232979 security-sensitive patches are uploaded to the status server so
1111 that they can be retrieved and processed by EWS bots without the need for Bugzilla
1112 security bug access. Although the EWS machinery is robust against unexpected exceptions,
1113 including exceptions raised when interacting with Bugzilla bugs/attachments with
1114 insufficient credentials, we should not depend on such defenses as they cause webkit-
1115 patch to log a message for the "unexpected" exception. We should reserve such logging
1116 for truly unexpected exceptions that indicate a programming mistake that we need to fix.
1118 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1119 (AbstractEarlyWarningSystem._post_reject_message_on_bug): Bail out early if we cannot
1121 * Scripts/webkitpy/tool/commands/queues.py:
1122 (PatchProcessingQueue._can_access_bug): Added.
1123 (PatchProcessingQueue._upload_results_archive_for_patch): Only add an attachment if we
1125 (CommitQueue.process_work_item): Only post a rejection comment (i.e. call CommitterValidatorreject_patch_from_commit_queue())
1126 if we can access the bug.
1128 2018-06-21 Lucas Forschler <lforschler@apple.com>
1130 bisect-builds --list not showing all builds
1131 https://bugs.webkit.org/show_bug.cgi?id=185790
1133 The AWS Gateway API call into dynamoDB is limited to returning 1MB of query data. Our archive set has overgrown this limit,
1134 causing us to retrieve a truncated list of results. Fortunately, when this limit is reached, dynamoDB returns a
1135 "LastEvaluatedKey", which can be used to continue the query in another request.
1137 This patch teaches bisect-build to pass along this key when needed. The backend api was updated from v2 to v2_1 to support
1138 this new querystring option. Any existing code using v2 will not be affected.
1140 Reviewed by Aakash Jain.
1142 * Scripts/bisect-builds:
1143 (get_api_url): added optional LastEvaluatedKey argument, which will append the query string to the base api url.
1144 (fetch_revision_list): Added to allow a recursive call which will query until we retrieve every item requested.
1145 (main): teach how to use fetch_revision_list.
1147 2018-06-21 Keith Rollin <krollin@apple.com>
1149 check-webkit-style should warn about exported inline functions
1150 https://bugs.webkit.org/show_bug.cgi?id=186861
1151 <rdar://problem/41303668>
1153 Reviewed by Brent Fulgham.
1155 When checking binaries compiled with LTO enabled, WebKit's
1156 check-for-weak-vtables-and-externals script can complain about
1157 exported inline functions. For instance, in
1158 Source/WebCore/page/scrolling/ScrollingTree.h, the following:
1160 WEBCORE_EXPORT virtual void reportSynchronousScrollingReasonsChanged(MonotonicTime, SynchronousScrollingReasons) { }
1161 WEBCORE_EXPORT virtual void reportExposedUnfilledArea(MonotonicTime, unsigned /* unfilledArea */) { }
1163 Can result in the following error messages:
1165 ERROR: WebCore has a weak external symbol in it (.../OpenSource/WebKitBuild/Release/WebCore.framework/Versions/A/WebCore)
1166 ERROR: A weak external symbol is generated when a symbol is defined in multiple compilation units and is also marked as being exported from the library.
1167 ERROR: A common cause of weak external symbols is when an inline function is listed in the linker export file.
1168 ERROR: symbol __ZN7WebCore13ScrollingTree25reportExposedUnfilledAreaEN3WTF13MonotonicTimeEj
1169 ERROR: symbol __ZN7WebCore13ScrollingTree40reportSynchronousScrollingReasonsChangedEN3WTF13MonotonicTimeEj
1171 Unfortunately, these errors are only emitted when LTO is enabled,
1172 meaning that a developer could check-in a file that will fail an LTO
1173 build if they don't build with that option locally. Therefore, try to
1174 head this off by updating check-webkit-style to identify and warn
1175 about these cases (which includes when an export macro is applied
1176 directly to an inline method as well as when an inline method is part
1177 of an exported class).
1179 * Scripts/webkitpy/style/checkers/cpp.py:
1180 (_FunctionState.begin):
1181 (_FunctionState.export_macro):
1182 (_ClassInfo.__init__):
1183 (check_for_non_standard_constructs):
1184 (check_function_definition):
1187 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1188 (FunctionDetectionTest.perform_function_detection):
1189 (FunctionDetectionTest.test_webcore_export):
1191 2018-06-21 Aakash Jain <aakash_jain@apple.com>
1193 [ews-build] unit-tests fail when run from another directory
1194 https://bugs.webkit.org/show_bug.cgi?id=186872
1196 Reviewed by Lucas Forschler.
1198 * BuildSlaveSupport/ews-build/loadConfig.py:
1199 (loadBuilderConfig): Add support for passing master_prefix_path.
1200 * BuildSlaveSupport/ews-build/loadConfig_unittest.py:
1201 (ConfigDotJSONTest.test_configuration): Set master_prefix_path as current directory.
1203 2018-06-21 Aakash Jain <aakash_jain@apple.com>
1205 Add support for using localhost worker in OpenSource EWS Buildbot
1206 https://bugs.webkit.org/show_bug.cgi?id=186871
1208 Reviewed by Lucas Forschler.
1210 * BuildSlaveSupport/ews-build/loadConfig.py:
1211 (loadBuilderConfig): Added a worker named 'local-worker' if use_localhost_worker option is used.
1212 * BuildSlaveSupport/ews-build/master.cfg: Check BUILDBOT_TESTING environment variable and use_localhost_worker if so.
1214 2018-06-21 Aakash Jain <aakash_jain@apple.com>
1216 Add force schedulers to OpenSource EWS Buildbot
1217 https://bugs.webkit.org/show_bug.cgi?id=186876
1219 Reviewed by Lucas Forschler.
1221 * BuildSlaveSupport/ews-build/loadConfig.py:
1222 (loadBuilderConfig): Added support for ForceScheduler.
1224 2018-06-21 Robin Morisset <rmorisset@apple.com>
1226 [WSL] Merge WSL_type.ott and WSL_exec.ott
1227 https://bugs.webkit.org/show_bug.cgi?id=186310
1229 Rubberstamped by Filip Pizlo.
1231 I moved the execution rules into WSL_type.ott, that was renamed WSL.ott.
1232 I also changed the execution judgements:
1233 - they now emit memory events instead of having an explicit store (so they can be connected later to a memory model)
1234 - the environment is now unchangeable (except inside blocks, which are the only place that variable declarations can appear)
1235 - various rules were simplified.
1237 * WebGPUShadingLanguageRI/SpecWork/WSL.ott: Copied from Tools/WebGPUShadingLanguageRI/SpecWork/WSL_type.ott.
1238 * WebGPUShadingLanguageRI/SpecWork/WSL_exec.ott: Removed.
1239 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott: Removed.
1241 2018-06-21 Leo Balter <leonardo.balter@gmail.com>
1243 [test262-runner] Improve failures output
1244 https://bugs.webkit.org/show_bug.cgi?id=186858
1246 Reviewed by Michael Saboff.
1248 * Scripts/test262/Runner.pm:
1252 2018-06-21 Caitlin Potter <caitp@igalia.com>
1254 [Tools] add a --debug option to test262/Runner.pm for buildbots
1255 https://bugs.webkit.org/show_bug.cgi?id=186113
1257 Reviewed by Michael Saboff.
1259 test262-runner runs Debug builds by default, but this allows us to be
1260 explicit about it in buildbots.
1262 * Scripts/test262/Runner.pm:
1265 2018-06-21 Carlos Garcia Campos <cgarcia@igalia.com>
1267 run-gtk-tests (glib/common.py) cannot determine build directory when webKitBranchBuild=true
1268 https://bugs.webkit.org/show_bug.cgi?id=185643
1270 Reviewed by Frédéric Wang.
1272 Check if webKitBranchBuild is true in git config to add the branch name to the build path.
1274 * Scripts/webkitpy/common/checkout/scm/git.py:
1275 (Git.read_git_config): Add output_type parameter.
1276 (Git.read_config): Call read_git_config with cws and executive.
1277 (Git._upstream_branch): Use read_config().
1278 (Git._assert_can_squash): Ditto.
1279 (Git.remote_branch_ref): Ditto.
1280 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
1281 (GitSVNTest.test_read_git_config):
1285 2018-06-20 Wenson Hsieh <wenson_hsieh@apple.com>
1287 [WebKit on watchOS] Fixed position elements sometimes flicker when scrolling
1288 https://bugs.webkit.org/show_bug.cgi?id=186860
1289 <rdar://problem/39953563>
1291 Reviewed by Tim Horton.
1293 Add a new API test to exercise a race condition between receiving remote layer tree commits and updating visible
1294 content rects which would result in the compositing layer for a fixed position element sometimes appearing in
1295 the wrong place. See WebKit ChangeLog for more details.
1297 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1298 * TestWebKitAPI/Tests/WebKitCocoa/fixed-nav-bar.html: Added.
1299 * TestWebKitAPI/Tests/ios/WKScrollViewTests.mm: Added.
1300 (traverseLayerTree):
1303 2018-06-20 Daniel Bates <dabates@apple.com>
1305 AttributeError: StatusServer instance has no attribute '_api_key' thrown when processing a patch
1306 https://bugs.webkit.org/show_bug.cgi?id=186852
1308 Fixes an issue where StatusServer._api_key may not be defined. This issue manifests itself
1309 in a Python AttributeError exception when an EWS bot tries to fetch the next patch to process.
1311 Currently StatusServer._api_key is only defined when either the environment variable WEBKIT_STATUS_API_KEY
1312 or the Git configuration key webkit.status_api_key has a non-empty value. Instead we should
1313 always define StatusServer._api_key in the StatusServer constructor.
1315 * Scripts/webkitpy/common/net/statusserver.py:
1316 (StatusServer.__init__):
1318 2018-06-20 Robin Morisset <rmorisset@apple.com>
1320 [WSL] Add details to the sphinx outline
1321 https://bugs.webkit.org/show_bug.cgi?id=186310
1323 Rubberstamped by Filip Pizlo.
1325 Mostly improving the sphinx outline.
1326 Also started moving the execution rules to WSL_type.ott (which will eventually become WSL.ott).
1327 Tried formalizing the gathering of declarations into the environment, but I think I will scratch it.
1328 It is both trivial to do (and to explain in english) and a bit of a pain to formalize.
1330 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott:
1331 * WebGPUShadingLanguageRI/SpecWork/source/index.rst:
1333 2018-06-20 Commit Queue <commit-queue@webkit.org>
1335 Unreviewed, rolling out r232844.
1336 https://bugs.webkit.org/show_bug.cgi?id=186843
1338 "Too many flakiness on the tests, so the EWS bots cant process
1339 patches correctly" (Requested by clopez on #webkit).
1343 "[GTK] Enable tests on the GTK EWS queue"
1344 https://bugs.webkit.org/show_bug.cgi?id=186559
1345 https://trac.webkit.org/changeset/232844
1347 2018-06-20 Rob Buis <rbuis@igalia.com>
1349 [GTK] ASSERTION FAILED: url == m_string in UserAgentQuirks test
1350 https://bugs.webkit.org/show_bug.cgi?id=186838
1352 This URL constructor expects canonicalized input, so fix the passed URL.
1354 Reviewed by Frédéric Wang.
1356 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
1357 (TestWebKitAPI::TEST):
1359 2018-06-20 Robin Morisset <rmorisset@apple.com>
1361 [WSL] Make the typing rules explicitely translate type syntax into actual types
1362 https://bugs.webkit.org/show_bug.cgi?id=186310
1364 Rubberstamped by Filip Pizlo.
1366 The typing rules must describe how and most importantly when typedefs and the like are resolved.
1367 This is important because they can be shadowed (by type variables for example), and we want to make it unambiguous what behaviour is required in that case.
1369 * WebGPUShadingLanguageRI/SpecWork/WSL.g4:
1370 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott:
1372 2018-06-20 Yusuke Suzuki <utatane.tea@gmail.com>
1374 [GTK][WPE][Nicosia] Add name for Nicosia Painting Threads
1375 https://bugs.webkit.org/show_bug.cgi?id=186836
1377 Reviewed by Carlos Garcia Campos.
1379 * TestWebKitAPI/Tests/WTF/WorkerPool.cpp:
1380 (TestWebKitAPI::TEST):
1382 2018-06-20 Yusuke Suzuki <utatane.tea@gmail.com>
1384 [WPE] Remove warnings by setting nullptr for unused listeners
1385 https://bugs.webkit.org/show_bug.cgi?id=186835
1387 Reviewed by Carlos Garcia Campos.
1389 frame, axis_source, axis_stop, and axis_discrete are unused.
1390 Setting nullptr explicitly to remove warnings in GCC.
1392 * wpe/backends/WindowViewBackend.cpp:
1394 2018-06-19 Leo Balter <leonardo.balter@gmail.com>
1396 [test262-runner] Reduce flakiness of unit tests for the runner
1397 https://bugs.webkit.org/show_bug.cgi?id=186824
1399 Reviewed by Michael Saboff.
1401 * Scripts/test262/Runner.pm:
1403 * Scripts/webkitperl/test262_unittest/test262-runner-tests.pl:
1405 2018-06-19 Leo Balter <leonardo.balter@gmail.com>
1407 [test262-runner] Print results report to HTML
1408 https://bugs.webkit.org/show_bug.cgi?id=186790
1410 Reviewed by Michael Saboff.
1412 After runing the tests, 2 html files are created with a list to failing tests and summaries.
1413 * Scripts/test262/Runner.pm:
1418 2018-06-19 Keith Rollin <krollin@apple.com>
1420 Crash running check-webkit-style on webrtc/.../exceptions.py
1421 https://bugs.webkit.org/show_bug.cgi?id=186816
1422 <rdar://problem/41262553>
1424 Reviewed by Michael Catanzaro.
1426 It's not apparent to me why the crash is occurring. Trying to write a
1427 unittest that checks this file in isolation does not reproduce the
1428 crash. But the crash goes away when updating to pylint-0.25.2.
1430 * Scripts/webkitpy/thirdparty/__init__.py:
1431 (AutoinstallImportHook._install_pylint):
1433 2018-06-19 Keith Rollin <krollin@apple.com>
1435 cpp style checker needs to know more about NOLINT
1436 https://bugs.webkit.org/show_bug.cgi?id=186796
1438 Reviewed by Aakash Jain.
1440 Running check-webkit-style on
1441 ThirdParty/gtest/src/gtest-internal-inl.h crashes with a KeyError as
1442 it tries to look up information about a particular #include in a
1443 dictionary it maintains. The problem has to do with the following
1444 lines in gtest-internal-inl.h:
1446 #include <gtest/gtest.h> // NOLINT
1447 #include <gtest/gtest-spi.h>
1449 The NOLINT annotation will prevent the cpp-checker from processing or
1450 even seeing that line. In skipping that line, information regarding
1451 that line is NOT added to some internal tables. However, when the code
1452 that checks that #includes are correctly alphabetized gets to the
1453 "gtest-spi.h" line, it will not respect the NOLINT annotation and will
1454 see the gtest.h line. When doing so, it runs afoul of the fact that it
1455 hadn't seen that line before and it crashes when it tries to look up
1456 that line in some internal records.
1458 Fix this by catering to the possibility that a #include line may not
1459 have been entered into these internal records.
1461 * Scripts/webkitpy/style/checkers/cpp.py:
1462 (check_include_line):
1463 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1465 2018-06-19 Daniel Bates <dabates@apple.com>
1467 EWS for security bugs
1468 https://bugs.webkit.org/show_bug.cgi?id=186291
1469 <rdar://problem/40829658>
1471 Update comment in AbstractEarlyWarningSystem.refetch_patch() to reference <https://bugs.webkit.org/show_bug.cgi?id=186817>.
1473 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1474 (AbstractEarlyWarningSystem.refetch_patch):
1476 2018-06-19 Daniel Bates <dabates@apple.com>
1478 EWS for security bugs
1479 https://bugs.webkit.org/show_bug.cgi?id=186291
1480 <rdar://problem/40829658>
1482 Reviewed by Lucas Forschler.
1486 Implements support for EWS processing of patches on security sensitive bugs. We add new
1487 endpoints to the status server to support uploading and downloading of patches and associated
1488 metadata. When webkit-patch submits a patch for EWS processing it will now upload the contents
1489 and metadata for the patch to the status server if the patch is on a security sensitive bug.
1490 We teach the EWS machinery in webkitpy to query the status server for a patch only if fetching
1491 the patch from Bugzilla is not permitted due to an authorization error.
1493 Fetching patches from the status server requires an API key. The API key is read from the
1494 environment variable WEBKIT_STATUS_API_KEY or the value of the Git configuration key webkit.status_api_key
1495 (in that order). Contact me or another Apple engineer for an API key.
1497 Additionally, default to using HTTPS when querying the status server and expose an optional
1498 command line option called --status-host-uses-http to use the former behavior of querying
1501 * QueueStatusServer/config/authorization.py: Added.
1502 (_path_to_authorized_api_keys_file): Returns the absolute filesystem path to the file authorized_api_keys.txt.
1503 (_parse_authorized_api_keys):
1504 (authorized_api_keys):
1505 (_parse_authorization_header): Parses the API key from the Authorization header. We use a
1506 custom authentication scheme: "apikey". See remark below for more details.
1507 (is_authorized): Checks if the request includes an API key and whether that API key is in the
1508 list of authorized keys (performs a case-sensitive match). The API key may be specified either
1509 in a HTTP header Authorization or in the query string argument "apikey". When using the HTTP
1510 headers approach the Authorization header should have the form: "Authorization: apikey X" where
1511 X is the case-sensitive API key.
1512 * QueueStatusServer/handlers/fetchattachment.py: Added.
1514 (FetchAttachment.get):
1515 * QueueStatusServer/handlers/releasepatch.py:
1516 (ReleasePatch.check_processed_by_all_queues): Returns whether the specified attachment was processed by all the queues.
1517 (ReleasePatch.post): Delete the patch from AppEngine (if we have it) once the patch was processed
1519 * QueueStatusServer/handlers/submittoews.py:
1520 (SubmitToEWS._should_add_to_ews_queue): Fix a typo in a comment while I am working in this code.
1521 * QueueStatusServer/handlers/uploadattachment.py: Added.
1523 (UploadAttachment.get):
1524 (UploadAttachment.post):
1525 * QueueStatusServer/main.py: Add new routes /upload-attachment and /attachment to upload an attachment
1526 and view an attachment (or its metadata), respectively.
1527 * QueueStatusServer/model/attachmentdata.py: Added.
1529 (AttachmentData.add_attachment_data):
1530 (AttachmentData.lookup_if_exists):
1531 (AttachmentData.remove_attachment_data):
1532 * QueueStatusServer/templates/uploadattachment.html: Added.
1533 * Scripts/webkitpy/common/net/bugzilla/attachment.py:
1534 (Attachment.committer):
1536 (Attachment.to_json): Serialize to JSON so that we can upload it to AppEngine.
1537 (Attachment.from_json): Deserialize from JSON. This is used as part of downloading a patch from AppEngine.
1538 * Scripts/webkitpy/common/net/bugzilla/attachment_unittest.py:
1539 (AttachmentTest.test_convert_to_json_and_back): Added.
1540 * Scripts/webkitpy/common/net/bugzilla/bug.py:
1541 (Bug.groups): Returns a frozenset of groups that the bug is a member of.
1542 (Bug.is_security_sensitive): Returns whether the bug is in group Security-Sensitive.
1543 * Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
1544 (BugzillaQueries.fetch_attachment_ids_from_review_queue): Modified to take an optional boolean, only_security_bugs,
1545 as to whether to only fetch attachment ids for unreviewed patches associated with security bugs. By default, we
1546 keep the current behavior and query for the attachment ids of all unreviewed patches that the currently logged in
1547 Bugzilla user can see, which may include patches associated with security bugs.
1548 (Bugzilla._parse_date): Update for moved and renamed constant. See remark for class Bugzilla.
1549 (Bugzilla._parse_bug_dictionary_from_xml): Modified to return an empty dictionary if we do not have access to view the bug.
1550 Otherwise, extract the name of the group the bug is in.
1551 (Bugzilla.fetch_bug): Modified to return None if we do not have access to view the bug.
1552 (Bugzilla._parse_bug_title_from_attachment_page): Extracted out logic to parse the title of the Attachment page
1553 from _parse_bug_id_from_attachment_page() so that it can be used from both _parse_bug_id_from_attachment_page()
1554 and get_bug_id_for_attachment_id().
1555 (Bugzilla): Moved class constant _bugzilla_date_format to Scripts/webkitpy/common/net/bugzilla/constants.py
1556 and renamed it to BUGZILLA_DATE_FORMAT.
1557 (Bugzilla.AccessError):
1558 (Bugzilla.AccessError.__init__):
1559 (Bugzilla._parse_bug_id_from_attachment_page): Modified to return a tuple of ("bug id", "error code") so that
1560 the caller can know the reason the parse failed if it did. The parse will fail if we do not have access to view
1562 (Bugzilla.bug_id_for_attachment_id): Modified to take a boolean throw_on_access_error (default: False)
1563 as to whether to raise a Bugzilla.AccessError exception and pass it through to get_bug_id_for_attachment_id().
1564 (Bugzilla.get_bug_id_for_attachment_id): Modified to take a boolean throw_on_access_error (default: False)
1565 as to whether to raise a Bugzilla.AccessError exception if we do not have access to the bug associated with
1566 the specified attachment id.
1567 (Bugzilla.fetch_attachment):
1568 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
1569 (MockBugzillaQueries.fetch_attachment_ids_from_review_queue):
1571 (MockBugzilla.fetch_attachment):
1572 (MockBugzilla.fetch_attachment_contents):
1573 (MockBugzilla.add_patch_to_bug):
1574 * Scripts/webkitpy/common/net/bugzilla/bugzilla_unittest.py:
1575 * Scripts/webkitpy/common/net/bugzilla/constants.py: Added.
1576 * Scripts/webkitpy/common/net/statusserver.py:
1578 (StatusServer.__init__): Modified to take an boolean use_https as to whether to query the server using
1579 HTTPS (default: True - use HTTPS).
1580 (StatusServer.set_host): Moved logic to compute the server URL from her to _server_url().
1581 (StatusServer.set_use_https): Added.
1582 (StatusServer.set_api_key): Added.
1583 (StatusServer._server_url): Added.
1584 (StatusServer._authorization_header_name_and_value_pair): Added.
1585 (StatusServer.results_url_for_status): Update to use _server_url().
1586 (StatusServer._post_status_to_server): Ditto.
1587 (StatusServer._post_svn_revision_to_server): Ditto.
1588 (StatusServer._post_work_items_to_server): Ditto.
1589 (StatusServer._upload_attachment_to_server): Added.
1590 (StatusServer.upload_attachment): Added.
1591 (StatusServer._post_work_item_to_ews): Update to use _server_url().
1592 (StatusServer.next_work_item): Ditto.
1593 (StatusServer._post_release_work_item): Ditto.
1594 (StatusServer._post_release_lock): Ditto.
1595 (StatusServer._fetch_attachment_page): Added.
1596 (StatusServer.fetch_attachment): Added.
1597 (StatusServer._fetch_url): Add the API Key to the request if we have one.
1598 (StatusServer.patch_status): Update to use _server_url().
1599 (StatusServer.svn_revision): Ditto.
1600 * Scripts/webkitpy/common/net/statusserver_mock.py:
1601 (MockStatusServer.upload_attachment): Added.
1602 (MockStatusServer.fetch_attachment): Added.
1603 * Scripts/webkitpy/tool/bot/feeders.py:
1604 (EWSFeeder.feed): Modified to download patches on security bugs and upload them to the status server (AppEngine).
1605 * Scripts/webkitpy/tool/commands/download.py:
1606 (ProcessAttachmentsMixin._fetch_list_of_patches_to_process): Modified to handle the case when fetching the
1607 bug details from Bugzilla fail, say because we are not allowed to the view the bug.
1608 (ProcessBugsMixin._fetch_list_of_patches_to_process): Filter out None values for attachments that we failed
1609 to fetch, say because we are not allowed to the view the bug the attachment is on.
1610 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
1611 (AbstractEarlyWarningSystem.refetch_patch): For now, refetch the patch from the status server. Ideally, we
1612 need a way to ask the status server to fetch the patch again from Bugzilla (or at least its metadata) so
1613 that the EWS can check the current state of the patch (i.e. is it still marked r?).
1614 * Scripts/webkitpy/tool/commands/queries_unittest.py:
1615 (QueryCommandsTest.test_patches_to_review): Update expected result.
1616 * Scripts/webkitpy/tool/commands/queues.py:
1617 (AbstractPatchQueue._next_patch): Fetch the patch from the status server if we failed to fetch it from
1618 Bugzilla because we do not have permission to view it.
1619 * Scripts/webkitpy/tool/commands/queues_unittest.py:
1620 * Scripts/webkitpy/tool/commands/upload_unittest.py:
1621 (test_upload_of_security_sensitive_patch_with_no_review_and_ews): Added.
1622 * Scripts/webkitpy/tool/main.py:
1624 (WebKitPatch._status_server_api_key_from_git): Read the API key from the Git configuration key webkit.status_api_key.
1625 (WebKitPatch._status_server_api_key): Read the API key from the environment variable WEBKIT_STATUS_API_KEY.
1626 (WebKitPatch.handle_global_options): Read the API key and update the state of the StatusServer object, if applicable.
1627 * Scripts/webkitpy/tool/steps/obsoletepatches.py:
1628 (ObsoletePatches.run): Modified to handle the case when fetching the bug details from Bugzilla fail, say because we
1629 are not allowed to the view the bug.
1630 * Scripts/webkitpy/tool/steps/submittoews.py:
1631 (SubmitToEWS.run): Upload the contents of the patch and the Bugzilla metadata about it to the status server
1632 if the patch was posted to a security bug.
1634 2018-06-19 Daniel Bates <dabates@apple.com>
1636 QueueStatusServer: "'NoneType' object has no attribute 'message'" in ReleasePatch.get()
1637 when attachment is skipped by queue
1638 https://bugs.webkit.org/show_bug.cgi?id=186748
1640 Reviewed by Lucas Forschler.
1642 Fixes an issue where releasing a patch that was skipped by a queue would cause an AttributeError
1643 in ReleasePatch.get().
1645 When removing a patch from a queue we update queue statistics. As part of this process
1646 we record the last message posted to the status server for the patch. Currently if a patch
1647 is skipped by the queue when picking the next patch to process (say, we failed to fetch the
1648 attachment) then the queue does not post a message to the status server before it asks the
1649 status server to remove the patch from the list of patches the queue needs to process. Instead
1650 the queue should tell the status server that it chose to skip the patch before asking for the
1651 patch to be removed from its list of patches to process.
1653 * Scripts/webkitpy/common/net/bugzilla/attachment.py:
1654 (Attachment.bug_id): Return None if we do not have a bug ID. This can happen if we failed
1655 to fetch the attachment from Bugzilla (say, Bugzilla's markup changed) or we do not have
1656 have permission to view the Bugzilla bug.
1657 * Scripts/webkitpy/common/net/bugzilla/attachment_unittest.py: Added.
1659 (AttachmentTest.test_no_bug_id):
1660 * Scripts/webkitpy/tool/commands/queues.py:
1661 (AbstractPatchQueue._next_patch): Call AbstractPatchQueue._did_skip() to post a status
1662 update to the status server and then release the work item.
1663 * Scripts/webkitpy/tool/commands/queues_unittest.py:
1664 (AbstractPatchQueueTest.test_next_patch): Update expected result.
1666 2018-06-19 Leo Balter <leonardo.balter@gmail.com>
1668 Test262-Runner: Improve files queue to optimize CPU usage/balancing
1669 https://bugs.webkit.org/show_bug.cgi?id=186443
1671 Reviewed by Michael Saboff.
1673 This patch creates a queue manager for to keep the child process open while the parent process feed each child with test files to run.
1674 * Scripts/test262/Runner.pm:
1678 2018-06-19 Wenson Hsieh <wenson_hsieh@apple.com>
1680 [WebKit on watchOS] Vend username text content type when using scribble in login fields
1681 https://bugs.webkit.org/show_bug.cgi?id=186791
1682 <rdar://problem/41226935>
1684 Reviewed by Beth Dakin.
1686 Add testing support for grabbing the current text content type of the focused element.
1688 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
1689 (WTR::UIScriptController::textContentType const):
1690 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl:
1691 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
1692 (WTR::UIScriptController::textContentType const):
1693 * TestRunnerShared/UIScriptContext/UIScriptController.h:
1694 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
1695 (WTR::UIScriptController::textContentType const):
1697 2018-06-19 Robin Morisset <rmorisset@apple.com>
1699 [WSL] Improving the typing rules
1700 https://bugs.webkit.org/show_bug.cgi?id=186310
1702 Rubberstamped by Filip Pizlo.
1705 - added a "well_formed" judgement, and defined it on function definitions (tying together with the typing rules)
1706 - cleaned up the desugaring relation (it now works on normal statements, and deals with for loops correctly)
1707 - added the null literal, the comma operator, the not operator, and parens
1708 - fixed a bunch of minor typographic issues
1710 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott:
1712 2018-06-18 Robin Morisset <rmorisset@apple.com>
1714 [WSL] Starting to write the spec
1715 https://bugs.webkit.org/show_bug.cgi?id=186310
1717 Rubberstamped by Filip Pizlo.
1719 This is a snapshot of my current work on the WSL spec (I will try to commit more regularly in the future).
1721 WSL.g4 is the grammar, in antlr4 format. I only made minor changes in it since last time.
1723 source/index.rst is the Sphinx document.
1724 It currently only contain a very rough outline, and some TODOs.
1725 It can be compiled with make html or make pdf, and relies on Makefile and source/conf.py.
1727 WSL_exec.ott is the current set of execution rules I have formalized.
1728 They will need a fair bit of refactoring, to account for the new desugaring phase,
1729 to be compatible with whatever memory model we decide on,
1730 and to be explicit about the memory layout of structs and arrays
1731 They can be compiled to latex with OTT (which in turn requires OCaml and opam).
1732 Just ask me by email if you want a pdf of all the rules without having to install all that.
1734 WSL_type.ott is the current set of local typing rules I have formalized.
1735 Like WSL_exex.ott, it is very incomplete, lacking all function calls among other things.
1737 * WebGPUShadingLanguageRI/SpecWork/Makefile: Added.
1738 * WebGPUShadingLanguageRI/SpecWork/WSL.g4:
1739 * WebGPUShadingLanguageRI/SpecWork/WSL_exec.ott: Added.
1740 * WebGPUShadingLanguageRI/SpecWork/WSL_type.ott: Added.
1741 * WebGPUShadingLanguageRI/SpecWork/source: Added.
1742 * WebGPUShadingLanguageRI/SpecWork/source/conf.py: Added.
1743 * WebGPUShadingLanguageRI/SpecWork/source/index.rst: Added.
1745 2018-06-18 Chris Dumez <cdumez@apple.com>
1747 Crash under WebProcessPool::networkProcessFailedToLaunch():
1748 https://bugs.webkit.org/show_bug.cgi?id=186784
1749 <rdar://problem/33535377>
1751 Reviewed by Brady Eidson.
1753 Add API test coverage.
1755 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
1758 2018-06-18 Zan Dobersek <zdobersek@igalia.com>
1760 [webkitpy] WPTRunner should remove any metadata content before (re)generating it
1761 https://bugs.webkit.org/show_bug.cgi?id=186755
1763 Reviewed by Carlos Garcia Campos.
1765 WPTRunner generates the WPT-compliant metadata content before each test
1766 run. Before it does so, it should remove the complete target directory
1767 for this metadata, allowing any change in the expectations JSON to be
1768 immediately reflected.
1770 For example, if a test failure expectation is removed, the related .ini
1771 metadata file is not generated anymore, but the stale .ini file isn't
1772 removed from the current metadata directory. To avoid this, purging
1773 the metadata directory and regenerating it from scratch should be done
1776 * Scripts/webkitpy/w3c/wpt_runner.py:
1777 (WPTRunner._generate_metadata_directory):
1778 * Scripts/webkitpy/w3c/wpt_runner_unittest.py:
1779 (WPTRunnerTest.test_generate_metadata_directory):
1781 2018-06-12 Darin Adler <darin@apple.com>
1783 [Cocoa] Make some RetainPtr refinements to get more ready for ARC
1784 https://bugs.webkit.org/show_bug.cgi?id=186526
1786 Reviewed by Anders Carlsson.
1788 * DumpRenderTree/mac/LayoutTestHelper.m:
1789 (colorProfileURLForDisplay): Use CFBridgingRelease instead of using
1790 CFAutorelease for a bridging use case.
1792 2018-06-16 Leo Balter <leonardo.balter@gmail.com>
1794 [test262-runner] Handle items from the config list with inline comments
1795 https://bugs.webkit.org/show_bug.cgi?id=186707
1797 Reviewed by Michael Saboff.
1799 This is a workaround for the Yaml parser that bundles inline comments together with any items.
1800 * Scripts/test262/Runner.pm:
1803 2018-06-16 Valerie R Young <valerie@bocoup.com>
1805 test262/Runner.pm: option to run test skipped in config file
1806 https://bugs.webkit.org/show_bug.cgi?id=186660
1808 Reviewed by Michael Saboff.
1810 Adds option --skipped-files, -S, to run all files skipped in the
1813 * Scripts/test262/Runner.pm:
1820 2018-05-18 Basuke Suzuki <basuke.suzuki@sony.com>
1822 Unreviewed, add myself as a WebKit committer.
1824 * Scripts/webkitpy/common/config/contributors.json:
1826 2018-06-15 Chris Dumez <cdumez@apple.com>
1828 Add API test coverage for SW RegistrationDatabase destruction and fix issues found by the test
1829 https://bugs.webkit.org/show_bug.cgi?id=186681
1831 Reviewed by Brady Eidson.
1833 Add API test coverage.
1835 * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1837 2018-06-15 Brady Eidson <beidson@apple.com>
1839 Crash in both StorageProcess and UIProcess when using custom WKWebsiteDataStores for data management.
1840 <rdar://problem/41019893> and https://bugs.webkit.org/show_bug.cgi?id=186682
1842 Reviewed by Chris Dumez.
1844 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1845 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
1848 2018-06-15 Carlos Alberto Lopez Perez <clopez@igalia.com>
1850 [GTK] Fix adding error in browserperfdash_runner.
1852 Unreviewed follow-up fix after r232820.
1854 * Scripts/webkitpy/browserperfdash/browserperfdash_runner.py:
1855 (BrowserPerfDashRunner.run):
1857 2018-06-15 Carlos Alberto Lopez Perez <clopez@igalia.com>
1859 [GTK][WKE] Disable memory pressure handling when running layout tests (WTR)
1860 https://bugs.webkit.org/show_bug.cgi?id=186663
1862 Reviewed by Michael Catanzaro.
1864 Disable memory pressure handling when running tests via WTR by
1865 setting WEBKIT_DISABLE_MEMORY_PRESSURE_MONITOR=1 on the environment.
1867 * WebKitTestRunner/gtk/main.cpp:
1869 * WebKitTestRunner/wpe/main.cpp:
1872 2018-06-15 Jonathan Bedard <jbedard@apple.com>
1874 Add iOS 12 and watchOS 5 to webkitpy
1875 https://bugs.webkit.org/show_bug.cgi?id=186285
1877 Reviewed by Aakash Jain.
1879 * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
1880 * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
1881 Trigger the right build queues for iOS 12 on check-in.
1882 * Scripts/webkitpy/common/version_name_map.py:
1883 (VersionNameMap.__init__): Add iOS 12, tvOS 12 and watchOS 5.
1884 * Scripts/webkitpy/common/version_name_map_unittest.py:
1885 (VersionMapTestCase.test_ios_name_by_version): Test iOS 12 version-name mapping.
1886 * Scripts/webkitpy/port/ios_device_unittest.py:
1887 (IOSDeviceTest.test_layout_test_searchpath_without_apple_additions):
1888 * Scripts/webkitpy/port/ios_simulator_unittest.py:
1889 (IOSSimulatorTest.test_layout_test_searchpath_without_apple_additions):
1891 2018-06-14 Saam Barati <sbarati@apple.com>
1893 sun spider compile time benchmark fails in run-jsc-benchmarks with JSC_validateOptions=1
1894 https://bugs.webkit.org/show_bug.cgi?id=186647
1896 Reviewed by Yusuke Suzuki.
1898 Let's use `unset JSC_useBlah` instead of `export JSC_useBlah=` to clear environment
1899 variables. The latter was causing crashes with when JSC_validateOptions was true.
1901 * Scripts/run-jsc-benchmarks:
1903 2018-06-14 Carlos Alberto Lopez Perez <clopez@igalia.com>
1905 [GTK][buildbot] Raise timeouts for the step benchmark-test on the GTK perf bot
1906 https://bugs.webkit.org/show_bug.cgi?id=186635
1908 Reviewed by Michael Catanzaro.
1910 The current maximum timeout for a run-benchmark test is 1800 (Motionmark plan),
1911 but the buildbot default timeout for the whole step without text output is 1200.
1912 That means that a timeout on a single test can cause a whole step abort because
1913 the buildbot one will trigger first.
1915 Set the benchmark-test step timeout to 2000 to avoid this.
1917 When this benchmark-test was added in r197505 it was already added with a higher
1918 timeout than default (1500) due to the above problem, but it seems this has been
1919 ignored so far because buildbot won't accept the timeout to be set on the class
1920 definition (not even on the class constructor).
1921 The new timeout has to be defined in the addStep call itself.
1922 I have double-checked that by testing locally with the script run-buildbot-test.py
1923 And this upstream issue confirms that https://github.com/buildbot/buildbot/issues/3887
1925 * BuildSlaveSupport/build.webkit.org-config/factories.py:
1926 (BuildAndPerfTestFactory.__init__):
1927 (DownloadAndPerfTestFactory.__init__):
1928 * BuildSlaveSupport/build.webkit.org-config/steps.py:
1929 (RunBenchmarkTests):
1931 2018-06-14 Roy Reapor <rreapor@apple.com>
1933 Use new jQuery file layout
1934 https://bugs.webkit.org/show_bug.cgi?id=186636
1936 Reviewed by Aakash Jain.
1938 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/garden-o-matic.html:
1939 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/rebaseline.html:
1940 * TestResultServer/static-dashboards/run-embedded-unittests.html:
1942 2018-06-14 Basuke Suzuki <Basuke.Suzuki@sony.com>
1944 [Win][MiniBrowser] Change to use WebKit by default if it's available
1945 https://bugs.webkit.org/show_bug.cgi?id=186633
1947 When MiniBrowser is built with WebKit, use it by default. Also add command
1948 line switch for WebKitLegacy.
1950 Reviewed by Youenn Fablet.
1952 * MiniBrowser/win/Common.cpp:
1954 (dllLauncherEntryPoint): Deleted.
1955 * MiniBrowser/win/Common.h:
1956 * MiniBrowser/win/WinMain.cpp:
1958 (dllLauncherEntryPoint):
1960 2018-06-14 Matt Lewis <jlewis3@apple.com>
1962 Unreviewed, rolling out r232823.
1964 This caused both test timeouts and api failures.
1968 "[Mail] Use the Mail Viewer width as the base for resolving
1969 horizontal viewport units"
1970 https://bugs.webkit.org/show_bug.cgi?id=186585
1971 https://trac.webkit.org/changeset/232823
1973 2018-06-14 Youenn Fablet <youenn@apple.com>
1975 TestWebKitAPI.WebKit.WKNavigationResponsePDFType fails after r232815
1976 https://bugs.webkit.org/show_bug.cgi?id=186631
1978 Reviewed by Chris Dumez.
1980 * TestWebKitAPI/Tests/WebKitCocoa/WKNavigationResponse.mm:
1981 (TEST): Update PDF plug-in identifier.
1983 2018-06-14 Leo Balter <leonardo.balter@gmail.com>
1985 [test262-runner] Improve displayed settings, use rel paths
1986 https://bugs.webkit.org/show_bug.cgi?id=186626
1988 Reviewed by Michael Saboff.
1990 Use relative paths for the information printed in the settings summary after calling the Test262 Runner. This provides a cleaner summary that is easier to read and consume.
1991 * Scripts/test262/Runner.pm:
1995 2018-06-14 Leo Balter <leonardo.balter@gmail.com>
1997 Test262-Runner: Add more information in the summarized stats
1998 https://bugs.webkit.org/show_bug.cgi?id=185749
2000 Reviewed by Michael Saboff.
2002 This patch adds extra information in the summarized stats for the given results for each run.
2003 This includes a total of files, a total of executed files and a time information per path and feature.
2004 * Scripts/test262/Runner.pm:
2007 2018-06-14 Carlos Alberto Lopez Perez <clopez@igalia.com>
2009 [GTK] Enable tests on the GTK EWS queue
2010 https://bugs.webkit.org/show_bug.cgi?id=186559
2012 Reviewed by Michael Catanzaro.
2014 Enable testing for the gtk-wk2 EWS queue.
2016 * Scripts/webkitpy/common/config/ews.json:
2018 2018-06-14 Valerie R Young <valerie@bocoup.com>
2020 [test262-runner] Test output should summarize tests that are
2021 unexpectedly passing/failing.
2022 https://bugs.webkit.org/show_bug.cgi?id=186527
2024 Reviewed by Michael Saboff.
2026 * Scripts/test262/Runner.pm:
2028 In verbose mode, a summary of all new failing tests
2029 and all new passing tests are printed at the end of
2032 2018-06-14 Zan Dobersek <zdobersek@igalia.com>
2034 [GTK][WPE] MiniBrowsers should be able to ignore TLS errors
2035 https://bugs.webkit.org/show_bug.cgi?id=186557
2037 Reviewed by Carlos Garcia Campos.
2039 Add the --ignore-tls-errors flags to the GTK and WPE MiniBrowsers.
2040 Enabling the flag enforces ignoring of TLS errors that occur during
2041 load. This is primarily useful for loading test cases from the wpt or
2042 run-webkit-httpd servers where testing-purpose certificates are used.
2044 * MiniBrowser/gtk/main.c:
2046 * MiniBrowser/wpe/main.cpp:
2049 2018-06-13 Adrian Perez de Castro <aperez@igalia.com>
2051 [WPE] Trying to access the remote inspector hits an assertion in the UIProcess
2052 https://bugs.webkit.org/show_bug.cgi?id=186588
2054 Reviewed by Carlos Garcia Campos.
2056 Make both the WPE and GTK+ ports use /org/webkit/inspector as base prefix
2057 for resource paths, which avoids needing a switcheroo depending on the port.
2059 * WebKitTestRunner/InjectedBundle/gtk/TestRunnerGtk.cpp:
2060 (WTR::TestRunner::inspectorTestStubURL):
2061 * glib/generate-inspector-gresource-manifest.py:
2063 2018-06-11 Carlos Alberto Lopez Perez <clopez@igalia.com>
2065 [GTK] Add a script to upload the data generated with run-benchmark to a browserperfdash server and use it on the gtk perf bot
2066 https://bugs.webkit.org/show_bug.cgi?id=166885
2068 Reviewed by Michael Catanzaro.
2070 This patch adds a new script that will execute run-benchmark and upload the results it generates to a browserperfdash web app.
2072 It also modifies the buildbot config file so the GTK performance bot runs this script on the perf-test step.
2074 * BuildSlaveSupport/build.webkit.org-config/steps.py:
2075 (RunBenchmarkTests):
2076 * Scripts/browserperfdash-benchmark: Added.
2077 * Scripts/webkitpy/browserperfdash/README: Added.
2078 * Scripts/webkitpy/browserperfdash/__init__.py: Added.
2079 * Scripts/webkitpy/browserperfdash/browserperfdash_runner.py: Added.
2081 (BrowserPerfDashRunner):
2082 (BrowserPerfDashRunner.__init__):
2083 (BrowserPerfDashRunner._parse_config_file):
2084 (BrowserPerfDashRunner._get_test_version_string):
2085 (BrowserPerfDashRunner._get_test_data_json_string):
2086 (BrowserPerfDashRunner._upload_result):
2087 (BrowserPerfDashRunner.run):
2090 * Scripts/webkitpy/browserperfdash/browserperfdash_unittest.py: Added.
2091 (FakeBenchmarkRunner):
2092 (FakeBenchmarkRunner.__init__):
2093 (FakeBenchmarkRunner.execute):
2094 (BrowserPerfDashRunnerTest):
2095 (BrowserPerfDashRunnerTest.test_list_plans_at_least_five):
2096 (BrowserPerfDashRunnerTest.test_benchmark_runner_subclasses_at_least_two):
2097 (BrowserPerfDashRunnerTest.test_can_construct_runner_object_minimum_parameters):
2098 * Scripts/webkitpy/browserperfdash/config-file-example.txt: Added.
2100 2018-06-13 David Fenton <david_fenton@apple.com>
2102 Unreviewed, add myself as a WebKit committer.
2104 * Scripts/webkitpy/common/config/contributors.json:
2106 2018-06-13 Carlos Alberto Lopez Perez <clopez@igalia.com>
2108 [JSCOnly] Add a MIPS32el JSCOnly EWS (follow-up fix)
2109 https://bugs.webkit.org/show_bug.cgi?id=186523
2111 Unreviewed follow-up fix after r232748
2113 * Scripts/webkitpy/common/config/ports.py:
2114 (JscOnlyPort.build_jsc_command): It is needed to pass a --jsc-only argument to the build-jsc script.
2115 * Scripts/webkitpy/common/config/ports_unittest.py:
2116 (DeprecatedPortTest.test_jsconly_port):
2118 2018-06-12 Thibault Saunier <tsaunier@igalia.com>
2120 webkitpy: Implement coredumpctl support on linux
2121 https://bugs.webkit.org/show_bug.cgi?id=184039
2123 Reviewed by Daniel Bates.
2125 And start using an Executive to run subprocesses
2126 in GDBCrashLogGenerator.
2128 Unit tests adapted to the new API and still passing.
2130 * Scripts/webkitpy/port/linux_get_crash_log.py:
2131 (GDBCrashLogGenerator):
2132 (GDBCrashLogGenerator._get_trace_from_systemd):
2133 (GDBCrashLogGenerator.generate_crash_log):
2135 2018-06-12 Valerie R Young <valerie@bocoup.com>
2137 test262/Runner.pm: fix one test (can't find jsc)
2138 https://bugs.webkit.org/show_bug.cgi?id=186573
2140 Reviewed by Michael Saboff.
2142 * Scripts/webkitperl/test262_unittest/test262-runner-tests.pl:
2143 fix subtest to use mock JSC
2145 2018-06-12 Tim Horton <timothy_horton@apple.com>
2147 Add a API test for r232601
2148 https://bugs.webkit.org/show_bug.cgi?id=186417
2150 Reviewed by Wenson Hsieh.
2152 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
2153 (immediateSubviewOfClass):
2155 Ensure that we put the view hierarchy back together (move WKContentView
2156 out of the animated resize view) and unhide WKContentView after a
2157 resize-with-hidden-content.
2159 2018-06-12 Valerie R Young <valerie@bocoup.com>
2161 test262/Runner.pm: add unit tests
2162 https://bugs.webkit.org/show_bug.cgi?id=185783
2164 Reviewed by Michael Saboff.
2166 * Scripts/webkitperl/test262_unittest/README: Added.
2167 * Scripts/webkitperl/test262_unittest/fixtures/expectations-compare.yaml: Added.
2168 * Scripts/webkitperl/test262_unittest/fixtures/expectations.yaml: Added.
2169 * Scripts/webkitperl/test262_unittest/fixtures/mock-jsc-fail-new-error.pl: Added.
2170 * Scripts/webkitperl/test262_unittest/fixtures/mock-jsc-fail.pl: Added.
2171 * Scripts/webkitperl/test262_unittest/fixtures/mock-jsc-pass.pl: Added.
2172 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-failing-with-new-error.js: Added.
2173 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-failing.js: Added.
2174 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-fail-now-passing.js: Added.
2176 * Scripts/webkitperl/test262_unittest/fixtures/test/expected-to-pass-now-failing.js: Added.
2177 * Scripts/webkitperl/test262_unittest/fixtures/test/fail.js: Added.
2178 * Scripts/webkitperl/test262_unittest/fixtures/test/pass.js: Added.
2180 * Scripts/webkitperl/test262_unittest/test262-runner-tests.pl: Added.
2182 2018-06-12 Valerie R Young <valerie@bocoup.com>
2184 test262/Runner.pm: minor updates
2185 https://bugs.webkit.org/show_bug.cgi?id=186399
2187 - If harness files cannot be found in a CLI supplied
2188 test262 path, then default to webkit's test262 harness files.
2189 - Lazily create the test262-results directory (only right before
2191 - If an expectation file is supplied via the CLI, save to the
2192 supplied location instead of the default webkit location
2193 (JSTest/test262/expectation.yaml).
2195 Reviewed by Michael Saboff.
2197 * Scripts/test262/Runner.pm:
2205 2018-06-11 Carlos Alberto Lopez Perez <clopez@igalia.com>
2207 [JSCOnly] Add a MIPS32el JSCOnly EWS
2208 https://bugs.webkit.org/show_bug.cgi?id=186523
2210 Reviewed by Michael Catanzaro.
2212 Add a new jsc-mips-ews queue that will execute build-jsc for the jsc-only (Linux) port.
2213 The worker(s) on this queue should be pre-configured to cross-build JSC for MIPS32el.
2215 * QueueStatusServer/config/queues.py:
2216 * QueueStatusServer/model/queues.py:
2217 (Queue.display_name):
2218 * Scripts/webkitpy/common/config/ews.json:
2219 * Scripts/webkitpy/common/config/ports.py:
2220 (DeprecatedPort.port):
2221 (WpePort.run_webkit_tests_command):
2223 (JscOnlyPort.build_jsc_command):
2224 * Scripts/webkitpy/common/config/ports_unittest.py:
2225 (DeprecatedPortTest.test_wincairo_port):
2226 (DeprecatedPortTest):
2227 (DeprecatedPortTest.test_jsconly_port):
2228 * Scripts/webkitpy/port/factory.py:
2230 * Scripts/webkitpy/port/jsc_only.py: Added. Add a basic port definition. Required by the EWS tooling.
2232 (JscOnlyPort.__init__):
2233 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
2236 2018-06-12 Zan Dobersek <zdobersek@igalia.com>
2238 Add run-web-platform-tests script
2239 https://bugs.webkit.org/show_bug.cgi?id=183356
2241 Reviewed by Carlos Alberto Lopez Perez.
2243 Add the run-web-platform-tests script that allows running WebKit builds
2244 against the external web-platform-tests project.
2246 The script sets up all the port-specific information, including the
2247 display driver. If no web-platform-tests repository location is
2248 specified, the TestDownloader utility is used to clone the repository,
2249 and path to that clone is leveraged instead.
2251 Port-specific TestManifest.ini and TestExpectations.json file paths are
2252 then constructed, bailing if any of the files is missing. The JSON file
2253 is then used to construct the metadata file tree, creating an .ini file
2254 for each test that is disabled, has a certain expectation, or has
2255 subtests that themselves have certain expectations. This metadata tree
2256 is built under the build directory, and is purged and reconstructed for
2259 Lastly, the WPT python module is imported from the web-platform-tests
2260 source location, and wpt.main() is invoked along with all the necessary
2261 arguments that set up a web-platform-tests suite run using the WebKit
2264 * Scripts/run-web-platform-tests: Added.
2265 * Scripts/webkitpy/common/config/ports_mock.py:
2266 (MockPort.run_bindings_tests_command):
2268 (MockPort.wpt_metadata_directory):
2269 (MockPort.wpt_manifest_file):
2270 * Scripts/webkitpy/port/base.py:
2271 (Port.wpt_metadata_directory):
2273 (Port.wpt_manifest_file):
2274 * Scripts/webkitpy/w3c/common.py:
2275 (is_file_exportable):
2277 (WPTPaths.checkout_directory):
2278 (WPTPaths.wpt_checkout_path):
2279 * Scripts/webkitpy/w3c/test_downloader.py:
2280 (TestDownloader.clone_tests):
2282 (TestDownloader.download_tests):
2283 * Scripts/webkitpy/w3c/test_exporter.py:
2284 (WebPlatformTestExporter.__init__):
2285 * Scripts/webkitpy/w3c/wpt_runner.py: Added.
2291 (WPTRunner.__init__):
2292 (WPTRunner._prepare_wpt_checkout):
2293 (WPTRunner._generate_metadata_directory):
2295 * Scripts/webkitpy/w3c/wpt_runner_unittest.py: Added.
2297 (WPTRunnerTest.MockTestDownloader):
2298 (WPTRunnerTest.MockTestDownloader.default_options):
2299 (WPTRunnerTest.MockTestDownloader.__init__):
2300 (WPTRunnerTest.MockTestDownloader.clone_tests):
2301 (WPTRunnerTest.MockWebDriver):
2302 (WPTRunnerTest.MockWebDriver.create):
2303 (WPTRunnerTest.MockWebDriver.binary_path):
2304 (WPTRunnerTest.MockWebDriver.browser_path):
2305 (WPTRunnerTest.MockWebDriver.browser_args):
2306 (WPTRunnerTest.MockSpawnWPT):
2307 (WPTRunnerTest.MockSpawnWPT.__init__):
2308 (WPTRunnerTest.MockSpawnWPT.__call__):
2309 (WPTRunnerTest.TestInstance):
2310 (WPTRunnerTest.TestInstance.__init__):
2311 (WPTRunnerTest.TestInstance.prepare_mock_files_for_run):
2312 (WPTRunnerTest.test_prepare_wpt_checkout):
2313 (WPTRunnerTest.test_prepare_wpt_checkout_specified_path):
2314 (WPTRunnerTest.test_generate_metadata_directory):
2315 (WPTRunnerTest.test_run):
2316 (WPTRunnerTest.test_run_with_specified_options):
2317 (WPTRunnerTest.test_run_with_args):
2319 2018-06-11 Mark Lam <mark.lam@apple.com>
2321 Add support for webkit-test-runner jscOptions in DumpRenderTree and WebKitTestRunner.
2322 https://bugs.webkit.org/show_bug.cgi?id=186451
2323 <rdar://problem/40875792>
2325 Reviewed by Tim Horton.
2327 This jscOptions option can be used by a layout test to specify some JSC runtime
2328 options needed by the test e.g. by adding something like this to the top of the
2329 html file after the DOCTYPE tag:
2330 <!-- webkit-test-runner [ jscOptions=--useIntlPluralRules=true ] -->
2332 If more than one option is needed, the options can be specified as a comma
2333 separated string e.g.
2334 <!-- webkit-test-runner [ jscOptions=--useIntlPluralRules=true,--useZombieMode=true ] -->
2336 This only works with JSC options that can be changed at runtime. Not all JSC
2337 options can be changed this way as some options are only checked and set once at
2338 VM / process initialization time: changing this type of options may have no
2339 effect. It's the test writer's responsibility to determine which options are
2340 appropriate for with this webkit-test-runner jscOptions option.
2342 This implementation is a workaround until we can change the run-webkit-tests
2343 scripts to parse the option and apply it to a new launch of DRT or WKTR:
2344 https://bugs.webkit.org/show_bug.cgi?id=186452
2346 * DumpRenderTree/TestOptions.cpp:
2347 (TestOptions::TestOptions):
2348 (TestOptions::webViewIsCompatibleWithOptions const):
2349 * DumpRenderTree/TestOptions.h:
2350 * DumpRenderTree/mac/DumpRenderTree.mm:
2352 (resetWebViewToConsistentStateBeforeTesting):
2353 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2354 (WTR::InjectedBundle::didReceiveMessageToPage):
2355 * WebKitTestRunner/TestController.cpp:
2356 (WTR::TestController::resetStateToConsistentValues):
2357 (WTR::updateTestOptionsFromTestHeader):
2358 * WebKitTestRunner/TestOptions.h:
2359 (WTR::TestOptions::hasSameInitializationOptions const):
2361 2018-06-11 Brady Eidson <beidson@apple.com>
2363 Add a command line default to force WebKitTestRunner to turn on process swap on navigation.
2364 https://bugs.webkit.org/show_bug.cgi?id=186534
2366 Reviewed by Chris Dumez.
2368 Right now Process Swap On Navigation is enabled on a per-test basis.
2369 The future is to enable it by default.
2371 Adding a 'defaults write' helps us get to that future.
2373 * WebKitTestRunner/TestController.cpp:
2374 (WTR::TestController::testOptionsForTest const):
2375 (WTR::TestController::platformAddTestOptions const):
2376 * WebKitTestRunner/TestController.h:
2377 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2378 (WTR::TestController::platformAddTestOptions const):
2380 2018-06-11 Chris Dumez <cdumez@apple.com>
2382 Allow enabling PSON in layout tests without window.open support
2383 https://bugs.webkit.org/show_bug.cgi?id=186537
2385 Reviewed by Geoffrey Garen.
2387 Allow enabling PSON in layout tests without window.open support since window.open support
2388 is far from being ready and we plan to enable PSON in layout tests soon.
2390 * WebKitTestRunner/TestController.cpp:
2391 (WTR::TestController::createWebViewWithOptions):
2392 (WTR::updateTestOptionsFromTestHeader):
2393 * WebKitTestRunner/TestOptions.h:
2394 (WTR::TestOptions::hasSameInitializationOptions const):
2396 2018-06-11 Brady Eidson <beidson@apple.com>
2398 Followup to [Cocoa] Remove all uses of NSAutoreleasePool as part of preparation for ARC
2399 https://bugs.webkit.org/show_bug.cgi?id=186436
2401 Patch by Darin Adler
2402 Reviewed by Brady Eidson.
2404 * TestWebKitAPI/Tests/mac/StopLoadingFromDidFinishLoading.mm:
2405 (TestWebKitAPI::TEST):
2407 2018-06-11 Mark Lam <mark.lam@apple.com>
2409 Gardening: skip BigInt tests on iOS until the feature is stable.
2410 <rdar://problem/40331121>
2414 * Scripts/run-jsc-stress-tests:
2416 2018-06-11 Fujii Hironori <Hironori.Fujii@sony.com>
2418 [Win][MiniBrowser] Add WebKitBrowserWindow class for modern WebKit API
2419 https://bugs.webkit.org/show_bug.cgi?id=186478
2421 Reviewed by Alex Christensen.
2423 Added "New WebKit Window" and "New WebKitLegacy Window" menu
2424 items. Disabled the menu item "New WebKit Window" if
2427 * MiniBrowser/win/CMakeLists.txt: Added WebKitBrowserWindow.cpp
2428 source file and ENABLE_WEBKIT macro if ENABLE_WEBKIT.
2429 * MiniBrowser/win/MainWindow.cpp:
2430 (MainWindow::MainWindow):
2431 (MainWindow::create):
2433 (MainWindow::WndProc):
2434 * MiniBrowser/win/MainWindow.h:
2435 * MiniBrowser/win/MiniBrowserLib.rc:
2436 * MiniBrowser/win/MiniBrowserLibResource.h:
2437 * MiniBrowser/win/PrintWebUIDelegate.cpp:
2438 (PrintWebUIDelegate::createWebViewWithRequest):
2439 * MiniBrowser/win/WebKitBrowserWindow.cpp: Added.
2444 (WebKitBrowserWindow::create):
2445 (WebKitBrowserWindow::WebKitBrowserWindow):
2446 (WebKitBrowserWindow::init):
2447 (WebKitBrowserWindow::hwnd):
2448 (WebKitBrowserWindow::loadURL):
2449 (WebKitBrowserWindow::loadHTMLString):
2450 (WebKitBrowserWindow::navigateForwardOrBackward):
2451 (WebKitBrowserWindow::navigateToHistory):
2452 (WebKitBrowserWindow::setPreference):
2453 (WebKitBrowserWindow::print):
2454 (WebKitBrowserWindow::launchInspector):
2455 (WebKitBrowserWindow::setUserAgent):
2456 (WebKitBrowserWindow::userAgent):
2457 (WebKitBrowserWindow::showLayerTree):
2458 (WebKitBrowserWindow::updateStatistics):
2459 (WebKitBrowserWindow::resetZoom):
2460 (WebKitBrowserWindow::zoomIn):
2461 (WebKitBrowserWindow::zoomOut):
2462 (toWebKitBrowserWindow):
2463 (WebKitBrowserWindow::didReceiveTitleForFrame):
2464 (WebKitBrowserWindow::didCommitLoadForFrame):
2465 * MiniBrowser/win/WebKitBrowserWindow.h:
2466 * MiniBrowser/win/WinMain.cpp:
2469 2018-06-11 Keith Miller <keith_miller@apple.com>
2471 Add missing whitespace to run-jsc command
2472 https://bugs.webkit.org/show_bug.cgi?id=186528
2474 Reviewed by Mark Lam.
2478 2018-06-11 Philippe Normand <pnormand@igalia.com>
2480 [webkitpy] PHP7.2 support on Debian platforms
2481 https://bugs.webkit.org/show_bug.cgi?id=186521
2483 Reviewed by Michael Catanzaro.
2485 * Scripts/webkitpy/port/base.py:
2486 (Port._debian_php_version): Refactor and add PHP 7.2 version support.
2488 2018-06-11 Carlos Garcia Campos <cgarcia@igalia.com>
2490 Unreviewed. Fix WPE API and layout tests after r232670.
2492 Now that dyz is not installed, there's not -default.so symlink for the WPE backend, so we need to use
2493 WPE_BACKEND_LIBRARY environment variable to ensure tests are run with fdo backend.
2495 * Scripts/run-wpe-tests:
2496 (WPETestRunner.__init__):
2498 (WPETestRunner.setup_testing_environment):
2499 * Scripts/webkitpy/port/wpe.py:
2500 (WPEPort.setup_environ_for_server):
2501 * glib/api_test_runner.py:
2502 (TestRunner.setup_testing_environment):
2503 (TestRunner.run_tests):
2504 (TestRunner._setup_testing_environment): Deleted.
2506 2018-06-10 Carlos Garcia Campos <cgarcia@igalia.com>
2508 [GTK][WPE] Add API run run javascript from a WebKitWebView in an isolated world
2509 https://bugs.webkit.org/show_bug.cgi?id=186192
2511 Reviewed by Michael Catanzaro.
2513 Add tests cases for the new API.
2515 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitWebView.cpp:
2516 (testWebViewRunJavaScript):
2517 * TestWebKitAPI/Tests/WebKitGLib/WebExtensionTest.cpp:
2518 (methodCallCallback):
2519 (webkit_web_extension_initialize_with_user_data):
2520 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
2521 (runJavaScriptInWorldReadyCallback):
2522 (WebViewTest::runJavaScriptFromGResourceAndWaitUntilFinished):
2523 (WebViewTest::runJavaScriptInWorldAndWaitUntilFinished):
2524 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
2526 2018-06-10 Carlos Garcia Campos <cgarcia@igalia.com>
2528 [WPE] Add a MiniBrowser and use it to run WebDriver tests
2529 https://bugs.webkit.org/show_bug.cgi?id=186345
2531 Reviewed by Žan Doberšek.
2533 Most of the code is based on dyz and gtk MiniBrowser. This patch adds a new internal library WPEToolingBackends,
2534 including the headless view backend and a new window backend to be used by the MiniBrowser. MiniBrowser can also
2535 run in headless mode, by using the headless backend instead of the window one, which will allow us to run the
2536 WebDriver tests in the bots.
2539 * MiniBrowser/wpe/CMakeLists.txt: Added.
2540 * MiniBrowser/wpe/main.cpp: Added.
2541 (automationStartedCallback):
2542 (createViewBackend):
2544 * Scripts/run-minibrowser: Remove WPE specific code.
2545 * Scripts/run-webdriver-tests: Add headless display-server option.
2546 * Scripts/webkitdirs.pm:
2547 (launcherName): Remove WPE specific code.
2548 * Scripts/webkitpy/webdriver_tests/webdriver_driver_wpe.py:
2549 (WebDriverWPE.browser_name): Return MiniBrowser.
2550 (WebDriverWPE.browser_path): Return the path to the MiniBrowser in build dir.
2551 (WebDriverWPE.browser_args): Add --headless when running in headless mode.
2552 (WebDriverWPE.capabilities): Use the full browser path.
2553 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_selenium.py:
2554 (WebDriverTestRunnerSelenium.collect_tests): Fix early return value.
2555 * TestWebKitAPI/PlatformWPE.cmake: Use WPEToolingBackends instead of HeadlessViewBackend.
2556 * TestWebKitAPI/PlatformWebView.h: Ditto.
2557 * TestWebKitAPI/glib/PlatformWPE.cmake: Ditto
2558 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2559 (Test::createWebViewBackend): Ditto.
2560 * TestWebKitAPI/wpe/PlatformWebViewWPE.cpp:
2561 (TestWebKitAPI::PlatformWebView::initialize): Ditto.
2562 * WebKitTestRunner/PlatformWPE.cmake: Ditto.
2563 * WebKitTestRunner/PlatformWebView.h: Ditto.
2564 * WebKitTestRunner/wpe/PlatformWebViewWPE.cpp:
2565 (WTR::PlatformWebView::PlatformWebView): Ditto.
2566 * wpe/HeadlessViewBackend/CMakeLists.txt: Removed.
2567 * wpe/backends/CMakeLists.txt: Added.
2568 * wpe/backends/HeadlessViewBackend.cpp: Renamed from Tools/wpe/HeadlessViewBackend/HeadlessViewBackend.cpp.
2569 (WPEToolingBackends::getEGLDisplay):
2570 (WPEToolingBackends::HeadlessViewBackend::HeadlessViewBackend):
2571 (WPEToolingBackends::HeadlessViewBackend::~HeadlessViewBackend):
2572 (WPEToolingBackends::HeadlessViewBackend::createSnapshot):
2573 (WPEToolingBackends::HeadlessViewBackend::performUpdate):
2574 (WPEToolingBackends::HeadlessViewBackend::displayBuffer):
2575 * wpe/backends/HeadlessViewBackend.h: Renamed from Tools/wpe/HeadlessViewBackend/HeadlessViewBackend.h.
2576 * wpe/backends/ViewBackend.cpp: Added.
2577 (WPEToolingBackends::ViewBackend::ViewBackend):
2578 (WPEToolingBackends::ViewBackend::~ViewBackend):
2579 (WPEToolingBackends::ViewBackend::initialize):
2580 (WPEToolingBackends::ViewBackend::setInputClient):
2581 (WPEToolingBackends::ViewBackend::backend const):
2582 (WPEToolingBackends::ViewBackend::dispatchInputPointerEvent):
2583 (WPEToolingBackends::ViewBackend::dispatchInputAxisEvent):
2584 (WPEToolingBackends::ViewBackend::dispatchInputKeyboardEvent):
2585 * wpe/backends/ViewBackend.h: Added.
2586 * wpe/backends/WindowViewBackend.cpp: Added.
2587 (WPEToolingBackends::WindowViewBackend::WindowViewBackend):
2588 (WPEToolingBackends::WindowViewBackend::~WindowViewBackend):
2589 (WPEToolingBackends::WindowViewBackend::displayBuffer):
2590 (WPEToolingBackends::WindowViewBackend::handleKeyEvent):
2591 * wpe/backends/WindowViewBackend.h: Added.
2592 * wpe/jhbuild.modules: Remove dyz and add wayland-protocols.
2594 2018-06-10 Fujii Hironori <Hironori.Fujii@sony.com>
2596 [Win][MiniBrowser] MiniBrowser class should be renamed to WebKitLegacyBrowserWindow
2597 https://bugs.webkit.org/show_bug.cgi?id=186427
2599 Reviewed by Ryosuke Niwa.
2601 * MiniBrowser/win/AccessibilityDelegate.cpp:
2602 * MiniBrowser/win/AccessibilityDelegate.h:
2603 (AccessibilityDelegate::AccessibilityDelegate):
2604 * MiniBrowser/win/CMakeLists.txt: Removed MiniBrowser.cpp. Added WebKitLegacyBrowserWindow.cpp.
2605 * MiniBrowser/win/Common.h:
2606 * MiniBrowser/win/MainWindow.cpp:
2608 * MiniBrowser/win/MainWindow.h:
2609 * MiniBrowser/win/MiniBrowserWebHost.cpp:
2610 * MiniBrowser/win/MiniBrowserWebHost.h:
2611 (MiniBrowserWebHost::MiniBrowserWebHost):
2612 * MiniBrowser/win/PageLoadTestClient.cpp:
2613 (PageLoadTestClient::PageLoadTestClient):
2614 * MiniBrowser/win/PageLoadTestClient.h:
2615 * MiniBrowser/win/PrintWebUIDelegate.cpp:
2616 (PrintWebUIDelegate::createWebViewWithRequest):
2617 * MiniBrowser/win/PrintWebUIDelegate.h:
2618 (PrintWebUIDelegate::PrintWebUIDelegate):
2619 * MiniBrowser/win/ResourceLoadDelegate.cpp:
2620 * MiniBrowser/win/ResourceLoadDelegate.h:
2621 (ResourceLoadDelegate::ResourceLoadDelegate):
2622 * MiniBrowser/win/WebKitLegacyBrowserWindow.cpp: Renamed from Tools/MiniBrowser/win/MiniBrowser.cpp.
2623 * MiniBrowser/win/WebKitLegacyBrowserWindow.h: Renamed from Tools/MiniBrowser/win/MiniBrowser.h.
2624 * MiniBrowser/win/WebDownloadDelegate.cpp:
2625 (WebDownloadDelegate::WebDownloadDelegate):
2626 * MiniBrowser/win/WebDownloadDelegate.h:
2628 2018-06-10 Chris Dumez <cdumez@apple.com>
2630 Reload the Web view in case of crash if the client does not implement webViewWebContentProcessDidTerminate delegate
2631 https://bugs.webkit.org/show_bug.cgi?id=186468
2633 Reviewed by Geoffrey Garen.
2635 Add API test coverage.
2637 * TestWebKitAPI/Tests/WebKitCocoa/WebContentProcessDidTerminate.mm:
2638 (-[BasicNavigationDelegateWithoutCrashHandler webView:didStartProvisionalNavigation:]):
2639 (-[BasicNavigationDelegateWithoutCrashHandler webView:didFinishNavigation:]):
2642 2018-06-10 Michael Catanzaro <mcatanzaro@igalia.com>
2644 [WPE][GTK] paypal.com requires user agent quirk
2645 https://bugs.webkit.org/show_bug.cgi?id=186466
2647 Reviewed by Carlos Garcia Campos.
2649 * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
2650 (TestWebKitAPI::TEST):
2652 2018-06-09 Dan Bernstein <mitz@apple.com>
2654 [Xcode] Clean up and modernize some build setting definitions
2655 https://bugs.webkit.org/show_bug.cgi?id=186463
2657 Reviewed by Sam Weinig.
2659 * DumpRenderTree/mac/Configurations/Base.xcconfig: Removed definition for macOS 10.11.
2660 Simplified the definition of WK_PRIVATE_FRAMEWORK_STUBS_DIR now that
2661 WK_XCODE_SUPPORTS_TEXT_BASED_STUBS is true for all supported Xcode versions.
2662 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig: Removed definition for macOS
2664 * MiniBrowser/Configurations/Base.xcconfig: Ditto.
2665 * MiniBrowser/Configurations/DebugRelease.xcconfig: Ditto.
2666 * TestWebKitAPI/Configurations/Base.xcconfig: Ditto.
2667 * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Ditto.
2668 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Simplified the definitions of
2669 ENABLE_APPLE_PAY and ENABLE_VIDEO_PRESENTATION_MODE now macOS 10.12 is the earliest
2671 * TestWebKitAPI/Configurations/WebKitTargetConditionals.xcconfig: Removed definitions for
2673 * WebKitTestRunner/Configurations/Base.xcconfig: Ditto. Also simplified the definition of
2674 WK_PRIVATE_FRAMEWORK_STUBS_DIR now that WK_XCODE_SUPPORTS_TEXT_BASED_STUBS is true for all
2675 supported Xcode versions
2676 * WebKitTestRunner/Configurations/DebugRelease.xcconfig: Removed definition for macOS 10.11.
2678 2018-06-09 Dan Bernstein <mitz@apple.com>
2680 Added missing file references to the Configuration group.
2682 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2684 2018-06-08 Darin Adler <darin@apple.com>
2686 [Cocoa] Remove all uses of NSAutoreleasePool as part of preparation for ARC
2687 https://bugs.webkit.org/show_bug.cgi?id=186436
2689 Reviewed by Anders Carlsson.
2691 * TestWebKitAPI/Tests/WebKitObjC/CustomProtocolsTest.mm:
2692 (TestWebKitAPI::WebKit2CustomProtocolsTest_ProcessPoolDestroyedDuringLoading):
2693 Use @autoreleasepool.
2694 * TestWebKitAPI/Tests/mac/MenuTypesForMouseEvents.mm:
2695 (TestWebKitAPI::buildAndPerformTest): Ditto.
2696 * TestWebKitAPI/Tests/mac/StopLoadingFromDidFinishLoading.mm:
2697 (TestWebKitAPI::WebKitLegacy_StopLoadingFromDidFinishLoading): Ditto.
2699 2018-06-08 Wenson Hsieh <wenson_hsieh@apple.com>
2701 [WebKit on watchOS] Upstream watchOS source additions to OpenSource (Part 1)
2702 https://bugs.webkit.org/show_bug.cgi?id=186442
2703 <rdar://problem/40879364>
2705 Reviewed by Tim Horton.
2707 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2709 2018-06-08 Alicia Boya GarcÃa <aboya@igalia.com>
2711 [GTK] Update to libva-2.1.0 in jhbuild
2712 https://bugs.webkit.org/show_bug.cgi?id=186434
2714 Reviewed by Philippe Normand.
2716 * gstreamer/jhbuild.modules:
2718 2018-06-07 Yusuke Suzuki <utatane.tea@gmail.com>
2720 [WTF] Add WorkerPool
2721 https://bugs.webkit.org/show_bug.cgi?id=174569
2723 Reviewed by Carlos Garcia Campos.
2725 * TestWebKitAPI/CMakeLists.txt:
2726 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2727 * TestWebKitAPI/Tests/WTF/WorkerPool.cpp: Added.
2728 (TestWebKitAPI::TEST):
2730 2018-06-07 Fujii Hironori <Hironori.Fujii@sony.com>
2732 [Win][MiniBrowser] Add a new BrowserWindow interface to abstract WK1 and WK2 BrowserWindow
2733 https://bugs.webkit.org/show_bug.cgi?id=186421
2735 Reviewed by Ryosuke Niwa.
2737 This is the core patch to make MiniBrowser to support WK1 and WK2
2738 windows (Bug 184770).
2740 I will rename MiniBrowser class to WK1BrowserWindow in a follow-up
2741 patch (Bug 184770 Comment 12).
2743 * MiniBrowser/win/BrowserWindow.h: Added.
2744 * MiniBrowser/win/MainWindow.cpp:
2745 (MainWindow::WndProc):
2746 * MiniBrowser/win/MainWindow.h:
2747 (MainWindow::browserWindow const):
2748 * MiniBrowser/win/MiniBrowser.cpp:
2749 (MiniBrowser::create):
2750 (MiniBrowser::navigateForwardOrBackward): Removed the unsed first argument hWnd.
2751 (MiniBrowser::navigateToHistory): Ditto.
2752 * MiniBrowser/win/MiniBrowser.h: Inherit BrowserWindow interface.
2753 Make all other methods private and make delegates classes friends.
2754 * MiniBrowser/win/PrintWebUIDelegate.cpp:
2755 (PrintWebUIDelegate::createWebViewWithRequest):
2757 2018-06-07 Fujii Hironori <Hironori.Fujii@sony.com>
2759 [Win][MiniBrowser] MiniBrowser::updateDeviceScaleFactor should be a MainWindow's method
2760 https://bugs.webkit.org/show_bug.cgi?id=186387
2762 Reviewed by Ryosuke Niwa.
2764 MiniBrowser::updateDeviceScaleFactor does nothing for MiniBrowser.
2765 It should be a MainWindow's method.
2767 * MiniBrowser/win/MainWindow.cpp:
2768 (MainWindow::init): Call MainWindow::updateDeviceScaleFactor.
2769 (MainWindow::resizeSubViews): Do not set a font every time window size is changed.
2770 (MainWindow::WndProc): Call MainWindow::updateDeviceScaleFactor on WM_DPICHANGED.
2771 (MainWindow::updateDeviceScaleFactor): Converted from
2772 MiniBrowser::updateDeviceScaleFactor and
2773 MiniBrowser::generateFontForScaleFactor. Set a URL bar's font if DPI is changed.
2774 * MiniBrowser/win/MainWindow.h:
2775 * MiniBrowser/win/MiniBrowser.cpp:
2776 (MiniBrowser::init):
2777 (MiniBrowser::generateFontForScaleFactor): Deleted.
2778 (MiniBrowser::updateDeviceScaleFactor): Deleted.
2779 * MiniBrowser/win/MiniBrowser.h:
2780 (MiniBrowser::deviceScaleFactor): Deleted.
2781 (MiniBrowser::urlBarFont): Deleted.
2783 2018-06-07 Jonathan Bedard <jbedard@apple.com>
2785 [webkitpy] Treat svn versions as Version objects
2786 https://bugs.webkit.org/show_bug.cgi?id=186403
2787 <rdar://problem/40904860>
2789 Reviewed by Dan Bernstein.
2791 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
2792 * Scripts/webkitpy/common/checkout/scm/svn.py:
2793 (SVN.svn_version): Return Version object instead of string.
2794 (SVN._status_regexp): Convert version string to Version object.
2795 (SVN.add_list): Ditto.
2797 2018-06-07 Tadeu Zagallo <tzagallo@apple.com>
2799 Don't try to allocate JIT memory if we don't have the JIT entitlement
2800 https://bugs.webkit.org/show_bug.cgi?id=182605
2801 <rdar://problem/38271229>
2803 Reviewed by Mark Lam.
2805 Add the Security framework to the TestWTF target, since it's required by the new function to check the entitlements.
2807 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2809 2018-06-07 Mark Lam <mark.lam@apple.com>
2811 Enhance run-jsc-stress-tests to allow a test to specify test specific options required for it to run.
2812 https://bugs.webkit.org/show_bug.cgi?id=186409
2813 <rdar://problem/40909007>
2815 Reviewed by Saam Barati.
2817 This is needed because some tests are written with specific features in mind, and
2818 we may not necessarily want to enable that option for all tests.
2820 We can now specify something like this at the top of a test file:
2821 //@ requireOptions("--useIntlPluralRules=true")
2823 ... and ensure that that test will be run with the --useIntlPluralRules=true
2824 option for all test configurations that run the test.
2826 * Scripts/run-jsc-stress-tests:
2828 2018-06-07 Tim Horton <timothy_horton@apple.com>
2830 REGRESSION (r232544): [iOS] TestWebKitAPI.WebKit.OverrideLayoutSizeChangesDuringAnimatedResizeSucceed is failing
2831 https://bugs.webkit.org/show_bug.cgi?id=186395
2832 <rdar://problem/40902427>
2834 Reviewed by Wenson Hsieh.
2836 * TestWebKitAPI/Tests/WebKitCocoa/AnimatedResize.mm:
2838 endAnimatedResize no longer synchronizes, so we have to wait for the next presentation update.
2840 2018-06-07 Thibault Saunier <tsaunier@igalia.com>
2842 [GTK][WPE] Start implementing MediaStream API
2843 https://bugs.webkit.org/show_bug.cgi?id=185787
2845 Reviewed by Philippe Normand.
2847 * Scripts/webkitpy/style/checker.py: Apply special formatting rules for new GObject subclasses.
2848 * gstreamer/jhbuild.modules: Added a patch for the gst-plugins-base.
2849 * gstreamer/patches/gst-plugins-base-0001-parsebin-Post-STREAM_COLLECTION-on-EVENT_STREAM_COLL.patch:
2850 Added this fix to gst-plugings-base to fix the decodebin3. Merged as 89d0e9cc92a86aa0227ee87406737b6d31670aea
2852 2018-06-07 Brendan McLoughlin <brendan@bocoup.com>
2854 Update web-platform-tests github location in webkitpy.w3c.test_importer
2855 https://bugs.webkit.org/show_bug.cgi?id=186392
2857 Reviewed by Youenn Fablet.
2859 * Scripts/webkitpy/w3c/test_importer.py:
2860 (TestImporter.write_import_log):
2862 2018-06-07 Jonathan Bedard <jbedard@apple.com>
2864 webkitperl: Generalize .internal SDK suffix
2865 https://bugs.webkit.org/show_bug.cgi?id=186352
2866 <rdar://problem/40853947>
2868 Reviewed by Alexey Proskuryakov.
2870 * Scripts/build-webkit:
2871 * Scripts/package-root:
2873 * Scripts/webkitdirs.pm:
2874 (parseAvailableXcodeSDKS): Parse 'xcodebuild -showsdks' output.
2875 (availableXcodeSDKS): Generate a list of all available Xcode SDKs on this machine.
2876 (determineXcodeSDK): Always prefer .internal SDKs if available.
2877 * Scripts/webkitperl/webkitdirs_unittest/availableXcodeSDKS.pl:
2879 2018-06-07 Fujii Hironori <Hironori.Fujii@sony.com>
2881 [Win][MiniBrowser] Support multiple windows properly
2882 https://bugs.webkit.org/show_bug.cgi?id=186263
2884 Reviewed by Ryosuke Niwa.
2886 The current implementation of
2887 PrintWebUIDelegate::createWebViewWithRequest is wrong. It is using
2888 CreateProcess to open a new window, and doesn't return the new
2889 instance of IWebView. As the result, for example, window.close
2890 doesn't work as expected.
2892 In this change, a new MainWindow is created and return the
2893 IWebView in PrintWebUIDelegate::createWebViewWithRequest.
2895 In addition to it, this change unifies the lifetime of MiniBrowser
2896 and its delegates AccessibilityDelegate, PrintWebUIDelegate,
2897 ResourceLoadDelegate and WebDownloadDelegate in order to keep
2898 MiniBrowser alive as long as the delegates live. Because the
2899 window of webview keeps references of such delegates and accesses
2900 those after MiniBrowser destruction.
2902 * MiniBrowser/win/MainWindow.h: Added s_numInstances class member
2903 to count the number of instance to close the application. Do not
2904 use unique_ptr for m_browserWindow because it has ref count now.
2905 * MiniBrowser/win/MainWindow.cpp:
2906 (MainWindow::MainWindow): Increment s_numInstances.
2907 (MainWindow::~MainWindow): Decrement s_numInstances.
2908 (MainWindow::create):
2910 (MainWindow::WndProc): Rename thiz to thisWindow. Keep this
2911 instance alive during this function by using RefPtr<MainWindow>.
2912 Deref the MainWindow instance on WM_DESTROY. Quit the application
2913 when the last MainWindow is closed.
2914 (MainWindow::cachesDialogProc): Rename thiz to thisWindow.
2915 (MainWindow::customUserAgentDialogProc): Ditto.
2916 * MiniBrowser/win/MiniBrowser.h: Added declarations AddRef and Release.
2917 * MiniBrowser/win/MiniBrowser.cpp:
2918 (MiniBrowser::create):
2919 (MiniBrowser::AddRef):
2920 (MiniBrowser::Release):
2921 (MiniBrowser::init): Passes this to the constructors of delegates.
2922 * MiniBrowser/win/AccessibilityDelegate.cpp:
2923 (AccessibilityDelegate::AddRef): Delegate to MiniBrowser.
2924 (AccessibilityDelegate::Release): Ditto.
2925 * MiniBrowser/win/AccessibilityDelegate.h: Removed m_refCount.
2926 (AccessibilityDelegate::AccessibilityDelegate):
2927 * MiniBrowser/win/MiniBrowserWebHost.cpp:
2928 (MiniBrowserWebHost::AddRef): Delegate to MiniBrowser.
2929 (MiniBrowserWebHost::Release): Ditto.
2930 * MiniBrowser/win/MiniBrowserWebHost.h: Removed m_refCount.
2931 * MiniBrowser/win/PrintWebUIDelegate.cpp:
2932 (PrintWebUIDelegate::createWebViewWithRequest): Create a new
2933 MainWindow and return the IWebView.
2934 (PrintWebUIDelegate::AddRef): Delegate to MiniBrowser.
2935 (PrintWebUIDelegate::Release): Ditto.
2936 * MiniBrowser/win/PrintWebUIDelegate.h: Removed m_refCount.
2937 (PrintWebUIDelegate::PrintWebUIDelegate):
2938 * MiniBrowser/win/ResourceLoadDelegate.cpp:
2939 (ResourceLoadDelegate::AddRef): Delegate to MiniBrowser.
2940 (ResourceLoadDelegate::Release): Ditto.
2941 * MiniBrowser/win/ResourceLoadDelegate.h: Removed m_refCount.
2942 * MiniBrowser/win/WebDownloadDelegate.cpp:
2943 (WebDownloadDelegate::WebDownloadDelegate):
2944 (WebDownloadDelegate::AddRef): Delegate to MiniBrowser.
2945 (WebDownloadDelegate::Release): Ditto.
2946 * MiniBrowser/win/WebDownloadDelegate.h: Removed m_refCount.
2948 2018-06-06 Fujii Hironori <Hironori.Fujii@sony.com>
2950 [Win][MiniBrowser] Remove gMainWindow global variable
2951 https://bugs.webkit.org/show_bug.cgi?id=186378
2953 Reviewed by Ryosuke Niwa.
2955 I'm going to support multiple MainWindow in Bug 186263. It should
2956 not be assumed that MainWindow has only one instance. gMainWindow
2957 is used only in DisplayAuthDialog.
2959 * MiniBrowser/win/Common.cpp:
2960 (authDialogProc): Use DWLP_USER to store the dialog data.
2961 (displayAuthDialog): Moved and renamed from
2962 MainWindow::displayAuthDialog. Use DialogBoxParam instead of
2963 DialogBox to pass a data pointer. Do not return S_OK if
2964 DialogBoxParam returns -1. Take a HWND argument as the parent
2966 (DisplayAuthDialog): Deleted.
2967 * MiniBrowser/win/Common.h:
2968 * MiniBrowser/win/MainWindow.cpp:
2969 (authDialogProc): Moved to Common.cpp.
2970 (MainWindow::displayAuthDialog): Ditto.
2971 * MiniBrowser/win/MainWindow.h:
2972 * MiniBrowser/win/ResourceLoadDelegate.cpp:
2973 (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
2974 * MiniBrowser/win/WinMain.cpp:
2975 (wWinMain): Added a local variable mainWindow instead of using
2978 2018-06-06 Dan Bernstein <mitz@apple.com>
2980 [Xcode] Opt out of the New Build System
2981 https://bugs.webkit.org/show_bug.cgi?id=186380
2983 Reviewed by Alexey Proskuryakov.
2985 * Scripts/webkitdirs.pm:
2986 (XcodeOptions): Have -UseNewBuildSystem=NO passed to xcodebuild.
2988 2018-06-06 Antoine Quint <graouts@apple.com>
2990 Rename color-filter to -apple-color-filter and do not expose it to Web content
2991 https://bugs.webkit.org/show_bug.cgi?id=186306
2992 <rdar://problem/39874167>
2994 Reviewed by Simon Fraser.
2996 Adding an option to turn support for the -apple-color-filter property on via an HTML comment.
2998 * DumpRenderTree/TestOptions.cpp:
2999 (TestOptions::TestOptions):
3000 * DumpRenderTree/TestOptions.h:
3001 * DumpRenderTree/mac/DumpRenderTree.mm:
3002 (setWebPreferencesForTestOptions):
3003 * WebKitTestRunner/TestController.cpp:
3004 (WTR::TestController::resetPreferencesToConsistentValues):
3005 (WTR::updateTestOptionsFromTestHeader):
3006 * WebKitTestRunner/TestOptions.h:
3007 (WTR::TestOptions::hasSameInitializationOptions const):
3008 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3009 (WTR::TestController::platformCreateWebView):
3011 2018-06-06 Brent Fulgham <bfulgham@apple.com>
3013 Adjust compile and runtime flags to match shippable state of features (Part 2)
3014 https://bugs.webkit.org/show_bug.cgi?id=186319
3015 <rdar://problem/40352045>
3017 Unreviewed test fix.
3019 TestWebKitAPI was timing out because 'color' input types are no longer support. I also discovered that the
3020 ASSERT_STREQ macro returns on error, which causes tests to time out whenever a 'done = true' call (needed to
3021 end the test) is done after ASSERT_STREQ, which might fail and return early, preventing the flag from being
3024 * TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsTextField.mm:
3025 (-[InjectedBundleNodeHandleIsTextField webProcessPlugIn:didCreateBrowserContextController:]): Make testing of
3026 the 'color' input type conditional on the feature being part of the build.
3027 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
3028 (-[AutoFillDelegate _webView:didClickAutoFillButtonWithUserInfo:]): Set the 'done=true' state before performing
3029 string equality assertions, since they do an early return and bypass the end state of the test.
3030 (-[DidResignInputElementStrongPasswordAppearanceDelegate _webView:didResignInputElementStrongPasswordAppearanceWithUserInfo:]): Ditto.
3031 (-[AutoFillAvailableDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Ditto.
3032 (-[InjectedBundleNodeHandleIsTextFieldDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]): Ditto.
3034 2018-06-05 Chris Dumez <cdumez@apple.com>
3036 Regression(r232082): Websites get loaded inside of Messages App chat transcript
3037 https://bugs.webkit.org/show_bug.cgi?id=186331
3038 <rdar://problem/40735446>
3040 Reviewed by Darin Adler.
3042 Add API test coverage.
3044 * TestWebKitAPI/Tests/mac/NoPolicyDelegateResponse.mm:
3045 (-[NoDecidePolicyForNavigationActionDecisionDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
3046 (-[NoDecidePolicyForNavigationActionDecisionDelegate webView:didStartProvisionalLoadForFrame:]):
3047 (TestWebKitAPI::TEST):
3048 (-[NoPolicyDelegateDecisionDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]): Deleted.
3049 (-[NoPolicyDelegateDecisionDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]): Deleted.
3050 (-[NoPolicyDelegateDecisionDelegate webView:didFinishLoadForFrame:]): Deleted.
3052 2018-06-05 Wenson Hsieh <wenson_hsieh@apple.com>
3054 DataInteractionTests ContentEditableToTextarea and ContentEditableToContentEditable are failing on recent iOS 12
3055 https://bugs.webkit.org/show_bug.cgi?id=186325
3056 <rdar://problem/40527850>
3058 Reviewed by Tim Horton.
3060 Tweak these API tests so that they're robust against changes to how NSAttributedStrings are serialized in item
3061 providers ("public.rtf" vs. "com.apple.flat-rtfd"). Across all versions of iOS, just verify that either rich
3062 text type is present in the list of dragged type identifiers, and that the rich text type is placed at a higher
3063 fidelity than plain text.
3065 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3066 (checkRichTextTypePrecedesPlainTextType):
3067 (TestWebKitAPI::TEST):
3068 (checkTypeIdentifierPrecedesOtherTypeIdentifier): Deleted.
3070 2018-06-05 Brent Fulgham <bfulgham@apple.com>
3072 Adjust compile and runtime flags to match shippable state of features
3073 https://bugs.webkit.org/show_bug.cgi?id=186319
3074 <rdar://problem/40352045>
3076 Reviewed by Maciej Stachowiak, Jon Lee, and others.
3078 This patch revises the compile time and runtime state for various features to match their
3079 suitability for end-user releases.
3081 * TestWebKitAPI/Configurations/DebugRelease.xcconfig: Update to match WebKit definition of
3082 WK_RELOCATABLE_FRAMEWORKS so that ENABLE(EXPERIMENTAL_FEATURES) is defined properly for
3084 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Don't build ENABLE_INPUT_TYPE_COLOR
3085 or ENABLE_INPUT_TYPE_COLOR_POPOVER.
3087 2018-06-05 Saam Barati <sbarati@apple.com>
3089 run-testmem should have a dry run option and an option to parse the stdout of executing the dry run
3090 https://bugs.webkit.org/show_bug.cgi?id=186293
3092 Reviewed by Mark Lam.
3094 This makes it easier to execute run-testmem on a device that doesn't have ruby
3095 on it. run-testmem now has a --dry option that will output commands to execute
3096 in bash. To run on a device that doesn't have ruby, just put its output into
3097 a bash script, and copy the PerformanceTests/testmem directory onto that device,
3098 and execute the bash script. Running that bash script will give you raw output.
3099 Make a file with that output and pass it into run-testmem using the --parse option.
3100 run-testmem will parse the raw output and compute the benchmark score.
3102 * Scripts/run-testmem:
3104 2018-06-05 Youenn Fablet <youenn@apple.com>
3106 ServiceWorker registration should store any script fetched through importScripts
3107 https://bugs.webkit.org/show_bug.cgi?id=182444
3108 <rdar://problem/37164835>
3110 Reviewed by Chris Dumez.
3112 Add support to crash the storage process from Internals.
3114 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3115 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3116 (WTR::TestRunner::terminateStorageProcess):
3117 * WebKitTestRunner/InjectedBundle/TestRunner.h:
3118 * WebKitTestRunner/TestController.cpp:
3119 (WTR::TestController::terminateStorageProcess):
3120 * WebKitTestRunner/TestController.h:
3121 * WebKitTestRunner/TestInvocation.cpp:
3122 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
3124 2018-06-05 Brent Fulgham <bfulgham@apple.com>
3126 Revise DEFAULT_EXPERIMENTAL_FEATURES_ENABLED to work properly on Apple builds
3127 https://bugs.webkit.org/show_bug.cgi?id=186286
3128 <rdar://problem/40782992>
3130 Reviewed by Dan Bernstein.
3132 Use the WK_RELOCATABLE_FRAMEWORKS flag (which is always defined for non-production builds)
3133 to define ENABLE(EXPERIMENTAL_FEATURES) so that we do not need to manually
3134 change this flag when preparing for a production release.
3136 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig: Use WK_RELOCATABLE_FRAMEWORKS to
3137 determine whether experimental features should be enabled, and use it to properly define
3140 2018-06-05 Robin Morisset <rmorisset@apple.com>
3142 Add a grammar (in antlr4 format) to the WSL spec.
3143 https://bugs.webkit.org/show_bug.cgi?id=186310
3145 Rubberstamped by Filip Pizlo
3147 It is just the raw rules, without much comments and no typesetting.
3148 Compiles to any of Java/JS/C++/etc.. with antlr4 (requires a JDK)
3150 It does not exactly match the parser of the current js implementation of WSL, it:
3151 - Accepts negative literals
3152 - Reserves keywords fallthrough/auto
3153 - Refuses '_' as a valid identifier
3154 - Accepts several capitalizations for Null/True/False
3155 - Accepts variable declarations at the top-level
3156 - Correctly parses ternary expressions
3157 - Forbids empty extension list for protocols
3158 - Does not allow a space between '[' and ']' in type suffixes
3159 - Correctly parses nested generics
3160 - Accepts a 'fallthrough;' statement (for switches)
3161 - Refuses chained relational operator (e.g. x < y < z)
3162 - Generally a completely different structure for parsing effectful expressions, although it probably accepts about the same language
3163 - Currently only accepts literals and identifiers as constexpr (while the js parser accepts way too much, including '(x += 42)')
3164 There are probably more differences that I missed. The js parser will probably have to be mostly rewritten to follow the spec more closely (and fix all the bugs).
3165 I will try to see if it can be automatically derived from the antlr4 grammar.
3167 * WebGPUShadingLanguageRI/SpecWork/WSL.g4: Added.
3169 2018-06-04 Frederic Wang <fwang@igalia.com>
3171 import-w3c-tests should rely on <meta name="flags"> to detect CSS manual tests
3172 https://bugs.webkit.org/show_bug.cgi?id=186261
3174 Reviewed by Youenn Fablet.
3176 * Scripts/webkitpy/w3c/test_parser.py:
3177 (TestParser.is_wpt_manualtest): Add code to detect whether a file is a manual test
3178 from its <meta name="flags"> tags. This is based on SourceFile::content_is_css_manual from
3180 * Scripts/webkitpy/w3c/test_parser_unittest.py: Add a test to verify whether files with
3181 <meta name="flags"> are manual or non-manual according to CSS WG rules.
3183 2018-06-04 Dan Bernstein <mitz@apple.com>
3185 Fixed building ImageDiff with the default build system in the Xcode 10 developer beta.
3187 * ImageDiff/cg/Configurations/Base.xcconfig: Use #include? to include
3188 HaveInternalSDK.xcconfig, since it may not be preent.
3190 2018-06-04 Dan Bernstein <mitz@apple.com>
3192 Fixed building TestWebKitAPI with a shared build directory with XCBuild, which is the
3193 default build system in the Xcode 10 developer beta.
3195 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Changed the reference to the
3196 built libWTF.a to be relative to the built products directory.
3198 2018-06-04 Chris Dumez <cdumez@apple.com>
3200 Rename "Cross-Origin-Options" HTTP header to "Cross-Origin-Window-Policy"
3201 https://bugs.webkit.org/show_bug.cgi?id=186287
3202 <rdar://problem/40783352>
3204 Reviewed by Youenn Fablet.
3206 * DumpRenderTree/mac/DumpRenderTree.mm:
3207 (enableExperimentalFeatures):
3208 * DumpRenderTree/win/DumpRenderTree.cpp:
3209 (enableExperimentalFeatures):
3211 2018-06-04 Daniel Bates <dabates@apple.com>
3213 Typo in MockBugzillaQueries.fetch_attachment_ids_from_review_queue()
3214 https://bugs.webkit.org/show_bug.cgi?id=186290
3216 Reviewed by Aakash Jain.
3218 Although the usefulness of the code in MockBugzillaQueries.fetch_attachment_ids_from_review_queue() is
3219 questionable we should fix a typo when calling this mocked function with argument since.
3221 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
3222 (MockBugzillaQueries.fetch_attachment_ids_from_review_queue):
3224 2018-06-04 Dan Bernstein <mitz@apple.com>
3226 Fixed building with the macOS Mojave seed SDK.
3228 * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm:
3230 2018-06-04 Alexey Proskuryakov <ap@apple.com>
3232 Add Mojave support to WebKit tools
3233 https://bugs.webkit.org/show_bug.cgi?id=186282
3235 Reviewed by Daniel Bates.
3237 Nightly build support will be added separately.
3239 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mojave.png: Added.
3240 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/Mojave@2x.png: Added.
3241 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
3242 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
3243 Added dashboard support.
3245 * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
3246 * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
3247 Trigger the right build queues on check-in.
3249 * Scripts/webkitpy/common/version_name_map.py:
3250 * Scripts/webkitpy/common/version_name_map_unittest.py:
3251 The main version mapping class updated.
3253 * Scripts/webkitpy/layout_tests/models/test_expectations.py:
3254 * Scripts/webkitpy/port/mac_unittest.py:
3255 Updated for more platforms in unit tests.
3257 * TestResultServer/static-dashboards/flakiness_dashboard.js:
3258 Added the new platform to flakiness dashboard.
3260 2018-06-04 Wenson Hsieh <wenson_hsieh@apple.com>
3262 [WebKit on watchOS] Remove all uses of the EXTRA_ZOOM_MODE compiler flag
3263 https://bugs.webkit.org/show_bug.cgi?id=186279
3265 Reviewed by Tim Horton.
3267 Replaces uses of ENABLE(EXTRA_ZOOM_MODE) with PLATFORM(WATCHOS).
3269 * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm:
3271 2018-06-03 Fujii Hironori <Hironori.Fujii@sony.com>
3273 [Win][MiniBrowser] Remove gMiniBrowser global variable
3274 https://bugs.webkit.org/show_bug.cgi?id=186134
3276 Reviewed by Brent Fulgham.
3278 It should not be assumed there is only one main window and one browser
3279 window to support multiple windows properly. gMainWindow and
3280 gMiniBrowser global variables should be removed. This change
3281 removes gMiniBrowser.
3283 * MiniBrowser/win/Common.cpp: Removed gMiniBrowser global variable.
3284 * MiniBrowser/win/Common.h: Ditto.
3285 * MiniBrowser/win/MainWindow.cpp:
3287 (MainWindow::WndProc):
3288 (EditProc): Post WM_COMMAND if the enter key is pressed in URL bar.
3289 (MainWindow::cachesDialogProc): Renamed from Caches.
3290 (MainWindow::customUserAgentDialogProc): Renamed from CustomUserAgent.
3291 (MainWindow::onURLBarEnter): Extracted from EditProc.
3292 (BackButtonProc): Deleted.
3293 (ForwardButtonProc): Deleted.
3294 (Caches): Renamed to MainWindow::cachesDialogProc.
3295 (CustomUserAgent): Renamed to MainWindow::customUserAgentDialogProc.
3296 * MiniBrowser/win/MainWindow.h: Convert hCacheWnd global variable to a member variable of MainWindow.
3297 * MiniBrowser/win/MiniBrowserLibResource.h:
3298 * MiniBrowser/win/WinMain.cpp:
3301 2018-06-02 Darin Adler <darin@apple.com>
3303 [Cocoa] Update some code to be more ARC-compatible to prepare for future ARC adoption
3304 https://bugs.webkit.org/show_bug.cgi?id=186227
3306 Reviewed by Dan Bernstein.
3308 * DumpRenderTree/mac/AccessibilityCommonMac.mm:
3309 (+[NSString stringWithJSStringRef:]): Use CFBridgingRelease instead of autorelease.
3310 (-[NSString createJSStringRef]): Add __bridge to a bridging typecast.
3312 * DumpRenderTree/mac/AccessibilityControllerMac.mm: Add a missing include.
3314 * DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
3315 (-[NSString createJSStringRef]): Add __bridge to a bridging typecast.
3316 * DumpRenderTree/mac/AccessibilityTextMarkerMac.mm:
3317 (AccessibilityTextMarker::isEqual): Ditto.
3318 (AccessibilityTextMarkerRange::isEqual): Ditto.
3320 * DumpRenderTree/mac/DumpRenderTree.mm:
3321 (-[DumpRenderTree _waitForWebThread]): Use @autoreleasepool instead of NSAutoreleasePool.
3322 (DumpRenderTreeMain): Ditto.
3323 (WebThreadLockAfterDelegateCallbacksHaveCompleted): Ditto.
3326 * DumpRenderTree/mac/DumpRenderTreeDraggingInfo.mm:
3327 (copyFile): Use a std::pair to return both a URL and an error rather than using an
3328 out argument for the NSError.
3329 (-[DumpRenderTreeFilePromiseReceiver receivePromisedFilesAtDestination:options:operationQueue:reader:]):
3330 Updated for the above change.
3332 * DumpRenderTree/mac/DumpRenderTreeWindow.mm:
3333 (-[DumpRenderTreeWindow _addToOpenWindows]): Add __bridge to a bridging typecast.
3334 (-[DumpRenderTreeWindow close]): Ditto.
3335 * DumpRenderTree/mac/LayoutTestHelper.m:
3336 (setDisplayColorProfile): Ditto.
3338 * DumpRenderTree/mac/PolicyDelegate.mm: Add a missing include.
3340 * DumpRenderTree/mac/ResourceLoadDelegate.mm:
3341 (-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
3342 Add __bridge to a bridging typecast.
3343 * DumpRenderTree/mac/TestRunnerMac.mm:
3344 (-[APITestDelegateIPhone initWithTestRunner:utf8Data:baseURL:]): Ditto.
3345 (TestRunner::apiTestNewWindowDataLoadBaseURL): Use @autoreleasepool instead of NSAutoreleasePool.
3347 * DumpRenderTree/mac/TextInputControllerMac.m: Fix a comment.
3349 * DumpRenderTree/mac/UIScriptControllerMac.mm:
3350 (WTR::UIScriptController::replaceTextAtRange): Add __bridge to a bridging typecast.
3351 (WTR::UIScriptController::contentsOfUserInterfaceItem const): Ditto.
3352 (WTR::UIScriptController::overridePreference): Ditto.
3353 * DumpRenderTree/mac/WorkQueueItemMac.mm:
3354 (LoadItem::invoke const): Ditto.
3355 (LoadHTMLStringItem::invoke const): Ditto.
3356 (ScriptItem::invoke const): Ditto.
3358 * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
3359 (+[NSString stringWithJSStringRef:]): Use CFBridgingRelease instead of autorelease.
3360 (-[NSString createJSStringRef]): Add __bridge to a bridging typecast.
3362 * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
3363 (+[NSString stringWithJSStringRef:]): Use CFBridgingRelease instead of autorelease.
3364 (-[NSString createJSStringRef]): Add __bridge to a bridging typecast.
3366 * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
3367 (WTR::AccessibilityController::accessibleElementById): Add __bridge to a bridging typecast.
3368 * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
3369 (-[NSString createJSStringRef]): Ditto.
3370 * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerMac.mm:
3371 (WTR::AccessibilityTextMarker::isEqual): Ditto.
3372 * WebKitTestRunner/InjectedBundle/mac/AccessibilityTextMarkerRangeMac.mm:
3373 (WTR::AccessibilityTextMarkerRange::isEqual): Ditto.
3374 * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
3375 (WTR::AccessibilityUIElement::setSelectedVisibleTextRange): Ditto.
3376 (WTR::AccessibilityUIElement::lineTextMarkerRangeForTextMarker): Ditto.
3377 (WTR::AccessibilityUIElement::textMarkerRangeLength): Ditto.
3378 (WTR::AccessibilityUIElement::previousTextMarker): Ditto.
3379 (WTR::AccessibilityUIElement::nextTextMarker): Ditto.
3380 (WTR::AccessibilityUIElement::stringForTextMarkerRange): Ditto.
3381 (WTR::AccessibilityUIElement::textMarkerRangeForMarkers): Ditto.
3382 (WTR::AccessibilityUIElement::startTextMarkerForTextMarkerRange): Ditto.
3383 (WTR::AccessibilityUIElement::endTextMarkerForTextMarkerRange): Ditto.
3384 (WTR::AccessibilityUIElement::accessibilityElementForTextMarker): Ditto.
3385 (WTR::createJSStringRef): Ditto.
3386 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
3387 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
3388 (WTR::AccessibilityUIElement::attributedStringForTextMarkerRangeContainsAttribute): Ditto.
3389 (WTR::AccessibilityUIElement::indexForTextMarker): Ditto.
3390 (WTR::AccessibilityUIElement::isTextMarkerValid): Ditto.
3391 (WTR::AccessibilityUIElement::leftWordTextMarkerRangeForTextMarker): Ditto.
3392 (WTR::AccessibilityUIElement::rightWordTextMarkerRangeForTextMarker): Ditto.
3393 (WTR::AccessibilityUIElement::previousWordStartTextMarkerForTextMarker): Ditto.
3394 (WTR::AccessibilityUIElement::nextWordEndTextMarkerForTextMarker): Ditto.
3395 (WTR::AccessibilityUIElement::paragraphTextMarkerRangeForTextMarker): Ditto.
3396 (WTR::AccessibilityUIElement::previousParagraphStartTextMarkerForTextMarker): Ditto.
3397 (WTR::AccessibilityUIElement::nextParagraphEndTextMarkerForTextMarker): Ditto.
3398 (WTR::AccessibilityUIElement::sentenceTextMarkerRangeForTextMarker): Ditto.
3399 (WTR::AccessibilityUIElement::previousSentenceStartTextMarkerForTextMarker): Ditto.
3400 (WTR::AccessibilityUIElement::nextSentenceEndTextMarkerForTextMarker): Ditto.
3401 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
3402 (WTR::initializeWebViewConfiguration): Ditto.
3403 (WTR::TestController::platformContext): Ditto.
3404 (WTR::TestController::platformPreferences): Ditto.
3405 (WTR::TestController::platformAdjustContext): Ditto.
3406 * WebKitTestRunner/mac/PlatformWebViewMac.mm:
3407 (WTR::PlatformWebView::PlatformWebView): Ditto.
3408 * WebKitTestRunner/mac/TestControllerMac.mm:
3409 (WTR::TestController::initializeInjectedBundlePath): Ditto.
3410 (WTR::TestController::initializeTestPluginDirectory): Ditto.
3411 (WTR::TestController::platformConfigureViewForTest): Ditto.
3413 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
3414 (WTR::nsString): Use CFBridgingRelease instead of autorelease.
3415 (WTR::UIScriptController::platformPlayBackEventStream): Add __bridge to a bridging
3418 * WebKitTestRunner/mac/WebKitTestRunnerDraggingInfo.mm: Add a missing include.
3420 * WebKitTestRunner/mac/WebKitTestRunnerPasteboard.mm:
3421 (-[LocalPasteboard setPropertyList:forType:]): Add _bridge to a bridging typecast.
3422 (-[LocalPasteboard setString:forType:]): Ditto.
3424 * WebKitTestRunner/mac/main.mm:
3425 (main): Use @autoreleasepool instead of NSAutoreleasePool.
3427 2018-06-02 Keith Miller <keith_miller@apple.com>
3429 run-jsc should pass the option to use dollar vm by default
3430 https://bugs.webkit.org/show_bug.cgi?id=186170
3432 Reviewed by Yusuke Suzuki.
3436 2018-06-02 Commit Queue <commit-queue@webkit.org>
3438 Unreviewed, rolling out r232421.
3439 https://bugs.webkit.org/show_bug.cgi?id=186240
3441 Breaks webkitpy tests (Requested by aakashjain on #webkit).
3445 "Add some tests for lldb_webkit.py"
3446 https://bugs.webkit.org/show_bug.cgi?id=183744
3447 https://trac.webkit.org/changeset/232421
3449 2018-06-01 Daniel Bates <dabates@apple.com>
3451 Add some tests for lldb_webkit.py
3452 https://bugs.webkit.org/show_bug.cgi?id=183744
3454 Reviewed by Alexey Proskuryakov.
3456 Adds some tests to ensure we do not regress LLDB pretty-printing of WTF::StringImpl
3457 and WTF::String objects.
3459 The tests make use of the LLDB Python API (lldb.py) and a simple debug-built test
3460 program, lldbWebKitTester, to run. For now, we only support building lldbWebKitTester
3463 * Makefile: Build the simple test tool lldbWebKitTester on Mac.
3464 * Scripts/build-lldbwebkittester: Added.
3465 (buildProjectOrDie):
3466 * Scripts/dump-class-layout: Extract logic to compute the path to the LLDB Python module
3467 from here to Scripts/webkitpy/common/system/systemhost.py so that it can used by both
3468 this script and lldb/lldb_webkit_unittest.py. Also import the lldb module at the top of
3469 the file and take advantage of Python's default error semantics to throw an exception
3470 if the import fails instead of handling it ourself. This has the side effect that we
3471 now always import the LLDB Python module even if this script is invoked with --help.
3472 If this turns out to be a significant annoyance then we can look to dynamically import
3473 the module as we did before this change.
3476 (developer_dir): Deleted.
3477 (import_lldb): Deleted.
3478 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py: Update FIXME comment to reflect
3479 that fact that test-webkitpy does not support class and module fixtures. This is because
3480 test-webkitpy currently implements parallelism by breaking down existing test classes
3481 into individual test methods itself and having each worker run exactly one test method (via
3482 unittest.TestLoader.loadTestsFromName()) at a time. As a result of this reorganization,
3483 setUpModule()/setUpClass() are called for each test method as opposed to once per test
3485 (remove_dir): Ditto.
3486 * Scripts/webkitpy/common/system/systemhost.py:
3488 (SystemHost.path_to_lldb_python_directory): Added.
3489 * Scripts/webkitpy/test/main.py:
3490 (_find_lldb_webkit_tester): Returns whether there exists a Debug or Release-built lldbWebKitTester.
3491 (_build_lldb_webkit_tester): Builds lldbWebKitTester. For now, we only support building
3492 lldbWebKitTester on Mac.
3493 (main): Add Tools/lldb to the test search path if the platform has lldb.py.
3494 (Tester.run): Pass a boolean as to whether we will run the lldb_webkit unit tests.
3495 (Tester._run_tests): Modified to take a boolean as to whether to run the lldb_webkit unit tests.
3496 If we will run these tests then build lldbWebKitTester if it has not already been built as the
3497 unit tests depend on this program.
3498 * lldb/lldbWebKitTester/Configurations/Base.xcconfig: Added.
3499 * lldb/lldbWebKitTester/Configurations/DebugRelease.xcconfig: Added.
3500 * lldb/lldbWebKitTester/Configurations/lldbWebKitTester.xcconfig: Added.
3501 * lldb/lldbWebKitTester/Makefile: Added.
3502 * lldb/lldbWebKitTester/lldbWebKitTester.xcodeproj/project.pbxproj: Added.
3503 * lldb/lldbWebKitTester/main.cpp: Added.
3504 (breakForTestingSummaryProviders):
3506 (testSummaryProviders):
3508 * lldb/lldb_webkit_unittest.py: Added.
3509 (destroy_cached_debug_session):
3511 (LLDBDebugSession.setup):
3512 (LLDBDebugSession.tearDown):
3513 (TestSummaryProviders):
3514 (TestSummaryProviders.setUpClass):
3515 (TestSummaryProviders._sbFrame):
3516 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_null_string):
3517 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_empty_string):
3518 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_8bit_string):
3519 (TestSummaryProviders.serial_test_WTFStringImpl_SummaryProvider_16bit_string):
3520 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_null_string):
3521 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_empty_string):
3522 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_8bit_string):
3523 (TestSummaryProviders.serial_test_WTFString_SummaryProvider_16bit_string):
3525 2018-06-01 Frederic Wang <fwang@igalia.com>
3527 export-w3c-test-changes cannot apply patches when some w3c-import.log files are changed
3528 https://bugs.webkit.org/show_bug.cgi?id=186133
3530 Reviewed by Youenn Fablet.
3532 * Scripts/webkitpy/w3c/test_exporter.py: Exclude w3c-import.log from the diff.
3533 * Scripts/webkitpy/w3c/test_exporter_unittest.py: Add unit test.
3535 2018-05-31 Frederic Wang <fwang@igalia.com>
3537 export-w3c-test-changes should use the new location & name of the WPT repo
3538 https://bugs.webkit.org/show_bug.cgi?id=186135
3540 Reviewed by Youenn Fablet.
3542 Web platform tests have been moved to GitHub's web-platform-tests/wpt. This patch updates the
3543 corresponding variables to use the new organization and repository name. It also refactors a
3544 bit the code to reduce the amount of hardcoded strings.
3546 * Scripts/webkitpy/w3c/common.py: Use org web-platform-tests, repo name wpt. Also removes the
3547 final slash to WPT_GH_URL, so it can be used for repo URL too.
3548 * Scripts/webkitpy/w3c/test_exporter.py: Import more symbols and define WPT_PR_URL from
3550 (WebPlatformTestExporter._wpt_fork_branch_github_url): Use WPT_GH_REPO_NAME.
3551 (WebPlatformTestExporter._wpt_fork_push_url): Use WPT_GH_REPO_NAME.
3552 (WebPlatformTestExporter._git): Use WPT_GH_URL.
3553 (WebPlatformTestExporter._ensure_username_and_token): Use WPT_GH_ORG, WPT_GH_REPO_NAME.
3554 (WebPlatformTestExporter.make_pull_request): Use WPT_GH_ORG, WPT_GH_REPO_NAME.
3555 (parse_args): Use WPT_GH_REPO_NAME, WPT_GH_URL.
3556 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
3557 (TestExporterTest.test_export): Update organization and repository names for the remote
3558 branch and pull request.
3559 (TestExporterTest.test_export_with_specific_branch): Update repository name.
3561 2018-05-31 Ryan Haddad <ryanhaddad@apple.com>
3563 Update expected results for BuildStepsConstructorTest
3564 https://bugs.webkit.org/show_bug.cgi?id=186119
3566 Reviewed by Alex Christensen.
3568 * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py: Add missing entries for 'WinCairo 64-bit' bots.
3570 2018-05-31 Sihui Liu <sihui_liu@apple.com>
3572 [iOS] TestWebKitAPI.WebKit.WKHTTPCookieStoreWithoutProcessPool fails because cookies use different files with/without processpool
3573 https://bugs.webkit.org/show_bug.cgi?id=185831
3574 <rdar://problem/40468716>
3576 Reviewed by David Kilzer.
3578 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
3579 (-[CookieUIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3582 2018-05-31 Chris Dumez <cdumez@apple.com>
3584 [iOS] API test ScrollViewInsetTests.InnerHeightWithLargeTopContentInset is a flaky failure
3585 https://bugs.webkit.org/show_bug.cgi?id=184893
3586 <rdar://problem/39747271>
3588 Reviewed by Wenson Hsieh.
3590 Update test to wait until the view is the expected height instead of
3591 calling waitForNextPresentationUpdate once and expect the view to
3592 have the right height. This fixes the flakiness.
3594 * TestWebKitAPI/Tests/ios/ScrollViewInsetTests.mm:
3595 (TestWebKitAPI::waitUntilInnerHeightIs):
3596 (TestWebKitAPI::TEST):
3598 2018-05-31 Leo Balter <leonardo.balter@gmail.com>
3600 test262-runner should run in verbose mode in automation
3601 https://bugs.webkit.org/show_bug.cgi?id=186115
3603 Reviewed by Yusuke Suzuki.
3605 This patch toggles the verbose mode in the build bot and reports every test file
3606 in order to avoid the '1200 seconds without output' issue.
3607 * BuildSlaveSupport/build.webkit.org-config/steps.py:
3609 * Scripts/test262/Runner.pm:
3612 2018-05-30 Fujii Hironori <Hironori.Fujii@sony.com>
3614 [Win][MiniBrowser] Move MainWindow related code from Common.cpp to MainWindow.cpp
3615 https://bugs.webkit.org/show_bug.cgi?id=186079
3617 Reviewed by Alex Christensen.
3619 This is a sub task of Bug 184770.
3621 This change is partial. I'm going to remove global variables
3622 gMainWindow and gMiniBrowser and convert more functions to
3623 MainWindow's methods in follow-up patches.
3625 * MiniBrowser/win/CMakeLists.txt: Added Common.cpp
3626 * MiniBrowser/win/Common.cpp:
3627 (menuItemIsChecked): Moved to MainWindow.cpp.
3628 (turnOffOtherUserAgents): Ditto.
3630 (BackButtonProc): Ditto.
3631 (ForwardButtonProc): Ditto.
3634 (CustomUserAgent): Ditto.
3635 (AuthDialogProc): Ditto.
3636 (DisplayAuthDialog): Converted to MainWindow's method.
3637 (ToggleMenuItem): Ditto.
3639 * MiniBrowser/win/Common.h:
3640 * MiniBrowser/win/MainWindow.cpp:
3641 (MainWindow::init): Call SetFocus at the end of the construction.
3642 (MainWindow::WndProc):
3643 (menuItemIsChecked): Moved from Common.cpp.
3644 (turnOffOtherUserAgents): Ditto.
3646 (BackButtonProc): Ditto.
3647 (ForwardButtonProc): Ditto.
3650 (CustomUserAgent): Ditto.
3651 (authDialogProc): Ditto.
3652 (MainWindow::displayAuthDialog): Converted from a function of Common.cpp.
3653 (MainWindow::toggleMenuItem): Ditto.
3654 (MainWindow::loadURL): Ditto.
3655 * MiniBrowser/win/MainWindow.h: Added method declarations.
3656 * MiniBrowser/win/MiniBrowser.h: Added pragma once.
3657 * MiniBrowser/win/WinMain.cpp:
3658 (wWinMain): Include Common.h instead of Common.cpp.
3660 2018-05-30 Brady Eidson <beidson@apple.com>
3662 REGRESSION (r224684): User-agent seen by page does not change when modified by the develop menu options after reloading.
3663 <rdar://problem/34918109> and https://bugs.webkit.org/show_bug.cgi?id=186111
3665 Reviewed by Andy Estes.
3667 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
3668 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
3669 (WTR::TestRunner::setCustomUserAgent):
3670 * WebKitTestRunner/InjectedBundle/TestRunner.h:
3671 * WebKitTestRunner/TestController.cpp:
3672 (WTR::TestController::resetStateToConsistentValues):
3673 * WebKitTestRunner/TestInvocation.cpp:
3674 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
3676 2018-05-30 Youenn Fablet <youenn@apple.com>
3678 Rename CrossOriginResourcePolicy same to same-origin
3679 https://bugs.webkit.org/show_bug.cgi?id=186080
3681 Reviewed by Chris Dumez.
3683 * TestWebKitAPI/Tests/WebCore/HTTPParsers.cpp:
3684 (TestWebKitAPI::TEST):
3686 2018-05-30 Ms2ger <Ms2ger@igalia.com>
3688 [GTK] Unreviewed test gardening
3689 https://bugs.webkit.org/show_bug.cgi?id=186098
3691 Unreviewed gardening.
3693 * TestWebKitAPI/glib/TestExpectations.json: update expectations.
3695 2018-05-29 Youenn Fablet <youenn@apple.com>
3697 Add a consistency check between URL and CFURL
3698 https://bugs.webkit.org/show_bug.cgi?id=182444
3699 <rdar://problem/37164835>
3701 Reviewed by Geoff Garen.
3703 DRT code expected a non null URL which is no longer the case now.
3704 Updated DRT to remove that assumption.
3706 * DumpRenderTree/TestRunner.cpp:
3707 (TestRunner::redirectionDestinationForURL):
3708 * DumpRenderTree/TestRunner.h:
3709 * DumpRenderTree/mac/ResourceLoadDelegate.mm:
3710 (-[ResourceLoadDelegate webView:resource:willSendRequest:redirectResponse:fromDataSource:]):
3712 2018-05-29 Brendan McLoughlin <brendan@bocoup.com>
3714 Export changes to web-platform-test as part of the webkit-patch upload workflow
3715 https://bugs.webkit.org/show_bug.cgi?id=184914
3717 Reviewed by Youenn Fablet.
3719 * Scripts/webkitpy/tool/commands/upload.py:
3721 (CreateBug.execute):
3723 * Scripts/webkitpy/tool/steps/__init__.py:
3724 * Scripts/webkitpy/tool/steps/wptchangeexport.py: Added.
3726 (WPTChangeExport.options):
3727 (WPTChangeExport.run):
3728 * Scripts/webkitpy/w3c/common.py:
3729 * Scripts/webkitpy/w3c/test_exporter.py:
3730 (WebPlatformTestExporter):
3731 (WebPlatformTestExporter.__init__):
3732 (WebPlatformTestExporter.username):
3733 (WebPlatformTestExporter.token):
3734 (WebPlatformTestExporter._github):
3735 (WebPlatformTestExporter._wpt_fork_branch_github_url):
3736 (WebPlatformTestExporter._wpt_fork_remote):
3737 (WebPlatformTestExporter._wpt_fork_push_url):
3738 (WebPlatformTestExporter._git):
3739 (WebPlatformTestExporter._branch_name):
3740 (WebPlatformTestExporter._public_branch_name):
3741 (WebPlatformTestExporter._wpt_patch):
3742 (WebPlatformTestExporter.has_wpt_changes):
3743 (WebPlatformTestExporter._find_filename):
3744 (WebPlatformTestExporter._is_ignored_file):
3745 (WebPlatformTestExporter._strip_ignored_files_from_diff):
3746 (WebPlatformTestExporter.write_git_patch_file):
3747 (WebPlatformTestExporter._prompt_for_token):
3748 (WebPlatformTestExporter._prompt_for_username):
3749 (WebPlatformTestExporter._ensure_username_and_token):
3750 (WebPlatformTestExporter._validate_and_save_token):
3751 (WebPlatformTestExporter.create_branch_with_patch):
3752 (WebPlatformTestExporter.push_to_wpt_fork):
3753 (WebPlatformTestExporter.make_pull_request):
3754 (WebPlatformTestExporter.delete_local_branch):
3755 (WebPlatformTestExporter.create_upload_remote_if_needed):
3756 (WebPlatformTestExporter.do_export):
3758 (TestExporter): Deleted.
3759 (TestExporter.__init__): Deleted.
3760 (TestExporter._ensure_wpt_repository): Deleted.
3761 (TestExporter._fetch_wpt_repository): Deleted.
3762 (TestExporter._ensure_new_branch_name): Deleted.
3763 (TestExporter.download_and_commit_patch): Deleted.
3764 (TestExporter.clean): Deleted.
3765 (TestExporter.create_branch_with_patch): Deleted.
3766 (TestExporter.push_to_wpt_fork): Deleted.
3767 (TestExporter.make_pull_request): Deleted.
3768 (TestExporter.create_wpt_pull_request): Deleted.
3769 (TestExporter.delete_local_branch): Deleted.
3770 (TestExporter.create_git_patch): Deleted.
3771 (TestExporter.create_upload_remote): Deleted.
3772 (TestExporter.do_export): Deleted.
3773 * Scripts/webkitpy/w3c/test_exporter_unittest.py:
3774 (TestExporterTest.MockGit):
3775 (TestExporterTest.MockGit.create_patch):
3776 (TestExporterTest.test_export):
3777 (TestExporterTest.test_export_with_specific_branch):
3779 (TestExporterTest.test_export_interactive_mode):
3780 (TestExporterTest.test_export_invalid_token):
3781 (TestExporterTest.test_export_wrong_token):
3782 (TestExporterTest.test_has_wpt_changes):
3783 (TestExporterTest.test_has_no_wpt_changes_for_no_diff):
3784 (TestExporterTest.test_ignore_changes_to_expected_file):
3786 2018-05-29 Fujii Hironori <Hironori.Fujii@sony.com>
3788 [Win][MiniBrowser] Move WK1 specific code from Common.cpp to MiniBrowser.cpp
3789 https://bugs.webkit.org/show_bug.cgi?id=186029
3791 Reviewed by Alex Christensen.
3793 This is a sub task of Bug 184770.
3795 * MiniBrowser/win/Common.cpp:
3796 (ToggleMenuItem): Extracted WK1 specific code to MiniBrowser::setPreference.
3797 (Caches): Call MiniBrowser::updateStatistics instead of updateStatistics.
3798 (AbortProc): Moved to MiniBrowser.cpp.
3799 (getPrinterDC): Ditto.
3800 (initDocStruct): Ditto.
3802 (ToggleMenuFlag): Ditto.
3803 (setWindowText): Ditto.
3804 (updateStatistics): Ditto.
3805 * MiniBrowser/win/MainWindow.cpp:
3806 (MainWindow::WndProc): Call MiniBrowser::print instead of PrintView.
3807 * MiniBrowser/win/MiniBrowser.cpp:
3808 (AbortProc): Moved from Common.cpp.
3809 (getPrinterDC): Moved from Common.cpp.
3810 (initDocStruct): Moved from Common.cpp.
3811 (setWindowText): Moved from Common.cpp.
3812 (MiniBrowser::print): Renamed from PrintView of Common.cpp.
3813 (MiniBrowser::updateStatistics): Renamed from updateStatistics of Common.cpp.
3814 (MiniBrowser::setPreference): Extracted from ToggleMenuItem of Common.cpp.
3815 * MiniBrowser/win/MiniBrowser.h: Add method declarations.
3816 * MiniBrowser/win/MiniBrowserWebHost.cpp: Removed duplicated IWebFramePtr typedef.
3818 2018-05-29 Saam Barati <sbarati@apple.com>
3820 JSC should put bmalloc's scavenger into mini mode
3821 https://bugs.webkit.org/show_bug.cgi?id=185988
3823 Reviewed by Michael Saboff.
3825 This patch makes it so that we turn off the JIT when running run-testmem
3826 that way we make JSC use its mini mode.
3828 * Scripts/run-testmem:
3830 2018-05-29 Sihui Liu <sihui_liu@apple.com>
3832 Unable to remove IndexedDB Databases with Cocoa API removeDataOfTypes
3833 https://bugs.webkit.org/show_bug.cgi?id=185835
3834 <rdar://problem/39142257>
3836 Reviewed by Chris Dumez.
3838 Add API test coverage.
3840 * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
3843 2018-05-29 Wenson Hsieh <wenson_hsieh@apple.com>
3845 [Extra zoom mode] "Significant area painted" rendering progress event is rarely fired
3846 https://bugs.webkit.org/show_bug.cgi?id=186042
3847 <rdar://problem/40604182>
3849 Reviewed by Tim Horton.
3851 Adds a new API test to check that the "significant area painting" rendering milestone is dispatched when a
3852 significant portion of the page has been painted before document load is finished.
3854 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3855 * TestWebKitAPI/Tests/WebKitCocoa/paint-significant-area-milestone.html: Added.
3856 * TestWebKitAPI/Tests/ios/RenderingProgressTests.mm: Added.
3857 (-[MissingResourceSchemeHandler webView:stopURLSchemeTask:]):
3858 (-[MissingResourceSchemeHandler webView:startURLSchemeTask:]):
3859 (-[RenderingProgressHandler initWithHandler:]):
3860 (-[RenderingProgressHandler _webView:renderingProgressDidChange:]):
3863 2018-05-29 Thibault Saunier <tsaunier@igalia.com>
3865 [GStreamer] Update "qtdemux: Clarify field name about stream-encryption-system" patch
3866 https://bugs.webkit.org/show_bug.cgi?id=186040
3868 The patch we merge contained a type and was merged in upstream GStreamer fixing that
3869 (s/avalaible/available/).
3871 Reviewed by Xabier Rodriguez-Calvar.
3873 * gstreamer/patches/gst-plugins-good-0003-qtdemux-Clarify-field-name-about-stream-encryption-s.patch:
3875 2018-05-28 Sihui Liu <sihui_liu@apple.com>
3877 Add an API test to check process privilege when using Cookie API
3878 https://bugs.webkit.org/show_bug.cgi?id=185406
3880 Reviewed by Geoffrey Garen.
3882 Add API test coverage.
3884 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
3887 2018-05-28 Thibault Saunier <tsaunier@igalia.com>
3889 [GStreamer] Handle changes in the "drm-preferred-decryption-system-id" NEED_CONTEXT message.
3890 https://bugs.webkit.org/show_bug.cgi?id=185948
3892 Reviewed by Xabier Rodriguez-Calvar.
3894 When the patch introducing gst_protection_filter_systems_by_available_decryptors was merged, we changed sensibly its behaviour
3895 concerning the way empty results is represented (now returning NULL instead of an array of 1(NULL) element) and this change was not
3896 properly taken into account in the qtdemux patch that uses it and got upstreamed. Those 3 new patches fixe that and change the
3897 NEED_CONTEXT field names to clarify the meaning of "stream-encryption-systems".
3899 * gstreamer/jhbuild.modules:
3900 * gstreamer/patches/gst-plugins-good-0001-qtdemux-Do-not-run-the-preferred-decryptor-context-q.patch: Added. Merged upstream as 3e063703b3a51b8aaa7f75f36c4660c583a60e93
3901 * gstreamer/patches/gst-plugins-good-0002-qtdemux-Do-not-unref-a-NULL-stream_tags.patch: Added. Merged upstream as 43a540b1cd9f162d3dae5d50e36703dfaf558a3e
3902 * gstreamer/patches/gst-plugins-good-0003-qtdemux-Clarify-field-name-about-stream-encryption-s.patch: Added.
3904 2018-05-27 Dan Bernstein <mitz@apple.com>
3906 Reverted the changes made for https://webkit.org/b/186016
3908 They broke the USE(APPLE_INTERNAL_SDK) Sierra build.
3910 2018-05-27 Dan Bernstein <mitz@apple.com>
3912 [Cocoa] Avoid importing directly from subumbrella frameworks
3913 https://bugs.webkit.org/show_bug.cgi?id=186016
3915 Reviewed by Sam Weinig.
3917 * DumpRenderTree/cg/PixelDumpSupportCG.cpp: Include CoreServices.h instead of a
3918 LaunchServices header.
3919 * DumpRenderTree/mac/Configurations/BaseTarget.xcconfig: Removed -iframework options from
3920 OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
3921 * DumpRenderTree/mac/LayoutTestHelper.m: Import ApplicationServices.h instead of ColorSync.h
3922 when using SDKs earlier than 10.13.
3923 * TestWebKitAPI/Configurations/Base.xcconfig: Removed -iframework options from OTHER_CFLAGS
3924 and OTHER_CPLUSPLUSFLAGS.
3925 * TestWebKitAPI/Tests/mac/MediaPlaybackSleepAssertion.mm: Import Carbon.h instead of an
3927 * WebKitTestRunner/Configurations/BaseTarget.xcconfig: Removed -iframework options from
3928 OTHER_CFLAGS and OTHER_CPLUSPLUSFLAGS.
3929 * WebKitTestRunner/cg/TestInvocationCG.cpp: Include CoreServices.h instead of a
3930 LaunchServices header.
3932 2018-05-27 Fujii Hironori <Hironori.Fujii@sony.com>
3934 [Win][MiniBrowser] Add MainWindow class
3935 https://bugs.webkit.org/show_bug.cgi?id=185814
3937 Reviewed by Per Arne Vollan.
3939 This is a sub task of Bug 184770. Added a new class MainWindow to
3940 represent the main window which will be shared among WK1 and WK2.
3942 This change is partial so that it's easy to review this patch.
3943 I'll move more functions into MainWindow.cpp, and remove more
3944 global variables in forthcoming patches.
3946 * MiniBrowser/win/CMakeLists.txt: Added MainWindow.cpp.
3947 * MiniBrowser/win/Common.cpp: Removed MainWindow related global
3948 variables hMainWnd, hURLBarWnd, hBackButtonWnd and
3949 hForwardButtonWnd. Added a new global variable gMainWindow.
3950 (WndProc): Moved to MainWindow.cpp.
3951 (resizeSubViews): Ditto.
3952 (ToggleMenuFlag): Removed static to be called from MainWindow.cpp.
3953 (ToggleMenuItem): Ditto.
3954 (CustomUserAgent): Follow the global variables removal.
3955 (DisplayAuthDialog): Ditto.
3957 (WndProc): Renamed to MainWindow::WndProc.
3958 * MiniBrowser/win/MainWindow.cpp: Added.
3959 (MainWindow::registerClass): Renamed from MyRegisterClass of WinMain.cpp.
3960 (MainWindow::init): Extracted MainWindow initialization code from wWinMain.
3961 (MainWindow::resizeSubViews): Moved from Common.cpp.
3962 (MainWindow::WndProc): Ditto.
3963 * MiniBrowser/win/MainWindow.h: Added.
3965 (MainWindow::browserWindow):
3966 * MiniBrowser/win/MiniBrowser.cpp:
3967 (MiniBrowser::init):
3968 (MiniBrowser::prepareViews): Extract some code into MiniBrowser::loadDefaultHTML.
3969 (MiniBrowser::loadDefaultHTML): Extracted from MiniBrowser::prepareViews.
3970 * MiniBrowser/win/MiniBrowser.h:
3971 * MiniBrowser/win/WinMain.cpp:
3972 (wWinMain): Extracted MainWindow initialization code into MainWindow::init.
3973 (MyRegisterClass): Moved to MainWindow.cpp.
3975 2018-05-27 Fujii Hironori <Hironori.Fujii@sony.com>
3977 [Win][MiniBrowser] Remove URL argument of MiniBrowser::init
3978 https://bugs.webkit.org/show_bug.cgi?id=185969
3980 Reviewed by Alex Christensen.
3982 MiniBrowser::init takes URL argument, but it's used only for
3983 loading default HTML if URL is not given.
3985 - Add a new method MiniBrowser::loadHTMLString
3986 - Remove loadHTMLString process from MiniBrowser::prepareViews
3988 * MiniBrowser/win/MiniBrowser.cpp:
3989 (MiniBrowser::init): Removed `requestedURL` argument.
3990 (MiniBrowser::prepareViews): Ditto.
3991 (MiniBrowser::loadHTMLString): New.
3992 (MiniBrowser::loadURL): Return E_INVALIDARG if passedURL is null instead of calling loadHTMLString.
3993 * MiniBrowser/win/MiniBrowser.h: Removed URL argument. Added loadHTMLString.
3994 * MiniBrowser/win/WinMain.cpp:
3995 (wWinMain): Call MiniBrowser::loadHTMLString if URL is not given.
3997 2018-05-27 David Kilzer <ddkilzer@apple.com>
3999 svn-apply fails when a patch has an empty file
4000 <https://webkit.org/b/29684>
4002 Reviewed by Daniel Bates.
4004 Prior to this change, applying the following patches resulted in:
4005 - svn: add empty file (failure)
4006 - svn: delete empty file (failure)
4007 - svn: rename empty file (failure)
4008 - git: add empty file (false-positive success)
4009 - git: delete empty file (success)
4010 - git: rename empty file (failure)
4012 * Scripts/VCSUtils.pm:
4013 (parseSvnDiffHeader): Handle the case when there is no patch
4014 following the header. If the file exists and is empty, that
4015 means it's a deletion. If the file does not exist, that means
4016 it's an addition. Everything else is a fatal error.
4017 * Scripts/svn-apply:
4019 - Only apply a patch for deletion if it has one or more text
4021 - Add a case to handle adding an empty file (an addition with no
4022 text chunks), and verify the file doesn't exist yet.
4023 - Any unhandled patch is a fatal error.
4024 * Scripts/webkitperl/VCSUtils_unittest/parseSvnDiffHeader.pl:
4025 Add tests for adding an empty file and deleting an empty file.
4026 * Scripts/webkitperl/VCSUtils_unittest/resources/empty.txt: Add.
4027 Used by parseSvnDiffHeader.pl unit test for "add an empty file"
4030 2018-05-25 Aakash Jain <aakash_jain@apple.com>
4032 Display detailed error logs when a script fails in EWS
4033 https://bugs.webkit.org/show_bug.cgi?id=175696
4034 <rdar://problem/34841885>
4036 Reviewed by Darin Adler.
4038 * Scripts/webkitpy/tool/bot/queueengine.py: Set output_limit to 5000 characters instead of default 500 characters.
4039 * Scripts/webkitpy/tool/commands/abstractsequencedcommand.py: Ditto.
4040 * Scripts/webkitpy/tool/commands/download.py: Ditto.
4041 * Scripts/webkitpy/tool/commands/earlywarningsystem.py: Ditto.
4042 * Scripts/webkitpy/tool/commands/queues.py: Ditto.
4043 * Scripts/webkitpy/tool/commands/stepsequence.py: Ditto.
4045 2018-05-25 Daniel Bates <dabates@apple.com>
4047 test-webkitpy messages logged using __main__ logger are not displayed
4048 https://bugs.webkit.org/show_bug.cgi?id=185823
4050 Rubber-stamped by Aakash Jain.
4052 Configure the logger for __main__ so that messages that are logged before it parses its
4053 command line arguments are printed to standard error.
4055 Currently test-webkitpy creates a named logger (__main__) for its logging. However it does
4056 not configure a stream to use for printing until after it parses its command line arguments
4057 via webkitpy.test.printer.Printer.configure(). Messages logged until then are never written
4058 to the console. We explicitly configure the __main__ logger instead of calling webkitpy.test.printer.Printer.configure()
4059 earlier because the latter both configures a stream and filters logged messages based on
4060 the specified verbosity. Logged messaged from code in __main__ should not be subject to
4061 such filtering. So, we explicitly configure the __main__ logger.
4063 * Scripts/webkitpy/test/main.py:
4066 2018-05-25 Saam Barati <sbarati@apple.com>
4068 Make JSC have a mini mode that kicks in when the JIT is disabled
4069 https://bugs.webkit.org/show_bug.cgi?id=185931
4071 Reviewed by Mark Lam.
4073 This renames a variable for clarity.
4075 * Scripts/run-testmem:
4077 2018-05-25 Alex Christensen <achristensen@webkit.org>
4079 URL::host should return a StringView to reduce allocations
4080 https://bugs.webkit.org/show_bug.cgi?id=185986
4082 Reviewed by Geoff Garen.
4084 * TestWebKitAPI/Tests/WebCore/URL.cpp:
4085 (TestWebKitAPI::TEST_F):
4086 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
4087 (TestWebKitAPI::eq):
4088 * TestWebKitAPI/Tests/mac/SSLKeyGenerator.mm:
4089 (TestWebKitAPI::SSLKeyGeneratorTest::TearDown):
4091 2018-05-25 Ms2ger <Ms2ger@igalia.com>
4093 Minor improvements to wpt exporter.
4094 https://bugs.webkit.org/show_bug.cgi?id=185978
4096 Reviewed by Youenn Fablet.
4098 * Scripts/webkitpy/w3c/test_exporter.py:
4099 (TestExporter.push_to_wpt_fork): Update call to create_upload_remote().
4100 (TestExporter.make_pull_request): Improve the description of the created PR.
4101 (TestExporter.create_upload_remote): Always update the remote to override any obsolete state.
4103 2018-05-25 Saam Barati <sbarati@apple.com>
4105 Have a memory test where we can validate JSCs mini memory mode
4106 https://bugs.webkit.org/show_bug.cgi?id=185932
4108 Reviewed by Mark Lam.
4110 This patch adds the run-testmem script. This runs the new testmem
4111 CLI against the contents in the testmem benchmark. The contents of testmem
4112 contain tests from ARES-6, Sunspider, Octane, and JetStream.
4114 One iteration of the benchmark comprises of running each testmem test for
4115 a certain number of iterations. We collect the peak memory usage, the memory
4116 usage after running all the iterations, and the time it takes to run all the
4117 iterations. We then run the entire benchmark 3 times over. For each test, we
4118 compute the arithmetic mean over each iteration for time, peak memory, and
4119 end memory. The benchmark then computes a time score and memory score.
4121 peak memory score = geomean({peak memory of each individual test})
4122 end memory score = geomean({end memory of each individual test})
4123 memory score = geomean({peak memory score, end memory score})
4124 time score = geomean({time score of each individual test})
4126 We want the memory score to weigh improvements to peak memory usage and
4127 memory usage at the end equally.
4129 We plan to tune this benchmark in JSC's mini mode by improving the memory
4130 score while ensuring the time score is not more than 10-15% regressed.
4132 * Scripts/run-testmem: Added.
4134 2018-05-25 Sihui Liu <sihui_liu@apple.com>
4136 [WKHTTPCookieStore getAllCookies] returns inconsistent creation time
4137 https://bugs.webkit.org/show_bug.cgi?id=185041
4138 <rdar://problem/34684214>
4140 Reviewed by Geoffrey Garen.
4142 Add API test coverage.
4144 * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
4147 2018-05-24 Chris Dumez <cdumez@apple.com>
4149 Reduce copying of FontCascadeDescription objects by moving them around
4150 https://bugs.webkit.org/show_bug.cgi?id=185963
4152 Reviewed by Simon Fraser.
4154 Reduce copying of FontCascadeDescription objects by moving them around when possible.
4156 * TestWebKitAPI/Tests/WebCore/ComplexTextController.cpp:
4157 (TestWebKitAPI::TEST_F):
4159 2018-05-24 Carlos Garcia Campos <cgarcia@igalia.com>
4161 WebDriver: implement maximize, minimize and fullscreen window commands
4162 https://bugs.webkit.org/show_bug.cgi?id=180398
4164 Reviewed by Brian Burg.