[WebAuthN] Import a JS CBOR coder
[WebKit-https.git] / Tools / ChangeLog
1 2018-10-01  Jiewen Tan  <jiewen_tan@apple.com>
2
3         [WebAuthN] Import a JS CBOR coder
4         https://bugs.webkit.org/show_bug.cgi?id=189877
5         <rdar://problem/44701124>
6
7         Reviewed by Chris Dumez.
8
9         Add logic to only process privateKeyBase64, userCertificateBase64 and intermediateCACertificateBase64
10         only if acceptAttestation is true.
11
12         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
13         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
14
15 2018-10-01  Chris Dumez  <cdumez@apple.com>
16
17         Regression(r236512): http/tests/navigation/keyboard-events-during-provisional-navigation.html is flaky
18         https://bugs.webkit.org/show_bug.cgi?id=190052
19
20         Reviewed by Ryosuke Niwa.
21
22         The test relies on EventSender to send events to the page synchronously to the page and then uses console.log
23         to log those events. It also uses console.log() before sending those events to indicate what the test is about
24         to do. Note that console.log() normally causes the WebKitTestRunner to send an asynchronous IPC to the UIProcess
25         so that it can log the message.
26         The issue is that EventSender uses IPC::SendOption::UseFullySynchronousModeForTesting when sending the
27         sync IPC to the UIProcess. This option causes follow-up *asynchronous* IPC sent from the synchronous IPC reply
28         handler to be transformed into synchronous IPC.
29         As a result, some of the console.log IPC ended up being asynchronous and some other ended up being synchronous.
30         Because synchronous and asynchronous IPC is not necessarily processed in-order by the UIProcess, the logged
31         messages may end up being out of order, leading to flakiness.
32
33         To address the issue, we now make sure that InjectedBundle::outputText() uses a new IPC::SendOption indicated
34         that the IPC should always be sent asynchronously, even if the connection is in fully synchronous mode. As a
35         result, all text outputing IPC to the UIProcess will be asynchronous, and thus in order.
36
37         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
38         (WTR::InjectedBundle::outputText):
39
40 2018-10-01  Daniel Bates  <dabates@apple.com>
41
42         [iOS] Special keys are misidentified in DOM keyboard events
43         https://bugs.webkit.org/show_bug.cgi?id=189974
44
45         Reviewed by Wenson Hsieh.
46
47         Add support for testing keys Forward Delete and Num Lock / Clear.
48
49         * WebKitTestRunner/ios/HIDEventGenerator.mm:
50         (hidUsageCodeForCharacter):
51
52 2018-10-01  Alex Christensen  <achristensen@webkit.org>
53
54         URL should not use TextEncoding internally
55         https://bugs.webkit.org/show_bug.cgi?id=190111
56
57         Reviewed by Andy Estes.
58
59         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
60         (TestWebKitAPI::testUserPass):
61         (TestWebKitAPI::TEST_F):
62
63 2018-10-01  Daniel Bates  <dabates@apple.com>
64
65         LLDB tests may use wrong configuration of lldbWebKitTester
66         https://bugs.webkit.org/show_bug.cgi?id=189011
67
68         Reviewed by Dean Jackson.
69
70         Fixes an issue where the LLDB unit tests may use the wrong configuration of lldbWebKitTester.
71         Additionally, add back the unit tests originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
72
73         Currently the unit tests pick the LLDBWebKitTester binary based on the configuration set by
74         script set-webkit-configuration. This may not be the same configuration specified to test-webkitpy.
75         So, the unit tests may use the wrong binary. Instead we have test-webkitpy store the path
76         to the correct lldbWebKitTester binary that the unit tests should use in an environment variable,
77         called LLDB_WEBKIT_TESTER_EXECUTABLE. (We use an environment variable because the test driver,
78         test-webkitpy, and the unit tests cannot talk to each other directly due the limitations of
79         the Python unittest module, the Python multiprocessing module, and the general principle of unit
80         tests - to test code in isolation). The unit tests make use of the value of this environment
81         variable to launch lldbWebKitTester binary.
82
83         * Scripts/build-lldbwebkittester: We only support building lldbWebKitTester on Mac for now. Error
84         out if this script is invoked for a non-Mac platform.
85         * Scripts/webkitpy/test/main.py:
86         (Tester._run_tests): Build lldbWebKitTester and store the path to it in the environment variable
87         LLDB_WEBKIT_TESTER_EXECUTABLE.
88         (_build_lldb_webkit_tester): Deleted.
89         * lldb/dump_class_layout_unittest.py:
90         (TestDumpClassLayout.shouldSkip): Use SystemHost() here and remove the _host global variable as
91         this is the only call site that needs the Host object now.
92         (TestDumpClassLayout.setUpClass): Take the path to the lldbWebKitTester binary from the value of
93         the environment variable LLDB_WEBKIT_TESTER_EXECUTABLE.
94         * lldb/lldbWebKitTester/main.cpp:
95         (testSummaryProviders): Add back unit test support infrastructure originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
96         * lldb/lldb_webkit_unittest.py:
97         (LLDBDebugSession.setup): Take the path to the lldbWebKitTester binary from the value of the environment
98         variable LLDB_WEBKIT_TESTER_EXECUTABLE.
99         (TestSummaryProviders):
100         (TestSummaryProviders.shouldSkip): Skip the tests on non-Mac platforms.
101         (TestSummaryProviders.serial_test_WTFHashSet_tablesize_and_size):
102         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_empty):
103         (TestSummaryProviders.serial_test_WTFOptionSet_SummaryProvider_simple):
104         (TestSummaryProviders.serial_test_WTFOptionSetProvider_empty):
105         (TestSummaryProviders.serial_test_WTFOptionSetProvider_simple):
106         Add back the unit tests originally added in r235376 (https://bugs.webkit.org/show_bug.cgi?id=188936).
107
108 2018-10-01  Olivier Blin  <olivier.blin@softathome.com>
109
110         [WPE] Update install-dependencies
111         https://bugs.webkit.org/show_bug.cgi?id=190127
112
113         Reviewed by Michael Catanzaro.
114
115         * wpe/install-dependencies:
116         libxrandr-dev is needed for gstreamer-vaapi in jhbuild
117         It is used by gstvaapidisplay_x11.c.
118         Add it only for Apt, already ok for Pacman and DNF.
119
120         Install libevent-dev for WebRTC (like GTK)
121
122         Install libasound2-dev for WebRTC.
123         Add it only for Apt, already ok for Pacam and DNF.
124
125         Install libgbm-dev for HeadlessViewBackend, which uses gbm.h
126
127 2018-10-01  Thibault Saunier  <tsaunier@igalia.com>
128
129         [Flatpak] Add libunwind in the sandbox
130         https://bugs.webkit.org/show_bug.cgi?id=190123
131
132         Allowing us to get proper traces in GStreamer trace grabing
133         debug functions.
134
135         Reviewed by Philippe Normand.
136
137         * flatpak/org.webkit.WebKit.yaml:
138
139 2018-09-29  Commit Queue  <commit-queue@webkit.org>
140
141         Unreviewed, rolling out r236631.
142         https://bugs.webkit.org/show_bug.cgi?id=190112
143
144         Caused various eventSender tests, including fast/css/pseudo-
145         active-style-sharing*, to fail (Requested by smfr on #webkit).
146
147         Reverted changeset:
148
149         "Regression(r236512): http/tests/navigation/keyboard-events-
150         during-provisional-navigation.html is flaky"
151         https://bugs.webkit.org/show_bug.cgi?id=190052
152         https://trac.webkit.org/changeset/236631
153
154 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
155
156         [WHLSL] Fix build after r236635
157         https://bugs.webkit.org/show_bug.cgi?id=189210
158
159         Unreviewed.
160
161         * WebGPUShadingLanguageRI/Intrinsics.js:
162         (Intrinsics.):
163         * WebGPUShadingLanguageRI/Test.js:
164         (tests.atomicsNull):
165         (tests.numThreads):
166         (tests.textureDimensionsNull):
167
168 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
169
170         [WHLSL] Allow uniform buffers to be used in the interpreter
171         https://bugs.webkit.org/show_bug.cgi?id=189210
172
173         Reviewed by Filip Pizlo.
174
175         Every lvalue is associated with an address space, and the propagation of these address spaces
176         matches the propagation of lvalues. Luckily, there was already the infrastructure to do most
177         of this, so this patch just goes the last few yards. It also updates the standard library to
178         allow for writing into all writable address spaces for out-params.
179
180         * WebGPUShadingLanguageRI/Checker.js:
181         (Checker.prototype.visitAssignment):
182         (Checker.prototype._finishVisitingPropertyAccess):
183         * WebGPUShadingLanguageRI/Intrinsics.js:
184         (Intrinsics.):
185         (Intrinsics.checkFalse):
186         (Intrinsics):
187         * WebGPUShadingLanguageRI/StandardLibrary.js:
188         (let.standardLibrary):
189         * WebGPUShadingLanguageRI/Test.js:
190         (tests.threadArrayRefLoad):
191         (tests.threadArrayRefLoadIntLiteral):
192         (tests.deviceArrayRefLoad):
193         (tests.threadArrayRefStore):
194         (tests.deviceArrayRefStore):
195         (tests.deviceArrayRefStoreIntLiteral):
196         (tests.threadPointerLoad):
197         (tests.threadPointerStore):
198         (tests.devicePointerLoad):
199         (tests.devicePointerStore):
200         (tests.arrayLoad):
201         (tests.constantAddressSpace):
202         (tests.standardLibraryDevicePointers):
203         (tests.threadArrayLoad): Deleted.
204         (tests.threadArrayLoadIntLiteral): Deleted.
205         (tests.deviceArrayLoad): Deleted.
206         (tests.threadArrayStore): Deleted.
207         (tests.deviceArrayStore): Deleted.
208         (tests.deviceArrayStoreIntLiteral): Deleted.
209
210 2018-09-28  Wenson Hsieh  <wenson_hsieh@apple.com>
211
212         No DOM API to instantiate an attachment for an img element
213         https://bugs.webkit.org/show_bug.cgi?id=189934
214         <rdar://problem/44743222>
215
216         Reviewed by Ryosuke Niwa.
217
218         Adds 3 new API tests in WKAttachmentTests:
219
220         `AddAttachmentToConnectedImageElement` verifies that an image element that's already in the document can gain an
221         attachment element via `HTMLAttachmentElement.getAttachmentIdentifier`.
222
223         `ChangeFileWrapperForPastedImage` verifies that an image that has been pasted produces a _WKAttachment in the UI
224         process, and changing the file wrapper of that _WKAttachment changes the pasted image.
225
226         `ConnectImageWithAttachmentToDocument` verifies that script can create an image element, ensure that it has an
227         attachment, and set a file wrapper for the generated _WKAttachment. Connecting the image to the document should
228         then result in an image element with the contents of the _WKAttachment's file wrapper.
229
230         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
231         (-[TestWKWebView imageElementSize]):
232         (-[TestWKWebView waitForImageElementSizeToBecome:]):
233         (TestWebKitAPI::TEST):
234         (-[TestWKWebView waitForAttachmentElementSizeToBecome:]): Deleted.
235
236 2018-09-28  Chris Dumez  <cdumez@apple.com>
237
238         Regression(r236512): http/tests/navigation/keyboard-events-during-provisional-navigation.html is flaky
239         https://bugs.webkit.org/show_bug.cgi?id=190052
240
241         Reviewed by Ryosuke Niwa.
242
243         The test relies on EventSender to send events to the page synchronously to the page and then uses console.log
244         to log those events. It also uses console.log() before sending those events to indicate what the test is about
245         to do. Note that console.log() normally causes the WebKitTestRunner to send an asynchronous IPC to the UIProcess
246         so that it can log the message.
247         The issue is that EventSender uses IPC::SendOption::UseFullySynchronousModeForTesting when sending the
248         sync IPC to the UIProcess. This option causes follow-up *asynchronous* IPC sent from the synchronous IPC reply
249         handler to be transformed into synchronous IPC.
250         As a result, some of the console.log IPC ended up being asynchronous and some other ended up being synchronous.
251         Because synchronous and asynchronous IPC is not necessarily processed in-order by the UIProcess, the logged
252         messages may end up being out of order, leading to flakiness.
253
254         To address the issue, we now make sure that InjectedBundle::outputText() uses a new IPC::SendOption indicating
255         that the IPC should always be sent asynchronously, even if the connection is in fully synchronous mode. As a
256         result, all text outputing IPC to the UIProcess will be asynchronous, and thus in order.
257
258         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
259         (WTR::InjectedBundle::outputText):
260
261 2018-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
262
263         [WHLSL] Pointers should have automatically-generated equality checks
264         https://bugs.webkit.org/show_bug.cgi?id=189986
265
266         Reviewed by Filip Pizlo.
267
268         C allows for pointer equality, and we need it so people can do null checks.
269         This is generated the same way all our other NativeFuncs are generated - by Checker
270         creating NativeFuncs inside CallExpression.resolve().
271
272         This patch also does some general cleanup.
273
274         * WebGPUShadingLanguageRI/All.js: Everything the late checker does is no longer necessary.
275         The last thing it was doing was making sure that only primitive types are in resources, but
276         it's totally reasonable to put structs and arrays in resources, so I removed this pass. We
277         still have to add a check to make sure resources can't live within resources, but I expect
278         that will be done in the same place that semantics are checked.
279         * WebGPUShadingLanguageRI/AllocateAtEntryPoints.js:
280         (allocateAtEntryPoints.updateFunction.UpdateFunctions.prototype._addVariableDeclaration):
281         Name the global struct for debugging purposes.
282         * WebGPUShadingLanguageRI/CallExpression.js: 
283         (CallExpression.prototype._resolveByInstantiation): Cleanup
284         (CallExpression.prototype._resolveWithOperatorAnderIndexer): Ditto
285         (CallExpression.prototype._resolveWithOperatorLength): Ditto
286         (CallExpression.prototype._resolveWithReferenceComparator): Add support to automatically
287         generate pointer equality NativeFuncs.
288         * WebGPUShadingLanguageRI/EPtr.js: Implement pointer equality in the interpreter.
289         * WebGPUShadingLanguageRI/LateChecker.js: Removed.
290         * WebGPUShadingLanguageRI/LayoutBuffers.js: Renamed from Tools/WebGPUShadingLanguageRI/LateCheckAndLayoutBuffers.js.
291         (layoutBuffers):
292         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj:
293         * WebGPUShadingLanguageRI/NativeFunc.js:
294         * WebGPUShadingLanguageRI/OperatorArrayRefLength.js:
295         (OperatorArrayRefLength.prototype.instantiateImplementation):
296         (OperatorArrayRefLength):
297         * WebGPUShadingLanguageRI/Prepare.js:
298         (let.prepare):
299         * WebGPUShadingLanguageRI/SPIRV.html:
300         * WebGPUShadingLanguageRI/Test.html:
301         * WebGPUShadingLanguageRI/Test.js:
302         (tests.ternaryExpression):
303         (tests.break): Speed up testing time
304         (tests.doWhile): Ditto
305         (tests.forLoop): Ditto
306         (tests.atomics): Ditto
307         (tests.atomicsNull): Ditto
308         (tests.pointerEquality): Test pointer equality
309         (tests.standardLibraryDevicePointers):
310         (tests.devicePtrPtr): Deleted.
311         (tests.threadgroupPtrPtr): Deleted.
312         (tests.constantPtrPtr): Deleted.
313         * WebGPUShadingLanguageRI/index.html:
314
315 2018-09-28  Jiewen Tan  <jiewen_tan@apple.com>
316
317         [WebAuthN] Polish WebAuthN auto-test environment
318         https://bugs.webkit.org/show_bug.cgi?id=189283
319         <rdar://problem/44117828>
320
321         Reviewed by Chris Dumez.
322
323         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
324         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
325
326 2018-09-28  Chris Dumez  <cdumez@apple.com>
327
328         Drop support for cross-origin-window-policy header
329         https://bugs.webkit.org/show_bug.cgi?id=190081
330
331         Reviewed by Ryosuke Niwa.
332
333         190081_DropCrossOriginWindowPolicy
334
335         * DumpRenderTree/mac/DumpRenderTree.mm:
336         (enableExperimentalFeatures):
337         * DumpRenderTree/win/DumpRenderTree.cpp:
338         (enableExperimentalFeatures):
339         * WebKitTestRunner/TestController.cpp:
340         (WTR::TestController::resetPreferencesToConsistentValues):
341
342 2018-09-28  Koby Boyango  <koby.b@mce.systems>
343
344         [WTF] Add ExternalStringImpl, a StringImpl for user controlled buffers
345         https://bugs.webkit.org/show_bug.cgi?id=189991
346
347         Reviewed by Yusuke Suzuki.
348
349         * TestWebKitAPI/Tests/WTF/StringImpl.cpp:
350
351 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
352
353         Update flakiness dashboard configuration for Mojave queues
354         https://bugs.webkit.org/show_bug.cgi?id=190068
355
356         Reviewed by Alexey Proskuryakov.
357
358         * TestResultServer/static-dashboards/builders.jsonp:
359
360 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
361
362         Bring up queues for Mojave
363         https://bugs.webkit.org/show_bug.cgi?id=189935
364
365         Unreviewed infrastructure fix.
366
367         * BuildSlaveSupport/build.webkit.org-config/config.json: Remove trigger, update bot assignment.
368
369 2018-09-24  Ryan Haddad  <ryanhaddad@apple.com>
370
371         Bring up queues for Mojave
372         https://bugs.webkit.org/show_bug.cgi?id=189935
373
374         Reviewed by Alexey Proskuryakov.
375
376         * BuildSlaveSupport/build.webkit.org-config/config.json:
377         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
378         (WebKitBuildbot):
379         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
380
381 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
382
383         Increase the timeout for iOS Simulator data migration
384         https://bugs.webkit.org/show_bug.cgi?id=190059
385
386         Reviewed by Aakash Jain.
387
388         3 minutes isn't always enough time for the data migrator to complete
389         when booting up multiple iOS Simulators. Change the timeout to 10 minutes.
390
391         * Scripts/webkitpy/xcode/simulated_device.py:
392         (SimulatedDeviceManager): Create a constant for the default timeout.
393         (SimulatedDeviceManager.initialize_devices): Use new constant.
394         (SimulatedDeviceManager.swap): Ditto.
395         (SimulatedDeviceManager.wait_until_data_migration_is_done): Ditto.
396
397 2018-09-27  Alex Christensen  <achristensen@webkit.org>
398
399         URLParser should use TextEncoding through an abstract class
400         https://bugs.webkit.org/show_bug.cgi?id=190027
401
402         Reviewed by Andy Estes.
403
404         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
405         (TestWebKitAPI::checkURL):
406         (TestWebKitAPI::TEST_F):
407
408 2018-09-27  Ryan Haddad  <ryanhaddad@apple.com>
409
410         iOS Simulator bots should pass '--dedicated-simulators' to run-webkit-tests
411         https://bugs.webkit.org/show_bug.cgi?id=190042
412
413         Reviewed by Aakash Jain.
414
415         To make iOS Simulator bots resilient to issues that can arise from reusing
416         existing simulators, ensure that dedicated simulators are created for each test run.
417
418         * Scripts/webkitpy/common/config/ports.py:
419         (IOSSimulatorWK2Port.run_webkit_tests_command):
420
421 2018-09-27  Alex Christensen  <achristensen@webkit.org>
422
423         URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL
424         https://bugs.webkit.org/show_bug.cgi?id=189979
425
426         Reviewed by Youenn Fablet.
427
428         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
429         (TestWebKitAPI::originalDataAsString):
430         (TestWebKitAPI::TEST):
431
432 2018-09-27  Basuke Suzuki  <Basuke.Suzuki@sony.com>
433
434         [Win][WebKit] Implement authentication dialog on MiniBrowser.
435         https://bugs.webkit.org/show_bug.cgi?id=189846
436
437         Reviewed by Fujii Hironori.
438
439         It was implemented for WebKitLegacy, but not for WebKit.
440         Also added text field to display Realm information.
441
442         * MiniBrowser/win/Common.cpp:
443         (authDialogProc):
444         (askCredential):
445         (displayAuthDialog): Deleted.
446         * MiniBrowser/win/Common.h:
447         * MiniBrowser/win/MiniBrowserLib.rc:
448         * MiniBrowser/win/MiniBrowserLibResource.h:
449         * MiniBrowser/win/ResourceLoadDelegate.cpp:
450         (ResourceLoadDelegate::didReceiveAuthenticationChallenge):
451         * MiniBrowser/win/WebKitBrowserWindow.cpp:
452         (createString):
453         (createUTF8String):
454         (createWKString):
455         (createWKURL):
456         (WebKitBrowserWindow::WebKitBrowserWindow):
457         (WebKitBrowserWindow::didReceiveAuthenticationChallenge):
458         (toNullTerminatedUTF8): Deleted.
459         * MiniBrowser/win/WebKitBrowserWindow.h:
460
461 2018-09-27  Youenn Fablet  <youenn@apple.com>
462
463         Enable getUserMedia in mini browser
464         https://bugs.webkit.org/show_bug.cgi?id=190012
465
466         Reviewed by Eric Carlson.
467
468         Enable MediaDevices and mock capture devices.
469         Grant mock devices access to any getUserMedia call.
470         Covered by manual testing.
471
472         * MiniBrowser/mac/AppDelegate.m:
473         (defaultConfiguration):
474         * MiniBrowser/mac/WK2BrowserWindowController.m:
475         (-[WK2BrowserWindowController _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
476         (-[WK2BrowserWindowController _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
477
478 2018-09-27  Antoine Quint  <graouts@apple.com>
479
480         [Web Animations] Turn Web Animations with CSS integration on
481         https://bugs.webkit.org/show_bug.cgi?id=184819
482         <rdar://problem/39597337>
483
484         Reviewed by Dean Jackson.
485
486         * DumpRenderTree/TestOptions.h:
487
488 2018-09-26  Alex Christensen  <achristensen@webkit.org>
489
490         Unreviewed, rolling out r236524.
491
492         Broke API tests
493
494         Reverted changeset:
495
496         "URLWithUserTypedString should return nil for URLs deemed to
497         be invalid by WebCore::URL"
498         https://bugs.webkit.org/show_bug.cgi?id=189979
499         https://trac.webkit.org/changeset/236524
500
501 2018-09-26  James Savage  <james.savage@apple.com>
502
503         Allow override of viewport configuration.
504         https://bugs.webkit.org/show_bug.cgi?id=188772.
505         <rdar://problem/43538892>.
506
507         Reviewed by Simon Fraser.
508
509         * WebKitTestRunner/TestController.cpp:
510         (WTR::updateTestOptionsFromTestHeader): Parse new test option key from comments.
511         * WebKitTestRunner/TestOptions.h:
512         * WebKitTestRunner/ios/TestControllerIOS.mm:
513         (WTR::TestController::platformConfigureViewForTest): Handle new test option by
514         modifying the web view's preferences accordingly.
515
516 2018-09-26  Alex Christensen  <achristensen@webkit.org>
517
518         URLs with mismatched surrogate pairs in the host should fail to parse
519         https://bugs.webkit.org/show_bug.cgi?id=190005
520
521         Reviewed by Chris Dumez.
522
523         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
524         (TestWebKitAPI::TEST_F):
525
526 2018-09-26  Alex Christensen  <achristensen@webkit.org>
527
528         URLWithUserTypedString should return nil for URLs deemed to be invalid by WebCore::URL
529         https://bugs.webkit.org/show_bug.cgi?id=189979
530         <rdar://problem/44119696>
531
532         Reviewed by Chris Dumez.
533
534         * TestWebKitAPI/Tests/WebCore/cocoa/URLExtras.mm:
535         (TestWebKitAPI::TEST):
536
537 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
538
539         Selection should work across shadow boundary when initiated by a mouse drag
540         https://bugs.webkit.org/show_bug.cgi?id=151380
541         <rdar://problem/24363872>
542
543         Reviewed by Wenson Hsieh.
544
545         Added the support for internal:selectionAcrossShadowBoundariesEnabled test option.
546
547         * DumpRenderTree/TestOptions.cpp:
548         (TestOptions::TestOptions):
549         * DumpRenderTree/TestOptions.h:
550         * DumpRenderTree/mac/DumpRenderTree.mm:
551         (resetWebPreferencesToConsistentValues):
552         (setWebPreferencesForTestOptions):
553
554 2018-09-26  Ryosuke Niwa  <rniwa@webkit.org>
555
556         MiniBrowser doesn't respect default enabled-ness of experimental and internal debug features
557         https://bugs.webkit.org/show_bug.cgi?id=189989
558
559         Reviewed by Simon Fraser.
560
561         When the preference isn't found in user defaults, use the default value of each feature's enabledness.
562
563         * MiniBrowser/mac/AppDelegate.m:
564         (defaultConfiguration):
565
566 2018-09-26  Philippe Normand  <pnormand@igalia.com>
567
568         [Flatpak] Bump to apr 1.6.5
569
570         Version 1.6.3 is no longer available on Apache's website.
571
572         Rubber-stamped by Michael Catanzaro.
573
574         * flatpak/org.webkit.WebKit.yaml:
575
576 2018-09-25  Jiewen Tan  <jiewen_tan@apple.com>
577
578         [WebAuthN] Make AuthenticatorManager
579         https://bugs.webkit.org/show_bug.cgi?id=189279
580         <rdar://problem/44116792>
581
582         Reviewed by Chris Dumez.
583
584         Besides the functionality to set the WebAuthenticationMockConfiguration. Three operations are
585         added to manipulate Keychain: addTestKeyToKeychain, cleanUpKeychain and keyExistedInKeychain.
586
587         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
588         * TestWebKitAPI/Tests/ios/LocalAuthenticator.mm: Removed.
589         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
590         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
591         (WTR::TestRunner::setWebAuthenticationMockConfiguration):
592         (WTR::TestRunner::addTestKeyToKeychain):
593         (WTR::TestRunner::cleanUpKeychain):
594         (WTR::TestRunner::isKeyExisted):
595         * WebKitTestRunner/InjectedBundle/TestRunner.h:
596         * WebKitTestRunner/TestController.cpp:
597         (WTR::TestController::addTestKeyToKeychain):
598         (WTR::TestController::cleanUpKeychain):
599         (WTR::TestController::isKeyExisted):
600         (WTR::TestController::setWebAuthenticationMockConfiguration):
601         * WebKitTestRunner/TestController.h:
602         * WebKitTestRunner/TestInvocation.cpp:
603         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
604         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
605         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
606         (WTR::TestController::addTestKeyToKeychain):
607         (WTR::TestController::cleanUpKeychain):
608         (WTR::TestController::keyExistedInKeychain):
609
610 2018-09-25  Sihui Liu  <sihui_liu@apple.com>
611
612         Move Service Worker Management from Storage Process to Network Process
613         https://bugs.webkit.org/show_bug.cgi?id=189422
614
615         Reviewed by Youenn Fablet.
616
617         Change a check in ServiceWorkers.HasServiceWorkerRegistrationBit as storage process is not
618         launched during service worker operations now.
619
620         * TestWebKitAPI/Tests/WebKitCocoa/ServiceWorkerBasic.mm:
621
622 2018-09-25  Eric Carlson  <eric.carlson@apple.com>
623
624         [MediaStream] Update constraints supported by getDisplayMedia
625         https://bugs.webkit.org/show_bug.cgi?id=189930
626         <rdar://problem/44740305>
627
628         Unreviewed, fix test broken by r236465.
629
630         * TestWebKitAPI/Tests/WebKitCocoa/GetDisplayMedia.mm:
631         (TestWebKitAPI::TEST_F):
632
633 2018-09-25  Myles C. Maxfield  <mmaxfield@apple.com>
634
635         [WHSL] Implement semantics
636         https://bugs.webkit.org/show_bug.cgi?id=189134
637
638         Reviewed by Filip Pizlo.
639
640         This patch adds parsing support and adds the checks required to support HLSL-style semantics.
641
642         There are 3 places where semantics are allowed:
643
644         1. In a field in a struct. E.g.
645
646         struct R {
647             float4 position : SV_Position;
648         }
649         vertex R foo() {
650             ...
651         }
652
653         2. In a parameter of a function. If the function is not an entry point, the semantic is ignored.
654
655         compute void foo(device float[] data : buffer(u0)) {
656             ...
657         }
658
659         3. On a function. This is so you don't have to create structs for the return types of simple vertex shaders.
660
661         vertex float4 foo() : SV_Position {
662             ...
663         }
664
665         The semantics are partitioned into 4 types:
666
667         1. Built-in variables. For example, : SV_Position.
668         2. Resources. For example, : register(u0).
669         3. Stage-in / stage-out variables. For example, : attribute(0).
670         4. Specialization constants. For example, : specialized.
671
672         The semantics are validated according to a collection of rules:
673
674         - The same entry point can't list the same semantic twice
675         - Each built-in type has an appropriate type that is listed in the spec. 
676         - Each built-in is appropriate as either an input or an output of a particular shader stage
677         - Resource semantics have to have the appropriate type (e.g. can't use register(s0) on a buffer)
678         - Resources can't be output from entry points
679         - The resource semantic mode must match the address space of the resource
680         - Stage-in and stage-out variables have to be POD
681         - Specialization constants can't be output from entry points, and have to be numbers
682
683         * WebGPUShadingLanguageRI/All.js:
684         * WebGPUShadingLanguageRI/BuiltInSemantic.js: Added.
685         (BuiltInSemantic):
686         (BuiltInSemantic.prototype.get name):
687         (BuiltInSemantic.prototype.get extraArguments):
688         (BuiltInSemantic.prototype.isAcceptableType):
689         (BuiltInSemantic.prototype.isAcceptableForShaderType):
690         (BuiltInSemantic.prototype.toString):
691         * WebGPUShadingLanguageRI/CallExpression.js:
692         (CallExpression.prototype._resolveWithOperatorAnderIndexer):
693         (CallExpression.prototype._resolveWithOperatorLength):
694         * WebGPUShadingLanguageRI/Checker.js:
695         (Checker):
696         (Checker.prototype.visitProgram):
697         (Checker.prototype._checkSemantics.Item):
698         (Checker.prototype._checkSemantics.Item.prototype.get type):
699         (Checker.prototype._checkSemantics.Item.prototype.get semantic):
700         (Checker.prototype._checkSemantics.Gatherer):
701         (Checker.prototype._checkSemantics.Gatherer.prototype.reset):
702         (Checker.prototype._checkSemantics.Gatherer.prototype.set currentSemantic):
703         (Checker.prototype._checkSemantics.Gatherer.prototype.get currentSemantic):
704         (Checker.prototype._checkSemantics.Gatherer.prototype.get result):
705         (Checker.prototype._checkSemantics.Gatherer.prototype.visitEnumType):
706         (Checker.prototype._checkSemantics.Gatherer.prototype.visitVectorType):
707         (Checker.prototype._checkSemantics.Gatherer.prototype.visitMatrixType):
708         (Checker.prototype._checkSemantics.Gatherer.prototype.visitNativeType):
709         (Checker.prototype._checkSemantics.Gatherer.prototype.visitStructType):
710         (Checker.prototype._checkSemantics.Gatherer.prototype.visitTypeRef):
711         (Checker.prototype._checkSemantics.Gatherer.prototype.visitPtrType):
712         (Checker.prototype._checkSemantics.Gatherer.prototype.visitArrayRefType):
713         (Checker.prototype._checkSemantics.Gatherer.prototype.visitArrayType):
714         (Checker.prototype._checkSemantics.Gatherer.prototype.visitFuncParameter):
715         (Checker.prototype._checkSemantics.checkDuplicateSemantics):
716         (Checker.prototype._checkSemantics.checkSemanticTypes):
717         (Checker.prototype._checkSemantics.checkSemanticForShaderType):
718         (Checker.prototype._checkSemantics.PODChecker.prototype.visitEnumType):
719         (Checker.prototype._checkSemantics.PODChecker.prototype.visitArrayType):
720         (Checker.prototype._checkSemantics.PODChecker.prototype.visitVectorType):
721         (Checker.prototype._checkSemantics.PODChecker.prototype.visitMatrixType):
722         (Checker.prototype._checkSemantics.PODChecker.prototype.visitNativeType):
723         (Checker.prototype._checkSemantics.PODChecker.prototype.visitPtrType):
724         (Checker.prototype._checkSemantics.PODChecker.prototype.visitArrayRefType):
725         (Checker.prototype._checkSemantics.PODChecker.prototype.visitStructType):
726         (Checker.prototype._checkSemantics.PODChecker.prototype.visitTypeRef):
727         (Checker.prototype._checkSemantics.PODChecker):
728         (Checker.prototype._checkSemantics.checkPODData):
729         (Checker.prototype._checkSemantics):
730         (Checker.prototype._checkShaderType):
731         (Checker.prototype._checkOperatorOverload):
732         (Checker.prototype.visitFuncDef):
733         (Checker.prototype.visitEnumType):
734         (Checker.prototype.visitArrayType):
735         (Checker.prototype.visitMakePtrExpression):
736         (Checker.prototype.visitMakeArrayRefExpression):
737         (Checker.prototype._finishVisitingPropertyAccess):
738         (Checker.prototype.visitIndexExpression):
739         (Checker.prototype.visitReturn):
740         (Checker.prototype.visitSwitchStatement):
741         (Checker.prototype.visitTernaryExpression):
742         (Checker.prototype.visitCallExpression):
743         * WebGPUShadingLanguageRI/Field.js:
744         (Field):
745         (Field.prototype.get semantic):
746         (Field.prototype.toString):
747         * WebGPUShadingLanguageRI/Func.js:
748         (Func):
749         (Func.prototype.get semantic):
750         (Func.prototype.toDeclString):
751         * WebGPUShadingLanguageRI/FuncDef.js:
752         (FuncDef):
753         * WebGPUShadingLanguageRI/FuncParameter.js:
754         (FuncParameter):
755         (FuncParameter.prototype.get semantic):
756         (FuncParameter.prototype.toString):
757         * WebGPUShadingLanguageRI/Intrinsics.js:
758         * WebGPUShadingLanguageRI/LateChecker.js:
759         (LateChecker.prototype.visitReferenceType):
760         (LateChecker):
761         (LateChecker.prototype._checkShaderType): Deleted.
762         (LateChecker.prototype.visitFuncDef): Deleted.
763         * WebGPUShadingLanguageRI/NativeFunc.js:
764         (NativeFunc):
765         * WebGPUShadingLanguageRI/Parse.js:
766         (parseParameter):
767         (parseFuncDecl):
768         (parseFuncDef):
769         (parseStageInOutSemantic):
770         (parseResourceSemantic):
771         (parseSpecializationConstantSemantic):
772         (parseBuiltInSemantic):
773         (parseField):
774         (parseNativeFunc):
775         * WebGPUShadingLanguageRI/ProgramWithUnnecessaryThingsRemoved.js:
776         (programWithUnnecessaryThingsRemoved):
777         * WebGPUShadingLanguageRI/ResourceSemantic.js: Added.
778         (ResourceSemantic):
779         (ResourceSemantic.prototype.get resourceMode):
780         (ResourceSemantic.prototype.get index):
781         (ResourceSemantic.prototype.get space):
782         (ResourceSemantic.prototype.isAcceptableType):
783         (ResourceSemantic.prototype.isAcceptableForShaderType):
784         (ResourceSemantic.prototype.toString):
785         * WebGPUShadingLanguageRI/Rewriter.js:
786         (Rewriter.prototype.visitFuncParameter):
787         (Rewriter.prototype.visitField):
788         (Rewriter.prototype.visitBuiltInSemantic):
789         (Rewriter.prototype.visitResourceSemantic):
790         (Rewriter.prototype.visitStageInOutSemantic):
791         (Rewriter.prototype.visitSpecializationConstantSemantic):
792         (Rewriter):
793         * WebGPUShadingLanguageRI/SPIRV.html:
794         * WebGPUShadingLanguageRI/Semantic.js: Added.
795         (Semantic):
796         (Semantic.prototype.get origin):
797         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitBuiltInSemantic):
798         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitResourceSemantic):
799         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitStageInOutSemantic):
800         (Semantic.prototype.equalToOtherSemantic.Comparer.prototype.visitSpecializationConstantSemantic):
801         (Semantic.prototype.equalToOtherSemantic.Comparer):
802         (Semantic.prototype.equalToOtherSemantic):
803         * WebGPUShadingLanguageRI/SpecializationConstantSemantic.js: Copied from Tools/WebGPUShadingLanguageRI/Field.js.
804         (SpecializationConstantSemantic):
805         (SpecializationConstantSemantic.prototype.isAcceptableType):
806         (SpecializationConstantSemantic.prototype.isAcceptableForShaderType):
807         (SpecializationConstantSemantic.prototype.toString):
808         * WebGPUShadingLanguageRI/StageInOutSemantic.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
809         (StageInOutSemantic):
810         (StageInOutSemantic.prototype.get index):
811         (StageInOutSemantic.prototype.isAcceptableType):
812         (StageInOutSemantic.prototype.isAcceptableForShaderType):
813         (StageInOutSemantic.prototype.toString):
814         * WebGPUShadingLanguageRI/StatementCloner.js:
815         (StatementCloner.prototype.visitNativeFunc):
816         * WebGPUShadingLanguageRI/SynthesizeArrayOperatorLength.js:
817         (synthesizeArrayOperatorLength):
818         * WebGPUShadingLanguageRI/SynthesizeCopyConstructorOperator.js:
819         (synthesizeCopyConstructorOperator):
820         * WebGPUShadingLanguageRI/SynthesizeDefaultConstructorOperator.js:
821         (synthesizeDefaultConstructorOperator):
822         * WebGPUShadingLanguageRI/SynthesizeEnumFunctions.js:
823         (synthesizeEnumFunctions):
824         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
825         (setupAnder):
826         (synthesizeStructAccessorsForStructType):
827         * WebGPUShadingLanguageRI/Test.html:
828         * WebGPUShadingLanguageRI/Test.js:
829         (tests.shaderTypes):
830         * WebGPUShadingLanguageRI/Visitor.js:
831         (Visitor.prototype.visitFunc):
832         (Visitor.prototype.visitFuncParameter):
833         (Visitor.prototype.visitField):
834         (Visitor.prototype.visitBuiltInSemantic):
835         (Visitor.prototype.visitResourceSemantic):
836         (Visitor.prototype.visitStageInOutSemantic):
837         (Visitor.prototype.visitSpecializationConstantSemantic):
838         (Visitor):
839         * WebGPUShadingLanguageRI/index.html:
840
841 2018-09-25  Thomas Denney  <tdenney@apple.com>
842
843         [WHLSL] Test suite for Metal code generation
844         https://bugs.webkit.org/show_bug.cgi?id=187738
845
846         Reviewed by Myles C. Maxfield.
847
848         This patch adds an Xcode project that contains a Cocoa app that can be
849         used for running WHLSL shaders on the GPU. It also contains an Xcode
850         test suite that runs all of the tests in Test.js on the GPU.
851
852         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/.gitignore: Added.
853         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.h: Added.
854         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/AppDelegate.m: Added.
855         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/AppIcon.appiconset/Contents.json: Added.
856         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Assets.xcassets/Contents.json: Added.
857         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Base.lproj/Main.storyboard: Added.
858         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.h: Added.
859         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CompileResult.m: Added.
860         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.h: Added.
861         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Compiler.m: Added.
862         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.h: Added.
863         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/CustomMetalView.m: Added.
864         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Default.whlsl: Added.
865         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Julia.whlsl: Added.
866         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Demo shaders/Mandelbrot.whlsl: Added.
867         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Info.plist: Added.
868         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.h: Added.
869         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OffscreenRenderer.m: Added.
870         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.h: Added.
871         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/OnscreenRenderer.m: Added.
872         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.h: Added.
873         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/Renderer/Renderer.m: Added.
874         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.h: Added.
875         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestCallArgument.m: Added.
876         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.h: Added.
877         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestDescription.m: Added.
878         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.h: Added.
879         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamily.m: Added.
880         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.h: Added.
881         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/TestFamilyRunner.m: Added.
882         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.h: Added.
883         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/ViewController.m: Added.
884         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/WHLSL.entitlements: Added.
885         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/_SharedMetal.txt: Added.
886         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/Core/main.m: Added.
887         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL Tests.xcodeproj/project.pbxproj: Added.
888         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/Info.plist: Added.
889         * WebGPUShadingLanguageRI/Metal/WHLSL Tests/WHLSL ToyTests/WHLSL_ToyTests.m: Added.
890         * WebGPUShadingLanguageRI/Test.js:
891         (tests.lotsOfLocalVariables):
892
893 2018-09-25  Myles C. Maxfield  <mmaxfield@apple.com>
894
895         Unreviewed build fix after r236455
896         https://bugs.webkit.org/show_bug.cgi?id=189121
897
898         * WebGPUShadingLanguageRI/Test.js:
899         (tests.shaderStages):
900
901 2018-09-24  Myles C. Maxfield  <mmaxfield@apple.com>
902
903         [WHLSL] Not all functions should be able to run in all shader stages
904         https://bugs.webkit.org/show_bug.cgi?id=189121
905
906         Reviewed by Filip Pizlo.
907
908         ddx() and ddy() can only run in fragment shaders, and the barrier functions can only run in compute shaders.
909         ddx_coarse() & friends are currently implemented as just calling ddx(), so we only need to modify those functions
910         if/when we make them native.
911
912         The texture sampling functions that use implicit derivatives can run in any shader stage - they just use a LOD of
913         0. Therefore, those functions are unchanged.
914
915         * WebGPUShadingLanguageRI/All.js:
916         * WebGPUShadingLanguageRI/Intrinsics.js:
917         * WebGPUShadingLanguageRI/LateChecker.js:
918         (LateChecker.prototype._checkShaderType):
919         * WebGPUShadingLanguageRI/NativeFunc.js:
920         (NativeFunc):
921         (NativeFunc.prototype.get stage):
922         (NativeFunc.prototype.toDeclString):
923         * WebGPUShadingLanguageRI/Parse.js:
924         (parseFuncDecl):
925         (parseNativeFunc):
926         (parseNative):
927         * WebGPUShadingLanguageRI/Prepare.js:
928         (let.prepare):
929         * WebGPUShadingLanguageRI/SPIRV.html:
930         * WebGPUShadingLanguageRI/StandardLibrary.js:
931         (let.standardLibrary):
932         * WebGPUShadingLanguageRI/StatementCloner.js:
933         (StatementCloner.prototype.visitNativeFunc):
934         * WebGPUShadingLanguageRI/Test.html:
935         * WebGPUShadingLanguageRI/Test.js:
936         (tests.shaderStages):
937         * WebGPUShadingLanguageRI/WSyntaxError.js:
938         (WSyntaxError.prototype.toString):
939         (WSyntaxError):
940         * WebGPUShadingLanguageRI/index.html:
941
942 2018-09-24  Thomas Denney  <tdenney@apple.com>
943
944         [WHLSL] Implement trap statements in Metal code generation
945         https://bugs.webkit.org/show_bug.cgi?id=189615
946
947         Reviewed by Myles C. Maxfield.
948
949         Each function called by an entry point now receives an additional
950         boolean pointer parameter, which is set to false if the function traps.
951         After each function call (to a non-native function) this trap parameter
952         is checked. The behavior of the interpreter has also been updated so
953         that a function entry point catches the trap and instead returns zero,
954         matching the behavior of compiled code.
955
956         * WebGPUShadingLanguageRI/Evaluator.js: Adds a new flag to allow the
957         test suite to check for traps and also returns zero from entry points
958         whose invocation trapped.
959         * WebGPUShadingLanguageRI/Metal/MSLBackend.js: Pass program to function
960         declarations.
961         * WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Update dependencies.
962         * WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Add program
963         property.
964         * WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Ditto.
965         * WebGPUShadingLanguageRI/Metal/MSLInsertTrapParameter.js: Added.
966         * WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Conforms to the
967         new trapping behavior.
968         * WebGPUShadingLanguageRI/Test.js: Update tests that trap.
969
970 2018-09-24  Thomas Denney  <tdenney@apple.com>
971
972         [WHLSL] It shouldn’t be possible to use ternary expressions as l-values
973         https://bugs.webkit.org/show_bug.cgi?id=189290
974
975         Reviewed by Myles C. Maxfield.
976
977         It is no longer possible for a ternary expression to be treated as an
978         l-value. This patch adds several test cases to verify that this is the
979         case.
980
981         * WebGPUShadingLanguageRI/Checker.js:
982         (Checker.prototype.visitTernaryExpression): No longer check isLValue.
983         * WebGPUShadingLanguageRI/NormalUsePropertyResolver:
984         (NormalUsePropertyResolver.visitTernaryExpression): Deleted.
985         * WebGPUShadingLanguageRI/Rewriter.js:
986         (Rewriter.prototype.visitTernaryExpression): No longer copy isLValue.
987         * WebGPUShadingLanguageRI/TernaryExpression.js:
988         (TernaryExpression):
989         (TernaryExpression.prototype.get elseExpression):
990         (TernaryExpression.prototype.get isLValue): Deleted.
991         (TernaryExpression.prototype.set isLValue): Deleted.
992         * WebGPUShadingLanguageRI/Test.js:
993         (tests.ternaryExpression): Add checks for failure if a failure is used
994         as an l-value.
995         (ternaryExpressionIsLValue.node.TernaryExpressionVisitor.prototype.visitTernaryExpression): Deleted.
996         (ternaryExpressionIsLValue.node.TernaryExpressionVisitor): Deleted.
997         (tests.ternaryExpressionIsLValue): Deleted.
998
999 2018-09-24  Jer Noble  <jer.noble@apple.com>
1000
1001         SharedBuffer should have an equality test
1002         https://bugs.webkit.org/show_bug.cgi?id=189919
1003
1004         Reviewed by Alex Christensen.
1005
1006         * TestWebKitAPI/Tests/WebCore/SharedBuffer.cpp:
1007         (TestWebKitAPI::TEST_F):
1008
1009 2018-09-24  Alex Christensen  <achristensen@webkit.org>
1010
1011         Prepare to replace WKBundleFileHandleCreateWithPath with a version that takes a WKBundlePageRef
1012         https://bugs.webkit.org/show_bug.cgi?id=189929
1013
1014         Reviewed by Andy Estes.
1015
1016         * TestWebKitAPI/Tests/WebKit/WKBundleFileHandle_Bundle.cpp:
1017
1018 2018-09-24  Thomas Denney  <tdenney@apple.com>
1019
1020         [WHLSL] Casting user-created types to themselves should always work
1021         https://bugs.webkit.org/show_bug.cgi?id=189113
1022
1023         Reviewed by Myles C. Maxfield.
1024
1025         Casting user-defined types to themselves worked already, but we didn't
1026         test it anywhere.
1027
1028         * WebGPUShadingLanguageRI/Test.js:
1029         (tests.selfCasts):
1030
1031 2018-09-24  Zan Dobersek  <zdobersek@igalia.com>
1032
1033         Unreviewed build fix for Jhbuild-using ports.
1034
1035         * gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch:
1036         Adjust the patch so it applies cleanly on the 1.14.3 version of the
1037         gst-plugins-good package.
1038
1039 2018-09-24  Ryan Haddad  <ryanhaddad@apple.com>
1040
1041         Update flakiness dashboard configuration for iOS 12 queues
1042         https://bugs.webkit.org/show_bug.cgi?id=189688
1043
1044         Reviewed by Alexey Proskuryakov.
1045
1046         * TestResultServer/static-dashboards/builders.jsonp:
1047
1048 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1049
1050         [GStreamer] Unreviewed build fix.
1051
1052         A GStreamer patch was not applying cleanly on 1.14.3.
1053
1054         * gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch:
1055
1056 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1057
1058         [MSE][GStreamer] Use no-more-pads event for noticing initialization segments
1059         https://bugs.webkit.org/show_bug.cgi?id=189868
1060
1061         Reviewed by Xabier Rodriguez-Calvar.
1062
1063         Added patch from https://bugzilla.gnome.org/show_bug.cgi?id=797187
1064
1065         * gstreamer/jhbuild.modules:
1066         * gstreamer/patches/gst-plugins-good-0010-matroskademux-Emit-no-more-pads-after-parsing-Tracks.patch: Added.
1067
1068 2018-09-24  Alicia Boya García  <aboya@igalia.com>
1069         [MSE][GStreamer] Add patch to jhbuild: matroskademux: Allow Matroska headers to be read more than once
1070         https://bugs.webkit.org/show_bug.cgi?id=185731
1071
1072         Reviewed by Xabier Rodriguez-Calvar.
1073
1074         Upstream bug in GStreamer: https://bugzilla.gnome.org/show_bug.cgi?id=793333
1075
1076         This fixes YTTV 35. AppendMultipleInitOpusAudio (and any other use
1077         case where two WebM initialization segments are appended on a row).
1078
1079         * gstreamer/jhbuild.modules:
1080         * gstreamer/patches/gst-plugins-good-0007-matroskademux-Allow-Matroska-headers-to-be-read-more.patch: Added.
1081         * gstreamer/patches/gst-plugins-good-0008-matroskademux-Refactor-track-parsing-out-from-adding.patch: Added.
1082         * gstreamer/patches/gst-plugins-good-0009-matroskademux-Parse-successive-Tracks-elements.patch: Added.
1083
1084 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1085
1086         [WHSL] Need grammar to specify kernel group size
1087         https://bugs.webkit.org/show_bug.cgi?id=189108
1088
1089         Reviewed by Dean Jackson.
1090
1091         In HLSL, compute functions are annotated with their workgroup size.
1092         For example,
1093
1094         [numthreads(3, 4, 5)] compute void foo(...) { ... }
1095
1096         * WebGPUShadingLanguageRI/All.js:
1097         * WebGPUShadingLanguageRI/Func.js:
1098         (Func):
1099         (Func.prototype.get attributeBlock):
1100         * WebGPUShadingLanguageRI/FuncAttribute.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
1101         (FuncAttribute):
1102         * WebGPUShadingLanguageRI/FuncDef.js:
1103         (FuncDef):
1104         * WebGPUShadingLanguageRI/FuncNumThreadsAttribute.js: Copied from Tools/WebGPUShadingLanguageRI/FuncDef.js.
1105         (FuncNumThreadsAttribute):
1106         (FuncNumThreadsAttribute.prototype.get x):
1107         (FuncNumThreadsAttribute.prototype.get y):
1108         (FuncNumThreadsAttribute.prototype.get z):
1109         * WebGPUShadingLanguageRI/LateChecker.js:
1110         (LateChecker.prototype._checkShaderType):
1111         * WebGPUShadingLanguageRI/Parse.js:
1112         (parseAttributeBlock):
1113         (parseFuncDecl):
1114         (parseFuncDef):
1115         (parseNativeFunc):
1116         * WebGPUShadingLanguageRI/SPIRV.html:
1117         * WebGPUShadingLanguageRI/StatementCloner.js:
1118         (StatementCloner.prototype.visitFuncDef):
1119         (StatementCloner.prototype.visitFuncNumThreadsAttribute):
1120         (StatementCloner):
1121         * WebGPUShadingLanguageRI/Test.html:
1122         * WebGPUShadingLanguageRI/Test.js:
1123         (tests.numThreads):
1124         * WebGPUShadingLanguageRI/Visitor.js:
1125         (Visitor.prototype.visitFunc):
1126         (Visitor.prototype.visitFuncNumThreadsAttribute):
1127         (Visitor):
1128         * WebGPUShadingLanguageRI/index.html:
1129
1130 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1131
1132         Native functions which accept pointers need to do null checks
1133         https://bugs.webkit.org/show_bug.cgi?id=189883
1134
1135         Reviewed by Dean Jackson.
1136
1137         Simply guard all the places where we write through an author-provided pointer.
1138
1139         * WebGPUShadingLanguageRI/Intrinsics.js:
1140         (Intrinsics.):
1141         * WebGPUShadingLanguageRI/Test.js:
1142         (tests.textureDimensionsNull):
1143
1144 2018-09-22  Myles C. Maxfield  <mmaxfield@apple.com>
1145
1146         [WHLSL] Implement atomic operations and barriers
1147         https://bugs.webkit.org/show_bug.cgi?id=189025
1148
1149         Reviewed by Dean Jackson.
1150
1151         In the interpreter, atomic operations don't need to be atomic.
1152
1153         * WebGPUShadingLanguageRI/Intrinsics.js:
1154         (Intrinsics.):
1155         * WebGPUShadingLanguageRI/StandardLibrary.js:
1156         (let.standardLibrary):
1157         * WebGPUShadingLanguageRI/Test.js:
1158         (tests.atomics):
1159
1160 2018-09-22  Thibault Saunier  <tsaunier@igalia.com>
1161
1162         [WPE] Be very permissive in the MiniBrowser.
1163         https://bugs.webkit.org/show_bug.cgi?id=189800
1164
1165         This is just a test tool and we should make
1166         it just work, security and privacy is not really
1167         a primary focus here.
1168
1169         Reviewed by Žan Doberšek.
1170
1171         * MiniBrowser/wpe/main.cpp:
1172         (decidePermissionRequest):
1173         (main):
1174
1175 2018-09-21  Thomas Denney  <tdenney@apple.com>
1176
1177         [WHLSL] Local variables should be statically allocated
1178         https://bugs.webkit.org/show_bug.cgi?id=188402
1179
1180         Reviewed by Myles C. Maxfield.
1181
1182         An additional preparation stage is now performed so that all local
1183         variables and function parameters are allocated in a single struct at
1184         entry points. A pointer to this struct is then passed for function
1185         calls.
1186
1187         * WebGPUShadingLanguageRI/All.js: Update dependencies.
1188         * WebGPUShadingLanguageRI/AllocateAtEntryPoints.js: Added new stage.
1189         * WebGPUShadingLanguageRI/CallExpression.js:
1190         (CallExpression.prototype.set argumentList): Add setter because
1191         allocateAtEntryPoints needs to change this.
1192         * WebGPUShadingLanguageRI/EBufferBuilder.js: Remove a redundant
1193         constructor that wasn't used anywhere.
1194         * WebGPUShadingLanguageRI/Func.js:
1195         (Func.prototype.set parameters): Add setter.
1196         * WebGPUShadingLanguageRI/FuncDef.js:
1197         (FuncDef.prototype.set body): Ditto.
1198         * WebGPUShadingLanguageRI/Prepare.js:
1199         (let.prepare): Add call to allocateAtEntryPoints. This call cannot
1200         happen any earlier because it depends on having types for call
1201         arguments.
1202         * WebGPUShadingLanguageRI/Rewriter.js:
1203         (Rewriter.prototype.visitReturn): Resolve issue where the return
1204         statement's function wasn't copied. A null check is required as the
1205         Rewriter might be used before this property is set.
1206         * WebGPUShadingLanguageRI/SPIRV.html: Update dependencies.
1207         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js: Abstracted logic
1208         into a separate function so that allocateAtEntryPoints can create the
1209         accessors for the struct type it introduces.
1210         * WebGPUShadingLanguageRI/Test.html: Update dependencies.
1211         * WebGPUShadingLanguageRI/Test.js: Add new tests to verify the static
1212         allocation transform works safely.
1213         * WebGPUShadingLanguageRI/index.html: Update dependencies.
1214
1215 2018-09-21  Jonathan Bedard  <jbedard@apple.com>
1216
1217         Bring up queues for iOS 12 (Build fix)
1218         https://bugs.webkit.org/show_bug.cgi?id=189683
1219
1220         Unreviewed build fix.
1221
1222         We should not build ImageDiff as x86 by default since 32 bit projects are
1223         deprecated in Xcode. ImageDiff should only be built once.
1224
1225         * Scripts/build-webkit:
1226         * Scripts/webkitdirs.pm:
1227         (argumentsForConfiguration):
1228
1229 2018-09-21  Adrian Perez de Castro  <aperez@igalia.com>
1230
1231         [WPE] Built RPM of WPE webkit fails to install with "nothing provides libWPEToolingBackends.so()"
1232         https://bugs.webkit.org/show_bug.cgi?id=189797
1233
1234         Reviewed by Žan Doberšek.
1235
1236         * wpe/backends/CMakeLists.txt: Make libWPEToolingBackends a static library to avoid
1237         the need for installing it. This works fine because the library only contains utility
1238         code intended to be reused from other various components (MiniBrowser, WebKitTestRunner).
1239
1240 2018-09-20  Daniel Bates  <dabates@apple.com>
1241
1242         Move IOKitSPI.h from TestRunnerShared to PAL
1243         https://bugs.webkit.org/show_bug.cgi?id=189804
1244
1245         Reviewed by Wenson Hsieh.
1246
1247         Towards fixing <https://bugs.webkit.org/show_bug.cgi?id=189604> move the IOKit SPI forward
1248         declarations to PAL so that they can be shared by WebKit, DumpRenderTree and WebKitTestRunner.
1249
1250         No functionality changed. So, no new tests.
1251
1252         * TestRunnerShared/EventSerialization/mac/EventSerializerMac.mm:
1253         * TestRunnerShared/spi/UIKitTestSPI.h:
1254         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
1255         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1256
1257 2018-09-20  Thomas Denney  <tdenney@apple.com>
1258
1259         [WHLSL] Metal code generation
1260         https://bugs.webkit.org/show_bug.cgi?id=187735
1261
1262         Reviewed by Myles C. Maxfield.
1263
1264         Adds support for generating Metal Shading Language from WHLSL. Clients
1265         should include the file MetalCodegenAll.js and then call whlslToMsl
1266         with their program source code to compile to Metal.
1267
1268         * WebGPUShadingLanguageRI/ArrayType.js:
1269         (ArrayType.prototype.get arrayRefType): Adds the arrayRefType method to
1270         all types to find the type of that expression when it is used in a
1271         MakeArrayRefExpression.
1272         * WebGPUShadingLanguageRI/MakeArrayRefExpression.js:
1273         (MakeArrayRefExpression):
1274         (MakeArrayRefExpression.prototype.get type): Uses the new arrayRefType
1275         getter on all types to find the type of the expression.
1276         * WebGPUShadingLanguageRI/Metal/MSLBackend.js: Added.
1277         * WebGPUShadingLanguageRI/Metal/MSLCodegenAll.js: Added.
1278         * WebGPUShadingLanguageRI/Metal/MSLCompileResult.js: Added.
1279         * WebGPUShadingLanguageRI/Metal/MSLConstexprEmitter.js: Added.
1280         * WebGPUShadingLanguageRI/Metal/MSLFunctionDeclaration.js: Added.
1281         * WebGPUShadingLanguageRI/Metal/MSLFunctionDefinition.js: Added.
1282         * WebGPUShadingLanguageRI/Metal/MSLFunctionForwardDeclaration.js: Added.
1283         * WebGPUShadingLanguageRI/Metal/MSLNameMangler.js: Added.
1284         * WebGPUShadingLanguageRI/Metal/MSLNativeFunctionCall.js: Added.
1285         * WebGPUShadingLanguageRI/Metal/MSLStatementEmitter.js: Added.
1286         * WebGPUShadingLanguageRI/Metal/MSLTypeAttributes.js: Added.
1287         * WebGPUShadingLanguageRI/Metal/MSLTypeAttributesMap.js: Added.
1288         * WebGPUShadingLanguageRI/Metal/MSLTypeUnifier.js: Added.
1289         * WebGPUShadingLanguageRI/Metal/TypeOf.js: Added.
1290         * WebGPUShadingLanguageRI/Metal/WhlslToMsl.js: Added.
1291         * WebGPUShadingLanguageRI/PropertyResolver.js:
1292         * WebGPUShadingLanguageRI/SynthesizeStructAccessors.js:
1293         * WebGPUShadingLanguageRI/Test.js: Added awkward tests for the compiler
1294         to generate code for.
1295         (tests.incrementAndDecrement):
1296         (tests.returnIntLiteralUint):
1297         (tests.returnIntLiteralFloat):
1298         (tests.nestedSubscriptWithArraysInStructs):
1299         (tests.nestedSubscript):
1300         (tests.lotsOfLocalVariables):
1301         * WebGPUShadingLanguageRI/Type.js:
1302         (Type.prototype.get arrayRefType): See above.
1303
1304 2018-09-20  Ryan Haddad  <ryanhaddad@apple.com>
1305
1306         Bring up queues for iOS 12
1307         https://bugs.webkit.org/show_bug.cgi?id=189683
1308
1309         Unreviewed infrastructure fix.
1310
1311         * 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.
1312         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/BubbleQueueServer.js:
1313         (BubbleQueueServer): Move EWS bubbles to the iOS 12 section of the dashboard.
1314
1315 2018-09-20  Ryan Haddad  <ryanhaddad@apple.com>
1316
1317         Bring up queues for iOS 12
1318         https://bugs.webkit.org/show_bug.cgi?id=189683
1319
1320         Reviewed by Aakash Jain.
1321
1322         * BuildSlaveSupport/build.webkit.org-config/config.json:
1323         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12.png: Added.
1324         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator.png: Added.
1325         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/IOS12Simulator@2x.png: Added.
1326         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Images/iOS12@2x.png: Added.
1327         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/Dashboard.js:
1328         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js:
1329         (WebKitBuildbot):
1330         * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Styles/Main.css:
1331         (table.queue-grid tr.platform.ios-simulator-12 img.logo):
1332         (table.queue-grid tr.platform.ios-12 img.logo):
1333         (table.queue-grid tr.platform.ios-simulator-11 img.logo): Deleted.
1334         (table.queue-grid tr.platform.ios-11 img.logo): Deleted.
1335         * BuildSlaveSupport/build.webkit.org-config/steps_unittest.py:
1336         * BuildSlaveSupport/build.webkit.org-config/wkbuild.py:
1337         (_should_file_trigger_build):
1338         * BuildSlaveSupport/build.webkit.org-config/wkbuild_unittest.py:
1339         (ShouldBuildTest):
1340         (ShouldBuildTest.test_should_build):
1341
1342 2018-09-20  Basuke Suzuki  <Basuke.Suzuki@sony.com>
1343
1344         [Win] TestRunner::queueLoad() fails to generate correct url for some urls.
1345         https://bugs.webkit.org/show_bug.cgi?id=189679
1346
1347         Reviewed by Fujii Hironori.
1348
1349         Replace the implementation with correct API call.
1350
1351         * DumpRenderTree/win/TestRunnerWin.cpp:
1352         (TestRunner::queueLoad): Call UrlCombineW.
1353
1354 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
1355
1356         [WPE] fails to build on ARM arches complaining about undefined reference to `epoxy_eglMakeCurrent'
1357         https://bugs.webkit.org/show_bug.cgi?id=189556
1358
1359         Reviewed by Konstantin Tokarev.
1360
1361         This is only a speculative build fix as I didn't attempt to reproduce. Explicitly link to
1362         libepoxy.
1363
1364         * wpe/backends/CMakeLists.txt:
1365
1366 2018-09-20  Daniel Bates  <dabates@apple.com>
1367
1368         [iOS] Support testing more hardware special keys
1369         https://bugs.webkit.org/show_bug.cgi?id=189793
1370
1371         Reviewed by Simon Fraser.
1372
1373         * TestRunnerShared/spi/IOKitSPI.h: Add more SPI constants.
1374         * WebKitTestRunner/ios/HIDEventGenerator.mm:
1375         (keyCodeForDOMFunctionKey): Extracted out logic from hidUsageCodeForCharacter() to return the
1376         key code for the F1, F2, ..., F12 keys and extended the code to compute the key code for the
1377         F13, F14, ..., F24 keys.
1378         (hidUsageCodeForCharacter): Modified to call keyCodeForDOMFunctionKey().
1379
1380 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
1381
1382         Unreviewed, remove accidentally-committed debugging changes from flatpakutils script
1383
1384         Aaaaaah maybe this is why changes are supposed to be reviewed.
1385
1386         * flatpak/flatpakutils.py:
1387         (WebkitFlatpak.clean_args):
1388
1389 2018-09-20  Michael Catanzaro  <mcatanzaro@igalia.com>
1390
1391         Unreviewed, manually rollout our switch to master runtime
1392
1393         Phil wants html5-codecs, which aren't available yet here. Let's switch back to 3.28 in the
1394         meantime, where we were already building GStreamer ourselves anyway. But use an updated
1395         SDK revision.
1396
1397         * flatpak/files/httpd-autogen.sh: Added.
1398         * flatpak/flatpakutils.py:
1399         (WebkitFlatpak.clean_args):
1400         * flatpak/org.webkit.GTK.yaml:
1401         * flatpak/org.webkit.WebKit.yaml:
1402         * flatpak/patches/httpd-0001-configure-use-pkg-config-for-PCRE-detection.patch: Added.
1403         * flatpak/patches/libgcrypt-0001-Use-pkg-config-to-detect-gpg-error.patch: Added.
1404
1405 2018-09-20  Thibault Saunier  <tsaunier@igalia.com>
1406
1407         [WPE][GTK] webkit-flatpak intercepts --help for other commands
1408         https://bugs.webkit.org/show_bug.cgi?id=189058
1409
1410         The approach of run_in_sandbox_if_available is that we basically have the
1411         same set of arguments to setup the sandbox (ie. port name, build type, etc...)
1412         and we can pass those args first to setup the flatpak launcher object
1413         and then to the underlying script. That doesn't work well with the `--help` argument
1414         as once processed it 1. prints the help (which make no sense to the user of the calling script)
1415         2. exits the app - The solution is to just make sure that `--help` is not used when using
1416         flatpakutils from any script that is not `webkit-flatpak` itself.
1417
1418         Reviewed by Michael Catanzaro.
1419
1420         * flatpak/flatpakutils.py:
1421         (WebkitFlatpak.load_from_args):
1422         (run_in_sandbox_if_available):
1423
1424 2018-09-20  Xabier Rodriguez Calvar  <calvaris@igalia.com>
1425
1426         Unreviewed. Add W3C imported tests to the MSEEME watchlist.
1427
1428         * Scripts/webkitpy/common/config/watchlist:
1429
1430 2018-09-20  Xabier Rodriguez Calvar  <calvaris@igalia.com>
1431
1432         Unreviewed. Fix the Streams API watchlist.
1433
1434         * Scripts/webkitpy/common/config/watchlist:
1435
1436 2018-09-19  Chris Dumez  <cdumez@apple.com>
1437
1438         Crash under WebProcessProxy::suspendedPageWasDestroyed(WebKit::SuspendedPageProxy&)
1439         https://bugs.webkit.org/show_bug.cgi?id=189721
1440         <rdar://problem/44359788>
1441
1442         Reviewed by Geoffrey Garen.
1443
1444         Add API test coverage.
1445
1446         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1447
1448 2018-09-19  Thomas Denney  <tdenney@apple.com>
1449
1450         [WHLSL] Improve test suite type safety
1451         https://bugs.webkit.org/show_bug.cgi?id=189502
1452
1453         Reviewed by Myles C. Maxfield.
1454
1455         Each of the 'makeT' functions now call the relevant cast function on the
1456         value before hand. The checkNumber function has also been removed and
1457         its uses have been replaced with functions that also check the type.
1458         Some of the arithmetic checks have been updated to reflect that the
1459         casts happen outside of WHLSL evaluation. Other tests have also been
1460         updated to reflect that some values cannot be precisely expressed in
1461         32-bit floating point.
1462
1463         * WebGPUShadingLanguageRI/Casts.js:
1464         (castToBool): Added.
1465         (castAndCheckValue): Added.
1466         (isBitwiseEquivalent): Moved from Intrinsics.js.
1467         * WebGPUShadingLanguageRI/Intrinsics.js: Ditto.
1468         * WebGPUShadingLanguageRI/SPIRV.html: Update depdencies.
1469         * WebGPUShadingLanguageRI/Test.html: Ditto.
1470         * WebGPUShadingLanguageRI/Test.js: Update makeT functions to do a cast
1471         and check the result. Some tests were also updated to reflect the change
1472         in the behavior of these functions.
1473         * WebGPUShadingLanguageRI/index.html: Update dependencies.
1474
1475 2018-09-19  John Wilander  <wilander@apple.com>
1476
1477         Resource Load Statistics: Add optional cap on partitioned cache max age
1478         https://bugs.webkit.org/show_bug.cgi?id=189711
1479         <rdar://problem/39246837>
1480
1481         Reviewed by Antti Koivisto and Chris Dumez.
1482
1483         This change adds infrastructure for layout tests of capped cache max age.
1484
1485         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1486         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1487         (WTR::TestRunner::setStatisticsCacheMaxAgeCap):
1488         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1489         * WebKitTestRunner/TestController.cpp:
1490         (WTR::TestController::setStatisticsCacheMaxAgeCap):
1491         * WebKitTestRunner/TestController.h:
1492         * WebKitTestRunner/TestInvocation.cpp:
1493         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1494
1495 2018-09-19  Dawei Fenton  <realdawei@apple.com>
1496
1497        Unreviewed. Update my email and alias in list of contributors.
1498
1499         * Scripts/webkitpy/common/config/contributors.json:
1500
1501 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1502
1503         [WPE][GTK] Unreviewed, try #3 to fix a typo
1504
1505         I feel like Charlie Brown, how hard this has been for me....
1506
1507         * Scripts/run-minibrowser:
1508         * Scripts/webkitdirs.pm:
1509         (runInFlatpakIfAvailable):
1510         (runInFlatpakIfAvailible): Deleted.
1511
1512 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1513
1514         [WPE][GTK] Unreviewed, fix that typo in more places
1515
1516         It got copied into webkitdirs.pm!
1517
1518         * Scripts/webkitdirs.pm:
1519         (runInFlatpakIfAvailible):
1520         (runInFlatpakIfAvalaible): Deleted.
1521
1522 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1523
1524         [WPE][GTK] Unreviewed, fix a pervasive typo in the webkit-flatpak script
1525
1526         * flatpak/flatpakutils.py:
1527         (WebkitFlatpak.load_from_args):
1528         (WebkitFlatpak.__init__):
1529         (WebkitFlatpak.run):
1530
1531 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1532
1533         [WPE][GTK] Unreviewed, update to latest GNOME SDK
1534
1535         * flatpak/org.webkit.WebKit.yaml:
1536
1537 2018-09-19  Michael Catanzaro  <mcatanzaro@igalia.com>
1538
1539         Unreviewed, rolling out r235500.
1540
1541         Time to switch back to master runtime
1542
1543         Reverted changeset:
1544
1545         "Unreviewed, rolling out r235114."
1546         https://bugs.webkit.org/show_bug.cgi?id=188731
1547         https://trac.webkit.org/changeset/235500
1548
1549 2018-09-19  Adrian Perez de Castro  <aperez@igalia.com>
1550
1551         Unreviewed. Add Pablo Saavedra to the list of contributors.
1552
1553         * Scripts/webkitpy/common/config/contributors.json:
1554
1555 2018-09-19  Philippe Normand  <pnormand@igalia.com>
1556
1557         [GStreamer] Add support for AV1 decoding
1558         https://bugs.webkit.org/show_bug.cgi?id=189647
1559
1560         Reviewed by Žan Doberšek.
1561
1562         Add patches required for AV1 decoding support. They're all
1563         upstream already and will be shipped in GStreamer 1.16. The aom
1564         GStreamer plugin depends on the aom library for which there's no
1565         official release yet.
1566
1567         * gstreamer/jhbuild.modules:
1568         * gstreamer/patches/gst-plugins-bad-0001-aomenc-Add-support-for-10-12bit-decoding.patch: Added.
1569         * gstreamer/patches/gst-plugins-bad-0002-aomenc-Handle-8-bit_depth-images-with-AOM_IMG_FMT_HI.patch: Added.
1570         * 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.
1571         * gstreamer/patches/gst-plugins-good-0004-qtdemux-Add-initial-support-for-AV1-demuxing.patch: Added.
1572         * gstreamer/patches/gst-plugins-good-0005-qtdemux-Extract-AV1-codec_data-and-put-it-in-the-cap.patch: Added.
1573         * gstreamer/patches/gst-plugins-good-0006-qtdemux-Recognize-more-AV1-atoms.patch: Added.
1574
1575 2018-09-18  Jonathan Bedard  <jbedard@apple.com>
1576
1577         webkitpy: Clobbering and building occurs multiple times for iOS Simulator ports
1578         https://bugs.webkit.org/show_bug.cgi?id=189702
1579         <rdar://problem/44541704>
1580
1581         Reviewed by Aakash Jain.
1582
1583         * Scripts/webkitpy/layout_tests/controllers/manager.py:
1584         (Manager._set_up_run): Move build check and clobbering to run, since set up is
1585         run multiple times for iOS simulator.
1586         (Manager.run):
1587
1588 2018-09-18  Chris Dumez  <cdumez@apple.com>
1589
1590         "DidFirstVisuallyNonEmptyLayout" callback does not get called when restoring a page from PageCache
1591         https://bugs.webkit.org/show_bug.cgi?id=189681
1592         <rdar://problem/44526171>
1593
1594         Reviewed by Alex Christensen and Zalan Bujtas.
1595
1596         Add API test coverage.
1597
1598         * TestWebKitAPI/Tests/WebKit/LayoutMilestonesWithAllContentInFrame.cpp:
1599         (TestWebKitAPI::didFinishNavigation):
1600         (TestWebKitAPI::TEST):
1601
1602 2018-09-18  Claudio Saavedra  <csaavedra@igalia.com>
1603
1604         [WPE] Implement mouse event modifiers
1605         https://bugs.webkit.org/show_bug.cgi?id=189697
1606
1607         Reviewed by Carlos Garcia Campos.
1608
1609         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
1610         (WTR::wkEventModifiersToWPE):
1611         (WTR::EventSenderProxy::mouseDown):
1612         (WTR::EventSenderProxy::mouseUp):
1613
1614 2018-09-17  Yusuke Suzuki  <utatane.tea@gmail.com>
1615
1616         [WTF] Use Semaphore and BinarySemaphore instead of dispatch_semaphore_t
1617         https://bugs.webkit.org/show_bug.cgi?id=185339
1618
1619         Reviewed by Mark Lam.
1620
1621         * TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
1622         (TestWebKitAPI::ToUpperConverter::stopProducing):
1623         (TestWebKitAPI::ToUpperConverter::stopConsuming):
1624
1625 2018-09-17  Simon Fraser  <simon.fraser@apple.com>
1626
1627         Many modern media control tests leak documents in testing
1628         https://bugs.webkit.org/show_bug.cgi?id=189437
1629
1630         Reviewed by Darin Adler.
1631         
1632         In order to accurately detect leaks in media controls tests which use lots of
1633         SVGImages, we have to:
1634         - Fire a zero-delay timer after the postTask, in order for ImagesLoader's m_derefElementTimer
1635           to clear references to elements.
1636         - Have releaseCriticalMemory() call CachedResourceLoader's garbageCollectDocumentResources()
1637           to drop the last handle to the CachedResource for an SVGImage.
1638         - Call WKBundleReleaseMemory() after the GC and timer, since we need garbageCollectDocumentResources()
1639           to run again after that timer has fired.
1640         
1641         This should fix most of the spurious leak reports involving SVGImage documents.
1642
1643         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1644         (WTR::InjectedBundle::reportLiveDocuments):
1645         (WTR::InjectedBundle::didReceiveMessageToPage):
1646
1647 2018-09-17  Chris Dumez  <cdumez@apple.com>
1648
1649         PSON: window.open() with 'noopener' should only process-swap cross-site, not cross-origin
1650         https://bugs.webkit.org/show_bug.cgi?id=189602
1651         <rdar://problem/44430549>
1652
1653         Reviewed by Geoff Garen.
1654
1655         Add API test coverage.
1656
1657         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
1658
1659 2018-09-17  Philippe Normand  <pnormand@igalia.com>
1660
1661         [JHBuild] Update to GStreamer 1.14.3
1662         https://bugs.webkit.org/show_bug.cgi?id=189450
1663
1664         Reviewed by Xabier Rodriguez-Calvar.
1665
1666         * gstreamer/jhbuild.modules: Bump GStreamer modules from 1.14.1 to 1.14.3.
1667
1668 2018-09-17  Philippe Normand  <pnormand@igalia.com>
1669
1670         [JHBuild] Doesn't check sha256 sums
1671         https://bugs.webkit.org/show_bug.cgi?id=189646
1672
1673         Reviewed by Michael Catanzaro.
1674
1675         * gstreamer/jhbuild.modules: Properly set the sha256: prefix on hashes.
1676
1677 2018-09-17  Sihui Liu  <sihui_liu@apple.com>
1678
1679         Move IndexedDB to Network Process
1680         https://bugs.webkit.org/show_bug.cgi?id=189415
1681         <rdar://problem/44396973>
1682
1683         Reviewed by Chris Dumez.
1684
1685         * TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
1686         (TEST):
1687         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
1688         (TEST):
1689         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
1690         (TEST):
1691         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
1692         (TEST):
1693         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
1694         (TEST):
1695
1696 2018-09-08  Darin Adler  <darin@apple.com>
1697
1698         Streamline JSRetainPtr, fix leaks of JSString and JSGlobalContext
1699         https://bugs.webkit.org/show_bug.cgi?id=189455
1700
1701         Reviewed by Keith Miller.
1702
1703         There is a lot of copied and pasted code for WebKit vs. Legacy WebKit
1704         testing and even for macOS vs. iOS vs. Windows platform-specific code.
1705         For now, this patch just makes corresponding changes to the copied code.
1706         Later we might get better results by merging more code instead of having
1707         all these separate copies.
1708
1709         * DumpRenderTree/AccessibilityController.cpp:
1710         (AccessibilityController::makeWindowObject): Use the adopt function
1711         instead of the special Adopt constructor of JSRetainPtr.
1712
1713         * DumpRenderTree/AccessibilityTextMarker.cpp: Removed unneeded include.
1714
1715         * DumpRenderTree/AccessibilityUIElement.cpp: Ditto.
1716         (allAttributesCallback): Don't adopt at this level; changed the
1717         underlying function to return a JSRetainPtr so the adopt is right next
1718         to the call to the create or copy function.
1719         (attributesOfLinkedUIElementsCallback): Ditto.
1720         (attributesOfDocumentLinksCallback): Ditto.
1721         (attributesOfChildrenCallback): Ditto.
1722         (parameterizedAttributeNamesCallback): Ditto.
1723         (attributesOfColumnHeadersCallback): Ditto.
1724         (attributesOfRowHeadersCallback): Ditto.
1725         (attributesOfColumnsCallback): Ditto.
1726         (attributesOfRowsCallback): Ditto.
1727         (attributesOfVisibleCellsCallback): Ditto.
1728         (attributesOfHeaderCallback): Ditto.
1729         (rowIndexRangeCallback): Ditto.
1730         (columnIndexRangeCallback): Ditto.
1731         (rangeForLineCallback): Ditto.
1732         (boundsForRangeCallback): Ditto.
1733         (rangeForPositionCallback): Ditto.
1734         (stringForRangeCallback): Ditto.
1735         (attributedStringForRangeCallback): Ditto.
1736         (uiElementCountForSearchPredicateCallback): Use the free adopt
1737         function instead of the adopt member function.
1738         (uiElementForSearchPredicateCallback): Ditto.
1739         (selectTextWithCriteriaCallback): Don't adopt at this level.
1740         (attributedStringForElementCallback): Ditto.
1741         (setValueCallback): Use free adopt.
1742         (stringAttributeValueCallback): Don't adopt at this level.
1743         (uiElementArrayAttributeValueCallback): Ditto.
1744         (uiElementAttributeValueCallback): Ditto.
1745         (stringForTextMarkerRangeCallback): Ditto.
1746         (attributedStringForTextMarkerRangeCallback): Ditto.
1747         (attributedStringForTextMarkerRangeWithOptionsCallback): Ditto.
1748         (getARIADropEffectsCallback): Ditto.
1749         (getClassListCallback): Ditto.
1750         (getRoleCallback): Ditto.
1751         (getSubroleCallback): Ditto.
1752         (getRoleDescriptionCallback): Ditto.
1753         (getComputedRoleStringCallback): Ditto.
1754         (getTitleCallback): Ditto.
1755         (getDescriptionCallback): Ditto.
1756         (getStringValueCallback): Ditto.
1757         (getLanguageCallback): Ditto.
1758         (getHelpTextCallback): Ditto.
1759         (getOrientationCallback): Ditto.
1760         (getPathDescriptionCallback): Ditto.
1761         (getSelectedTextRangeCallback): Ditto.
1762         (speakAsCallback): Ditto.
1763         (getValueDescriptionCallback): Ditto.
1764         (getAccessibilityValueCallback): Ditto.
1765         (getDocumentEncodingCallback): Ditto.
1766         (getDocumentURICallback): Ditto.
1767         (getURLCallback): Ditto.
1768         (characterAtOffsetCallback): Ditto.
1769         (wordAtOffsetCallback): Ditto.
1770         (lineAtOffsetCallback): Ditto.
1771         (sentenceAtOffsetCallback): Ditto.
1772         (stringForSelectionCallback): Ditto.
1773         (getIdentifierCallback): Ditto.
1774         (getTraitsCallback): Ditto.
1775         (supportedActionsCallback): Ditto.
1776         (mathPostscriptsDescriptionCallback): Ditto.
1777         (mathPrescriptsDescriptionCallback): Ditto.
1778         (AccessibilityUIElement::rangeForLine): Updated to return JSRetainPtr.
1779         (AccessibilityUIElement::rangeForPosition): Ditto.
1780         (AccessibilityUIElement::speakAs): Ditto.
1781         (AccessibilityUIElement::pathDescription const): Ditto.
1782         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
1783         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
1784         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
1785
1786         * DumpRenderTree/AccessibilityUIElement.h: Use JSRetainPtr instead of
1787         raw pointers for the results of the functions that create strings.
1788         The old way was difficult to get right; the functions didn't even follow
1789         the create/copy naming rule.
1790
1791         * DumpRenderTree/Bindings/CodeGeneratorDumpRenderTree.pm:
1792         (_platformTypeConstructor): Use the adopt function instead of the
1793         JSRetainPtr adopt constructor. Also nullptr instead of 0.
1794
1795         * DumpRenderTree/GCController.cpp:
1796         (GCController::makeWindowObject): Use adopt function instead of constructor.
1797
1798         * DumpRenderTree/TestRunner.cpp:
1799         (pathToLocalResourceCallback): Use adopt function instead of constructor.
1800         (addDisallowedURLCallback): Ditto.
1801         (addURLToRedirectCallback): Ditto.
1802         (clearApplicationCacheForOriginCallback): Ditto.
1803         (applicationCacheDiskUsageForOriginCallback): Ditto.
1804         (decodeHostNameCallback): Don't adopt at this level.
1805         (encodeHostNameCallback): Ditto.
1806         (execCommandCallback): Use adopt instead of JSRetainPtr::adopt.
1807         (findStringCallback): Use adopt function instead of constructor.
1808         (isCommandEnabledCallback): Ditto.
1809         (overridePreferenceCallback): Ditto.
1810         (queueLoadCallback): Ditto.
1811         (queueLoadHTMLStringCallback): Ditto.
1812         (queueLoadingScriptCallback): Ditto.
1813         (queueNonLoadingScriptCallback): Ditto.
1814         (setAuthenticationPasswordCallback): Ditto.
1815         (setAuthenticationUsernameCallback): Ditto.
1816         (setDomainRelaxationForbiddenForURLSchemeCallback): Ditto.
1817         (setMockGeolocationPositionUnavailableErrorCallback): Ditto.
1818         (setPOSIXLocaleCallback): Ditto.
1819         (setPersistentUserStyleSheetLocationCallback): Ditto.
1820         (setUserStyleSheetLocationCallback): Ditto.
1821         (setValueForUserCallback): Ditto.
1822         (setWillSendRequestClearHeaderCallback): Ditto.
1823         (setPageVisibilityCallback): Ditto.
1824         (evaluateInWebInspectorCallback): Ditto.
1825         (evaluateScriptInIsolatedWorldCallback): Ditto.
1826         (evaluateScriptInIsolatedWorldAndReturnValueCallback): Ditto.
1827         (addOriginAccessWhitelistEntryCallback): Ditto.
1828         (removeOriginAccessWhitelistEntryCallback): Ditto.
1829         (setScrollbarPolicyCallback): Ditto.
1830         (addUserScriptCallback): Ditto.
1831         (addUserStyleSheetCallback): Ditto.
1832         (apiTestNewWindowDataLoadBaseURLCallback): Ditto.
1833         (authenticateSessionCallback): Ditto.
1834         (getTitleTextDirectionCallback): Ditto.
1835         (getInspectorTestStubURLCallback): Ditto.
1836         (simulateLegacyWebNotificationClickCallback): Ditto.
1837         (setTextDirectionCallback): Ditto.
1838         (grantWebNotificationPermissionCallback): Ditto.
1839         (denyWebNotificationPermissionCallback): Ditto.
1840         (accummulateLogsForChannel): Ditto.
1841         (runUIScriptCallback): Ditto.
1842         (TestRunner::makeWindowObject): Ditto.
1843         (TestRunner::uiScriptDidComplete): Ditto.
1844         (TestRunner::setOpenPanelFiles): Ditto.
1845
1846         * DumpRenderTree/TestRunner.h: Use JSRetainPtr instead of
1847         raw pointers for the results of the functions that create strings.
1848
1849         * DumpRenderTree/ios/AccessibilityControllerIOS.mm:
1850         (AccessibilityController::platformName const): Use the adopt
1851         function instead of the adopt constructor.
1852
1853         * DumpRenderTree/ios/AccessibilityUIElementIOS.mm:
1854         (createEmptyJSString): Added. This helper function makes reduces the
1855         repetitive code to create empty strings.
1856         (concatenateAttributeAndValue): Changed to return a JSRetainPtr.
1857         (AccessibilityUIElement::identifier): Ditto.
1858         (AccessibilityUIElement::traits): Ditto.
1859         (AccessibilityUIElement::url): Ditto.
1860         (AccessibilityUIElement::speakAs): Ditto.
1861         (AccessibilityUIElement::stringForSelection): Ditto.
1862         (AccessibilityUIElement::stringForRange): Ditto.
1863         (AccessibilityUIElement::attributedStringForRange): Ditto.
1864         (AccessibilityUIElement::attributedStringForElement): Ditto.
1865         (AccessibilityUIElement::pathDescription const): Ditto.
1866         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
1867         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
1868         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
1869         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
1870         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
1871         (AccessibilityUIElement::attributesOfChildren): Ditto.
1872         (AccessibilityUIElement::allAttributes): Ditto.
1873         (AccessibilityUIElement::stringAttributeValue): Ditto.
1874         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
1875         (AccessibilityUIElement::role): Ditto.
1876         (AccessibilityUIElement::subrole): Ditto.
1877         (AccessibilityUIElement::roleDescription): Ditto.
1878         (AccessibilityUIElement::computedRoleString): Ditto.
1879         (AccessibilityUIElement::title): Ditto.
1880         (AccessibilityUIElement::description): Ditto.
1881         (AccessibilityUIElement::orientation const): Ditto.
1882         (AccessibilityUIElement::stringValue): Ditto.
1883         (AccessibilityUIElement::language): Ditto.
1884         (AccessibilityUIElement::helpText const): Ditto.
1885         (AccessibilityUIElement::valueDescription): Ditto.
1886         (AccessibilityUIElement::ariaDropEffects const): Ditto.
1887         (AccessibilityUIElement::boundsForRange): Ditto.
1888         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
1889         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
1890         (AccessibilityUIElement::attributesOfColumns): Ditto.
1891         (AccessibilityUIElement::attributesOfRows): Ditto.
1892         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
1893         (AccessibilityUIElement::attributesOfHeader): Ditto.
1894         (AccessibilityUIElement::rowIndexRange): Ditto.
1895         (AccessibilityUIElement::columnIndexRange): Ditto.
1896         (AccessibilityUIElement::selectedTextRange): Ditto.
1897         (AccessibilityUIElement::accessibilityValue const): Ditto.
1898         (AccessibilityUIElement::documentEncoding): Ditto.
1899         (AccessibilityUIElement::documentURI): Ditto.
1900         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
1901         (AccessibilityUIElement::classList const): Ditto.
1902
1903         * DumpRenderTree/mac/AccessibilityCommonMac.h: Changed the
1904         createJSStringRef method to return a JSRetainPtr.
1905         * DumpRenderTree/mac/AccessibilityCommonMac.mm:
1906         (-[NSString createJSStringRef]): Ditto.
1907         (searchPredicateParameterizedAttributeForSearchCriteria): Use the
1908         adopt function instead of the adopt constructor.
1909         * DumpRenderTree/mac/AccessibilityControllerMac.mm:
1910         (AccessibilityController::platformName const): Ditto.
1911
1912         * DumpRenderTree/mac/AccessibilityNotificationHandler.mm:
1913         (-[NSString createJSStringRef]): Return a JSRetainPtr.
1914         (makeValueRefForValue): Updated for the above, no adopt needed here now.
1915         (makeObjectRefForDictionary): Ditto.
1916         (-[AccessibilityNotificationHandler _notificationReceived:]): Ditto.
1917
1918         * DumpRenderTree/mac/AccessibilityUIElementMac.mm:
1919         (createEmptyJSString): Added. This helper function makes reduces the
1920         repetitive code to create empty strings.
1921         (concatenateAttributeAndValue): Changed to return a JSRetainPtr.
1922         (descriptionOfElements): Ditto.
1923         (selectTextParameterizedAttributeForCriteria): Ditto.
1924         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
1925         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
1926         (AccessibilityUIElement::attributesOfChildren): Ditto.
1927         (AccessibilityUIElement::allAttributes): Ditto.
1928         (AccessibilityUIElement::stringAttributeValue): Ditto.
1929         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
1930         (AccessibilityUIElement::role): Ditto.
1931         (AccessibilityUIElement::subrole): Ditto.
1932         (AccessibilityUIElement::roleDescription): Ditto.
1933         (AccessibilityUIElement::computedRoleString): Ditto.
1934         (AccessibilityUIElement::title): Ditto.
1935         (AccessibilityUIElement::description): Ditto.
1936         (AccessibilityUIElement::orientation const): Ditto.
1937         (AccessibilityUIElement::stringValue): Ditto.
1938         (AccessibilityUIElement::language): Ditto.
1939         (AccessibilityUIElement::helpText const): Ditto.
1940         (AccessibilityUIElement::valueDescription): Ditto.
1941         (AccessibilityUIElement::speakAs): Ditto.
1942         (AccessibilityUIElement::classList const): Ditto.
1943         (AccessibilityUIElement::ariaDropEffects const): Ditto.
1944         (AccessibilityUIElement::rangeForLine): Ditto.
1945         (AccessibilityUIElement::rangeForPosition): Ditto.
1946         (AccessibilityUIElement::boundsForRange): Ditto.
1947         (AccessibilityUIElement::stringForRange): Ditto.
1948         (AccessibilityUIElement::attributedStringForRange): Ditto.
1949         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
1950         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
1951         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
1952         (AccessibilityUIElement::attributesOfColumns): Ditto.
1953         (AccessibilityUIElement::attributesOfRows): Ditto.
1954         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
1955         (AccessibilityUIElement::attributesOfHeader): Ditto.
1956         (AccessibilityUIElement::rowIndexRange): Ditto.
1957         (AccessibilityUIElement::columnIndexRange): Ditto.
1958         (AccessibilityUIElement::pathDescription const): Ditto.
1959         (AccessibilityUIElement::selectedTextRange): Ditto.
1960         (AccessibilityUIElement::accessibilityValue const): Ditto.
1961         (AccessibilityUIElement::documentEncoding): Ditto.
1962         (AccessibilityUIElement::documentURI): Ditto.
1963         (AccessibilityUIElement::url): Ditto.
1964         (AccessibilityUIElement::stringForTextMarkerRange): Ditto.
1965         (createJSStringRef): Ditto.
1966         (AccessibilityUIElement::attributedStringForTextMarkerRange): Ditto.
1967         (AccessibilityUIElement::attributedStringForTextMarkerRangeWithOptions): Ditto.
1968         (AccessibilityUIElement::supportedActions): Ditto.
1969         (AccessibilityUIElement::mathPostscriptsDescription const): Ditto.
1970         (AccessibilityUIElement::mathPrescriptsDescription const): Ditto.
1971
1972         * DumpRenderTree/mac/FrameLoadDelegate.mm:
1973         (-[FrameLoadDelegate didClearWindowObjectForFrame:inIsolatedWorld:]):
1974         Use the adopt function instead of the adopt constructor.
1975         * DumpRenderTree/mac/TestRunnerMac.mm:
1976         (originsArrayToJS): Ditto.
1977         (TestRunner::copyDecodedHostName): Return a JSRetainPtr.
1978         (TestRunner::copyEncodedHostName): Ditto.
1979         (TestRunner::pathToLocalResource): Ditto.
1980         (TestRunner::queueLoad): Use adopt function instead of constructor.
1981         (TestRunner::findString): Ditto.
1982         (TestRunner::inspectorTestStubURL): Return a JSRetainPtr.
1983
1984         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
1985         (AccessibilityController::winNotificationReceived): Use adopt function
1986         instead of adopt constructor.
1987         (AccessibilityController::platformName const): Ditto.
1988
1989         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
1990         (createEmptyJSString): Added. This helper function makes reduces the
1991         repetitive code to create empty strings.
1992         (AccessibilityUIElement::allAttributes): Changed to return a JSRetainPtr.
1993         (AccessibilityUIElement::attributesOfLinkedUIElements): Ditto.
1994         (AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
1995         (AccessibilityUIElement::attributesOfChildren): Ditto.
1996         (AccessibilityUIElement::parameterizedAttributeNames): Ditto.
1997         (AccessibilityUIElement::role): Ditto.
1998         (AccessibilityUIElement::subrole): Ditto.
1999         (AccessibilityUIElement::roleDescription): Ditto.
2000         (AccessibilityUIElement::computedRoleString): Ditto.
2001         (AccessibilityUIElement::title): Ditto.
2002         (AccessibilityUIElement::description): Ditto.
2003         (AccessibilityUIElement::stringValue): Ditto.
2004         (AccessibilityUIElement::language): Ditto.
2005         (AccessibilityUIElement::helpText const): Ditto.
2006         (AccessibilityUIElement::valueDescription): Ditto.
2007         (AccessibilityUIElement::ariaDropEffects const): Ditto.
2008         (AccessibilityUIElement::orientation const): Ditto.
2009         (AccessibilityUIElement::attributesOfColumnHeaders): Ditto.
2010         (AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2011         (AccessibilityUIElement::attributesOfColumns): Ditto.
2012         (AccessibilityUIElement::attributesOfRows): Ditto.
2013         (AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2014         (AccessibilityUIElement::attributesOfHeader): Ditto.
2015         (AccessibilityUIElement::rowIndexRange): Ditto.
2016         (AccessibilityUIElement::columnIndexRange): Ditto.
2017         (AccessibilityUIElement::boundsForRange): Ditto.
2018         (AccessibilityUIElement::stringForRange): Ditto.
2019         (AccessibilityUIElement::attributedStringForRange): Ditto.
2020         (AccessibilityUIElement::selectTextWithCriteria): Ditto.
2021         (AccessibilityUIElement::selectedTextRange): Ditto.
2022         (AccessibilityUIElement::stringAttributeValue): Ditto.
2023         (AccessibilityUIElement::accessibilityValue const): Ditto.
2024         (AccessibilityUIElement::documentEncoding): Ditto.
2025         (AccessibilityUIElement::documentURI): Ditto.
2026         (AccessibilityUIElement::url): Ditto.
2027         (AccessibilityUIElement::classList const): Ditto.
2028
2029         * DumpRenderTree/win/TestRunnerWin.cpp:
2030         (TestRunner::copyDecodedHostName): Changed to return a JSRetainPtr.
2031         (TestRunner::copyEncodedHostName): Ditto.
2032         (TestRunner::pathToLocalResource): Ditto.
2033         (TestRunner::queueLoad): Ditto.
2034         (TestRunner::findString): Ditto.
2035         (TestRunner::inspectorTestStubURL): Ditto.
2036
2037         * TestRunnerShared/Bindings/JSWrapper.h:
2038         (WTR::setProperty): Use adopt function instead of constructor.
2039         * TestRunnerShared/UIScriptContext/UIScriptContext.cpp:
2040         (UIScriptContext::UIScriptContext): Ditto.
2041         (UIScriptContext::runUIScript): Ditto.
2042         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
2043         (WTR::toDeviceOrientation): Ditto.
2044
2045         * TestRunnerShared/cocoa/LayoutTestSpellChecker.mm:
2046         (nsTextCheckingType): Changed this function to not take an rvalue
2047         reference to a JSRetainPtr since it doesn't take ownership.
2048         (-[LayoutTestSpellChecker setResultsFromJSObject:inContext:]): Updated
2049         for the above change.
2050
2051         * TestWebKitAPI/JavaScriptTest.cpp:
2052         (TestWebKitAPI::javaScriptCallback): Use adopt function instead of
2053         adopt member function.
2054
2055         * TestWebKitAPI/Tests/WebKit/WKPageIsPlayingAudio.cpp: Removed unneeded include.
2056         * TestWebKitAPI/Tests/WebKitCocoa/PictureInPictureDelegate.mm: Ditto.
2057         * TestWebKitAPI/Tests/mac/DOMNodeFromJSObject.mm: Use adopt function instead of
2058         adopt constructor.
2059         * TestWebKitAPI/Tests/mac/JSWrapperForNodeInWebFrame.mm: Ditto.
2060
2061         * WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
2062         Removed unneeded includes.
2063         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarker.cpp: Ditto.
2064         * WebKitTestRunner/InjectedBundle/AccessibilityTextMarkerRange.cpp: Ditto.
2065         * WebKitTestRunner/InjectedBundle/AccessibilityUIElement.cpp: Ditto.
2066
2067         * WebKitTestRunner/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm:
2068         (_platformTypeConstructor): Use the adopt function instead of the
2069         JSRetainPtr adopt constructor. Also nullptr instead of 0.
2070
2071         * WebKitTestRunner/InjectedBundle/EventSendingController.cpp:
2072         (WTR::arrayLength): Use adopt function instead of constructor.
2073         (WTR::parseModifierArray): Ditto.
2074         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2075         (WTR::propertyValue): Ditto.
2076         (WTR::dumpPath): Ditto.
2077         (WTR::toJS): Ditto.
2078         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2079         (WTR::TestRunner::findString): Ditto.
2080         (WTR::TestRunner::statisticsDidRunTelemetryCallback): Ditto.
2081         (WTR::TestRunner::callDidReceiveAllStorageAccessEntriesCallback): Ditto.
2082         (WTR::TestRunner::setOpenPanelFiles): Ditto.
2083         * WebKitTestRunner/InjectedBundle/ios/AccessibilityControllerIOS.mm:
2084         (WTR::AccessibilityController::platformName): Ditto.
2085
2086         * WebKitTestRunner/InjectedBundle/ios/AccessibilityUIElementIOS.mm:
2087         (-[NSString createJSStringRef]): Return a JSRetainPtr.
2088         This fixes storage leaks in many functions below, which were using
2089         the create function and putting the value right into a JSRetainPtr
2090         without adoption.
2091         (WTR::createEmptyJSString): Added. This helper function reduces the
2092         repetitive code to create empty strings.
2093         (WTR::concatenateAttributeAndValue): Return a JSRetainPtr.
2094         (WTR::AccessibilityUIElement::attributesOfLinkedUIElements):
2095         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2096         (WTR::AccessibilityUIElement::attributesOfDocumentLinks): Ditto.
2097         (WTR::AccessibilityUIElement::attributesOfChildren): Ditto.
2098         (WTR::AccessibilityUIElement::allAttributes): Ditto.
2099         (WTR::AccessibilityUIElement::stringAttributeValue): Ditto.
2100         (WTR::AccessibilityUIElement::parameterizedAttributeNames): Ditto.
2101         (WTR::AccessibilityUIElement::role): Ditto.
2102         (WTR::AccessibilityUIElement::subrole): Ditto.
2103         (WTR::AccessibilityUIElement::roleDescription): Ditto.
2104         (WTR::AccessibilityUIElement::computedRoleString): Ditto.
2105         (WTR::AccessibilityUIElement::title): Ditto.
2106         (WTR::AccessibilityUIElement::orientation const): Ditto.
2107         (WTR::AccessibilityUIElement::language): Ditto.
2108         (WTR::AccessibilityUIElement::valueDescription): Ditto.
2109         (WTR::AccessibilityUIElement::ariaDropEffects const): Ditto.
2110         (WTR::AccessibilityUIElement::boundsForRange): Ditto.
2111         (WTR::AccessibilityUIElement::stringForRange): Removed unneeded null check.
2112         (WTR::AccessibilityUIElement::attributedStringForRange): Ditto.
2113         (WTR::AccessibilityUIElement::attributesOfColumnHeaders):
2114         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2115         (WTR::AccessibilityUIElement::attributesOfRowHeaders): Ditto.
2116         (WTR::AccessibilityUIElement::attributesOfColumns): Ditto.
2117         (WTR::AccessibilityUIElement::attributesOfRows): Ditto.
2118         (WTR::AccessibilityUIElement::attributesOfVisibleCells): Ditto.
2119         (WTR::AccessibilityUIElement::attributesOfHeader): Ditto.
2120         (WTR::AccessibilityUIElement::selectedTextRange): Ditto.
2121         (WTR::AccessibilityUIElement::accessibilityValue const): Ditto.
2122         (WTR::AccessibilityUIElement::documentEncoding): Ditto.
2123         (WTR::AccessibilityUIElement::documentURI): Ditto.
2124         (WTR::AccessibilityUIElement::stringForSelection): Removed unneeded
2125         null check.
2126         (WTR::AccessibilityUIElement::stringForTextMarkerRange):
2127         Use createEmptyJSString, fixing a storage leak due to missing adoption.
2128
2129         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.h:
2130         Use JSRetainPtr for the return value of createJSStringRef.
2131         * WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm:
2132         (-[NSString createJSStringRef]): Ditto.
2133         (WTR::searchPredicateParameterizedAttributeForSearchCriteria): Use the
2134         adopt function instead of the adopt constructor.
2135         * WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
2136         (WTR::AccessibilityController::platformName): Ditto
2137
2138         * WebKitTestRunner/InjectedBundle/mac/AccessibilityNotificationHandler.mm:
2139         (-[NSString createJSStringRef]): Return a JSRetainPtr.
2140         (makeValueRefForValue): Updated for above by removing adopt.
2141         (makeObjectRefForDictionary): Ditto.
2142         (-[AccessibilityNotificationHandler _notificationReceived:]): Ditto.
2143
2144         * WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
2145         (WTR::createEmptyJSString): Added. This helper function makes reduces the
2146         repetitive code to create empty strings.
2147         (WTR::concatenateAttributeAndValue): Return a JSRetainPtr.
2148         (WTR::descriptionOfElements): Ditto.
2149         (WTR::selectTextParameterizedAttributeForCriteria): Ditto.
2150         (WTR::AccessibilityUIElement::accessibilityValue const): Use createEmptyJSString,
2151         fixing a storage leak due to missing adoption.
2152         (WTR::AccessibilityUIElement::documentEncoding): Ditto.
2153         (WTR::AccessibilityUIElement::documentURI): Ditto.
2154         (WTR::createJSStringRef): Return a JSRetainPtr.
2155
2156         * WebKitTestRunner/StringFunctions.h:
2157         (WTR::toWK): Take a const& to eliminate a little bit of reference count churn.
2158         (WTR::toJS): Use the adopt function instead of the constructor.
2159
2160 2018-09-14  Dean Jackson  <dino@grorg.org>
2161
2162         Add Justin Michaud.
2163
2164         * Scripts/webkitpy/common/config/contributors.json:
2165
2166 2018-09-14  Ryan Haddad  <ryanhaddad@apple.com>
2167
2168         bots should pass --clobber-old-results to run-webkit-tests
2169         https://bugs.webkit.org/show_bug.cgi?id=189623
2170
2171         Reviewed by Aakash Jain.
2172
2173         In order to ensure that bots to not produce confusing results due to transient execptions,
2174         or run out of space if they continually hit an exception, old layout test results should be clobbered.
2175
2176         * BuildSlaveSupport/build.webkit.org-config/steps.py:
2177         (RunWebKitTests):
2178
2179 2018-09-13  Ryan Haddad  <ryanhaddad@apple.com>
2180
2181         Unreviewed, rolling out r235954.
2182
2183         Breaks the watchOS build.
2184
2185         Reverted changeset:
2186
2187         "Move IndexedDB to Network Process"
2188         https://bugs.webkit.org/show_bug.cgi?id=189415
2189         https://trac.webkit.org/changeset/235954
2190
2191 2018-09-13  Daniel Bates  <dabates@apple.com>
2192
2193         Add Copy WebKit Permalink plugin for Sublime Text
2194         https://bugs.webkit.org/show_bug.cgi?id=189589
2195
2196         Rubber-stamped by Joseph Pecoraro.
2197
2198         Port the Copy WebKit Permalink Automator service to a Sublime Text plugin. Once installed you can
2199         use the plugin to copy to the Clipboard a trac.webkit.org hyperlink to the selected line in the
2200         active document with or without blame annotations.
2201
2202         Once installed, you can Control-click (on Mac) or right-click (on Windows and Linux) on a line and
2203         choose Copy WebKit Permalink or Copy WebKit Permalink to Blame from the context menu to copy to the
2204         Clipboard a permanent hyperlink to the selected line without or with blame annotations, respectively.
2205         On Mac you can also invoke the same functionality using the keyboard shortcuts Command + Shift + Control + C
2206         and Command + Shift + Control + Option + C, respectively.
2207
2208         * CopyPermalink/Sublime Text/CopyWebKitPermalink/Context.sublime-menu: Added.
2209         * CopyPermalink/Sublime Text/CopyWebKitPermalink/CopyWebKitPermalink.py: Added.
2210         * CopyPermalink/Sublime Text/CopyWebKitPermalink/Default (OSX).sublime-keymap: Added.
2211         * CopyPermalink/Sublime Text/INSTALL: Added.
2212         * CopyPermalink/Xcode/Copy WebKit Permalink.workflow/Contents/Info.plist: Renamed from Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/Info.plist.
2213         * CopyPermalink/Xcode/Copy WebKit Permalink.workflow/Contents/document.wflow: Renamed from Tools/CopyPermalink/Copy WebKit Permalink.workflow/Contents/document.wflow.
2214         * CopyPermalink/Xcode/INSTALL: Renamed from Tools/CopyPermalink/README.
2215
2216 2018-09-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2217
2218         Unreviewed. Fix WebDriver tests after r235225.
2219
2220         Use wpt serve command to run the http server.
2221
2222         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
2223         (WebDriverW3CWebServer.__init__):
2224         (WebDriverW3CWebServer.start):
2225         (WebDriverW3CWebServer.stop):
2226
2227 2018-09-13  Carlos Garcia Campos  <cgarcia@igalia.com>
2228
2229         [GTK][WPE] Allow to run script dialogs asynchronously in the UI process
2230         https://bugs.webkit.org/show_bug.cgi?id=189544
2231
2232         Reviewed by Michael Catanzaro.
2233
2234         Add test cases for the new API.
2235
2236         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
2237         (testWebViewJavaScriptDialogs):
2238
2239 2018-09-12  Fujii Hironori  <Hironori.Fujii@sony.com>
2240
2241         [Win][Clang][ImageDiff] Fix compilation error and warning of PlatformImageCairo.cpp
2242         https://bugs.webkit.org/show_bug.cgi?id=189496
2243         <rdar://problem/44370981>
2244
2245         Unreviewed warning fix.
2246
2247         r235929 has introduced a new compilation warning:
2248         > Tools/ImageDiff/cairo/PlatformImageCairo.cpp:34:70: warning: unused parameter ‘imageSize’ [-Wunused-parameter]
2249
2250         * ImageDiff/cairo/PlatformImageCairo.cpp:
2251         (ImageDiff::PlatformImage::createFromStdin): Removed the variable name.
2252
2253 2018-09-12  Dan Bernstein  <mitz@apple.com>
2254
2255         [Cocoa] Complete support for Paste as Quotation
2256         https://bugs.webkit.org/show_bug.cgi?id=189504
2257
2258         Reviewed by Wenson Hsieh.
2259
2260         * MiniBrowser/mac/MainMenu.xib: Added a Paste as Quotation command in the Edit menu.
2261
2262 2018-09-12  Sihui Liu  <sihui_liu@apple.com>
2263
2264         Move IndexedDB to Network Process
2265         https://bugs.webkit.org/show_bug.cgi?id=189415
2266
2267         Reviewed by Geoffrey Garen.
2268
2269         * TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
2270         (TEST):
2271         * TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
2272         (TEST):
2273         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
2274         (TEST):
2275         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
2276         (TEST):
2277         * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
2278         (TEST):
2279
2280 2018-09-12  Chris Dumez  <cdumez@apple.com>
2281
2282         PSON: No process swap on back navigation after URL bar navigation
2283         https://bugs.webkit.org/show_bug.cgi?id=189557
2284         <rdar://problem/44353108>
2285
2286         Reviewed by Alex Christensen.
2287
2288         Add API test coverage.
2289
2290         * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
2291
2292 2018-09-11  Dean Jackson  <dino@apple.com>
2293
2294         Header parsing for experimental and internal debug features
2295         https://bugs.webkit.org/show_bug.cgi?id=189486
2296         <rdar://problem/44320618>
2297
2298         Reviewed by Tim Horton.
2299
2300         Keep track of experimental and internal debug features in TestOptions, and
2301         allow webkit-test-runner headers to toggle them by name.
2302
2303         * DumpRenderTree/TestOptions.cpp:
2304         (TestOptions::TestOptions):
2305         * WebKitTestRunner/TestController.cpp:
2306         (WTR::TestController::resetPreferencesToConsistentValues):
2307         (WTR::updateTestOptionsFromTestHeader):
2308         * WebKitTestRunner/TestOptions.h:
2309         (WTR::TestOptions::hasSameInitializationOptions const):
2310
2311 2018-09-12  Fujii Hironori  <Hironori.Fujii@sony.com>
2312
2313         [Win][Clang][DumpRenderTree] 0 and nullptr can't be implicitly converted to AccessibilityUIElement
2314         https://bugs.webkit.org/show_bug.cgi?id=189492
2315
2316         Reviewed by Alex Christensen.
2317
2318         0 and nullptr can't be implicitly converted to
2319         AccessibilityUIElement because only Windows port typedefs
2320         PlatformUIElement as COMPtr<IAccessible> not a pointer.
2321
2322         Replaced "return 0" and "return nullptr" with "return { nullptr }".
2323
2324         * DumpRenderTree/AccessibilityUIElement.cpp:
2325         (AccessibilityUIElement::horizontalScrollbar const):
2326         (AccessibilityUIElement::verticalScrollbar const):
2327         (AccessibilityUIElement::uiElementAttributeValue const):
2328         (AccessibilityUIElement::accessibilityElementForTextMarker):
2329         * DumpRenderTree/win/AccessibilityControllerWin.cpp:
2330         (AccessibilityController::elementAtPoint):
2331         (AccessibilityController::accessibleElementById):
2332         (AccessibilityController::focusedElement):
2333         (AccessibilityController::rootElement):
2334         * DumpRenderTree/win/AccessibilityUIElementWin.cpp:
2335         (AccessibilityUIElement::elementAtPoint):
2336         (AccessibilityUIElement::linkedUIElementAtIndex):
2337         (AccessibilityUIElement::getChildAtIndex):
2338         (AccessibilityUIElement::titleUIElement):
2339         (AccessibilityUIElement::parentElement):
2340         (AccessibilityUIElement::uiElementForSearchPredicate):
2341         (AccessibilityUIElement::cellForColumnAndRow):
2342         (AccessibilityUIElement::disclosedRowAtIndex):
2343         (AccessibilityUIElement::ariaOwnsElementAtIndex):
2344         (AccessibilityUIElement::ariaFlowToElementAtIndex):
2345         (AccessibilityUIElement::ariaControlsElementAtIndex):
2346         (AccessibilityUIElement::selectedRowAtIndex):
2347         (AccessibilityUIElement::rowAtIndex):
2348         (AccessibilityUIElement::disclosedByRow):
2349         (AccessibilityUIElement::selectedChildAtIndex const):
2350
2351 2018-09-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2352
2353         FontManagerTests.ChangeFontColorWithColorPanel fails on macOS Sierra
2354         https://bugs.webkit.org/show_bug.cgi?id=189382
2355
2356         Reviewed by Ryosuke Niwa.
2357
2358         Fix the test by specifying colors in RGB colorspace.
2359
2360         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
2361         (TestWebKitAPI::TEST):
2362
2363 2018-09-11  Fujii Hironori  <Hironori.Fujii@sony.com>
2364
2365         [Win][Clang][ImageDiff] Fix compilation error and warning of PlatformImageCairo.cpp
2366         https://bugs.webkit.org/show_bug.cgi?id=189496
2367
2368         Reviewed by Alex Christensen.
2369
2370         * ImageDiff/cairo/PlatformImageCairo.cpp:
2371         (ImageDiff::PlatformImage::createFromStdin): Removed unnecessary ReadContext struct.
2372         (ImageDiff::PlatformImage::writeAsPNGToStdout): Use '%lu' format type specifier for unsigned long.
2373
2374 2018-09-07  Dean Jackson  <dino@apple.com>
2375
2376         Add and expose Internal features from WebKit
2377         https://bugs.webkit.org/show_bug.cgi?id=189442
2378         <rdar://problem/44243404>
2379
2380         Reviewed by Simon Fraser.
2381
2382         Update MiniBrowser to expose an Internal feature menu.
2383
2384         * MiniBrowser/mac/AppDelegate.m:
2385         (defaultConfiguration):
2386         * MiniBrowser/mac/SettingsController.m:
2387         (-[SettingsController _populateMenu]):
2388         (-[SettingsController validateMenuItem:]):
2389         (-[SettingsController toggleExperimentalFeature:]):
2390         (-[SettingsController toggleInternalDebugFeature:]):
2391
2392 2018-09-11  Wenson Hsieh  <wenson_hsieh@apple.com>
2393
2394         [macOS] [WK2] Support changing foreground colors via color panel
2395         https://bugs.webkit.org/show_bug.cgi?id=189382
2396         <rdar://problem/44227311>
2397
2398         Reviewed by Ryosuke Niwa.
2399
2400         Add an API test that uses NSColorPanel to change the color of selected text, and also apply typing styles when
2401         the selection is collapsed. The test also exercises switching between opaque colors (alpha = 1) and transparent
2402         colors, as well as making different parts of a word different colors.
2403
2404         * TestWebKitAPI/Tests/mac/FontManagerTests.mm:
2405         (-[TestWKWebView collapseToEnd]):
2406         (webViewForFontManagerTesting):
2407         (TestWebKitAPI::TEST):
2408         * TestWebKitAPI/cocoa/TestWKWebView.h:
2409
2410 == Rolled over to ChangeLog-2018-09-11 ==