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