2c15d120d8105a0408d01a9371abca250590180f
[WebKit-https.git] / Tools / ChangeLog
1 2018-10-08  Jer Noble  <jer.noble@apple.com>
2
3         ISOTrackEncryptionBox returns incorrect defaultKeyID
4         https://bugs.webkit.org/show_bug.cgi?id=190368
5
6         Reviewed by Eric Carlson.
7
8         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
9         * TestWebKitAPI/Tests/WebCore/ISOBox.cpp: Added.
10         (TestWebKitAPI::TEST):
11
12 2018-10-08  Alex Christensen  <achristensen@webkit.org>
13
14         Remove WKBundleFileHandleRef
15         https://bugs.webkit.org/show_bug.cgi?id=190360
16
17         Reviewed by Tim Horton.
18
19         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
20         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle.cpp: Removed.
21         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle_Bundle.cpp: Removed.
22
23 2018-10-08  Dan Bernstein  <mitz@apple.com>
24
25         Tools part of [Xcode] Update some build settings as recommended by Xcode 10
26         https://bugs.webkit.org/show_bug.cgi?id=190250
27
28         Reviewed by Anders Carlsson.
29
30         * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
31
32         * DumpRenderTree/mac/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
33           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
34           CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
35
36         * DumpRenderTree/mac/DumpRenderTreeMac.h: Addressed the strict prototype warning.
37
38         * DumpRenderTree/mac/EditingDelegate.mm: Suppressed the deprecated implementations warning
39           around deprecated methods or categories on deprecated classes.
40         * DumpRenderTree/mac/FrameLoadDelegate.mm: Ditto.
41         (-[FrameLoadDelegate webView:windowScriptObjectAvailable:]):
42         * DumpRenderTree/mac/TestRunnerMac.mm: Ditto.
43         (-[SynchronousLoader connection:didReceiveAuthenticationChallenge:]):
44
45         * MiniBrowser/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
46           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
47           CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
48
49         * MiniBrowser/MiniBrowser.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
50
51         * MiniBrowser/mac/AppDelegate.h: Addressed the strict prototypes warning.
52         * MiniBrowser/mac/WK2BrowserWindowController.m: Removed an unused #import to avoid having to
53           address the fact that many of the WebKit C SPI headers trigger the strict prototypes warning.
54
55         * MobileMiniBrowser/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
56           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_SUSPICIOUS_MOVE (by fixing a typo),
57           CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, and CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF.
58
59         * MobileMiniBrowser/MobileMiniBrowser.xcodeproj/project.pbxproj: Let Xcode update
60           LastUpgradeCheck and remove the .xcconfig files from the Copy Bundle Resources build phase.
61
62         * TestWebKitAPI/Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA,
63           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
64           CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
65           Made the WebKit headers be treated as system headers to avoid dealing with the fact that
66           many C SPI headers trigger the strict prototypes warning.
67
68         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
69
70         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
71         (-[DownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
72         (-[BlobDownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
73         (-[UIDownloadAsFileTestDelegate _webView:contextMenu:forElement:]):
74         (-[RedirectedDownloadDelegate _download:decideDestinationWithSuggestedFilename:allowOverwrite:]):
75         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
76         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
77         (-[WebsitePoliciesWebsiteDataStoreDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
78         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
79         (-[AudioSessionCategoryUIWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]):
80         * TestWebKitAPI/Tests/WebKitLegacy/ios/SnapshotViaRenderInContext.mm:
81         (-[RenderInContextWebViewDelegate webViewDidFinishLoad:]):
82         (-[RenderInContextWebViewDelegate webView:didFailLoadWithError:]):
83         * TestWebKitAPI/Tests/ios/SetTimeoutFunction.mm:
84         (-[SetTimeoutFunctionWebViewDelegate webViewDidFinishLoad:]):
85         (-[SetTimeoutFunctionWebViewDelegate webView:didFailLoadWithError:]):
86         (-[SetTimeoutFunctionWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:]):
87         * TestWebKitAPI/Tests/mac/LegacyDragAndDropTests.mm:
88         (-[DragInfo namesOfPromisedFilesDroppedAtDestination:]):
89         * TestWebKitAPI/mac/DragAndDropSimulatorMac.mm:
90         (-[DragAndDropTestWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]):
91         * TestWebKitAPI/mac/SyntheticBackingScaleFactorWindow.m:
92         (-[SyntheticBackingScaleFactorWindow IGNORE_WARNINGS_END]):
93         (-[SyntheticBackingScaleFactorWindow userSpaceScaleFactor]): Deleted.
94         * TestWebKitAPI/mac/TestDraggingInfo.mm:
95         (-[TestDraggingInfo namesOfPromisedFilesDroppedAtDestination:]):
96
97         In all of the above, suppressed the deprecated implementations warning where needed.
98
99         * WebKitTestRunner/Configurations/Base.xcconfig: Enabled ENABLE_STRICT_OBJC_MSGSEND,
100           CLANG_WARN_BOOL_CONVERSION, CLANG_WARN_COMMA, CLANG_WARN_CONSTANT_CONVERSION,
101           CLANG_WARN_EMPTY_BODY, CLANG_WARN_ENUM_CONVERSION, CLANG_WARN_INT_CONVERSION,
102           CLANG_WARN_STRICT_PROTOTYPES, CLANG_WARN_UNREACHABLE_CODE, CLANG_WARN__DUPLICATE_METHOD_MATCH,
103           GCC_WARN_UNDECLARED_SELECTOR, CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF,
104           CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED, CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS,
105           and GCC_NO_COMMON_BLOCKS.
106
107         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj: Let Xcode update LastUpgradeCheck.
108
109         * WebKitTestRunner/cocoa/TestRunnerWKWebView.mm:
110         (-[TestRunnerWKWebView dragImage:at:offset:event:pasteboard:source:slideBack:]): Suppressed
111           the deprecated implementations warning.
112
113         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
114         (WTR::UIScriptController::replaceTextAtRange): Addressed an int-conversion warning.
115
116 2018-10-07  Yacine Bandou  <yacine.bandou@softathome.com>
117
118         [GStreamer][EME][webm] Add the WebM encrypted content support in matroskademux
119         https://bugs.webkit.org/show_bug.cgi?id=189238
120
121         Reviewed by Xabier Rodriguez-Calvar.
122
123         Modifications on GStreamer, tracked in GStreamer bugzilla:
124         https://bugzilla.gnome.org/show_bug.cgi?id=797231
125         https://bugzilla.gnome.org/show_bug.cgi?id=765275
126
127         * gstreamer/jhbuild.modules: Add new patches.
128         * gstreamer/patches/gstreamer-0001-protection-Add-a-new-definition-for-unspecified-syst.patch: Added.
129         * gstreamer/patches/gstreamer-0002-protection-Fix-the-string-to-define-unspecified-syst.patch: Added.
130         * gstreamer/patches/gst-plugins-good-0011-matroska-Add-the-WebM-encrypted-content-support-in-m.patch: Added.
131         * gstreamer/patches/gst-plugins-good-0012-matroskdemux-do-not-use-MapInfo.data-after-unmapping.patch: Added.
132
133 2018-10-06  Dan Bernstein  <mitz@apple.com>
134
135         [Xcode] Never build yasm with ASAN
136         https://bugs.webkit.org/show_bug.cgi?id=190327
137
138         Reviewed by Youenn Fablet.
139
140         * asan/asan.xcconfig: Allow targets to opt out of building with ASAN by setting
141           the WK_ASAN_DISALLOWED build setting to YES (or, actually, anything other than NO or unset).
142
143 2018-10-05  Chris Dumez  <cdumez@apple.com>
144
145         Regression(r236862): Crash under DOMWindowExtension::willDetachGlobalObjectFromFrame()
146         https://bugs.webkit.org/show_bug.cgi?id=190320
147         <rdar://problem/45044814>
148
149         Reviewed by Geoffrey Garen.
150
151         Add API test coverage.
152
153         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic.cpp:
154         (TestWebKitAPI::TEST):
155         * TestWebKitAPI/Tests/WebKit/DOMWindowExtensionBasic_Bundle.cpp:
156         (TestWebKitAPI::DOMWindowExtensionBasic::willDestroyGlobalObjectForDOMWindowExtension):
157
158 2018-10-03  Jer Noble  <jer.noble@apple.com>
159
160         Add support for reporting "display composited video frames" through the VideoPlaybackQuality object.
161         https://bugs.webkit.org/show_bug.cgi?id=190266
162
163         Reviewed by Eric Carlson.
164
165         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
166         * TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm: Added.
167         (TestWebKitAPI::TEST):
168
169 2018-10-05  Ryan Haddad  <ryanhaddad@apple.com>
170
171         Unreviewed, rolling out r236866.
172
173         Breaks internal builds.
174
175         Reverted changeset:
176
177         "Add support for reporting "display composited video frames"
178         through the VideoPlaybackQuality object."
179         https://bugs.webkit.org/show_bug.cgi?id=190266
180         https://trac.webkit.org/changeset/236866
181
182 2018-10-05  Carlos Eduardo Ramalho  <cadubentzen@gmail.com>
183
184         [WPE][JSC] Use Unified Sources for Platform-specific sources
185         https://bugs.webkit.org/show_bug.cgi?id=190300
186
187         Reviewed by Yusuke Suzuki.
188
189         Currently the GTK port already used Unified Sources with the same source files.
190         As WPE has conditional code using gmodule, we need to add GLIB_GMODULE_LIBRARIES
191         to the list of libraries to link with.
192
193         * TestWebKitAPI/PlatformWPE.cmake:
194
195 2018-10-05  Zach Li  <zachli@apple.com>
196
197         Expose whether WKWebProcessPlugInNodeHandle is a select element to clients
198         https://bugs.webkit.org/show_bug.cgi?id=190302
199         <rdar://problem/45031469>
200
201         Reviewed by Tim Horton.
202
203         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
204         * TestWebKitAPI/Tests/WebKitCocoa/InjectedBundleNodeHandleIsSelectElement.mm: Added.
205         (-[InjectedBundleNodeHandleIsSelectElement verifySelectElementForHTMLElementTag:document:jsContext:expectedResult:failedElementTags:]):
206         (-[InjectedBundleNodeHandleIsSelectElement webProcessPlugIn:didCreateBrowserContextController:]):
207         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
208         (-[InjectedBundleNodeHandleIsSelectElementDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
209         (TEST):
210
211 2018-10-04  Wenson Hsieh  <wenson_hsieh@apple.com>
212
213         [iOS] [WK2] Expose some more editing SPI on WKWebView
214         https://bugs.webkit.org/show_bug.cgi?id=190232
215         <rdar://problem/44963368>
216
217         Reviewed by Tim Horton.
218
219         Adds new API tests to exercise the new SPIs.
220
221         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
222         * TestWebKitAPI/Tests/ios/WKWebViewEditActions.mm: Added.
223         (-[TestWKWebView querySelectorExists:]):
224         (TestWebKitAPI::webViewForEditActionTesting):
225         (TestWebKitAPI::TEST):
226         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
227         (-[TestWKWebView collapseToStart]): Deleted.
228         (-[TestWKWebView collapseToEnd]): Deleted.
229         (-[TestWKWebView stylePropertyAtSelectionStart:]): Deleted.
230         (-[TestWKWebView stylePropertyAtSelectionEnd:]): Deleted.
231         * TestWebKitAPI/cocoa/TestWKWebView.h:
232         * TestWebKitAPI/cocoa/TestWKWebView.mm:
233         (-[TestWKWebView stylePropertyAtSelectionStart:]):
234         (-[TestWKWebView stylePropertyAtSelectionEnd:]):
235         (-[TestWKWebView collapseToStart]):
236         (-[TestWKWebView collapseToEnd]):
237
238         Pull some common testing helpers out of NSFontManager and into TestWKWebView.
239
240 2018-10-04  Jer Noble  <jer.noble@apple.com>
241
242         Add support for reporting "display composited video frames" through the VideoPlaybackQuality object.
243         https://bugs.webkit.org/show_bug.cgi?id=190266
244
245         Reviewed by Eric Carlson.
246
247         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
248         * TestWebKitAPI/Tests/WebKitCocoa/VideoQualityDisplayCompositing.mm: Added.
249         (TestWebKitAPI::TEST):
250
251 2018-10-04  Wenson Hsieh  <wenson_hsieh@apple.com>
252
253         [Cocoa] Add SPI to expose typing attributes at the current selection on WKWebView
254         https://bugs.webkit.org/show_bug.cgi?id=190119
255         <rdar://problem/44767062>
256
257         Reviewed by Tim Horton.
258
259         Add a new API test that loads a document containing various rich text styles. This test moves the selection
260         around the document and checks the last set of font attributes received via the new UI delegate hook.
261
262         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
263         * TestWebKitAPI/Tests/WebKitCocoa/FontAttributes.mm: Added.
264         (-[FontAttributesListener _webView:didChangeFontAttributes:]):
265         (-[FontAttributesListener lastFontAttributes]):
266         (-[TestWKWebView selectElementWithIdentifier:]):
267         (-[TestWKWebView fontAttributesAfterNextPresentationUpdate]):
268         (ColorExpectation::ColorExpectation):
269         (ShadowExpectation::ShadowExpectation):
270         (checkColor):
271         (checkShadow):
272         (checkFont):
273         (webViewForTestingFontAttributes):
274         * TestWebKitAPI/Tests/WebKitCocoa/rich-text-attributes.html: Added.
275
276 2018-10-04  Alan Coon  <alancoon@apple.com>
277
278         Unreviewed, add self as contributor.
279
280         * Scripts/webkitpy/common/config/contributors.json:
281
282 2018-10-04  Wenson Hsieh  <wenson_hsieh@apple.com>
283
284         [macOS] Fix some font attribute conversion bugs in preparation for "Font > Styles…" support in WebKit2
285         https://bugs.webkit.org/show_bug.cgi?id=190289
286         <rdar://problem/45020806>
287
288         Reviewed by Ryosuke Niwa.
289
290         Add new API tests to exercise two corner cases when using NSFontOptions ("Font > Styles…") to change font
291         attributes at the current selection.
292
293         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
294         * TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h:
295         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
296         (webViewForFontManagerTesting):
297         (TestWebKitAPI::TEST):
298         * TestWebKitAPI/mac/TestFontOptions.h: Copied from Source/WebCore/editing/cocoa/FontAttributesCocoa.mm.
299         * TestWebKitAPI/mac/TestFontOptions.mm: Added.
300
301         Introduce TestFontOptions, which wraps the shared NSFontOptions and swizzles `-sharedFontOptions` to return a
302         global instance of itself. TestFontOptions supports several testing helpers to add or remove font shadows,
303         foreground colors, and background colors.
304
305         (sharedFontOptionsForTesting):
306         (+[TestFontOptions sharedInstance]):
307         (-[TestFontOptions initWithFontOptions:]):
308         (-[TestFontOptions selectedAttributes]):
309         (-[TestFontOptions fontOptions]):
310         (-[TestFontOptions shadowWidth]):
311         (-[TestFontOptions setShadowWidth:]):
312         (-[TestFontOptions shadowHeight]):
313         (-[TestFontOptions setShadowHeight:]):
314         (-[TestFontOptions setShadowBlurRadius:]):
315         (-[TestFontOptions setHasShadow:]):
316         (-[TestFontOptions foregroundColor]):
317         (-[TestFontOptions setForegroundColor:]):
318         (-[TestFontOptions backgroundColor]):
319         (-[TestFontOptions setBackgroundColor:]):
320         (-[TestFontOptions _dispatchFontAttributeChanges]):
321         (-[TestFontOptions convertAttributes:]):
322         (-[TestFontOptions setSelectedAttributes:isMultiple:]):
323         (-[TestFontOptions forwardInvocation:]):
324
325 2018-10-04  Jiewen Tan  <jiewen_tan@apple.com>
326
327         [WebAuthN] Move time out control from WebProcess to UIProcess
328         https://bugs.webkit.org/show_bug.cgi?id=189642
329         <rdar://problem/44476765>
330
331         Reviewed by Chris Dumez.
332
333         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
334         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
335
336 2018-10-04  YUHAN WU  <yuhan_wu@apple.com>
337
338         Runtime flag and IDL for MediaRecorder
339         https://bugs.webkit.org/show_bug.cgi?id=190018
340
341         Reviewed by Youenn Fablet and Chris Dumez.
342
343         * DumpRenderTree/mac/DumpRenderTree.mm:
344         (enableExperimentalFeatures):
345
346 2018-10-04  Basuke Suzuki  <Basuke.Suzuki@sony.com>
347
348         [LayoutTests][Win] Stop wpt server correctly.
349         https://bugs.webkit.org/show_bug.cgi?id=190248
350
351         Reviewed by Fujii Hironori.
352
353         Use signal.CTRL_C_EVENT instead of signal.SIGINT for Windows.
354         Also refactoring the detection of Windows and cygwin environment check.
355
356         * Scripts/webkitpy/common/system/executive.py:
357         (Executive.__init__): Check environment once.
358         (Executive._should_close_fds):
359         (Executive.kill_process):
360         (Executive.check_running_pid):
361         (Executive.running_pids):
362         (Executive.interrupt): Use signal.CTRL_C_EVENT for Windows.
363         (Executive.kill_all):
364         (Executive._child_process_encoding):
365         (Executive._should_encode_child_process_arguments):
366         (Executive.popen):
367         (Executive.run_in_parallel):
368
369 2018-10-04  Michael Catanzaro  <mcatanzaro@igalia.com>
370
371         Convert tests to use navigation client
372         https://bugs.webkit.org/show_bug.cgi?id=190153
373
374         Reviewed by Alex Christensen.
375
376         Convert these tests from PagePolicyClient and PageLoaderClient to PageNavigationClient.
377
378         * TestWebKitAPI/Tests/WebKit/DownloadDecideDestinationCrash.cpp:
379         (TestWebKitAPI::decidePolicyForNavigationAction):
380         (TestWebKitAPI::setPagePolicyClient):
381         * TestWebKitAPI/Tests/WebKit/ProvisionalURLAfterWillSendRequestCallback.cpp:
382         (TestWebKitAPI::didCommitNavigationCallback):
383         (TestWebKitAPI::TEST):
384         (TestWebKitAPI::didCommitLoadForFrame): Deleted.
385
386 2018-10-03  Dan Bernstein  <mitz@apple.com>
387
388         [Cocoa] Let clients specify an NSFileWrapper subclassed to be used for _WKAttachment
389         https://bugs.webkit.org/show_bug.cgi?id=190270
390
391         Reviewed by Wenson Hsieh.
392
393         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
394         (TestWebKitAPI::TEST):
395
396 2018-10-03  Ryosuke Niwa  <rniwa@webkit.org>
397
398         Enable selectionAcrossShadowBoundariesEnabled by default in WebKitLegacy
399         https://bugs.webkit.org/show_bug.cgi?id=190238
400
401         Reviewed by Antti Koivisto.
402
403         * DumpRenderTree/TestOptions.h:
404         * DumpRenderTree/mac/DumpRenderTree.mm:
405         (resetWebPreferencesToConsistentValues):
406
407 2018-10-02  Wenson Hsieh  <wenson_hsieh@apple.com>
408
409         [WebKit2] Format > Bold and Format > Italic don't toggle between bold and italic style
410         https://bugs.webkit.org/show_bug.cgi?id=179787
411         <rdar://problem/35593389>
412
413         Reviewed by Tim Horton.
414
415         Add a test to verify that NSFontManager's selected font is updated when applying italic and bold styles using
416         menu items.
417
418         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
419         (webViewForFontManagerTesting):
420         (menuItemCellForFontAction):
421         (TestWebKitAPI::TEST):
422
423 2018-10-02  Chris Dumez  <cdumez@apple.com>
424
425         REGRESSION: TestWebKitAPI.WKWebView.ProvisionalURLNotChange API test is failing
426         https://bugs.webkit.org/show_bug.cgi?id=190176
427         <rdar://problem/44925871>
428
429         Reviewed by Alex Christensen.
430
431         Use a URL that is truly recognized as invalid by WebCore's URL parser.
432
433         * TestWebKitAPI/Tests/WebKitCocoa/ProvisionalURLNotChange.mm:
434         (TEST):
435
436 2018-10-02  Alex Christensen  <achristensen@webkit.org>
437
438         Remove ParsedURLString
439         https://bugs.webkit.org/show_bug.cgi?id=190154
440
441         Reviewed by Chris Dumez.
442
443         * TestWebKitAPI/Tests/WebCore/URL.cpp:
444         (TestWebKitAPI::TEST_F):
445         * TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
446         (TestWebKitAPI::assertUserAgentForURLHasChromeBrowserQuirk):
447         (TestWebKitAPI::assertUserAgentForURLHasLinuxPlatformQuirk):
448         (TestWebKitAPI::assertUserAgentForURLHasMacPlatformQuirk):
449         (TestWebKitAPI::TEST):
450
451 2018-10-02  Daniel Bates  <dabates@apple.com>
452
453         Fix iOS TestWebKitAPI failures following <https://trac.webkit.org/changeset/236619>
454         (https://bugs.webkit.org/show_bug.cgi?id=190017)
455
456         For now swizzle +[UIKeyboard isInHardwareKeyboardMode] to return NO in the following tests:
457             WKWebViewAutofillTests.AutofillRequiresInputSession
458             DragAndDropTests.ExternalSourceJPEGOnly
459             DragAndDropTests.ExternalSourceUTF8PlainTextOnly
460
461         so that the presence of a hardware keyboad does not effect their results. In <https://bugs.webkit.org/show_bug.cgi?id=190211>
462         we will look to swizzle this method for all test by default.
463
464         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
465         (TestWebKitAPI::overrideIsInHardwareKeyboardMode):
466         (TestWebKitAPI::TEST):
467         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
468         (TestWebKitAPI::overrideIsInHardwareKeyboardMode):
469         (TestWebKitAPI::TEST):
470         * TestWebKitAPI/ios/UIKitSPI.h:
471
472 2018-10-02  Dawei Fenton  <realdawei@apple.com>
473
474         Unreviewed, rolling out r236751.
475
476         broke the iOS Build
477
478         Reverted changeset:
479
480         "Fix iOS TestWebKitAPI failures following
481         <https://trac.webkit.org/changeset/236619>"
482         https://bugs.webkit.org/show_bug.cgi?id=190017
483         https://trac.webkit.org/changeset/236751
484
485 2018-10-02  Daniel Bates  <dabates@apple.com>
486
487         Fix iOS TestWebKitAPI failures following <https://trac.webkit.org/changeset/236619>
488         (https://bugs.webkit.org/show_bug.cgi?id=190017)
489
490         For now swizzle +[UIKeyboard isInHardwareKeyboardMode] to return NO in the following tests:
491             WKWebViewAutofillTests.AutofillRequiresInputSession
492             DragAndDropTests.ExternalSourceJPEGOnly
493             DragAndDropTests.ExternalSourceUTF8PlainTextOnly
494
495         so that the presence of a hardware keyboad does not effect their results. In <https://bugs.webkit.org/show_bug.cgi?id=190211>
496         we will look to swizzle this method for all test by default.
497
498         * TestWebKitAPI/Tests/ios/DragAndDropTestsIOS.mm:
499         (TestWebKitAPI::overrideIsInHardwareKeyboardMode):
500         (TestWebKitAPI::TEST):
501         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
502         (TestWebKitAPI::overrideIsInHardwareKeyboardMode):
503         (TestWebKitAPI::TEST):
504         * TestWebKitAPI/ios/UIKitSPI.h:
505
506 2018-10-01  Dean Jackson  <dino@apple.com>
507
508         Remove CSS Animation Triggers
509         https://bugs.webkit.org/show_bug.cgi?id=190175
510         <rdar://problem/44925626>
511
512         Reviewed by Simon Fraser.
513
514         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
515
516 2018-10-02  Thibault Saunier  <tsaunier@igalia.com>
517
518         [Flatpak] Use our own check of flatpak repos
519         https://bugs.webkit.org/show_bug.cgi?id=190194
520
521         Allowing us to not mess up with user installation
522         and "--assumeyes" everywhere.
523
524         Reviewed by Michael Catanzaro.
525
526         * flatpak/flatpakutils.py:
527         (FlatpakPackage.__init__):
528         (FlatpakPackage.install):
529         (FlatpakPackage.update):
530         (WebkitFlatpak.load_from_args):
531         (WebkitFlatpak.__init__):
532         (WebkitFlatpak.clean_args):
533
534 2018-10-02  Wenson Hsieh  <wenson_hsieh@apple.com>
535
536         [macOS] Implement a way for the UI process to request typing attributes at the current selection
537         https://bugs.webkit.org/show_bug.cgi?id=189983
538         <rdar://problem/44648705>
539
540         Reviewed by Ryosuke Niwa.
541
542         Adds new FontManagerTests that exercise -typingAttributesWithCompletionHandler:. See below for more detail.
543
544         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
545         * TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h:
546         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
547
548         Add a new test that exercises font attribute modification via inspector bar. Also, add a new test that checks
549         typing attributes when using subscript/superscript/unscript. Lastly, augment an existing NSFontPanel test to
550         additionally check that shadowed text and strike-through are reflected in typing attributes.
551
552         (-[FontManagerTestWKWebView inspectorBarItemIdentifiers]):
553         (-[TestWKWebView typingAttributes]):
554
555         Add a synchronous wrapper around `-typingAttributesWithCompletionHandler:` by spinning the runloop.
556
557         (-[TestWKWebView collapseToStart]):
558         (webViewForFontManagerTesting):
559         (TestWebKitAPI::TEST):
560         * TestWebKitAPI/cocoa/TestWKWebView.h:
561         * TestWebKitAPI/mac/TestInspectorBar.h: Copied from Tools/TestWebKitAPI/Tests/TestWebKitAPI/mac/AppKitSPI.h.
562         * TestWebKitAPI/mac/TestInspectorBar.mm: Added.
563
564         Introduce subclasses of `__InspectorBarItemController` and `NSInspectorBar` for testing inspector bar interaction.
565
566         (-[TestInspectorBarItemController initWithInspectorBar:]):
567         (-[TestInspectorBarItemController inspectorBar]):
568         (-[TestInspectorBarItemController updateSelectedAttributes]):
569         (-[TestInspectorBar initWithWebView:]):
570         (+[TestInspectorBar standardItemControllerClass]):
571         (+[TestInspectorBar standardTextItemIdentifiers]):
572         (-[TestInspectorBar _setStyleControlSelected:atIndex:]):
573         (-[TestInspectorBar chooseFontSize:]):
574         (-[TestInspectorBar chooseFontFamily:]):
575         (-[TestInspectorBar _chooseColor:inColorWell:]):
576         (-[TestInspectorBar chooseForegroundColor:]):
577         (-[TestInspectorBar chooseBackgroundColor:]):
578         (-[TestInspectorBar formatBold:]):
579         (-[TestInspectorBar formatItalic:]):
580         (-[TestInspectorBar formatUnderline:]):
581
582         Add helper methods to TestInspectorBar to simulate interacting with various controls (e.g. color wells and font
583         styling controls).
584
585         (-[TestInspectorBar itemController]):
586         (-[TestInspectorBar setItemController:]):
587
588 2018-10-02  Thibault Saunier  <tsaunier@igalia.com>
589
590         [Flatpak] Implement icecream and ccache support
591         https://bugs.webkit.org/show_bug.cgi?id=190146
592
593         Reviewed by Alejandro G. Castro.
594
595         * flatpak/flatpakutils.py:
596         (WebkitFlatpak.load_from_args):
597         (WebkitFlatpak.__init__):
598         (WebkitFlatpak.clean_args):
599         (WebkitFlatpak.run_in_sandbox):
600         (WebkitFlatpak.save_config):
601         (WebkitFlatpak):
602         (WebkitFlatpak.setup_ccache):
603         (WebkitFlatpak.setup_icecc):
604         (WebkitFlatpak.setup_dev_env):
605         * flatpak/org.webkit.WebKit.yaml:
606
607 2018-10-02  Michael Catanzaro  <mcatanzaro@igalia.com>
608
609         Unreviewed, fix missing return value in TestController::keyExistsInKeychain
610
611         * WebKitTestRunner/TestController.cpp:
612         (WTR::TestController::keyExistsInKeychain):
613
614 2018-10-02  Basuke Suzuki  <Basuke.Suzuki@sony.com>
615
616         [WinCairo] Enable WPT tests environment.
617         https://bugs.webkit.org/show_bug.cgi?id=190128
618
619         Reviewed by Youenn Fablet.
620
621         Escaping backslash of the path not to confuse the JSON parser.
622
623         * Scripts/webkitpy/layout_tests/servers/web_platform_test_server.py:
624         (WebPlatformTestServer._prepare_config):
625
626 2018-10-01  Ross Kirsling  <ross.kirsling@sony.com>
627
628         [Win][DRT] Actually set "experimental:WebAnimationsCSSIntegrationEnabled" when requested
629         https://bugs.webkit.org/show_bug.cgi?id=190150
630
631         Reviewed by Fujii Hironori.
632
633         * DumpRenderTree/win/DumpRenderTree.cpp:
634         (setWebPreferencesForTestOptions):
635         DRT has been recognizing this field, but not propagating its value to WebPreferences.
636
637 2018-10-01  Alex Christensen  <achristensen@webkit.org>
638
639         Unreviewed, rolling out r236551.
640
641         Fails URL validating too aggressively
642
643         Reverted changeset:
644
645         "URLWithUserTypedString should return nil for URLs deemed to
646         be invalid by WebCore::URL"
647         https://bugs.webkit.org/show_bug.cgi?id=189979
648         https://trac.webkit.org/changeset/236551
649
650 2018-10-01  Wenson Hsieh  <wenson_hsieh@apple.com>
651
652         [iOS] Add SPI to customize the input accessory view when focusing an element
653         https://bugs.webkit.org/show_bug.cgi?id=190152
654         <rdar://problem/42754975>
655
656         Reviewed by Dan Bernstein.
657
658         Add an API test to verify that setting a custom input accessory view and custom input view on the form input
659         session when focusing an element overrides the first responder's (i.e. WKContentView's) `-inputView` and
660         `-inputAccessoryView`.
661
662         * TestWebKitAPI/Tests/ios/KeyboardInputTestsIOS.mm:
663         (webViewWithAutofocusedInput):
664         (TestWebKitAPI::TEST):
665         * TestWebKitAPI/Tests/ios/TestInputDelegate.h:
666         * TestWebKitAPI/Tests/ios/TestInputDelegate.mm:
667         (-[TestInputDelegate setWillStartInputSessionHandler:]):
668         (-[TestInputDelegate willStartInputSessionHandler]):
669         (-[TestInputDelegate _webView:willStartInputSession:]):
670
671 2018-10-01  Sihui Liu  <sihui_liu@apple.com>
672
673         Remove StorageProcess
674         https://bugs.webkit.org/show_bug.cgi?id=189975
675
676         Reviewed by Geoffrey Garen.
677
678         * TestWebKitAPI/Tests/WebKitCocoa/ResourceLoadStatistics.mm:
679         (TEST):
680         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
681         * TestWebKitAPI/Tests/WebKitCocoa/WebProcessKillIDBCleanup.mm:
682         (TEST):
683         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
684         (TEST):
685         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
686         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
687         (WTR::TestRunner::terminateStorageProcess): Deleted.
688         * WebKitTestRunner/InjectedBundle/TestRunner.h:
689         * WebKitTestRunner/TestController.cpp:
690         (WTR::TestController::generatePageConfiguration):
691         (WTR::TestController::databaseProcessName): Deleted.
692         (WTR::TestController::databaseProcessDidCrash): Deleted.
693         (WTR::TestController::terminateStorageProcess): Deleted.
694         * WebKitTestRunner/TestController.h:
695         * WebKitTestRunner/TestInvocation.cpp:
696         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
697
698 2018-10-01  Jiewen Tan  <jiewen_tan@apple.com>
699
700         [WebAuthN] Import a JS CBOR coder
701         https://bugs.webkit.org/show_bug.cgi?id=189877
702         <rdar://problem/44701124>
703
704         Reviewed by Chris Dumez.
705
706         Add logic to only process privateKeyBase64, userCertificateBase64 and intermediateCACertificateBase64
707         only if acceptAttestation is true.
708
709         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
710         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
711
712 2018-10-01  Chris Dumez  <cdumez@apple.com>
713
714         Regression(r236512): http/tests/navigation/keyboard-events-during-provisional-navigation.html is flaky
715         https://bugs.webkit.org/show_bug.cgi?id=190052
716
717         Reviewed by Ryosuke Niwa.
718
719         The test relies on EventSender to send events to the page synchronously to the page and then uses console.log
720         to log those events. It also uses console.log() before sending those events to indicate what the test is about
721         to do. Note that console.log() normally causes the WebKitTestRunner to send an asynchronous IPC to the UIProcess
722         so that it can log the message.
723         The issue is that EventSender uses IPC::SendOption::UseFullySynchronousModeForTesting when sending the
724         sync IPC to the UIProcess. This option causes follow-up *asynchronous* IPC sent from the synchronous IPC reply
725         handler to be transformed into synchronous IPC.
726         As a result, some of the console.log IPC ended up being asynchronous and some other ended up being synchronous.
727         Because synchronous and asynchronous IPC is not necessarily processed in-order by the UIProcess, the logged
728         messages may end up being out of order, leading to flakiness.
729
730         To address the issue, we now make sure that InjectedBundle::outputText() uses a new IPC::SendOption indicated
731         that the IPC should always be sent asynchronously, even if the connection is in fully synchronous mode. As a
732         result, all text outputing IPC to the UIProcess will be asynchronous, and thus in order.
733
734         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
735         (WTR::InjectedBundle::outputText):
736
737 2018-10-01  Daniel Bates  <dabates@apple.com>
738
739         [iOS] Special keys are misidentified in DOM keyboard events
740         https://bugs.webkit.org/show_bug.cgi?id=189974
741
742         Reviewed by Wenson Hsieh.
743
744         Add support for testing keys Forward Delete and Num Lock / Clear.
745
746         * WebKitTestRunner/ios/HIDEventGenerator.mm:
747         (hidUsageCodeForCharacter):
748
749 2018-10-01  Alex Christensen  <achristensen@webkit.org>
750
751         URL should not use TextEncoding internally
752         https://bugs.webkit.org/show_bug.cgi?id=190111
753
754         Reviewed by Andy Estes.
755
756         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
757         (TestWebKitAPI::testUserPass):
758         (TestWebKitAPI::TEST_F):
759
760 2018-10-01  Daniel Bates  <dabates@apple.com>
761
762         LLDB tests may use wrong configuration of lldbWebKitTester
763         https://bugs.webkit.org/show_bug.cgi?id=189011
764
765         Reviewed by Dean Jackson.
766
767         Fixes an issue where the LLDB unit tests may use the wrong configuration of lldbWebKitTester.
768         Additionally, add back the unit tests originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
769
770         Currently the unit tests pick the LLDBWebKitTester binary based on the configuration set by
771         script set-webkit-configuration. This may not be the same configuration specified to test-webkitpy.
772         So, the unit tests may use the wrong binary. Instead we have test-webkitpy store the path
773         to the correct lldbWebKitTester binary that the unit tests should use in an environment variable,
774         called LLDB_WEBKIT_TESTER_EXECUTABLE. (We use an environment variable because the test driver,
775         test-webkitpy, and the unit tests cannot talk to each other directly due the limitations of
776         the Python unittest module, the Python multiprocessing module, and the general principle of unit
777         tests - to test code in isolation). The unit tests make use of the value of this environment
778         variable to launch lldbWebKitTester binary.
779
780         * Scripts/build-lldbwebkittester: We only support building lldbWebKitTester on Mac for now. Error
781         out if this script is invoked for a non-Mac platform.
782         * Scripts/webkitpy/test/main.py:
783         (Tester._run_tests): Build lldbWebKitTester and store the path to it in the environment variable
784         LLDB_WEBKIT_TESTER_EXECUTABLE.
785         (_build_lldb_webkit_tester): Deleted.
786         * lldb/dump_class_layout_unittest.py:
787         (TestDumpClassLayout.shouldSkip): Use SystemHost() here and remove the _host global variable as
788         this is the only call site that needs the Host object now.
789         (TestDumpClassLayout.setUpClass): Take the path to the lldbWebKitTester binary from the value of
790         the environment variable LLDB_WEBKIT_TESTER_EXECUTABLE.
791         * lldb/lldbWebKitTester/main.cpp:
792         (testSummaryProviders): Add back unit test support infrastructure originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
793         * lldb/lldb_webkit_unittest.py:
794         (LLDBDebugSession.setup): Take the path to the lldbWebKitTester binary from the value of the environment
795         variable LLDB_WEBKIT_TESTER_EXECUTABLE.
796         (TestSummaryProviders):
797         (TestSummaryProviders.shouldSkip): Skip the tests on non-Mac platforms.
798         (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
799         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_empty):
800         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple):
801         (TestSummaryProviders.serial_test_WTFOptionSetProvider_empty):
802         (TestSummaryProviders.serial_test_WTFOptionSetProvider_simple):
803         Add back the unit tests originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
804
805 2018-10-01  Olivier Blin  <olivier.blin@softathome.com>
806
807         [WPE] Update install-dependencies
808         https://bugs.webkit.org/show_bug.cgi?id=190127
809
810         Reviewed by Michael Catanzaro.
811
812         * wpe/install-dependencies:
813         libxrandr-dev is needed for gstreamer-vaapi in jhbuild
814         It is used by gstvaapidisplay_x11.c.
815         Add it only for Apt, already ok for Pacman and DNF.
816
817         Install libevent-dev for WebRTC (like GTK)
818
819         Install libasound2-dev for WebRTC.
820         Add it only for Apt, already ok for Pacam and DNF.
821
822         Install libgbm-dev for HeadlessViewBackend, which uses gbm.h
823
824 2018-10-01  Thibault Saunier  <tsaunier@igalia.com>
825
826         [Flatpak] Add libunwind in the sandbox
827         https://bugs.webkit.org/show_bug.cgi?id=190123
828
829         Allowing us to get proper traces in GStreamer trace grabing
830         debug functions.
831
832         Reviewed by Philippe Normand.
833
834         * flatpak/org.webkit.WebKit.yaml:
835
836 2018-09-29  Commit Queue  <commit-queue@webkit.org>
837
838         Unreviewed, rolling out r236631.
839         https://bugs.webkit.org/show_bug.cgi?id=190112
840
841         Caused various eventSender tests, including fast/css/pseudo-
842         active-style-sharing*, to fail (Requested by smfr on #webkit).
843
844         Reverted changeset:
845
846         "Regression(r236512): http/tests/navigation/keyboard-events-
847         during-provisional-navigation.html is flaky"
848         https://bugs.webkit.org/show_bug.cgi?id=190052
849         https://trac.webkit.org/changeset/236631
850
851 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
852
853         [WHLSL] Fix build after r236635
854         https://bugs.webkit.org/show_bug.cgi?id=189210
855
856         Unreviewed.
857
858         * WebGPUShadingLanguageRI/Intrinsics.js:
859         (Intrinsics.):
860         * WebGPUShadingLanguageRI/Test.js:
861         (tests.atomicsNull):
862         (tests.numThreads):
863         (tests.textureDimensionsNull):
864
865 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
866
867         [WHLSL] Allow uniform buffers to be used in the interpreter
868         https://bugs.webkit.org/show_bug.cgi?id=189210
869
870         Reviewed by Filip Pizlo.
871
872         Every lvalue is associated with an address space, and the propagation of these address spaces
873         matches the propagation of lvalues. Luckily, there was already the infrastructure to do most
874         of this, so this patch just goes the last few yards. It also updates the standard library to
875         allow for writing into all writable address spaces for out-params.
876
877         * WebGPUShadingLanguageRI/Checker.js:
878         (Checker.prototype.visitAssignment):
879         (Checker.prototype._finishVisitingPropertyAccess):
880         * WebGPUShadingLanguageRI/Intrinsics.js:
881         (Intrinsics.):
882         (Intrinsics.checkFalse):
883         (Intrinsics):
884         * WebGPUShadingLanguageRI/StandardLibrary.js:
885         (let.standardLibrary):
886         * WebGPUShadingLanguageRI/Test.js:
887         (tests.threadArrayRefLoad):
888         (tests.threadArrayRefLoadIntLiteral):
889         (tests.deviceArrayRefLoad):
890         (tests.threadArrayRefStore):
891         (tests.deviceArrayRefStore):
892         (tests.deviceArrayRefStoreIntLiteral):
893         (tests.threadPointerLoad):
894         (tests.threadPointerStore):
895         (tests.devicePointerLoad):
896         (tests.devicePointerStore):
897         (tests.arrayLoad):
898         (tests.constantAddressSpace):
899         (tests.standardLibraryDevicePointers):
900         (tests.threadArrayLoad): Deleted.
901         (tests.threadArrayLoadIntLiteral): Deleted.
902         (tests.deviceArrayLoad): Deleted.
903         (tests.threadArrayStore): Deleted.
904         (tests.deviceArrayStore): Deleted.
905         (tests.deviceArrayStoreIntLiteral): Deleted.
906
907 2018-09-28  Wenson Hsieh  <wenson_hsieh@apple.com>
908
909         No DOM API to instantiate an attachment for an img element
910         https://bugs.webkit.org/show_bug.cgi?id=189934
911         <rdar://problem/44743222>
912
913         Reviewed by Ryosuke Niwa.
914
915         Adds 3 new API tests in WKAttachmentTests:
916
917         `AddAttachmentToConnectedImageElement` verifies that an image element that's already in the document can gain an
918         attachment element via `HTMLAttachmentElement.getAttachmentIdentifier`.
919
920         `ChangeFileWrapperForPastedImage` verifies that an image that has been pasted produces a _WKAttachment in the UI
921         process, and changing the file wrapper of that _WKAttachment changes the pasted image.
922
923         `ConnectImageWithAttachmentToDocument` verifies that script can create an image element, ensure that it has an
924         attachment, and set a file wrapper for the generated _WKAttachment. Connecting the image to the document should
925         then result in an image element with the contents of the _WKAttachment's file wrapper.
926
927         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
928         (-[TestWKWebView imageElementSize]):
929         (-[TestWKWebView waitForImageElementSizeToBecome:]):
930         (TestWebKitAPI::TEST):
931         (-[TestWKWebView waitForAttachmentElementSizeToBecome:]): Deleted.
932
933 2018-09-28  Chris Dumez  <cdumez@apple.com>
934
935         Regression(r236512): http/tests/navigation/keyboard-events-during-provisional-navigation.html is flaky
936         https://bugs.webkit.org/show_bug.cgi?id=190052
937
938         Reviewed by Ryosuke Niwa.
939
940         The test relies on EventSender to send events to the page synchronously to the page and then uses console.log
941         to log those events. It also uses console.log() before sending those events to indicate what the test is about
942         to do. Note that console.log() normally causes the WebKitTestRunner to send an asynchronous IPC to the UIProcess
943         so that it can log the message.
944         The issue is that EventSender uses IPC::SendOption::UseFullySynchronousModeForTesting when sending the
945         sync IPC to the UIProcess. This option causes follow-up *asynchronous* IPC sent from the synchronous IPC reply
946         handler to be transformed into synchronous IPC.
947         As a result, some of the console.log IPC ended up being asynchronous and some other ended up being synchronous.
948         Because synchronous and asynchronous IPC is not necessarily processed in-order by the UIProcess, the logged
949         messages may end up being out of order, leading to flakiness.
950
951         To address the issue, we now make sure that InjectedBundle::outputText() uses a new IPC::SendOption indicating
952         that the IPC should always be sent asynchronously, even if the connection is in fully synchronous mode. As a
953         result, all text outputing IPC to the UIProcess will be asynchronous, and thus in order.
954
955         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
956         (WTR::InjectedBundle::outputText):
957
958 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
959
960         [WHLSL] Pointers should have automatically-generated equality checks
961         https://bugs.webkit.org/show_bug.cgi?id=189986
962
963         Reviewed by Filip Pizlo.
964
965         C allows for pointer equality, and we need it so people can do null checks.
966         This is generated the same way all our other NativeFuncs are generated - by Checker
967         creating NativeFuncs inside CallExpression.resolve().
968
969         This patch also does some general cleanup.
970
971         * WebGPUShadingLanguageRI/All.js: Everything the late checker does is no longer necessary.
972         The last thing it was doing was making sure that only primitive types are in resources, but
973         it's totally reasonable to put structs and arrays in resources, so I removed this pass. We
974         still have to add a check to make sure resources can't live within resources, but I expect
975         that will be done in the same place that semantics are checked.
976         * WebGPUShadingLanguageRI/AllocateAtEntryPoints.js:
977         (allocateAtEntryPoints.updateFunction.UpdateFunctions.prototype._addVariableDeclaration):
978         Name the global struct for debugging purposes.
979         * WebGPUShadingLanguageRI/CallExpression.js: 
980         (CallExpression.prototype._resolveByInstantiation): Cleanup
981         (CallExpression.prototype._resolveWithOperatorAnderIndexer): Ditto
982         (CallExpression.prototype._resolveWithOperatorLength): Ditto
983         (CallExpression.prototype._resolveWithReferenceComparator): Add support to automatically
984         generate pointer equality NativeFuncs.
985         * WebGPUShadingLanguageRI/EPtr.js: Implement pointer equality in the interpreter.
986         * WebGPUShadingLanguageRI/LateChecker.js: Removed.
987         * WebGPUShadingLanguageRI/LayoutBuffers.js: Renamed from Tools/WebGPUShadingLanguageRI/LateCheckAndLayoutBuffers.js.
988         (layoutBuffers):
989         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj:
990         * WebGPUShadingLanguageRI/NativeFunc.js:
991         * WebGPUShadingLanguageRI/OperatorArrayRefLength.js:
992         (OperatorArrayRefLength.prototype.instantiateImplementation):
993         (OperatorArrayRefLength):
994         * WebGPUShadingLanguageRI/Prepare.js:
995         (let.prepare):
996         * WebGPUShadingLanguageRI/SPIRV.html:
997         * WebGPUShadingLanguageRI/Test.html:
998         * WebGPUShadingLanguageRI/Test.js:
999         (tests.ternaryExpression):
1000         (tests.break): Speed up testing time
1001         (tests.doWhile): Ditto
1002         (tests.forLoop): Ditto
1003         (tests.atomics): Ditto
1004         (tests.atomicsNull): Ditto
1005         (tests.pointerEquality): Test pointer equality
1006         (tests.standardLibraryDevicePointers):
1007         (tests.devicePtrPtr): Deleted.
1008         (tests.threadgroupPtrPtr): Deleted.
1009         (tests.constantPtrPtr): Deleted.
1010         * WebGPUShadingLanguageRI/index.html:
1011
1012 2018-09-28  Jiewen Tan  <jiewen_tan@apple.com>
1013
1014         [WebAuthN] Polish WebAuthN auto-test environment
1015         https://bugs.webkit.org/show_bug.cgi?id=189283
1016         <rdar://problem/44117828>
1017
1018         Reviewed by Chris Dumez.
1019
1020         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1021         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
1022
1023 2018-09-28  Chris Dumez  <cdumez@apple.com>
1024
1025         Drop support for cross-origin-window-policy header
1026         https://bugs.webkit.org/show_bug.cgi?id=190081
1027
1028         Reviewed by Ryosuke Niwa.
1029
1030         190081_DropCrossOriginWindowPolicy
1031
1032         * DumpRenderTree/mac/DumpRenderTree.mm:
1033         (enableExperimentalFeatures):
1034         * DumpRenderTree/win/DumpRenderTree.cpp:
1035         (enableExperimentalFeatures):
1036         * WebKitTestRunner/TestController.cpp:
1037         (WTR::TestController::resetPreferencesToConsistentValues):
1038
1039 2018-09-28  Koby Boyango  <koby.b@mce.systems>
1040
1041         [WTF] Add ExternalStringImpl, a StringImpl for user controlled buffers
1042         https://bugs.webkit.org/show_bug.cgi?id=189991
1043
1044         Reviewed by Yusuke Suzuki.
1045
1046         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
1047
1048 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
1049
1050         Update flakiness dashboard configuration for Mojave queues
1051         https://bugs.webkit.org/show_bug.cgi?id=190068
1052
1053         Reviewed by Alexey Proskuryakov.
1054
1055         * TestResultServer/static-dashboards/builders.jsonp:
1056
1057 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
1058
1059         Bring up queues for Mojave
1060         https://bugs.webkit.org/show_bug.cgi?id=189935
1061
1062         Unreviewed infrastructure fix.
1063
1064         * BuildSlaveSupport/build.webkit.org-config/config.json: Remove trigger, update bot assignment.
1065
1066 2018-09-24  Ryan Haddad  <ryanhaddad@apple.com>
1067
1068         Bring up queues for Mojave
1069         https://bugs.webkit.org/show_bug.cgi?id=189935
1070
1071         Reviewed by Alexey Proskuryakov.
1072
1073         * BuildSlaveSupport/build.webkit.org-config/config.json:
1074         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1075         (WebKitBuildbot):
1076         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1077
1078 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
1079
1080         Increase the timeout for iOS Simulator data migration
1081         https://bugs.webkit.org/show_bug.cgi?id=190059
1082
1083         Reviewed by Aakash Jain.
1084
1085         3 minutes isn't always enough time for the data migrator to complete
1086         when booting up multiple iOS Simulators. Change the timeout to 10 minutes.
1087
1088         * Scripts/webkitpy/xcode/simulated_device.py:
1089         (SimulatedDeviceManager): Create a constant for the default timeout.
1090         (SimulatedDeviceManager.initialize_devices): Use new constant.
1091         (SimulatedDeviceManager.swap): Ditto.
1092         (SimulatedDeviceManager.wait_until_data_migration_is_done): Ditto.
1093
1094 2018-09-27  Alex Christensen  <achristensen@webkit.org>
1095
1096         URLParser should use TextEncoding through an abstract class
1097         https://bugs.webkit.org/show_bug.cgi?id=190027
1098
1099         Reviewed by Andy Estes.
1100
1101         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1102         (TestWebKitAPI::checkURL):
1103         (TestWebKitAPI::TEST_F):
1104
1105 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
1106
1107         iOS Simulator bots should pass '--dedicated-simulators' to run-webkit-tests
1108         https://bugs.webkit.org/show_bug.cgi?id=190042
1109
1110         Reviewed by Aakash Jain.
1111
1112         To make iOS Simulator bots resilient to issues that can arise from reusing
1113         existing simulators, ensure that dedicated simulators are created for each test run.
1114
1115         * Scripts/webkitpy/common/config/ports.py:
1116         (IOSSimulatorWK2Port.run_webkit_tests_command):
1117
1118 2018-09-27  Alex Christensen  <achristensen@webkit.org>
1119
1120         URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL
1121         https://bugs.webkit.org/show_bug.cgi?id=189979
1122
1123         Reviewed by Youenn Fablet.
1124
1125         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
1126         (TestWebKitAPI::originalDataAsString):
1127         (TestWebKitAPI::TEST):
1128
1129 2018-09-27  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1130
1131         [Win][WebKit] Implement authentication dialog on MiniBrowser.
1132         https://bugs.webkit.org/show_bug.cgi?id=189846
1133
1134         Reviewed by Fujii Hironori.
1135
1136         It was implemented for WebKitLegacy, but not for WebKit.
1137         Also added text field to display Realm information.
1138
1139         * MiniBrowser/win/Common.cpp:
1140         (authDialogProc):
1141         (askCredential):
1142         (displayAuthDialog): Deleted.
1143         * MiniBrowser/win/Common.h:
1144         * MiniBrowser/win/MiniBrowserLib.rc:
1145         * MiniBrowser/win/MiniBrowserLibResource.h:
1146         * MiniBrowser/win/ResourceLoadDelegate.cpp:
1147         (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
1148         * MiniBrowser/win/WebKitBrowserWindow.cpp:
1149         (createString):
1150         (createUTF8String):
1151         (createWKString):
1152         (createWKURL):
1153         (WebKitBrowserWindow::WebKitBrowserWindow):
1154         (WebKitBrowserWindow::didReceiveAuthenticationChallenge):
1155         (toNullTerminatedUTF8): Deleted.
1156         * MiniBrowser/win/WebKitBrowserWindow.h:
1157
1158 2018-09-27  Youenn Fablet  <youenn@apple.com>
1159
1160         Enable getUserMedia in mini browser
1161         https://bugs.webkit.org/show_bug.cgi?id=190012
1162
1163         Reviewed by Eric Carlson.
1164
1165         Enable MediaDevices and mock capture devices.
1166         Grant mock devices access to any getUserMedia call.
1167         Covered by manual testing.
1168
1169         * MiniBrowser/mac/AppDelegate.m:
1170         (defaultConfiguration):
1171         * MiniBrowser/mac/WK2BrowserWindowController.m:
1172         (-[WK2BrowserWindowController _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1173         (-[WK2BrowserWindowController _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1174
1175 2018-09-27  Antoine Quint  <graouts@apple.com>
1176
1177         [Web Animations] Turn Web Animations with CSS integration on
1178         https://bugs.webkit.org/show_bug.cgi?id=184819
1179         <rdar://problem/39597337>
1180
1181         Reviewed by Dean Jackson.
1182
1183         * DumpRenderTree/TestOptions.h:
1184
1185 2018-09-26  Alex Christensen  <achristensen@webkit.org>
1186
1187         Unreviewed, rolling out r236524.
1188
1189         Broke API tests
1190
1191         Reverted changeset:
1192
1193         "URLWithUserTypedString should return nil for URLs deemed to
1194         be invalid by WebCore::URL"
1195         https://bugs.webkit.org/show_bug.cgi?id=189979
1196         https://trac.webkit.org/changeset/236524
1197
1198 2018-09-26  James Savage  <james.savage@apple.com>
1199
1200         Allow override of viewport configuration.
1201         https://bugs.webkit.org/show_bug.cgi?id=188772.
1202         <rdar://problem/43538892>.
1203
1204         Reviewed by Simon Fraser.
1205
1206         * WebKitTestRunner/TestController.cpp:
1207         (WTR::updateTestOptionsFromTestHeader): Parse new test option key from comments.
1208         * WebKitTestRunner/TestOptions.h:
1209         * WebKitTestRunner/ios/TestControllerIOS.mm:
1210         (WTR::TestController::platformConfigureViewForTest): Handle new test option by
1211         modifying the web view's preferences accordingly.
1212
1213 2018-09-26  Alex Christensen  <achristensen@webkit.org>
1214
1215         URLs with mismatched surrogate pairs in the host should fail to parse
1216         https://bugs.webkit.org/show_bug.cgi?id=190005
1217
1218         Reviewed by Chris Dumez.
1219
1220         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
1221         (TestWebKitAPI::TEST_F):
1222
1223 2018-09-26  Alex Christensen  <achristensen@webkit.org>
1224
1225         URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL
1226         https://bugs.webkit.org/show_bug.cgi?id=189979
1227         <rdar://problem/44119696>
1228
1229         Reviewed by Chris Dumez.
1230
1231         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
1232         (TestWebKitAPI::TEST):
1233
1234 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
1235
1236         Selection should work across shadow boundary when initiated by a mouse drag
1237         https://bugs.webkit.org/show_bug.cgi?id=151380
1238         <rdar://problem/24363872>
1239
1240         Reviewed by Wenson Hsieh.
1241
1242         Added the support for internal:selectionAcrossShadowBoundariesEnabled test option.
1243
1244         * DumpRenderTree/TestOptions.cpp:
1245         (TestOptions::TestOptions):
1246         * DumpRenderTree/TestOptions.h:
1247         * DumpRenderTree/mac/DumpRenderTree.mm:
1248         (resetWebPreferencesToConsistentValues):
1249         (setWebPreferencesForTestOptions):
1250
1251 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
1252
1253         MiniBrowser doesn't respect default enabled-ness of experimental and internal debug features
1254         https://bugs.webkit.org/show_bug.cgi?id=189989
1255
1256         Reviewed by Simon Fraser.
1257
1258         When the preference isn't found in user defaults, use the default value of each feature's enabledness.
1259
1260         * MiniBrowser/mac/AppDelegate.m:
1261         (defaultConfiguration):
1262
1263 2018-09-26  Philippe Normand  <pnormand@igalia.com>
1264
1265         [Flatpak] Bump to apr 1.6.5
1266
1267         Version 1.6.3 is no longer available on Apache's website.
1268
1269         Rubber-stamped by Michael Catanzaro.
1270
1271         * flatpak/org.webkit.WebKit.yaml:
1272
1273 2018-09-25  Jiewen Tan  <jiewen_tan@apple.com>
1274
1275         [WebAuthN] Make AuthenticatorManager
1276         https://bugs.webkit.org/show_bug.cgi?id=189279
1277         <rdar://problem/44116792>
1278
1279         Reviewed by Chris Dumez.
1280
1281         Besides the functionality to set the WebAuthenticationMockConfiguration. Three operations are
1282         added to manipulate Keychain: addTestKeyToKeychain, cleanUpKeychain and keyExistedInKeychain.
1283
1284         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1285         * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm: Removed.
1286         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1287         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1288         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
1289         (WTR::TestRunner::addTestKeyToKeychain):
1290         (WTR::TestRunner::cleanUpKeychain):
1291         (WTR::TestRunner::isKeyExisted):
1292         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1293         * WebKitTestRunner/TestController.cpp:
1294         (WTR::TestController::addTestKeyToKeychain):
1295         (WTR::TestController::cleanUpKeychain):
1296         (WTR::TestController::isKeyExisted):
1297         (WTR::TestController::setWebAuthenticationMockConfiguration):
1298         * WebKitTestRunner/TestController.h:
1299         * WebKitTestRunner/TestInvocation.cpp:
1300         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1301         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1302         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
1303         (WTR::TestController::addTestKeyToKeychain):
1304         (WTR::TestController::cleanUpKeychain):
1305         (WTR::TestController::keyExistedInKeychain):
1306
1307 2018-09-25  Sihui Liu  <sihui_liu@apple.com>
1308
1309         Move Service Worker Management from Storage Process to Network Process
1310         https://bugs.webkit.org/show_bug.cgi?id=189422
1311
1312         Reviewed by Youenn Fablet.
1313
1314         Change a check in ServiceWorkers.HasServiceWorkerRegistrationBit as storage process is not
1315         launched during service worker operations now.
1316
1317         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
1318
1319 2018-09-25  Eric Carlson  <eric.carlson@apple.com>
1320
1321         [MediaStream] Update constraints supported by getDisplayMedia
1322         https://bugs.webkit.org/show_bug.cgi?id=189930
1323         <rdar://problem/44740305>
1324
1325         Unreviewed, fix test broken by r236465.
1326
1327         * TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
1328         (TestWebKitAPI::TEST_F):
1329
1330 2018-09-25  Myles C. Maxfield  <mmaxfield@apple.com>
1331
1332         [WHSL] Implement semantics
1333         https://bugs.webkit.org/show_bug.cgi?id=189134
1334
1335         Reviewed by Filip Pizlo.
1336
1337         This patch adds parsing support and adds the checks required to support HLSL-style semantics.
1338
1339         There are 3 places where semantics are allowed:
1340
1341         1. In a field in a struct. E.g.
1342
1343         struct R {
1344             float4 position : SV_Position;
1345         }
1346         vertex R foo() {
1347             ...
1348         }
1349
1350         2. In a parameter of a function. If the function is not an entry point, the semantic is ignored.
1351
1352         compute void foo(device float[] data : buffer(u0)) {
1353             ...
1354         }
1355
1356         3. On a function. This is so you don't have to create structs for the return types of simple vertex shaders.
1357
1358         vertex float4 foo() : SV_Position {
1359             ...
1360         }
1361
1362         The semantics are partitioned into 4 types:
1363
1364         1. Built-in variables. For example, : SV_Position.
1365         2. Resources. For example, : register(u0).
1366         3. Stage-in / stage-out variables. For example, : attribute(0).
1367         4. Specialization constants. For example, : specialized.
1368
1369         The semantics are validated according to a collection of rules:
1370
1371         - The same entry point can't list the same semantic twice
1372         - Each built-in type has an appropriate type that is listed in the spec. 
1373         - Each built-in is appropriate as either an input or an output of a particular shader stage
1374         - Resource semantics have to have the appropriate type (e.g. can't use register(s0) on a buffer)
1375         - Resources can't be output from entry points
1376         - The resource semantic mode must match the address space of the resource
1377         - Stage-in and stage-out variables have to be POD
1378         - Specialization constants can't be output from entry points, and have to be numbers
1379
1380         * WebGPUShadingLanguageRI/All.js:
1381         * WebGPUShadingLanguageRI/BuiltInSemantic.js: Added.
1382         (BuiltInSemantic):
1383         (BuiltInSemantic.prototype.get name):
1384         (BuiltInSemantic.prototype.get extraArguments):
1385         (BuiltInSemantic.prototype.isAcceptableType):
1386         (BuiltInSemantic.prototype.isAcceptableForShaderType):
1387         (BuiltInSemantic.prototype.toString):
1388         * WebGPUShadingLanguageRI/CallExpression.js:
1389         (CallExpression.prototype._resolveWithOperatorAnderIndexer):
1390         (CallExpression.prototype._resolveWithOperatorLength):
1391         * WebGPUShadingLanguageRI/Checker.js:
1392         (Checker):
1393         (Checker.prototype.visitProgram):
1394         (Checker.prototype._checkSemantics.Item):
1395         (Checker.prototype._checkSemantics.Item.prototype.get type):
1396         (Checker.prototype._checkSemantics.Item.prototype.get semantic):
1397         (Checker.prototype._checkSemantics.Gatherer):
1398         (Checker.prototype._checkSemantics.Gatherer.prototype.reset):
1399         (Checker.prototype._checkSemantics.Gatherer.prototype.set currentSemantic):
1400         (Checker.prototype._checkSemantics.Gatherer.prototype.get currentSemantic):
1401         (Checker.prototype._checkSemantics.Gatherer.prototype.get result):
1402         (Checker.prototype._checkSemantics.Gatherer.prototype.visitEnumType):
1403         (Checker.prototype._checkSemantics.Gatherer.prototype.visitVectorType):
1404         (Checker.prototype._checkSemantics.Gatherer.prototype.visitMatrixType):
1405         (Checker.prototype._checkSemantics.Gatherer.prototype.visitNativeType):
1406         (Checker.prototype._checkSemantics.Gatherer.prototype.visitStructType):
1407         (Checker.prototype._checkSemantics.Gatherer.prototype.visitTypeRef):
1408         (Checker.prototype._checkSemantics.Gatherer.prototype.visitPtrType):
1409         (Checker.prototype._checkSemantics.Gatherer.prototype.visitArrayRefType):
1410         (Checker.prototype._checkSemantics.Gatherer.prototype.visitArrayType):
1411         (Checker.prototype._checkSemantics.Gatherer.prototype.visitFuncParameter):
1412         (Checker.prototype._checkSemantics.checkDuplicateSemantics):
1413         (Checker.prototype._checkSemantics.checkSemanticTypes):
1414         (Checker.prototype._checkSemantics.checkSemanticForShaderType):
1415         (Checker.prototype._checkSemantics.PODChecker.prototype.visitEnumType):
1416         (Checker.prototype._checkSemantics.PODChecker.prototype.visitArrayType):
1417         (Checker.prototype._checkSemantics.PODChecker.prototype.visitVectorType):
1418         (Checker.prototype._checkSemantics.PODChecker.prototype.visitMatrixType):
1419         (Checker.prototype._checkSemantics.PODChecker.prototype.visitNativeType):
1420         (Checker.prototype._checkSemantics.PODChecker.prototype.visitPtrType):
1421         (Checker.prototype._checkSemantics.PODChecker.prototype.visitArrayRefType):
1422         (Checker.prototype._checkSemantics.PODChecker.prototype.visitStructType):
1423         (Checker.prototype._checkSemantics.PODChecker.prototype.visitTypeRef):
1424         (Checker.prototype._checkSemantics.PODChecker):
1425         (Checker.prototype._checkSemantics.checkPODData):
1426         (Checker.prototype._checkSemantics):
1427         (Checker.prototype._checkShaderType):
1428         (Checker.prototype._checkOperatorOverload):
1429         (Checker.prototype.visitFuncDef):
1430         (Checker.prototype.visitEnumType):
1431         (Checker.prototype.visitArrayType):
1432         (Checker.prototype.visitMakePtrExpression):
1433         (Checker.prototype.visitMakeArrayRefExpression):
1434         (Checker.prototype._finishVisitingPropertyAccess):
1435         (Checker.prototype.visitIndexExpression):
1436         (Checker.prototype.visitReturn):
1437         (Checker.prototype.visitSwitchStatement):
1438         (Checker.prototype.visitTernaryExpression):
1439         (Checker.prototype.visitCallExpression):
1440         * WebGPUShadingLanguageRI/Field.js:
1441         (Field):
1442         (Field.prototype.get semantic):
1443         (Field.prototype.toString):
1444         * WebGPUShadingLanguageRI/Func.js:
1445         (Func):
1446         (Func.prototype.get semantic):
1447         (Func.prototype.toDeclString):
1448         * WebGPUShadingLanguageRI/FuncDef.js:
1449         (FuncDef):
1450         * WebGPUShadingLanguageRI/FuncParameter.js:
1451         (FuncParameter):
1452         (FuncParameter.prototype.get semantic):
1453         (FuncParameter.prototype.toString):
1454         * WebGPUShadingLanguageRI/Intrinsics.js:
1455         * WebGPUShadingLanguageRI/LateChecker.js:
1456         (LateChecker.prototype.visitReferenceType):
1457         (LateChecker):
1458         (LateChecker.prototype._checkShaderType): Deleted.
1459         (LateChecker.prototype.visitFuncDef): Deleted.
1460         * WebGPUShadingLanguageRI/NativeFunc.js:
1461         (NativeFunc):
1462         * WebGPUShadingLanguageRI/Parse.js:
1463         (parseParameter):
1464         (parseFuncDecl):
1465         (parseFuncDef):
1466         (parseStageInOutSemantic):
1467         (parseResourceSemantic):
1468         (parseSpecializationConstantSemantic):
1469         (parseBuiltInSemantic):
1470         (parseField):
1471         (parseNativeFunc):
1472         * WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js:
1473         (programWithUnnecessaryThingsRemoved):
1474         * WebGPUShadingLanguageRI/ResourceSemantic.js: Added.
1475         (ResourceSemantic):
1476         (ResourceSemantic.prototype.get resourceMode):
1477         (ResourceSemantic.prototype.get index):
1478         (ResourceSemantic.prototype.get space):
1479         (ResourceSemantic.prototype.isAcceptableType):
1480         (ResourceSemantic.prototype.isAcceptableForShaderType):
1481         (ResourceSemantic.prototype.toString):
1482         * WebGPUShadingLanguageRI/Rewriter.js:
1483         (Rewriter.prototype.visitFuncParameter):
1484         (Rewriter.prototype.visitField):
1485         (Rewriter.prototype.visitBuiltInSemantic):
1486         (Rewriter.prototype.visitResourceSemantic):
1487         (Rewriter.prototype.visitStageInOutSemantic):
1488         (Rewriter.prototype.visitSpecializationConstantSemantic):
1489         (Rewriter):
1490         * WebGPUShadingLanguageRI/SPIRV.html:
1491         * WebGPUShadingLanguageRI/Semantic.js: Added.
1492         (Semantic):
1493         (Semantic.prototype.get origin):
1494         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitBuiltInSemantic):
1495         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitResourceSemantic):
1496         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitStageInOutSemantic):
1497         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitSpecializationConstantSemantic):
1498         (Semantic.prototype.equalToOtherSemantic.Comparer):
1499         (Semantic.prototype.equalToOtherSemantic):
1500         * WebGPUShadingLanguageRI/SpecializationConstantSemantic.js: Copied from Tools/WebGPUShadingLanguageRI/Field.js.
1501         (SpecializationConstantSemantic):
1502         (SpecializationConstantSemantic.prototype.isAcceptableType):
1503         (SpecializationConstantSemantic.prototype.isAcceptableForShaderType):
1504         (SpecializationConstantSemantic.prototype.toString):
1505         * WebGPUShadingLanguageRI/StageInOutSemantic.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
1506         (StageInOutSemantic):
1507         (StageInOutSemantic.prototype.get index):
1508         (StageInOutSemantic.prototype.isAcceptableType):
1509         (StageInOutSemantic.prototype.isAcceptableForShaderType):
1510         (StageInOutSemantic.prototype.toString):
1511         * WebGPUShadingLanguageRI/StatementCloner.js:
1512         (StatementCloner.prototype.visitNativeFunc):
1513         * WebGPUShadingLanguageRI/SynthesizeArrayOperatorLength.js:
1514         (synthesizeArrayOperatorLength):
1515         * WebGPUShadingLanguageRI/SynthesizeCopyConstructorOperator.js:
1516         (synthesizeCopyConstructorOperator):
1517         * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js:
1518         (synthesizeDefaultConstructorOperator):
1519         * WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js:
1520         (synthesizeEnumFunctions):
1521         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
1522         (setupAnder):
1523         (synthesizeStructAccessorsForStructType):
1524         * WebGPUShadingLanguageRI/Test.html:
1525         * WebGPUShadingLanguageRI/Test.js:
1526         (tests.shaderTypes):
1527         * WebGPUShadingLanguageRI/Visitor.js:
1528         (Visitor.prototype.visitFunc):
1529         (Visitor.prototype.visitFuncParameter):
1530         (Visitor.prototype.visitField):
1531         (Visitor.prototype.visitBuiltInSemantic):
1532         (Visitor.prototype.visitResourceSemantic):
1533         (Visitor.prototype.visitStageInOutSemantic):
1534         (Visitor.prototype.visitSpecializationConstantSemantic):
1535         (Visitor):
1536         * WebGPUShadingLanguageRI/index.html:
1537
1538 2018-09-25  Thomas Denney  <tdenney@apple.com>
1539
1540         [WHLSL] Test suite for Metal code generation
1541         https://bugs.webkit.org/show_bug.cgi?id=187738
1542
1543         Reviewed by Myles C. Maxfield.
1544
1545         This patch adds an Xcode project that contains a Cocoa app that can be
1546         used for running WHLSL shaders on the GPU. It also contains an Xcode
1547         test suite that runs all of the tests in Test.js on the GPU.
1548
1549         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/.gitignore: Added.
1550         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.h: Added.
1551         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.m: Added.
1552         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/AppIcon.appiconset/Contents.json: Added.
1553         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/Contents.json: Added.
1554         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Base.lproj/Main.storyboard: Added.
1555         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.h: Added.
1556         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.m: Added.
1557         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.h: Added.
1558         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.m: Added.
1559         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.h: Added.
1560         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.m: Added.
1561         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Default.whlsl: Added.
1562         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Julia.whlsl: Added.
1563         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Mandelbrot.whlsl: Added.
1564         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Info.plist: Added.
1565         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.h: Added.
1566         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.m: Added.
1567         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.h: Added.
1568         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.m: Added.
1569         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.h: Added.
1570         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.m: Added.
1571         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.h: Added.
1572         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.m: Added.
1573         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.h: Added.
1574         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.m: Added.
1575         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.h: Added.
1576         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.m: Added.
1577         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.h: Added.
1578         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.m: Added.
1579         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.h: Added.
1580         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.m: Added.
1581         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/WHLSL.entitlements: Added.
1582         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/_SharedMetal.txt: Added.
1583         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/main.m: Added.
1584         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj: Added.
1585         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/Info.plist: Added.
1586         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/WHLSL_ToyTests.m: Added.
1587         * WebGPUShadingLanguageRI/Test.js:
1588         (tests.lotsOfLocalVariables):
1589
1590 2018-09-25  Myles C. Maxfield  <mmaxfield@apple.com>
1591
1592         Unreviewed build fix after r236455
1593         https://bugs.webkit.org/show_bug.cgi?id=189121
1594
1595         * WebGPUShadingLanguageRI/Test.js:
1596         (tests.shaderStages):
1597
1598 2018-09-24  Myles C. Maxfield  <mmaxfield@apple.com>
1599
1600         [WHLSL] Not all functions should be able to run in all shader stages
1601         https://bugs.webkit.org/show_bug.cgi?id=189121
1602
1603         Reviewed by Filip Pizlo.
1604
1605         ddx() and ddy() can only run in fragment shaders, and the barrier functions can only run in compute shaders.
1606         ddx_coarse() & friends are currently implemented as just calling ddx(), so we only need to modify those functions
1607         if/when we make them native.
1608
1609         The texture sampling functions that use implicit derivatives can run in any shader stage - they just use a LOD of
1610         0. Therefore, those functions are unchanged.
1611
1612         * WebGPUShadingLanguageRI/All.js:
1613         * WebGPUShadingLanguageRI/Intrinsics.js:
1614         * WebGPUShadingLanguageRI/LateChecker.js:
1615         (LateChecker.prototype._checkShaderType):
1616         * WebGPUShadingLanguageRI/NativeFunc.js:
1617         (NativeFunc):
1618         (NativeFunc.prototype.get stage):
1619         (NativeFunc.prototype.toDeclString):
1620         * WebGPUShadingLanguageRI/Parse.js:
1621         (parseFuncDecl):
1622         (parseNativeFunc):
1623         (parseNative):
1624         * WebGPUShadingLanguageRI/Prepare.js:
1625         (let.prepare):
1626         * WebGPUShadingLanguageRI/SPIRV.html:
1627         * WebGPUShadingLanguageRI/StandardLibrary.js:
1628         (let.standardLibrary):
1629         * WebGPUShadingLanguageRI/StatementCloner.js:
1630         (StatementCloner.prototype.visitNativeFunc):
1631         * WebGPUShadingLanguageRI/Test.html:
1632         * WebGPUShadingLanguageRI/Test.js:
1633         (tests.shaderStages):
1634         * WebGPUShadingLanguageRI/WSyntaxError.js:
1635         (WSyntaxError.prototype.toString):
1636         (WSyntaxError):
1637         * WebGPUShadingLanguageRI/index.html:
1638
1639 2018-09-24  Thomas Denney  <tdenney@apple.com>
1640
1641         [WHLSL] Implement trap statements in Metal code generation
1642         https://bugs.webkit.org/show_bug.cgi?id=189615
1643
1644         Reviewed by Myles C. Maxfield.
1645
1646         Each function called by an entry point now receives an additional
1647         boolean pointer parameter, which is set to false if the function traps.
1648         After each function call (to a non-native function) this trap parameter
1649         is checked. The behavior of the interpreter has also been updated so
1650         that a function entry point catches the trap and instead returns zero,
1651         matching the behavior of compiled code.
1652
1653         * WebGPUShadingLanguageRI/Evaluator.js: Adds a new flag to allow the
1654         test suite to check for traps and also returns zero from entry points
1655         whose invocation trapped.
1656         * WebGPUShadingLanguageRI/Metal/MSLBackend.js: Pass program to function
1657         declarations.
1658         * WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Update dependencies.
1659         * WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Add program
1660         property.
1661         * WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Ditto.
1662         * WebGPUShadingLanguageRI/Metal/MSLInsertTrapParameter.js: Added.
1663         * WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Conforms to the
1664         new trapping behavior.
1665         * WebGPUShadingLanguageRI/Test.js: Update tests that trap.
1666
1667 2018-09-24  Thomas Denney  <tdenney@apple.com>
1668
1669         [WHLSL] It shouldn’t be possible to use ternary expressions as l-values
1670         https://bugs.webkit.org/show_bug.cgi?id=189290
1671
1672         Reviewed by Myles C. Maxfield.
1673
1674         It is no longer possible for a ternary expression to be treated as an
1675         l-value. This patch adds several test cases to verify that this is the
1676         case.
1677
1678         * WebGPUShadingLanguageRI/Checker.js:
1679         (Checker.prototype.visitTernaryExpression): No longer check isLValue.
1680         * WebGPUShadingLanguageRI/NormalUsePropertyResolver:
1681         (NormalUsePropertyResolver.visitTernaryExpression): Deleted.
1682         * WebGPUShadingLanguageRI/Rewriter.js:
1683         (Rewriter.prototype.visitTernaryExpression): No longer copy isLValue.
1684         * WebGPUShadingLanguageRI/TernaryExpression.js:
1685         (TernaryExpression):
1686         (TernaryExpression.prototype.get elseExpression):
1687         (TernaryExpression.prototype.get isLValue): Deleted.
1688         (TernaryExpression.prototype.set isLValue): Deleted.
1689         * WebGPUShadingLanguageRI/Test.js:
1690         (tests.ternaryExpression): Add checks for failure if a failure is used
1691         as an l-value.
1692         (ternaryExpressionIsLValue.node.TernaryExpressionVisitor.prototype.visitTernaryExpression): Deleted.
1693         (ternaryExpressionIsLValue.node.TernaryExpressionVisitor): Deleted.
1694         (tests.ternaryExpressionIsLValue): Deleted.
1695
1696 2018-09-24  Jer Noble  <jer.noble@apple.com>
1697
1698         SharedBuffer should have an equality test
1699         https://bugs.webkit.org/show_bug.cgi?id=189919
1700
1701         Reviewed by Alex Christensen.
1702
1703         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
1704         (TestWebKitAPI::TEST_F):
1705
1706 2018-09-24  Alex Christensen  <achristensen@webkit.org>
1707
1708         Prepare to replace WKBundleFileHandleCreateWithPath with a version that takes a WKBundlePageRef
1709         https://bugs.webkit.org/show_bug.cgi?id=189929
1710
1711         Reviewed by Andy Estes.
1712
1713         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle_Bundle.cpp:
1714
1715 2018-09-24  Thomas Denney  <tdenney@apple.com>
1716
1717         [WHLSL] Casting user-created types to themselves should always work
1718         https://bugs.webkit.org/show_bug.cgi?id=189113
1719
1720         Reviewed by Myles C. Maxfield.
1721
1722         Casting user-defined types to themselves worked already, but we didn't
1723         test it anywhere.
1724
1725         * WebGPUShadingLanguageRI/Test.js:
1726         (tests.selfCasts):
1727
1728 2018-09-24  Zan Dobersek  <zdobersek@igalia.com>
1729
1730         Unreviewed build fix for Jhbuild-using ports.
1731
1732         * gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch:
1733         Adjust the patch so it applies cleanly on the 1.14.3 version of the
1734         gst-plugins-good package.
1735
1736 2018-09-24  Ryan Haddad  <ryanhaddad@apple.com>
1737
1738         Update flakiness dashboard configuration for iOS 12 queues
1739         https://bugs.webkit.org/show_bug.cgi?id=189688
1740
1741         Reviewed by Alexey Proskuryakov.
1742
1743         * TestResultServer/static-dashboards/builders.jsonp:
1744
1745 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1746
1747         [GStreamer] Unreviewed build fix.
1748
1749         A GStreamer patch was not applying cleanly on 1.14.3.
1750
1751         * gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch:
1752
1753 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1754
1755         [MSE][GStreamer] Use no-more-pads event for noticing initialization segments
1756         https://bugs.webkit.org/show_bug.cgi?id=189868
1757
1758         Reviewed by Xabier Rodriguez-Calvar.
1759
1760         Added patch from https://bugzilla.gnome.org/show_bug.cgi?id=797187
1761
1762         * gstreamer/jhbuild.modules:
1763         * gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch: Added.
1764
1765 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1766         [MSE][GStreamer] Add patch to jhbuild: matroskademux: Allow Matroska headers to be read more than once
1767         https://bugs.webkit.org/show_bug.cgi?id=185731
1768
1769         Reviewed by Xabier Rodriguez-Calvar.
1770
1771         Upstream bug in GStreamer: https://bugzilla.gnome.org/show_bug.cgi?id=793333
1772
1773         This fixes YTTV 35. AppendMultipleInitOpusAudio (and any other use
1774         case where two WebM initialization segments are appended on a row).
1775
1776         * gstreamer/jhbuild.modules:
1777         * gstreamer/patches/gst-plugins-good-0007-matroskademux-Allow-Matroska-headers-to-be-read-more.patch: Added.
1778         * gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch: Added.
1779         * gstreamer/patches/gst-plugins-good-0009-matroskademux-Parse-successive-Tracks-elements.patch: Added.
1780
1781 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1782
1783         [WHSL] Need grammar to specify kernel group size
1784         https://bugs.webkit.org/show_bug.cgi?id=189108
1785
1786         Reviewed by Dean Jackson.
1787
1788         In HLSL, compute functions are annotated with their workgroup size.
1789         For example,
1790
1791         [numthreads(3, 4, 5)] compute void foo(...) { ... }
1792
1793         * WebGPUShadingLanguageRI/All.js:
1794         * WebGPUShadingLanguageRI/Func.js:
1795         (Func):
1796         (Func.prototype.get attributeBlock):
1797         * WebGPUShadingLanguageRI/FuncAttribute.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
1798         (FuncAttribute):
1799         * WebGPUShadingLanguageRI/FuncDef.js:
1800         (FuncDef):
1801         * WebGPUShadingLanguageRI/FuncNumThreadsAttribute.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
1802         (FuncNumThreadsAttribute):
1803         (FuncNumThreadsAttribute.prototype.get x):
1804         (FuncNumThreadsAttribute.prototype.get y):
1805         (FuncNumThreadsAttribute.prototype.get z):
1806         * WebGPUShadingLanguageRI/LateChecker.js:
1807         (LateChecker.prototype._checkShaderType):
1808         * WebGPUShadingLanguageRI/Parse.js:
1809         (parseAttributeBlock):
1810         (parseFuncDecl):
1811         (parseFuncDef):
1812         (parseNativeFunc):
1813         * WebGPUShadingLanguageRI/SPIRV.html:
1814         * WebGPUShadingLanguageRI/StatementCloner.js:
1815         (StatementCloner.prototype.visitFuncDef):
1816         (StatementCloner.prototype.visitFuncNumThreadsAttribute):
1817         (StatementCloner):
1818         * WebGPUShadingLanguageRI/Test.html:
1819         * WebGPUShadingLanguageRI/Test.js:
1820         (tests.numThreads):
1821         * WebGPUShadingLanguageRI/Visitor.js:
1822         (Visitor.prototype.visitFunc):
1823         (Visitor.prototype.visitFuncNumThreadsAttribute):
1824         (Visitor):
1825         * WebGPUShadingLanguageRI/index.html:
1826
1827 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1828
1829         Native functions which accept pointers need to do null checks
1830         https://bugs.webkit.org/show_bug.cgi?id=189883
1831
1832         Reviewed by Dean Jackson.
1833
1834         Simply guard all the places where we write through an author-provided pointer.
1835
1836         * WebGPUShadingLanguageRI/Intrinsics.js:
1837         (Intrinsics.):
1838         * WebGPUShadingLanguageRI/Test.js:
1839         (tests.textureDimensionsNull):
1840
1841 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1842
1843         [WHLSL] Implement atomic operations and barriers
1844         https://bugs.webkit.org/show_bug.cgi?id=189025
1845
1846         Reviewed by Dean Jackson.
1847
1848         In the interpreter, atomic operations don't need to be atomic.
1849
1850         * WebGPUShadingLanguageRI/Intrinsics.js:
1851         (Intrinsics.):
1852         * WebGPUShadingLanguageRI/StandardLibrary.js:
1853         (let.standardLibrary):
1854         * WebGPUShadingLanguageRI/Test.js:
1855         (tests.atomics):
1856
1857 2018-09-22  Thibault Saunier  <tsaunier@igalia.com>
1858
1859         [WPE] Be very permissive in the MiniBrowser.
1860         https://bugs.webkit.org/show_bug.cgi?id=189800
1861
1862         This is just a test tool and we should make
1863         it just work, security and privacy is not really
1864         a primary focus here.
1865
1866         Reviewed by Žan Doberšek.
1867
1868         * MiniBrowser/wpe/main.cpp:
1869         (decidePermissionRequest):
1870         (main):
1871
1872 2018-09-21  Thomas Denney  <tdenney@apple.com>
1873
1874         [WHLSL] Local variables should be statically allocated
1875         https://bugs.webkit.org/show_bug.cgi?id=188402
1876
1877         Reviewed by Myles C. Maxfield.
1878
1879         An additional preparation stage is now performed so that all local
1880         variables and function parameters are allocated in a single struct at
1881         entry points. A pointer to this struct is then passed for function
1882         calls.
1883
1884         * WebGPUShadingLanguageRI/All.js: Update dependencies.
1885         * WebGPUShadingLanguageRI/AllocateAtEntryPoints.js: Added new stage.
1886         * WebGPUShadingLanguageRI/CallExpression.js:
1887         (CallExpression.prototype.set argumentList): Add setter because
1888         allocateAtEntryPoints needs to change this.
1889         * WebGPUShadingLanguageRI/EBufferBuilder.js: Remove a redundant
1890         constructor that wasn't used anywhere.
1891         * WebGPUShadingLanguageRI/Func.js:
1892         (Func.prototype.set parameters): Add setter.
1893         * WebGPUShadingLanguageRI/FuncDef.js:
1894         (FuncDef.prototype.set body): Ditto.
1895         * WebGPUShadingLanguageRI/Prepare.js:
1896         (let.prepare): Add call to allocateAtEntryPoints. This call cannot
1897         happen any earlier because it depends on having types for call
1898         arguments.
1899         * WebGPUShadingLanguageRI/Rewriter.js:
1900         (Rewriter.prototype.visitReturn): Resolve issue where the return
1901         statement's function wasn't copied. A null check is required as the
1902         Rewriter might be used before this property is set.
1903         * WebGPUShadingLanguageRI/SPIRV.html: Update dependencies.
1904         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js: Abstracted logic
1905         into a separate function so that allocateAtEntryPoints can create the
1906         accessors for the struct type it introduces.
1907         * WebGPUShadingLanguageRI/Test.html: Update dependencies.
1908         * WebGPUShadingLanguageRI/Test.js: Add new tests to verify the static
1909         allocation transform works safely.
1910         * WebGPUShadingLanguageRI/index.html: Update dependencies.
1911
1912 2018-09-21  Jonathan Bedard  <jbedard@apple.com>
1913
1914         Bring up queues for iOS 12 (Build fix)
1915         https://bugs.webkit.org/show_bug.cgi?id=189683
1916
1917         Unreviewed build fix.
1918
1919         We should not build ImageDiff as x86 by default since 32 bit projects are
1920         deprecated in Xcode. ImageDiff should only be built once.
1921
1922         * Scripts/build-webkit:
1923         * Scripts/webkitdirs.pm:
1924         (argumentsForConfiguration):
1925
1926 2018-09-21  Adrian Perez de Castro  <aperez@igalia.com>
1927
1928         [WPE] Built RPM of WPE webkit fails to install with "nothing provides libWPEToolingBackends.so()"
1929         https://bugs.webkit.org/show_bug.cgi?id=189797
1930
1931         Reviewed by Žan Doberšek.
1932
1933         * wpe/backends/CMakeLists.txt: Make libWPEToolingBackends a static library to avoid
1934         the need for installing it. This works fine because the library only contains utility
1935         code intended to be reused from other various components (MiniBrowser, WebKitTestRunner).
1936
1937 2018-09-20  Daniel Bates  <dabates@apple.com>
1938
1939         Move IOKitSPI.h from TestRunnerShared to PAL
1940         https://bugs.webkit.org/show_bug.cgi?id=189804
1941
1942         Reviewed by Wenson Hsieh.
1943
1944         Towards fixing <https://bugs.webkit.org/show_bug.cgi?id=189604> move the IOKit SPI forward
1945         declarations to PAL so that they can be shared by WebKit, DumpRenderTree and WebKitTestRunner.
1946
1947         No functionality changed. So, no new tests.
1948
1949         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
1950         * TestRunnerShared/spi/UIKitTestSPI.h:
1951         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1952         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1953
1954 2018-09-20  Thomas Denney  <tdenney@apple.com>
1955
1956         [WHLSL] Metal code generation
1957         https://bugs.webkit.org/show_bug.cgi?id=187735
1958
1959         Reviewed by Myles C. Maxfield.
1960
1961         Adds support for generating Metal Shading Language from WHLSL. Clients
1962         should include the file MetalCodegenAll.js and then call whlslToMsl
1963         with their program source code to compile to Metal.
1964
1965         * WebGPUShadingLanguageRI/ArrayType.js:
1966         (ArrayType.prototype.get arrayRefType): Adds the arrayRefType method to
1967         all types to find the type of that expression when it is used in a
1968         MakeArrayRefExpression.
1969         * WebGPUShadingLanguageRI/MakeArrayRefExpression.js:
1970         (MakeArrayRefExpression):
1971         (MakeArrayRefExpression.prototype.get type): Uses the new arrayRefType
1972         getter on all types to find the type of the expression.
1973         * WebGPUShadingLanguageRI/Metal/MSLBackend.js: Added.
1974         * WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Added.
1975         * WebGPUShadingLanguageRI/Metal/MSLCompileResult.js: Added.
1976         * WebGPUShadingLanguageRI/Metal/MSLConstexprEmitter.js: Added.
1977         * WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Added.
1978         * WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Added.
1979         * WebGPUShadingLanguageRI/Metal/MSLFunctionForwardDeclaration.js: Added.
1980         * WebGPUShadingLanguageRI/Metal/MSLNameMangler.js: Added.
1981         * WebGPUShadingLanguageRI/Metal/MSLNativeFunctionCall.js: Added.
1982         * WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Added.
1983         * WebGPUShadingLanguageRI/Metal/MSLTypeAttributes.js: Added.
1984         * WebGPUShadingLanguageRI/Metal/MSLTypeAttributesMap.js: Added.
1985         * WebGPUShadingLanguageRI/Metal/MSLTypeUnifier.js: Added.
1986         * WebGPUShadingLanguageRI/Metal/TypeOf.js: Added.
1987         * WebGPUShadingLanguageRI/Metal/WhlslToMsl.js: Added.
1988         * WebGPUShadingLanguageRI/PropertyResolver.js:
1989         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
1990         * WebGPUShadingLanguageRI/Test.js: Added awkward tests for the compiler
1991         to generate code for.
1992         (tests.incrementAndDecrement):
1993         (tests.returnIntLiteralUint):
1994         (tests.returnIntLiteralFloat):
1995         (tests.nestedSubscriptWithArraysInStructs):
1996         (tests.nestedSubscript):
1997         (tests.lotsOfLocalVariables):
1998         * WebGPUShadingLanguageRI/Type.js:
1999         (Type.prototype.get arrayRefType): See above.
2000
2001 2018-09-20  Ryan Haddad  <ryanhaddad@apple.com>
2002
2003         Bring up queues for iOS 12
2004         https://bugs.webkit.org/show_bug.cgi?id=189683
2005
2006         Unreviewed infrastructure fix.
2007
2008         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12@2x.png: Renamed from Tools/BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/iOS12@2x.png.
2009         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
2010         (BubbleQueueServer): Move EWS bubbles to the iOS 12 section of the dashboard.
2011
2012 2018-09-20  Ryan Haddad  <ryanhaddad@apple.com>
2013
2014         Bring up queues for iOS 12
2015         https://bugs.webkit.org/show_bug.cgi?id=189683
2016
2017         Reviewed by Aakash Jain.
2018
2019         * BuildSlaveSupport/build.webkit.org-config/config.json:
2020         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12.png: Added.
2021         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator.png: Added.
2022         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator@2x.png: Added.
2023         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/iOS12@2x.png: Added.
2024         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
2025         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
2026         (WebKitBuildbot):
2027         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
2028         (table.queue-grid tr.platform.ios-simulator-12 img.logo):
2029         (table.queue-grid tr.platform.ios-12 img.logo):
2030         (table.queue-grid tr.platform.ios-simulator-11 img.logo): Deleted.
2031         (table.queue-grid tr.platform.ios-11 img.logo): Deleted.
2032         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
2033         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
2034         (_should_file_trigger_build):
2035         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
2036         (ShouldBuildTest):
2037         (ShouldBuildTest.test_should_build):
2038
2039 2018-09-20  Basuke Suzuki  <Basuke.Suzuki@sony.com>
2040
2041         [Win] TestRunner::queueLoad() fails to generate correct url for some urls.
2042         https://bugs.webkit.org/show_bug.cgi?id=189679
2043
2044         Reviewed by Fujii Hironori.
2045
2046         Replace the implementation with correct API call.
2047
2048         * DumpRenderTree/win/TestRunnerWin.cpp:
2049         (TestRunner::queueLoad): Call UrlCombineW.
2050
2051 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
2052
2053         [WPE] fails to build on ARM arches complaining about undefined reference to `epoxy_eglMakeCurrent'
2054         https://bugs.webkit.org/show_bug.cgi?id=189556
2055
2056         Reviewed by Konstantin Tokarev.
2057
2058         This is only a speculative build fix as I didn't attempt to reproduce. Explicitly link to
2059         libepoxy.
2060
2061         * wpe/backends/CMakeLists.txt:
2062
2063 2018-09-20  Daniel Bates  <dabates@apple.com>
2064
2065         [iOS] Support testing more hardware special keys
2066         https://bugs.webkit.org/show_bug.cgi?id=189793
2067
2068         Reviewed by Simon Fraser.
2069
2070         * TestRunnerShared/spi/IOKitSPI.h: Add more SPI constants.
2071         * WebKitTestRunner/ios/HIDEventGenerator.mm:
2072         (keyCodeForDOMFunctionKey): Extracted out logic from hidUsageCodeForCharacter() to return the
2073         key code for the F1, F2, ..., F12 keys and extended the code to compute the key code for the
2074         F13, F14, ..., F24 keys.
2075         (hidUsageCodeForCharacter): Modified to call keyCodeForDOMFunctionKey().
2076
2077 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
2078
2079         Unreviewed, remove accidentally-committed debugging changes from flatpakutils script
2080
2081         Aaaaaah maybe this is why changes are supposed to be reviewed.
2082
2083         * flatpak/flatpakutils.py:
2084         (WebkitFlatpak.clean_args):
2085
2086 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
2087
2088         Unreviewed, manually rollout our switch to master runtime
2089
2090         Phil wants html5-codecs, which aren't available yet here. Let's switch back to 3.28 in the
2091         meantime, where we were already building GStreamer ourselves anyway. But use an updated
2092         SDK revision.
2093
2094         * flatpak/files/httpd-autogen.sh: Added.
2095         * flatpak/flatpakutils.py:
2096         (WebkitFlatpak.clean_args):
2097         * flatpak/org.webkit.GTK.yaml:
2098         * flatpak/org.webkit.WebKit.yaml:
2099         * flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Added.
2100         * flatpak/patches/libgcrypt-0001-Use-pkg-config-to-detect-gpg-error.patch: Added.
2101
2102 2018-09-20  Thibault Saunier  <tsaunier@igalia.com>
2103
2104         [WPE][GTK] webkit-flatpak intercepts --help for other commands
2105         https://bugs.webkit.org/show_bug.cgi?id=189058
2106
2107         The approach of run_in_sandbox_if_available is that we basically have the
2108         same set of arguments to setup the sandbox (ie. port name, build type, etc...)
2109         and we can pass those args first to setup the flatpak launcher object
2110         and then to the underlying script. That doesn't work well with the `--help` argument
2111         as once processed it 1. prints the help (which make no sense to the user of the calling script)
2112         2. exits the app - The solution is to just make sure that `--help` is not used when using
2113         flatpakutils from any script that is not `webkit-flatpak` itself.
2114
2115         Reviewed by Michael Catanzaro.
2116
2117         * flatpak/flatpakutils.py:
2118         (WebkitFlatpak.load_from_args):
2119         (run_in_sandbox_if_available):
2120
2121 2018-09-20  Xabier Rodriguez Calvar  <calvaris@igalia.com>
2122
2123         Unreviewed. Add W3C imported tests to the MSEEME watchlist.
2124
2125         * Scripts/webkitpy/common/config/watchlist:
2126
2127 2018-09-20  Xabier Rodriguez Calvar  <calvaris@igalia.com>
2128
2129         Unreviewed. Fix the Streams API watchlist.
2130
2131         * Scripts/webkitpy/common/config/watchlist:
2132
2133 2018-09-19  Chris Dumez  <cdumez@apple.com>
2134
2135         Crash under WebProcessProxy::suspendedPageWasDestroyed(WebKit::SuspendedPageProxy&)
2136         https://bugs.webkit.org/show_bug.cgi?id=189721
2137         <rdar://problem/44359788>
2138
2139         Reviewed by Geoffrey Garen.
2140
2141         Add API test coverage.
2142
2143         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2144
2145 2018-09-19  Thomas Denney  <tdenney@apple.com>
2146
2147         [WHLSL] Improve test suite type safety
2148         https://bugs.webkit.org/show_bug.cgi?id=189502
2149
2150         Reviewed by Myles C. Maxfield.
2151
2152         Each of the 'makeT' functions now call the relevant cast function on the
2153         value before hand. The checkNumber function has also been removed and
2154         its uses have been replaced with functions that also check the type.
2155         Some of the arithmetic checks have been updated to reflect that the
2156         casts happen outside of WHLSL evaluation. Other tests have also been
2157         updated to reflect that some values cannot be precisely expressed in
2158         32-bit floating point.
2159
2160         * WebGPUShadingLanguageRI/Casts.js:
2161         (castToBool): Added.
2162         (castAndCheckValue): Added.
2163         (isBitwiseEquivalent): Moved from Intrinsics.js.
2164         * WebGPUShadingLanguageRI/Intrinsics.js: Ditto.
2165         * WebGPUShadingLanguageRI/SPIRV.html: Update depdencies.
2166         * WebGPUShadingLanguageRI/Test.html: Ditto.
2167         * WebGPUShadingLanguageRI/Test.js: Update makeT functions to do a cast
2168         and check the result. Some tests were also updated to reflect the change
2169         in the behavior of these functions.
2170         * WebGPUShadingLanguageRI/index.html: Update dependencies.
2171
2172 2018-09-19  John Wilander  <wilander@apple.com>
2173
2174         Resource Load Statistics: Add optional cap on partitioned cache max age
2175         https://bugs.webkit.org/show_bug.cgi?id=189711
2176         <rdar://problem/39246837>
2177
2178         Reviewed by Antti Koivisto and Chris Dumez.
2179
2180         This change adds infrastructure for layout tests of capped cache max age.
2181
2182         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2183         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2184         (WTR::TestRunner::setStatisticsCacheMaxAgeCap):
2185         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2186         * WebKitTestRunner/TestController.cpp:
2187         (WTR::TestController::setStatisticsCacheMaxAgeCap):
2188         * WebKitTestRunner/TestController.h:
2189         * WebKitTestRunner/TestInvocation.cpp:
2190         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2191
2192 2018-09-19  Dawei Fenton  <realdawei@apple.com>
2193
2194        Unreviewed. Update my email and alias in list of contributors.
2195
2196         * Scripts/webkitpy/common/config/contributors.json:
2197
2198 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2199
2200         [WPE][GTK] Unreviewed, try #3 to fix a typo
2201
2202         I feel like Charlie Brown, how hard this has been for me....
2203
2204         * Scripts/run-minibrowser:
2205         * Scripts/webkitdirs.pm:
2206         (runInFlatpakIfAvailable):
2207         (runInFlatpakIfAvailible): Deleted.
2208
2209 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2210
2211         [WPE][GTK] Unreviewed, fix that typo in more places
2212
2213         It got copied into webkitdirs.pm!
2214
2215         * Scripts/webkitdirs.pm:
2216         (runInFlatpakIfAvailible):
2217         (runInFlatpakIfAvalaible): Deleted.
2218
2219 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2220
2221         [WPE][GTK] Unreviewed, fix a pervasive typo in the webkit-flatpak script
2222
2223         * flatpak/flatpakutils.py:
2224         (WebkitFlatpak.load_from_args):
2225         (WebkitFlatpak.__init__):
2226         (WebkitFlatpak.run):
2227
2228 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2229
2230         [WPE][GTK] Unreviewed, update to latest GNOME SDK
2231
2232         * flatpak/org.webkit.WebKit.yaml:
2233
2234 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
2235
2236         Unreviewed, rolling out r235500.
2237
2238         Time to switch back to master runtime
2239
2240         Reverted changeset:
2241
2242         "Unreviewed, rolling out r235114."
2243         https://bugs.webkit.org/show_bug.cgi?id=188731
2244         https://trac.webkit.org/changeset/235500
2245
2246 2018-09-19  Adrian Perez de Castro  <aperez@igalia.com>
2247
2248         Unreviewed. Add Pablo Saavedra to the list of contributors.
2249
2250         * Scripts/webkitpy/common/config/contributors.json:
2251
2252 2018-09-19  Philippe Normand  <pnormand@igalia.com>
2253
2254         [GStreamer] Add support for AV1 decoding
2255         https://bugs.webkit.org/show_bug.cgi?id=189647
2256
2257         Reviewed by Žan Doberšek.
2258
2259         Add patches required for AV1 decoding support. They're all
2260         upstream already and will be shipped in GStreamer 1.16. The aom
2261         GStreamer plugin depends on the aom library for which there's no
2262         official release yet.
2263
2264         * gstreamer/jhbuild.modules:
2265         * gstreamer/patches/gst-plugins-bad-0001-aomenc-Add-support-for-10-12bit-decoding.patch: Added.
2266         * gstreamer/patches/gst-plugins-bad-0002-aomenc-Handle-8-bit_depth-images-with-AOM_IMG_FMT_HI.patch: Added.
2267         * gstreamer/patches/gst-plugins-good-0001-qtdemux-Detect-and-expose-CEA-608-708-Closed-Caption.patch: Added. This one is unrelated but an implicit dependency of the next one.
2268         * gstreamer/patches/gst-plugins-good-0004-qtdemux-Add-initial-support-for-AV1-demuxing.patch: Added.
2269         * gstreamer/patches/gst-plugins-good-0005-qtdemux-Extract-AV1-codec_data-and-put-it-in-the-cap.patch: Added.
2270         * gstreamer/patches/gst-plugins-good-0006-qtdemux-Recognize-more-AV1-atoms.patch: Added.
2271
2272 2018-09-18  Jonathan Bedard  <jbedard@apple.com>
2273
2274         webkitpy: Clobbering and building occurs multiple times for iOS Simulator ports
2275         https://bugs.webkit.org/show_bug.cgi?id=189702
2276         <rdar://problem/44541704>
2277
2278         Reviewed by Aakash Jain.
2279
2280         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2281         (Manager._set_up_run): Move build check and clobbering to run, since set up is
2282         run multiple times for iOS simulator.
2283         (Manager.run):
2284
2285 2018-09-18  Chris Dumez  <cdumez@apple.com>
2286
2287         "DidFirstVisuallyNonEmptyLayout" callback does not get called when restoring a page from PageCache
2288         https://bugs.webkit.org/show_bug.cgi?id=189681
2289         <rdar://problem/44526171>
2290
2291         Reviewed by Alex Christensen and Zalan Bujtas.
2292
2293         Add API test coverage.
2294
2295         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
2296         (TestWebKitAPI::didFinishNavigation):
2297         (TestWebKitAPI::TEST):
2298
2299 2018-09-18  Claudio Saavedra  <csaavedra@igalia.com>
2300
2301         [WPE] Implement mouse event modifiers
2302         https://bugs.webkit.org/show_bug.cgi?id=189697
2303
2304         Reviewed by Carlos Garcia Campos.
2305
2306         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
2307         (WTR::wkEventModifiersToWPE):
2308         (WTR::EventSenderProxy::mouseDown):
2309         (WTR::EventSenderProxy::mouseUp):
2310
2311 2018-09-17  Yusuke Suzuki  <utatane.tea@gmail.com>
2312
2313         [WTF] Use Semaphore and BinarySemaphore instead of dispatch_semaphore_t
2314         https://bugs.webkit.org/show_bug.cgi?id=185339
2315
2316         Reviewed by Mark Lam.
2317
2318         * TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
2319         (TestWebKitAPI::ToUpperConverter::stopProducing):
2320         (TestWebKitAPI::ToUpperConverter::stopConsuming):
2321
2322 2018-09-17  Simon Fraser  <simon.fraser@apple.com>
2323
2324         Many modern media control tests leak documents in testing
2325         https://bugs.webkit.org/show_bug.cgi?id=189437
2326
2327         Reviewed by Darin Adler.
2328         
2329         In order to accurately detect leaks in media controls tests which use lots of
2330         SVGImages, we have to:
2331         - Fire a zero-delay timer after the postTask, in order for ImagesLoader's m_derefElementTimer
2332           to clear references to elements.
2333         - Have releaseCriticalMemory() call CachedResourceLoader's garbageCollectDocumentResources()
2334           to drop the last handle to the CachedResource for an SVGImage.
2335         - Call WKBundleReleaseMemory() after the GC and timer, since we need garbageCollectDocumentResources()
2336           to run again after that timer has fired.
2337         
2338         This should fix most of the spurious leak reports involving SVGImage documents.
2339
2340         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2341         (WTR::InjectedBundle::reportLiveDocuments):
2342         (WTR::InjectedBundle::didReceiveMessageToPage):
2343
2344 2018-09-17  Chris Dumez  <cdumez@apple.com>
2345
2346         PSON: window.open() with 'noopener' should only process-swap cross-site, not cross-origin
2347         https://bugs.webkit.org/show_bug.cgi?id=189602
2348         <rdar://problem/44430549>
2349
2350         Reviewed by Geoff Garen.
2351
2352         Add API test coverage.
2353
2354         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2355
2356 2018-09-17  Philippe Normand  <pnormand@igalia.com>
2357
2358         [JHBuild] Update to GStreamer 1.14.3
2359         https://bugs.webkit.org/show_bug.cgi?id=189450
2360
2361         Reviewed by Xabier Rodriguez-Calvar.
2362
2363         * gstreamer/jhbuild.modules: Bump GStreamer modules from 1.14.1 to 1.14.3.
2364
2365 2018-09-17  Philippe Normand  <pnormand@igalia.com>
2366
2367         [JHBuild] Doesn't check sha256 sums
2368         https://bugs.webkit.org/show_bug.cgi?id=189646
2369
2370         Reviewed by Michael Catanzaro.
2371
2372         * gstreamer/jhbuild.modules: Properly set the sha256: prefix on hashes.
2373
2374 2018-09-17  Sihui Liu  <sihui_liu@apple.com>
2375
2376         Move IndexedDB to Network Process
2377         https://bugs.webkit.org/show_bug.cgi?id=189415
2378         <rdar://problem/44396973>
2379
2380         Reviewed by Chris Dumez.
2381
2382         * TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
2383         (TEST):
2384         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
2385         (TEST):
2386         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
2387         (TEST):
2388         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
2389         (TEST):
2390         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
2391         (TEST):
2392
2393 2018-09-08  Darin Adler  <darin@apple.com>
2394
2395         Streamline JSRetainPtr, fix leaks of JSString and JSGlobalContext
2396         https://bugs.webkit.org/show_bug.cgi?id=189455
2397
2398         Reviewed by Keith Miller.
2399
2400         There is a lot of copied and pasted code for WebKit vs. Legacy WebKit
2401         testing and even for macOS vs. iOS vs. Windows platform-specific code.
2402         For now, this patch just makes corresponding changes to the copied code.
2403         Later we might get better results by merging more code instead of having
2404         all these separate copies.
2405
2406         * DumpRenderTree/AccessibilityController.cpp:
2407         (AccessibilityController::makeWindowObject): Use the adopt function
2408         instead of the special Adopt constructor of JSRetainPtr.
2409
2410         * DumpRenderTree/AccessibilityTextMarker.cpp: Removed unneeded include.
2411
2412         * DumpRenderTree/AccessibilityUIElement.cpp: Ditto.
2413         (allAttributesCallback): Don't adopt at this level; changed the
2414         underlying function to return a JSRetainPtr so the adopt is right next
2415         to the call to the create or copy function.
2416         (attributesOfLinkedUIElementsCallback): Ditto.
2417         (attributesOfDocumentLinksCallback): Ditto.
2418         (attributesOfChildrenCallback): Ditto.
2419         (parameterizedAttributeNamesCallback): Ditto.
2420         (attributesOfColumnHeadersCallback): Ditto.
2421         (attributesOfRowHeadersCallback): Ditto.
2422         (attributesOfColumnsCallback): Ditto.
2423         (attributesOfRowsCallback): Ditto.
2424         (attributesOfVisibleCellsCallback): Ditto.
2425         (attributesOfHeaderCallback): Ditto.
2426         (rowIndexRangeCallback): Ditto.
2427         (columnIndexRangeCallback): Ditto.
2428         (rangeForLineCallback): Ditto.
2429         (boundsForRangeCallback): Ditto.
2430         (rangeForPositionCallback): Ditto.
2431         (stringForRangeCallback): Ditto.
2432         (attributedStringForRangeCallback): Ditto.
2433         (uiElementCountForSearchPredicateCallback): Use the free adopt
2434         function instead of the adopt member function.
2435         (uiElementForSearchPredicateCallback): Ditto.
2436         (selectTextWithCriteriaCallback): Don't adopt at this level.
2437         (attributedStringForElementCallback): Ditto.
2438         (setValueCallback): Use free adopt.
2439         (stringAttributeValueCallback): Don't adopt at this level.
2440         (uiElementArrayAttributeValueCallback): Ditto.
2441         (uiElementAttributeValueCallback): Ditto.
2442         (stringForTextMarkerRangeCallback): Ditto.
2443         (attributedStringForTextMarkerRangeCallback): Ditto.
2444         (attributedStringForTextMarkerRangeWithOptionsCallback): Ditto.
2445         (getARIADropEffectsCallback): Ditto.
2446         (getClassListCallback): Ditto.
2447         (getRoleCallback): Ditto.
2448         (getSubroleCallback): Ditto.
2449         (getRoleDescriptionCallback): Ditto.
2450         (getComputedRoleStringCallback): Ditto.
2451         (getTitleCallback): Ditto.
2452         (getDescriptionCallback): Ditto.
2453         (getStringValueCallback): Ditto.
2454         (getLanguageCallback): Ditto.
2455         (getHelpTextCallback): Ditto.
2456         (getOrientationCallback): Ditto.
2457         (getPathDescriptionCallback): Ditto.
2458         (getSelectedTextRangeCallback): Ditto.
2459         (speakAsCallback): Ditto.
2460         (getValueDescriptionCallback): Ditto.
2461         (getAccessibilityValueCallback): Ditto.
2462         (getDocumentEncodingCallback): Ditto.
2463         (getDocumentURICallback): Ditto.
2464         (getURLCallback): Ditto.
2465         (characterAtOffsetCallback): Ditto.
2466         (wordAtOffsetCallback): Ditto.
2467         (lineAtOffsetCallback): Ditto.
2468         (sentenceAtOffsetCallback): Ditto.
2469         (stringForSelectionCallback): Ditto.
2470         (getIdentifierCallback): Ditto.
2471         (getTraitsCallback): Ditto.
2472         (supportedActionsCallback): Ditto.
2473         (mathPostscriptsDescriptionCallback): Ditto.
2474         (mathPrescriptsDescriptionCallback): Ditto.
2475         (AccessibilityUIElement::rangeForLine): Updated to return JSRetainPtr.
2476         (AccessibilityUIElement::rangeForPosition): Ditto.
2477         (AccessibilityUIElement::speakAs): Ditto.
2478         (AccessibilityUIElement::pathDescription const): Ditto.
2479         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
2480         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
2481         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
2482
2483         * DumpRenderTree/AccessibilityUIElement.h: Use JSRetainPtr instead of
2484         raw pointers for the results of the functions that create strings.
2485         The old way was difficult to get right; the functions didn't even follow
2486         the create/copy naming rule.
2487
2488         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
2489         (_platformTypeConstructor): Use the adopt function instead of the
2490         JSRetainPtr adopt constructor. Also nullptr instead of 0.
2491
2492         * DumpRenderTree/GCController.cpp:
2493         (GCController::makeWindowObject): Use adopt function instead of constructor.
2494
2495         * DumpRenderTree/TestRunner.cpp:
2496         (pathToLocalResourceCallback): Use adopt function instead of constructor.
2497         (addDisallowedURLCallback): Ditto.
2498         (addURLToRedirectCallback): Ditto.
2499         (clearApplicationCacheForOriginCallback): Ditto.
2500         (applicationCacheDiskUsageForOriginCallback): Ditto.
2501         (decodeHostNameCallback): Don't adopt at this level.
2502         (encodeHostNameCallback): Ditto.
2503         (execCommandCallback): Use adopt instead of JSRetainPtr::adopt.
2504         (findStringCallback): Use adopt function instead of constructor.
2505         (isCommandEnabledCallback): Ditto.
2506         (overridePreferenceCallback): Ditto.
2507         (queueLoadCallback): Ditto.
2508         (queueLoadHTMLStringCallback): Ditto.
2509         (queueLoadingScriptCallback): Ditto.
2510         (queueNonLoadingScriptCallback): Ditto.
2511         (setAuthenticationPasswordCallback): Ditto.
2512         (setAuthenticationUsernameCallback): Ditto.
2513         (setDomainRelaxationForbiddenForURLSchemeCallback): Ditto.
2514         (setMockGeolocationPositionUnavailableErrorCallback): Ditto.
2515         (setPOSIXLocaleCallback): Ditto.
2516         (setPersistentUserStyleSheetLocationCallback): Ditto.
2517         (setUserStyleSheetLocationCallback): Ditto.
2518         (setValueForUserCallback): Ditto.
2519         (setWillSendRequestClearHeaderCallback): Ditto.
2520         (setPageVisibilityCallback): Ditto.
2521         (evaluateInWebInspectorCallback): Ditto.
2522         (evaluateScriptInIsolatedWorldCallback): Ditto.
2523         (evaluateScriptInIsolatedWorldAndReturnValueCallback): Ditto.
2524         (addOriginAccessWhitelistEntryCallback): Ditto.
2525         (removeOriginAccessWhitelistEntryCallback): Ditto.
2526         (setScrollbarPolicyCallback): Ditto.
2527         (addUserScriptCallback): Ditto.
2528         (addUserStyleSheetCallback): Ditto.
2529         (apiTestNewWindowDataLoadBaseURLCallback): Ditto.
2530         (authenticateSessionCallback): Ditto.
2531         (getTitleTextDirectionCallback): Ditto.
2532         (getInspectorTestStubURLCallback): Ditto.
2533         (simulateLegacyWebNotificationClickCallback): Ditto.
2534         (setTextDirectionCallback): Ditto.
2535         (grantWebNotificationPermissionCallback): Ditto.
2536         (denyWebNotificationPermissionCallback): Ditto.
2537         (accummulateLogsForChannel): Ditto.
2538         (runUIScriptCallback): Ditto.
2539         (TestRunner::makeWindowObject): Ditto.
2540         (TestRunner::uiScriptDidComplete): Ditto.
2541         (TestRunner::setOpenPanelFiles): Ditto.
2542
2543         * DumpRenderTree/TestRunner.h: Use JSRetainPtr instead of
2544         raw pointers for the results of the functions that create strings.
2545
2546         * DumpRenderTree/ios/AccessibilityControllerIOS.mm:
2547         (AccessibilityController::platformName const): Use the adopt
2548         function instead of the adopt constructor.
2549
2550         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
2551         (createEmptyJSString): Added. This helper function makes reduces the
2552         repetitive code to create empty strings.
2553         (concatenateAttributeAndValue): Changed to return a JSRetainPtr.
2554         (AccessibilityUIElement::identifier): Ditto.
2555         (AccessibilityUIElement::traits): Ditto.
2556         (AccessibilityUIElement::url): Ditto.
2557         (AccessibilityUIElement::speakAs): Ditto.
2558         (AccessibilityUIElement::stringForSelection): Ditto.
2559         (AccessibilityUIElement::stringForRange): Ditto.
2560         (AccessibilityUIElement::attributedStringForRange): Ditto.
2561         (AccessibilityUIElement::attributedStringForElement): Ditto.
2562         (AccessibilityUIElement::pathDescription const): Ditto.
2563         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
2564         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
2565         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
2566         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
2567         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2568         (AccessibilityUIElement::attributesOfChildren): Ditto.
2569         (AccessibilityUIElement::allAttributes): Ditto.
2570         (AccessibilityUIElement::stringAttributeValue): Ditto.
2571         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2572         (AccessibilityUIElement::role): Ditto.
2573         (AccessibilityUIElement::subrole): Ditto.
2574         (AccessibilityUIElement::roleDescription): Ditto.
2575         (AccessibilityUIElement::computedRoleString): Ditto.
2576         (AccessibilityUIElement::title): Ditto.
2577         (AccessibilityUIElement::description): Ditto.
2578         (AccessibilityUIElement::orientation const): Ditto.
2579         (AccessibilityUIElement::stringValue): Ditto.
2580         (AccessibilityUIElement::language): Ditto.
2581         (AccessibilityUIElement::helpText const): Ditto.
2582         (AccessibilityUIElement::valueDescription): Ditto.
2583         (AccessibilityUIElement::ariaDropEffects const): Ditto.
2584         (AccessibilityUIElement::boundsForRange): Ditto.
2585         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
2586         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2587         (AccessibilityUIElement::attributesOfColumns): Ditto.
2588         (AccessibilityUIElement::attributesOfRows): Ditto.
2589         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2590         (AccessibilityUIElement::attributesOfHeader): Ditto.
2591         (AccessibilityUIElement::rowIndexRange): Ditto.
2592         (AccessibilityUIElement::columnIndexRange): Ditto.
2593         (AccessibilityUIElement::selectedTextRange): Ditto.
2594         (AccessibilityUIElement::accessibilityValue const): Ditto.
2595         (AccessibilityUIElement::documentEncoding): Ditto.
2596         (AccessibilityUIElement::documentURI): Ditto.
2597         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
2598         (AccessibilityUIElement::classList const): Ditto.
2599
2600         * DumpRenderTree/mac/AccessibilityCommonMac.h: Changed the
2601         createJSStringRef method to return a JSRetainPtr.
2602         * DumpRenderTree/mac/AccessibilityCommonMac.mm:
2603         (-[NSString createJSStringRef]): Ditto.
2604         (searchPredicateParameterizedAttributeForSearchCriteria): Use the
2605         adopt function instead of the adopt constructor.
2606         * DumpRenderTree/mac/AccessibilityControllerMac.mm:
2607         (AccessibilityController::platformName const): Ditto.
2608
2609         * DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
2610         (-[NSString createJSStringRef]): Return a JSRetainPtr.
2611         (makeValueRefForValue): Updated for the above, no adopt needed here now.
2612         (makeObjectRefForDictionary): Ditto.
2613         (-[AccessibilityNotificationHandler _notificationReceived:]): Ditto.
2614
2615         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
2616         (createEmptyJSString): Added. This helper function makes reduces the
2617         repetitive code to create empty strings.
2618         (concatenateAttributeAndValue): Changed to return a JSRetainPtr.
2619         (descriptionOfElements): Ditto.
2620         (selectTextParameterizedAttributeForCriteria): Ditto.
2621         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
2622         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2623         (AccessibilityUIElement::attributesOfChildren): Ditto.
2624         (AccessibilityUIElement::allAttributes): Ditto.
2625         (AccessibilityUIElement::stringAttributeValue): Ditto.
2626         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2627         (AccessibilityUIElement::role): Ditto.
2628         (AccessibilityUIElement::subrole): Ditto.
2629         (AccessibilityUIElement::roleDescription): Ditto.
2630         (AccessibilityUIElement::computedRoleString): Ditto.
2631         (AccessibilityUIElement::title): Ditto.
2632         (AccessibilityUIElement::description): Ditto.
2633         (AccessibilityUIElement::orientation const): Ditto.
2634         (AccessibilityUIElement::stringValue): Ditto.
2635         (AccessibilityUIElement::language): Ditto.
2636         (AccessibilityUIElement::helpText const): Ditto.
2637         (AccessibilityUIElement::valueDescription): Ditto.
2638         (AccessibilityUIElement::speakAs): Ditto.
2639         (AccessibilityUIElement::classList const): Ditto.
2640         (AccessibilityUIElement::ariaDropEffects const): Ditto.
2641         (AccessibilityUIElement::rangeForLine): Ditto.
2642         (AccessibilityUIElement::rangeForPosition): Ditto.
2643         (AccessibilityUIElement::boundsForRange): Ditto.
2644         (AccessibilityUIElement::stringForRange): Ditto.
2645         (AccessibilityUIElement::attributedStringForRange): Ditto.
2646         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
2647         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
2648         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2649         (AccessibilityUIElement::attributesOfColumns): Ditto.
2650         (AccessibilityUIElement::attributesOfRows): Ditto.
2651         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2652         (AccessibilityUIElement::attributesOfHeader): Ditto.
2653         (AccessibilityUIElement::rowIndexRange): Ditto.
2654         (AccessibilityUIElement::columnIndexRange): Ditto.
2655         (AccessibilityUIElement::pathDescription const): Ditto.
2656         (AccessibilityUIElement::selectedTextRange): Ditto.
2657         (AccessibilityUIElement::accessibilityValue const): Ditto.
2658         (AccessibilityUIElement::documentEncoding): Ditto.
2659         (AccessibilityUIElement::documentURI): Ditto.
2660         (AccessibilityUIElement::url): Ditto.
2661         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
2662         (createJSStringRef): Ditto.
2663         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
2664         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
2665         (AccessibilityUIElement::supportedActions): Ditto.
2666         (AccessibilityUIElement::mathPostscriptsDescription const): Ditto.
2667         (AccessibilityUIElement::mathPrescriptsDescription const): Ditto.
2668
2669         * DumpRenderTree/mac/FrameLoadDelegate.mm:
2670         (-[FrameLoadDelegate didClearWindowObjectForFrame:inIsolatedWorld:]):
2671         Use the adopt function instead of the adopt constructor.
2672         * DumpRenderTree/mac/TestRunnerMac.mm:
2673         (originsArrayToJS): Ditto.
2674         (TestRunner::copyDecodedHostName): Return a JSRetainPtr.
2675         (TestRunner::copyEncodedHostName): Ditto.
2676         (TestRunner::pathToLocalResource): Ditto.
2677         (TestRunner::queueLoad): Use adopt function instead of constructor.
2678         (TestRunner::findString): Ditto.
2679         (TestRunner::inspectorTestStubURL): Return a JSRetainPtr.
2680
2681         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
2682         (AccessibilityController::winNotificationReceived): Use adopt function
2683         instead of adopt constructor.
2684         (AccessibilityController::platformName const): Ditto.
2685
2686         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
2687         (createEmptyJSString): Added. This helper function makes reduces the
2688         repetitive code to create empty strings.
2689         (AccessibilityUIElement::allAttributes): Changed to return a JSRetainPtr.
2690         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
2691         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2692         (AccessibilityUIElement::attributesOfChildren): Ditto.
2693         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2694         (AccessibilityUIElement::role): Ditto.
2695         (AccessibilityUIElement::subrole): Ditto.
2696         (AccessibilityUIElement::roleDescription): Ditto.
2697         (AccessibilityUIElement::computedRoleString): Ditto.
2698         (AccessibilityUIElement::title): Ditto.
2699         (AccessibilityUIElement::description): Ditto.
2700         (AccessibilityUIElement::stringValue): Ditto.
2701         (AccessibilityUIElement::language): Ditto.
2702         (AccessibilityUIElement::helpText const): Ditto.
2703         (AccessibilityUIElement::valueDescription): Ditto.
2704         (AccessibilityUIElement::ariaDropEffects const): Ditto.
2705         (AccessibilityUIElement::orientation const): Ditto.
2706         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
2707         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2708         (AccessibilityUIElement::attributesOfColumns): Ditto.
2709         (AccessibilityUIElement::attributesOfRows): Ditto.
2710         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2711         (AccessibilityUIElement::attributesOfHeader): Ditto.
2712         (AccessibilityUIElement::rowIndexRange): Ditto.
2713         (AccessibilityUIElement::columnIndexRange): Ditto.
2714         (AccessibilityUIElement::boundsForRange): Ditto.
2715         (AccessibilityUIElement::stringForRange): Ditto.
2716         (AccessibilityUIElement::attributedStringForRange): Ditto.
2717         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
2718         (AccessibilityUIElement::selectedTextRange): Ditto.
2719         (AccessibilityUIElement::stringAttributeValue): Ditto.
2720         (AccessibilityUIElement::accessibilityValue const): Ditto.
2721         (AccessibilityUIElement::documentEncoding): Ditto.
2722         (AccessibilityUIElement::documentURI): Ditto.
2723         (AccessibilityUIElement::url): Ditto.
2724         (AccessibilityUIElement::classList const): Ditto.
2725
2726         * DumpRenderTree/win/TestRunnerWin.cpp:
2727         (TestRunner::copyDecodedHostName): Changed to return a JSRetainPtr.
2728         (TestRunner::copyEncodedHostName): Ditto.
2729         (TestRunner::pathToLocalResource): Ditto.
2730         (TestRunner::queueLoad): Ditto.
2731         (TestRunner::findString): Ditto.
2732         (TestRunner::inspectorTestStubURL): Ditto.
2733
2734         * TestRunnerShared/Bindings/JSWrapper.h:
2735         (WTR::setProperty): Use adopt function instead of constructor.
2736         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
2737         (UIScriptContext::UIScriptContext): Ditto.
2738         (UIScriptContext::runUIScript): Ditto.
2739         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2740         (WTR::toDeviceOrientation): Ditto.
2741
2742         * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
2743         (nsTextCheckingType): Changed this function to not take an rvalue
2744         reference to a JSRetainPtr since it doesn't take ownership.
2745         (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Updated
2746         for the above change.
2747
2748         * TestWebKitAPI/JavaScriptTest.cpp:
2749         (TestWebKitAPI::javaScriptCallback): Use adopt function instead of
2750         adopt member function.
2751
2752         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp: Removed unneeded include.
2753         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm: Ditto.
2754         * TestWebKitAPI/Tests/mac/DOMNodeFromJSObject.mm: Use adopt function instead of
2755         adopt constructor.
2756         * TestWebKitAPI/Tests/mac/JSWrapperForNodeInWebFrame.mm: Ditto.
2757
2758         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
2759         Removed unneeded includes.
2760         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp: Ditto.
2761         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp: Ditto.
2762         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp: Ditto.
2763
2764         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
2765         (_platformTypeConstructor): Use the adopt function instead of the
2766         JSRetainPtr adopt constructor. Also nullptr instead of 0.
2767
2768         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
2769         (WTR::arrayLength): Use adopt function instead of constructor.
2770         (WTR::parseModifierArray): Ditto.
2771         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2772         (WTR::propertyValue): Ditto.
2773         (WTR::dumpPath): Ditto.
2774         (WTR::toJS): Ditto.
2775         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2776         (WTR::TestRunner::findString): Ditto.
2777         (WTR::TestRunner::statisticsDidRunTelemetryCallback): Ditto.
2778         (WTR::TestRunner::callDidReceiveAllStorageAccessEntriesCallback): Ditto.
2779         (WTR::TestRunner::setOpenPanelFiles): Ditto.
2780         * WebKitTestRunner/InjectedBundle/ios/AccessibilityControllerIOS.mm:
2781         (WTR::AccessibilityController::platformName): Ditto.
2782
2783         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2784         (-[NSString createJSStringRef]): Return a JSRetainPtr.
2785         This fixes storage leaks in many functions below, which were using
2786         the create function and putting the value right into a JSRetainPtr
2787         without adoption.
2788         (WTR::createEmptyJSString): Added. This helper function reduces the
2789         repetitive code to create empty strings.
2790         (WTR::concatenateAttributeAndValue): Return a JSRetainPtr.
2791         (WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
2792         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2793         (WTR::AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2794         (WTR::AccessibilityUIElement::attributesOfChildren): Ditto.
2795         (WTR::AccessibilityUIElement::allAttributes): Ditto.
2796         (WTR::AccessibilityUIElement::stringAttributeValue): Ditto.
2797         (WTR::AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2798         (WTR::AccessibilityUIElement::role): Ditto.
2799         (WTR::AccessibilityUIElement::subrole): Ditto.
2800         (WTR::AccessibilityUIElement::roleDescription): Ditto.
2801         (WTR::AccessibilityUIElement::computedRoleString): Ditto.
2802         (WTR::AccessibilityUIElement::title): Ditto.
2803         (WTR::AccessibilityUIElement::orientation const): Ditto.
2804         (WTR::AccessibilityUIElement::language): Ditto.
2805         (WTR::AccessibilityUIElement::valueDescription): Ditto.
2806         (WTR::AccessibilityUIElement::ariaDropEffects const): Ditto.
2807         (WTR::AccessibilityUIElement::boundsForRange): Ditto.
2808         (WTR::AccessibilityUIElement::stringForRange): Removed unneeded null check.
2809         (WTR::AccessibilityUIElement::attributedStringForRange): Ditto.
2810         (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
2811         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2812         (WTR::AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2813         (WTR::AccessibilityUIElement::attributesOfColumns): Ditto.
2814         (WTR::AccessibilityUIElement::attributesOfRows): Ditto.
2815         (WTR::AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2816         (WTR::AccessibilityUIElement::attributesOfHeader): Ditto.
2817         (WTR::AccessibilityUIElement::selectedTextRange): Ditto.
2818         (WTR::AccessibilityUIElement::accessibilityValue const): Ditto.
2819         (WTR::AccessibilityUIElement::documentEncoding): Ditto.
2820         (WTR::AccessibilityUIElement::documentURI): Ditto.
2821         (WTR::AccessibilityUIElement::stringForSelection): Removed unneeded
2822         null check.
2823         (WTR::AccessibilityUIElement::stringForTextMarkerRange):
2824         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2825
2826         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.h:
2827         Use JSRetainPtr for the return value of createJSStringRef.
2828         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
2829         (-[NSString createJSStringRef]): Ditto.
2830         (WTR::searchPredicateParameterizedAttributeForSearchCriteria): Use the
2831         adopt function instead of the adopt constructor.
2832         * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
2833         (WTR::AccessibilityController::platformName): Ditto
2834
2835         * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
2836         (-[NSString createJSStringRef]): Return a JSRetainPtr.
2837         (makeValueRefForValue): Updated for above by removing adopt.
2838         (makeObjectRefForDictionary): Ditto.
2839         (-[AccessibilityNotificationHandler _notificationReceived:]): Ditto.
2840
2841         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2842         (WTR::createEmptyJSString): Added. This helper function makes reduces the
2843         repetitive code to create empty strings.
2844         (WTR::concatenateAttributeAndValue): Return a JSRetainPtr.
2845         (WTR::descriptionOfElements): Ditto.
2846         (WTR::selectTextParameterizedAttributeForCriteria): Ditto.
2847         (WTR::AccessibilityUIElement::accessibilityValue const): Use createEmptyJSString,
2848         fixing a storage leak due to missing adoption.
2849         (WTR::AccessibilityUIElement::documentEncoding): Ditto.
2850         (WTR::AccessibilityUIElement::documentURI): Ditto.
2851         (WTR::createJSStringRef): Return a JSRetainPtr.
2852
2853         * WebKitTestRunner/StringFunctions.h:
2854         (WTR::toWK): Take a const& to eliminate a little bit of reference count churn.
2855         (WTR::toJS): Use the adopt function instead of the constructor.
2856
2857 2018-09-14  Dean Jackson  <dino@grorg.org>
2858
2859         Add Justin Michaud.
2860
2861         * Scripts/webkitpy/common/config/contributors.json:
2862
2863 2018-09-14  Ryan Haddad  <ryanhaddad@apple.com>
2864
2865         bots should pass --clobber-old-results to run-webkit-tests
2866         https://bugs.webkit.org/show_bug.cgi?id=189623
2867
2868         Reviewed by Aakash Jain.
2869
2870         In order to ensure that bots to not produce confusing results due to transient execptions,
2871         or run out of space if they continually hit an exception, old layout test results should be clobbered.
2872
2873         * BuildSlaveSupport/build.webkit.org-config/steps.py:
2874         (RunWebKitTests):
2875
2876 2018-09-13  Ryan Haddad  <ryanhaddad@apple.com>
2877
2878         Unreviewed, rolling out r235954.
2879
2880         Breaks the watchOS build.
2881
2882         Reverted changeset:
2883
2884         "Move IndexedDB to Network Process"
2885         https://bugs.webkit.org/show_bug.cgi?id=189415
2886         https://trac.webkit.org/changeset/235954
2887
2888 2018-09-13  Daniel Bates  <dabates@apple.com>
2889
2890         Add Copy WebKit Permalink plugin for Sublime Text
2891         https://bugs.webkit.org/show_bug.cgi?id=189589
2892
2893         Rubber-stamped by Joseph Pecoraro.
2894
2895         Port the Copy WebKit Permalink Automator service to a Sublime Text plugin. Once installed you can
2896         use the plugin to copy to the Clipboard a trac.webkit.org hyperlink to the selected line in the
2897         active document with or without blame annotations.
2898
2899         Once installed, you can Control-click (on Mac) or right-click (on Windows and Linux) on a line and
2900         choose Copy WebKit Permalink or Copy WebKit Permalink to Blame from the context menu to copy to the
2901         Clipboard a permanent hyperlink to the selected line without or with blame annotations, respectively.
2902         On Mac you can also invoke the same functionality using the keyboard shortcuts Command + Shift + Control + C
2903         and Command + Shift + Control + Option + C, respectively.
2904
2905         * CopyPermalink/Sublime Text/CopyWebKitPermalink/Context.sublime-menu: Added.
2906         * CopyPermalink/Sublime Text/CopyWebKitPermalink/CopyWebKitPermalink.py: Added.
2907         * CopyPermalink/Sublime Text/CopyWebKitPermalink/Default (OSX).sublime-keymap: Added.
2908         * CopyPermalink/Sublime Text/INSTALL: Added.
2909         * CopyPermalink/Xcode/Copy WebKit Permalink.workflow/Contents/Info.plist: Renamed from Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/Info.plist.
2910         * CopyPermalink/Xcode/Copy WebKit Permalink.workflow/Contents/document.wflow: Renamed from Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow.
2911         * CopyPermalink/Xcode/INSTALL: Renamed from Tools/CopyPermalink/README.
2912
2913 2018-09-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2914
2915         Unreviewed. Fix WebDriver tests after r235225.
2916
2917         Use wpt serve command to run the http server.
2918
2919         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
2920         (WebDriverW3CWebServer.__init__):
2921         (WebDriverW3CWebServer.start):
2922         (WebDriverW3CWebServer.stop):
2923
2924 2018-09-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2925
2926         [GTK][WPE] Allow to run script dialogs asynchronously in the UI process
2927         https://bugs.webkit.org/show_bug.cgi?id=189544
2928
2929         Reviewed by Michael Catanzaro.
2930
2931         Add test cases for the new API.
2932
2933         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
2934         (testWebViewJavaScriptDialogs):
2935
2936 2018-09-12  Fujii Hironori  <Hironori.Fujii@sony.com>
2937
2938         [Win][Clang][ImageDiff] Fix compilation error and warning of PlatformImageCairo.cpp
2939         https://bugs.webkit.org/show_bug.cgi?id=189496
2940         <rdar://problem/44370981>
2941
2942         Unreviewed warning fix.
2943
2944         r235929 has introduced a new compilation warning:
2945         > Tools/ImageDiff/cairo/PlatformImageCairo.cpp:34:70: warning: unused parameter ‘imageSize’ [-Wunused-parameter]
2946
2947         * ImageDiff/cairo/PlatformImageCairo.cpp:
2948         (ImageDiff::PlatformImage::createFromStdin): Removed the variable name.
2949
2950 2018-09-12  Dan Bernstein  <mitz@apple.com>
2951
2952         [Cocoa] Complete support for Paste as Quotation
2953         https://bugs.webkit.org/show_bug.cgi?id=189504
2954
2955         Reviewed by Wenson Hsieh.
2956
2957         * MiniBrowser/mac/MainMenu.xib: Added a Paste as Quotation command in the Edit menu.
2958
2959 2018-09-12  Sihui Liu  <sihui_liu@apple.com>
2960
2961         Move IndexedDB to Network Process
2962         https://bugs.webkit.org/show_bug.cgi?id=189415
2963
2964         Reviewed by Geoffrey Garen.
2965
2966         * TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
2967         (TEST):
2968         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
2969         (TEST):
2970         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
2971         (TEST):
2972         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
2973         (TEST):
2974         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
2975         (TEST):
2976
2977 2018-09-12  Chris Dumez  <cdumez@apple.com>
2978
2979         PSON: No process swap on back navigation after URL bar navigation
2980         https://bugs.webkit.org/show_bug.cgi?id=189557
2981         <rdar://problem/44353108>
2982
2983         Reviewed by Alex Christensen.
2984
2985         Add API test coverage.
2986
2987         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2988
2989 2018-09-11  Dean Jackson  <dino@apple.com>
2990
2991         Header parsing for experimental and internal debug features
2992         https://bugs.webkit.org/show_bug.cgi?id=189486
2993         <rdar://problem/44320618>
2994
2995         Reviewed by Tim Horton.
2996
2997         Keep track of experimental and internal debug features in TestOptions, and
2998         allow webkit-test-runner headers to toggle them by name.
2999
3000         * DumpRenderTree/TestOptions.cpp:
3001         (TestOptions::TestOptions):
3002         * WebKitTestRunner/TestController.cpp:
3003         (WTR::TestController::resetPreferencesToConsistentValues):
3004         (WTR::updateTestOptionsFromTestHeader):
3005         * WebKitTestRunner/TestOptions.h:
3006         (WTR::TestOptions::hasSameInitializationOptions const):
3007
3008 2018-09-12  Fujii Hironori  <Hironori.Fujii@sony.com>
3009
3010         [Win][Clang][DumpRenderTree] 0 and nullptr can't be implicitly converted to AccessibilityUIElement
3011         https://bugs.webkit.org/show_bug.cgi?id=189492
3012
3013         Reviewed by Alex Christensen.
3014
3015         0 and nullptr can't be implicitly converted to
3016         AccessibilityUIElement because only Windows port typedefs
3017         PlatformUIElement as COMPtr<IAccessible> not a pointer.
3018
3019         Replaced "return 0" and "return nullptr" with "return { nullptr }".
3020
3021         * DumpRenderTree/AccessibilityUIElement.cpp:
3022         (AccessibilityUIElement::horizontalScrollbar const):
3023         (AccessibilityUIElement::verticalScrollbar const):
3024         (AccessibilityUIElement::uiElementAttributeValue const):
3025         (AccessibilityUIElement::accessibilityElementForTextMarker):
3026         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
3027         (AccessibilityController::elementAtPoint):
3028         (AccessibilityController::accessibleElementById):
3029         (AccessibilityController::focusedElement):
3030         (AccessibilityController::rootElement):
3031         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
3032         (AccessibilityUIElement::elementAtPoint):
3033         (AccessibilityUIElement::linkedUIElementAtIndex):
3034         (AccessibilityUIElement::getChildAtIndex):
3035         (AccessibilityUIElement::titleUIElement):
3036         (AccessibilityUIElement::parentElement):
3037         (AccessibilityUIElement::uiElementForSearchPredicate):
3038         (AccessibilityUIElement::cellForColumnAndRow):
3039         (AccessibilityUIElement::disclosedRowAtIndex):
3040         (AccessibilityUIElement::ariaOwnsElementAtIndex):
3041         (AccessibilityUIElement::ariaFlowToElementAtIndex):
3042         (AccessibilityUIElement::ariaControlsElementAtIndex):
3043         (AccessibilityUIElement::selectedRowAtIndex):
3044         (AccessibilityUIElement::rowAtIndex):
3045         (AccessibilityUIElement::disclosedByRow):
3046         (AccessibilityUIElement::selectedChildAtIndex const):
3047
3048 2018-09-11  Wenson Hsieh  <wenson_hsieh@apple.com>
3049
3050         FontManagerTests.ChangeFontColorWithColorPanel fails on macOS Sierra
3051         https://bugs.webkit.org/show_bug.cgi?id=189382
3052
3053         Reviewed by Ryosuke Niwa.
3054
3055         Fix the test by specifying colors in RGB colorspace.
3056
3057         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
3058         (TestWebKitAPI::TEST):
3059
3060 2018-09-11  Fujii Hironori  <Hironori.Fujii@sony.com>
3061
3062         [Win][Clang][ImageDiff] Fix compilation error and warning of PlatformImageCairo.cpp
3063         https://bugs.webkit.org/show_bug.cgi?id=189496
3064
3065         Reviewed by Alex Christensen.
3066
3067         * ImageDiff/cairo/PlatformImageCairo.cpp:
3068         (ImageDiff::PlatformImage::createFromStdin): Removed unnecessary ReadContext struct.
3069         (ImageDiff::PlatformImage::writeAsPNGToStdout): Use '%lu' format type specifier for unsigned long.
3070
3071 2018-09-07  Dean Jackson  <dino@apple.com>
3072
3073         Add and expose Internal features from WebKit
3074         https://bugs.webkit.org/show_bug.cgi?id=189442
3075         <rdar://problem/44243404>
3076
3077         Reviewed by Simon Fraser.
3078
3079         Update MiniBrowser to expose an Internal feature menu.
3080
3081         * MiniBrowser/mac/AppDelegate.m:
3082         (defaultConfiguration):
3083         * MiniBrowser/mac/SettingsController.m:
3084         (-[SettingsController _populateMenu]):
3085         (-[SettingsController validateMenuItem:]):
3086         (-[SettingsController toggleExperimentalFeature:]):
3087         (-[SettingsController toggleInternalDebugFeature:]):
3088
3089 2018-09-11  Wenson Hsieh  <wenson_hsieh@apple.com>
3090
3091         [macOS] [WK2] Support changing foreground colors via color panel
3092         https://bugs.webkit.org/show_bug.cgi?id=189382
3093         <rdar://problem/44227311>
3094
3095         Reviewed by Ryosuke Niwa.
3096
3097         Add an API test that uses NSColorPanel to change the color of selected text, and also apply typing styles when
3098         the selection is collapsed. The test also exercises switching between opaque colors (alpha = 1) and transparent
3099         colors, as well as making different parts of a word different colors.
3100
3101         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
3102         (-[TestWKWebView collapseToEnd]):
3103         (webViewForFontManagerTesting):
3104         (TestWebKitAPI::TEST):
3105         * TestWebKitAPI/cocoa/TestWKWebView.h:
3106
3107 == Rolled over to ChangeLog-2018-09-11 ==