Add support for webkitpy tests EWS
[WebKit-https.git] / Tools / ChangeLog
1 2017-11-07  Aakash Jain  <aakash_jain@apple.com>
2
3         Add support for webkitpy tests EWS
4         https://bugs.webkit.org/show_bug.cgi?id=178480
5
6         Reviewed by Alexey Proskuryakov.
7
8         * Scripts/webkitpy/common/config/ews.json: Added webkitpy EWS.
9         * Scripts/webkitpy/common/net/generictestresults.py: Renamed from Scripts/webkitpy/common/net/bindingstestresults.py.
10         * Scripts/webkitpy/common/net/generictestresults_unittest.py: Renamed from Scripts/webkitpy/common/net/bindingstestresults_unittest.py.
11         * Scripts/webkitpy/tool/bot/patchanalysistask.py:
12         (PatchAnalysisTask._test_patch): Do not retry webkitpy test since they are not flaky.
13         * Scripts/webkitpy/tool/bot/bindingstestresultsreader.py: Updated import for BindingsTestResult.
14         * Scripts/webkitpy/tool/bot/retrylogic_unittest.py: Ditto.
15         * Scripts/webkitpy/tool/bot/webkitpytestresultsreader.py: Copied from Scripts/webkitpy/tool/bot/bindingstestresultsreader.py.
16         * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
17         (AbstractEarlyWarningSystem.begin_work_queue): Added webkitpy test result reader.
18         * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: Updated unit-tests.
19         * Scripts/webkitpy/tool/steps/checkpatchrelevance.py: Run webkitpy EWS only for relevant changes.
20         * Scripts/webkitpy/tool/steps/runtests.py:
21         (RunTests.run): Run webkitpy tests when --group=webkitpy is passed.
22         (RunTests._run_webkitpy_tests): Method to invoke webkitpy tests.
23         * Scripts/webkitpy/tool/steps/steps_unittest.py:
24         (test_runtests_webkitpy): Added unit-test.
25
26 2017-11-07  Commit Queue  <commit-queue@webkit.org>
27
28         Unreviewed, rolling out r224512 and r224521.
29         https://bugs.webkit.org/show_bug.cgi?id=179388
30
31         An API test added with this change is failing an assertion on
32         the bots. (Requested by ryanhaddad on #webkit).
33
34         Reverted changesets:
35
36         "[Attachment Support] Implement delegate hooks for attachment
37         element insertion and removal"
38         https://bugs.webkit.org/show_bug.cgi?id=179016
39         https://trac.webkit.org/changeset/224512
40
41         "Remove stray logging from a newly added API test"
42         https://trac.webkit.org/changeset/224521
43
44 2017-11-06  Wenson Hsieh  <wenson_hsieh@apple.com>
45
46         Remove stray logging from a newly added API test
47
48         This was only for debugging purposes, and should have been removed before landing.
49
50         Rubber-stamped by Tim Horton.
51
52         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
53         (TestWebKitAPI::TEST):
54
55 2017-11-06  Jonathan Bedard  <jbedard@apple.com>
56
57         Only build ImageDiff for mac
58         https://bugs.webkit.org/show_bug.cgi?id=179349
59         <rdar://problem/35376237>
60
61         Reviewed by Tim Horton.
62
63         * ImageDiff/Makefile:
64
65 2017-11-06  Wenson Hsieh  <wenson_hsieh@apple.com>
66
67         Unreviewed, fix the internal build after updating to a newer SDK
68
69         There shouldn't be any need to include and implement these method stubs anymore,
70         even when building against the shipping iOS 11 SDK.
71
72         * TestWebKitAPI/ios/DataInteractionSimulator.mm:
73         (-[MockDropSession session]): Deleted.
74
75 2017-11-06  Wenson Hsieh  <wenson_hsieh@apple.com>
76
77         [Attachment Support] Implement delegate hooks for attachment element insertion and removal
78         https://bugs.webkit.org/show_bug.cgi?id=179016
79         <rdar://problem/35250890>
80
81         Reviewed by Tim Horton.
82
83         Introduces new API tests to check that various editing operations will or won't result in the new attachment
84         insertion and removal delegate hooks being fired. Additionally refactors an existing test to verify that
85         attachments insertion and removal is observable by the UI delegate.
86
87         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
88         (-[AttachmentUpdateObserver init]):
89         (-[AttachmentUpdateObserver inserted]):
90         (-[AttachmentUpdateObserver removed]):
91         (-[AttachmentUpdateObserver _webView:didInsertAttachment:]):
92         (-[AttachmentUpdateObserver _webView:didRemoveAttachment:]):
93         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::ObserveAttachmentUpdatesForScope):
94         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::~ObserveAttachmentUpdatesForScope):
95         (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
96
97         Implement a testing mechanism to temporarily bind a UI delegate to a given WKWebView and listen for inserted or
98         removed attachments over the course of a particular scope. The API tests use this mechanism to check that the UI
99         delegate hooks added in this patch are invoked with the right attachments when performing edit commands.
100
101         (-[TestWKWebView _synchronouslyExecuteEditCommand:argument:]):
102         (-[TestWKWebView expectUpdatesAfterCommand:withArgument:expectedRemovals:expectedInsertions:]):
103         (TestWebKitAPI::TEST):
104
105 2017-11-06  Christopher Reid  <chris.reid@sony.com>
106
107         Use enum classes within FileSystem
108         https://bugs.webkit.org/show_bug.cgi?id=175172
109
110         Reviewed by Myles C. Maxfield.
111
112         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
113         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
114
115 2017-11-06  Michael Catanzaro  <mcatanzaro@igalia.com>
116
117         [WPE] -Wsign-compare warning in EventSenderProxyWPE.cpp
118         https://bugs.webkit.org/show_bug.cgi?id=179039
119
120         Reviewed by Žan Doberšek.
121
122         * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
123         (WTR::EventSenderProxy::updateTouchPoint):
124         (WTR::EventSenderProxy::releaseTouchPoint):
125
126 2017-11-06  Robin Morisset  <rmorisset@apple.com>
127
128         Add a third benchmark to TailBench
129         https://bugs.webkit.org/show_bug.cgi?id=178815
130
131         Reviewed by Saam Barati.
132
133         Add a new benchmark to TailBench: a BF interpreter written in a weird kinda functional style
134
135         * Scripts/run-jsc-benchmarks:
136
137 2017-11-04  Michael Catanzaro  <mcatanzaro@igalia.com>
138
139         [GTK] Fix gtk-doc generation with gtk-doc master
140         https://bugs.webkit.org/show_bug.cgi?id=179252
141
142         Reviewed by Carlos Garcia Campos.
143
144         gtkdoc-scangobj has changed to no longer use a shell when executing its subcommands. In
145         particular, this means we can no longer rely on shell stuff in our run command that we use
146         to run the scanner. We currently use the RUN envvar to set LD_LIBRARY_PATH, and the end
147         result is gtkdoc-scangobj now attempts to execute our environment variable instead of the
148         scanner itself. We can just set LD_LIBRARY_PATH directly, instead of using RUN, in order to
149         make documentation generation work again.
150
151         * gtk/gtkdoc.py:
152         (GTKDoc._run_gtkdoc_scangobj):
153
154 2017-11-04  Aishwarya Nirmal  <anirmal@apple.com>
155
156         [Touch Bar Web API] Add support for menuitem tag
157         https://bugs.webkit.org/show_bug.cgi?id=179020
158
159         Reviewed by Ryosuke Niwa.
160
161         Defines flags for the menu item test so that the element is recognized
162         only while its test is being run.
163
164         * DumpRenderTree/TestOptions.h:
165         * DumpRenderTree/TestOptions.mm:
166         (TestOptions::TestOptions):
167         * DumpRenderTree/mac/DumpRenderTree.mm:
168         (setWebPreferencesForTestOptions):
169         * WebKitTestRunner/TestController.cpp:
170         (WTR::TestController::resetPreferencesToConsistentValues):
171         (WTR::updateTestOptionsFromTestHeader):
172         * WebKitTestRunner/TestOptions.h:
173         (WTR::TestOptions::hasSameInitializationOptions const):
174
175 2017-11-03  Andy Estes  <aestes@apple.com>
176
177         [iOS] Append the platform name to the product directory on all embedded platforms
178         https://bugs.webkit.org/show_bug.cgi?id=179271
179
180         Reviewed by Joseph Pecoraro.
181
182         * Scripts/webkitdirs.pm:
183         (determineConfigurationProductDir):
184
185 2017-11-03  Basuke Suzuki  <Basuke.Suzuki@sony.com>
186
187         [WinCairo] Add --wincairo option to run-webkit-tests
188         https://bugs.webkit.org/show_bug.cgi?id=179217
189
190         Reviewed by Alex Christensen.
191
192         * Scripts/webkitpy/port/factory.py:
193         (platform_options):
194
195 2017-11-03  Michael Catanzaro  <mcatanzaro@igalia.com>
196
197         [WPE][GTK] Avoid duplicating code for dist and distcheck targets
198         https://bugs.webkit.org/show_bug.cgi?id=179154
199
200         Reviewed by Carlos Garcia Campos.
201
202         Move the script out of Tools/gtk because it is already used by WPE. Also, drop the .py
203         prefix because it is executable.
204
205         * Scripts/make-dist: Renamed from Tools/gtk/make-dist.py.
206
207 2017-11-03  Jonathan Bedard  <jbedard@apple.com>
208
209         TestController platformAdjustContext should use provided WKContext for Mac
210         https://bugs.webkit.org/show_bug.cgi?id=179124
211         <rdar://problem/35295176>
212
213         Reviewed by Darin Adler.
214
215         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
216         (WTR::initializeWebViewConfiguration): Use the provided WKContext, since that is
217         a WebProcessPool, instead of creating a second one.
218
219 2017-11-02  Christopher Reid  <chris.reid@sony.com>
220
221         Add a FileSystem namespace to FileSystem.cpp
222         https://bugs.webkit.org/show_bug.cgi?id=179063
223
224         Reviewed by Darin Adler.
225
226         * DumpRenderTree/win/DumpRenderTree.cpp:
227         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
228         * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
229         * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
230         * TestWebKitAPI/Tests/WebCore/SharedBufferTest.cpp:
231         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
232         * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
233
234 2017-11-02  Carlos Alberto Lopez Perez  <clopez@igalia.com>
235
236         [WPE][JHBuild] Update WPEBackend and WPEBackend-mesa
237         https://bugs.webkit.org/show_bug.cgi?id=179169
238
239         Reviewed by Michael Catanzaro.
240
241         Update WPEBackend and WPEBackend-mesa to last master as of today.
242
243         * wpe/jhbuild.modules:
244
245 2017-11-02  Frederic Wang  <fwang@igalia.com>
246
247         Add references to bug 179167 in FIXME comments
248         https://bugs.webkit.org/show_bug.cgi?id=179168
249
250         Reviewed by Daniel Bates.
251
252         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
253
254 2017-11-01  Jeremy Jones  <jeremyj@apple.com>
255
256         Implement WKFullscreenWindowController for iOS.
257         https://bugs.webkit.org/show_bug.cgi?id=178924
258         rdar://problem/34697120
259
260         Reviewed by Simon Fraser.
261
262         Enable ENABLE_FULLSCREEN_API for iOS.
263
264         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
265
266 2017-11-01  Simon Fraser  <simon.fraser@apple.com>
267
268         Misc display list and other cleanup
269         https://bugs.webkit.org/show_bug.cgi?id=179150
270
271         Reviewed by Tim Horton.
272
273         Add system trace points for display list recording.
274
275         * Tracing/SystemTracePoints.plist:
276
277 2017-11-01  Stephan Szabo  <stephan.szabo@sony.com>
278
279         [Win] Detect Visual Studio 2017 location
280         https://bugs.webkit.org/show_bug.cgi?id=175275
281
282         Reviewed by Yusuke Suzuki.
283
284         * Scripts/build-jsc:
285         * Scripts/build-webkit:
286         * Scripts/update-vswhere.py: Added.
287         * Scripts/webkitdirs.pm:
288         (requireModulesForVSWhere):
289         (pickCurrentVisualStudioInstallation):
290         (pickLegacyVisualStudioInstallation):
291         (visualStudioInstallDir):
292         (visualStudioInstallDirVSWhere):
293         (visualStudioInstallDirLegacy):
294         (visualStudioInstallDirFallback):
295         (msBuildInstallDir):
296         (visualStudioVersion):
297         (visualStudioVersionFromInstallDir):
298         (generateBuildSystemFromCMakeProject):
299
300 2017-11-01  Tim Horton  <timothy_horton@apple.com>
301
302         Fix the !USE(QUICKLOOK) build
303         https://bugs.webkit.org/show_bug.cgi?id=179128
304
305         Reviewed by Wenson Hsieh.
306
307         * TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp:
308
309 2017-11-01  Frederic Wang  <fwang@igalia.com>
310
311         Make iOS Find UI reveal matches in scrollable elements
312         https://bugs.webkit.org/show_bug.cgi?id=178789
313
314         Reviewed by Tim Horton.
315
316         This patch exposes WKWebView's findString function in order to test the fix for bug 178789.
317
318         * DumpRenderTree/ios/UIScriptControllerIOS.mm:
319         (WTR::UIScriptController::findString): Dummy implementation of findString.
320         * DumpRenderTree/mac/UIScriptControllerMac.mm:
321         (WTR::UIScriptController::findString): Ditto.
322         * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: Declare findString.
323         * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
324         (WTR::UIScriptController::findString): Dummy implementation of findString.
325         * TestRunnerShared/UIScriptContext/UIScriptController.h: Declare findString.
326         * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
327         (WTR::UIScriptController::findString): Implement findString by forwarding the call to the
328         web view.
329         * WebKitTestRunner/mac/UIScriptControllerMac.mm:
330         (WTR::UIScriptController::findString): Dummy implementation of findString.
331
332 2017-11-01  Alex Christensen  <achristensen@webkit.org>
333
334         Add a test for _WKInputDelegate.willSubmitFormValues
335         https://bugs.webkit.org/show_bug.cgi?id=179086
336
337         Reviewed by Darin Adler.
338
339         Hidden input types are not included in this submission because FormSubmission::create ignores them
340         because input.isTextField() returns false.  This is existing behavior that wasn't shown by a test.
341         HTTPBodies are also not sent to WKURLSchemeHandlers.  This is existing behavior that wasn't shown by a test.
342
343         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
344         * TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm: Added.
345         (-[FormSubmissionDelegate _webView:willSubmitFormValues:userObject:submissionHandler:]):
346         (TEST):
347
348 2017-10-31  Ross Kirsling  <ross.kirsling@sony.com>
349
350         Web Inspector: Add Inspector menu items to Mac MiniBrowser
351         https://bugs.webkit.org/show_bug.cgi?id=65218
352
353         Reviewed by Joseph Pecoraro.
354
355         Add Option-Command-I shortcut and corresponding Show/Close Web Inspector menu item to Mac MiniBrowser.
356         Only works when browser window is focused, but at least WI can be opened without having to Inspect Element.
357
358         * MiniBrowser/mac/BrowserWindowController.h:
359         * MiniBrowser/mac/BrowserWindowController.m:
360         (-[BrowserWindowController showHideWebInspector:]):
361         * MiniBrowser/mac/MainMenu.xib:
362         * MiniBrowser/mac/WK1BrowserWindowController.m:
363         (-[WK1BrowserWindowController validateMenuItem:]):
364         (-[WK1BrowserWindowController showHideWebInspector:]):
365         * MiniBrowser/mac/WK2BrowserWindowController.m:
366         (-[WK2BrowserWindowController validateMenuItem:]):
367         (-[WK2BrowserWindowController showHideWebInspector:]):
368
369 2017-10-31  Alex Christensen  <achristensen@webkit.org>
370
371         Use asynchronous ResourceHandleClient calls for WebKit1
372         https://bugs.webkit.org/show_bug.cgi?id=160677
373
374         Reviewed by Brady Eidson.
375
376         * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:
377         (TestWebKitAPI::TEST):
378         The HTML being loaded contains an iframe, so testing if the main resource has loaded doesn't necessarily mean all subresources are loaded.
379         Wait until they are loaded before continuing the test.  This is a test of editing commands once the page has loaded, not a test of loading.
380
381 2017-10-31  Commit Queue  <commit-queue@webkit.org>
382
383         Unreviewed, rolling out r224143.
384         https://bugs.webkit.org/show_bug.cgi?id=179091
385
386         The patch requires non-standard perl modules in macOS and
387         breaks AWFY (Requested by yusukesuzuki on #webkit).
388
389         Reverted changeset:
390
391         "[Win] Detect Visual Studio 2017 location"
392         https://bugs.webkit.org/show_bug.cgi?id=175275
393         https://trac.webkit.org/changeset/224143
394
395 2017-10-31  Tim Horton  <timothy_horton@apple.com>
396
397         Clean up some drag and drop feature flags
398         https://bugs.webkit.org/show_bug.cgi?id=179082
399
400         Reviewed by Simon Fraser.
401
402         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
403         * TestWebKitAPI/ios/UIKitSPI.h:
404
405 2017-10-31  Tim Horton  <timothy_horton@apple.com>
406
407         Fix up some content filtering feature flags
408         https://bugs.webkit.org/show_bug.cgi?id=179079
409
410         Reviewed by Simon Fraser.
411
412         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
413         * TestWebKitAPI/Tests/WebKitCocoa/ContentFilteringPlugIn.mm:
414         (-[MockContentFilterEnabler initWithCoder:]):
415         (-[MockContentFilterEnabler dealloc]):
416
417 2017-10-31  Youenn Fablet  <youenn@apple.com>
418
419         rwt should allow service worker to load localhost HTTPS resources with any certificate
420         https://bugs.webkit.org/show_bug.cgi?id=179018
421
422         Reviewed by Chris Dumez.
423
424         * WebKitTestRunner/TestController.cpp:
425         (WTR::TestController::resetStateToConsistentValues): allowing any SSL certificate for service workers.
426
427 2017-10-31  Wenson Hsieh  <wenson_hsieh@apple.com>
428
429         [Attachment Support] Implement WKWebView SPI for inserting attachment elements
430         https://bugs.webkit.org/show_bug.cgi?id=179013
431         <rdar://problem/35249668>
432
433         Reviewed by Tim Horton.
434
435         Adds a new API test suite to exercise attachment element insertion and manipulation.
436
437         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
438         * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm: Added.
439         (webViewForTestingAttachments):
440         (testHTMLData):
441         (testImageData):
442         (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:options:]):
443         (-[TestWKWebView valueOfAttribute:forQuerySelector:]):
444         (TestWebKitAPI::TEST):
445
446 2017-10-31  Alex Christensen  <achristensen@webkit.org>
447
448         Fix custom header field setting with reloads and asynchronous navigation action policy decisions
449         https://bugs.webkit.org/show_bug.cgi?id=179064
450
451         Reviewed by Tim Horton.
452
453         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
454         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
455         (TEST):
456
457 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
458
459         WKBundlePageWillSendSubmitEventCallback is called with incorrect frame parameter
460         https://bugs.webkit.org/show_bug.cgi?id=176719
461
462         Reviewed by Chris Dumez.
463
464         Test that WKBundlePageWillSendSubmitEventCallback is called with separate frame and
465         sourceFrame parameters when the target frame of the form submission is not the source frame.
466
467         * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
468         (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
469         * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent_Bundle.cpp:
470         (TestWebKitAPI::willSendSubmitEvent):
471         * TestWebKitAPI/Tests/WebKit/auto-submitting-form.html:
472
473 2017-10-30  Alex Christensen  <achristensen@webkit.org>
474
475         ASSERTION FAILED: internalValuesConsistent(m_url) in WebCore::URLParser::URLParser
476         https://bugs.webkit.org/show_bug.cgi?id=178861
477
478         Reviewed by Tim Horton.
479
480         * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
481         (TestWebKitAPI::TEST_F):
482
483 2017-10-30  Commit Queue  <commit-queue@webkit.org>
484
485         Unreviewed, rolling out r224078.
486         https://bugs.webkit.org/show_bug.cgi?id=179026
487
488         MotionMark regression (Requested by shallawa on #webkit).
489
490         Reverted changeset:
491
492         "When navigating back to a page, compositing layers may not
493         use accelerated drawing"
494         https://bugs.webkit.org/show_bug.cgi?id=178749
495         https://trac.webkit.org/changeset/224078
496
497 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
498
499         [WPE] Fix build warnings
500         https://bugs.webkit.org/show_bug.cgi?id=178899
501
502         Reviewed by Carlos Alberto Lopez Perez.
503
504         * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
505         (testContextMenuDownloadActions):
506         (testBlobDownload):
507         (beforeAll):
508         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
509         * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
510         (testWebViewJavaScriptDialogs):
511         * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
512         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
513         * WebKitTestRunner/PlatformWPE.cmake:
514         * WebKitTestRunner/wpe/HeadlessViewBackend.cpp:
515         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
516         (WTR::threadDefaultContext): Deleted.
517
518 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
519
520         [WPE] Upstream or stop using cairo-egl-device-create-for-egl-surface.patch
521         https://bugs.webkit.org/show_bug.cgi?id=178898
522
523         Reviewed by Žan Doberšek.
524
525         This patch seems to be unused.
526
527         * wpe/jhbuild.modules:
528         * wpe/patches/cairo-egl-device-create-for-egl-surface.patch: Removed.
529
530 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
531
532         [WPE] Build more files under WebCore as unified sources and get rid of WebCorePlatformWPE build target
533         https://bugs.webkit.org/show_bug.cgi?id=178964
534
535         Reviewed by Carlos Alberto Lopez Perez.
536
537         * TestWebKitAPI/PlatformWPE.cmake:
538
539 2017-10-12  Frederic Wang  <fwang@igalia.com>
540
541         Remove support for running safari on the iOS simulator with Xcode < 9.0
542         https://bugs.webkit.org/show_bug.cgi?id=178203
543
544         Reviewed by Alexey Proskuryakov.
545
546         This is a follow-up of r223234. We no longer support iOS WebKit development for Xcode < 9.0
547         and do not have any iOS simulator builders in our infrastructure. Hence we can remove the
548         special case to calculate the iOS simulator applications path for these old versions.
549
550         * Scripts/webkitdirs.pm:
551         (iosSimulatorApplicationsPath): Remove special case for XCode < 9.0
552
553 2017-10-30  Michael Catanzaro  <mcatanzaro@igalia.com>
554
555         [WPE][GTK] Expose availability of certain editing commands in WebKitEditorState
556         https://bugs.webkit.org/show_bug.cgi?id=168219
557
558         Reviewed by Ryosuke Niwa.
559
560         Test it.
561
562         * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
563         (testWebViewEditorCutCopyPasteNonEditable):
564         (testWebViewEditorCutCopyPasteEditable):
565         (testWebViewEditorSelectAllNonEditable):
566         (testWebViewEditorSelectAllEditable):
567         (loadContentsAndTryToCutSelection):
568         (testWebViewEditorNonEditable):
569         (testWebViewEditorEditorStateTypingAttributes):
570         (testWebViewEditorInsertImage):
571         (testWebViewEditorCreateLink):
572
573 2017-10-28  Michael Catanzaro  <mcatanzaro@igalia.com>
574
575         [WPE] Build gst-plugins-base without pango support
576         https://bugs.webkit.org/show_bug.cgi?id=178918
577
578         Reviewed by Carlos Garcia Campos.
579
580         We need to build gst-plugins-base without pango support for WPE. Let's use JHBuild
581         conditions so we can make platform-specific changes in the shared GStreamer moduleset.
582
583         * gstreamer/jhbuild.modules:
584         * gtk/jhbuildrc:
585         * wpe/jhbuildrc:
586
587 2017-10-27  Stephan Szabo  <stephan.szabo@sony.com>
588
589         [Win] Detect Visual Studio 2017 location
590         https://bugs.webkit.org/show_bug.cgi?id=175275
591
592         Reviewed by Per Arne Vollan.
593
594         * Scripts/build-jsc:
595         * Scripts/build-webkit:
596         * Scripts/update-vswhere.py: Added.
597         * Scripts/webkitdirs.pm:
598         (pickCurrentVisualStudioInstallation):
599         (pickLegacyVisualStudioInstallation):
600         (visualStudioInstallDir):
601         (visualStudioInstallDirVSWhere):
602         (visualStudioInstallDirLegacy):
603         (visualStudioInstallDirFallback):
604         (msBuildInstallDir):
605         (visualStudioVersion):
606         (visualStudioVersionFromInstallDir):
607         (generateBuildSystemFromCMakeProject):
608
609 2017-10-27  Devin Rousso  <webkit@devinrousso.com>
610
611         Create watchlist for files related WebInspector Recording
612         https://bugs.webkit.org/show_bug.cgi?id=178965
613
614         Reviewed by Joseph Pecoraro.
615
616         * Scripts/webkitpy/common/config/watchlist:
617
618 2017-10-27  Jonathan Bedard  <jbedard@apple.com>
619
620         Windows and WebViews are retained after re-configure
621         https://bugs.webkit.org/show_bug.cgi?id=178902
622         <rdar://problem/35211518>
623
624         Reviewed by Alexey Proskuryakov.
625
626         The test runner effectively leaks windows every time a test changes configuration.
627         We give each test it's own AutoreleasePool to fix this problem.
628
629         * WebKitTestRunner/TestController.cpp:
630         (WTR::TestController::runTest): Add an AutoRelease pool scoping a test run
631         so that when a configuration changes, the old window and WebView are released.
632
633 2017-10-27  Eric Carlson  <eric.carlson@apple.com>
634
635         NowPlayingInfo should contain a unique identifier
636         https://bugs.webkit.org/show_bug.cgi?id=178872
637         <rdar://problem/34924012>
638
639         Unreviewed, fix a flakey test.
640
641         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
642         (-[NowPlayingTestWebView hasActiveNowPlayingSession]): Update _lastUpdatedElapsedTime.
643         (-[NowPlayingTestWebView _handleActiveNowPlayingSessionInfoResponse:title:duration:elapsedTime:]): Deleted.
644
645 2017-10-27  Fujii Hironori  <Hironori.Fujii@sony.com>
646
647         autoinstall can't download from http://pypi.python.org
648         https://bugs.webkit.org/show_bug.cgi?id=178925
649
650         Reviewed by Ryosuke Niwa.
651
652         The web server pypi.python.org rejects non secure http.
653
654         * Scripts/webkitpy/thirdparty/__init__.py:
655         (AutoinstallImportHook._install_mechanize): Use https instead of http.
656         (AutoinstallImportHook._install_pep8): Ditto.
657         (AutoinstallImportHook._install_pylint): Ditto.
658         (AutoinstallImportHook._install_buildbot): Ditto.
659         (AutoinstallImportHook._install_coverage): Ditto.
660
661 2017-10-26  Fujii Hironori  <Hironori.Fujii@sony.com>
662
663         [GTK][WPE] install-dependencies can't find libapache2-mod-php7.0 on Ubuntu 17.10
664         https://bugs.webkit.org/show_bug.cgi?id=178854
665
666         Reviewed by Michael Catanzaro.
667
668         * Scripts/webkitpy/port/base.py:
669         (Port._debian_php_version): Return "-php7.1" if libphp7.1.so found.
670         (Port._is_debian_php_version_7): Deleted.
671         * gtk/install-dependencies: Install libapache2-mod-php instead of libapache2-mod-php7.0.
672         * wpe/install-dependencies: Ditto.
673
674 2017-10-25  Simon Fraser  <simon.fraser@apple.com>
675
676         When navigating back to a page, compositing layers may not use accelerated drawing
677         https://bugs.webkit.org/show_bug.cgi?id=178749
678         rdar://problem/35158946
679
680         Reviewed by Dean Jackson.
681
682         Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
683         and use it to set the state of the web view.
684
685         * DumpRenderTree/TestOptions.h:
686         * DumpRenderTree/TestOptions.mm:
687         (TestOptions::TestOptions):
688         * DumpRenderTree/mac/DumpRenderTree.mm:
689         (setWebPreferencesForTestOptions):
690         * WebKitTestRunner/TestController.cpp:
691         (WTR::TestController::resetPreferencesToConsistentValues):
692         (WTR::updateTestOptionsFromTestHeader):
693         * WebKitTestRunner/TestOptions.h:
694         (WTR::TestOptions::hasSameInitializationOptions const):
695
696 2017-10-26  Alex Christensen  <achristensen@webkit.org>
697
698         Move WKWebViewConfiguration validation to WKWebView construction
699         https://bugs.webkit.org/show_bug.cgi?id=178840
700
701         Reviewed by Tim Horton.
702
703         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
704         * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm: Added.
705         (TEST):
706
707 2017-10-26  Myles C. Maxfield  <mmaxfield@apple.com>
708
709         Demonstrate a possible structure of the WebGPU API
710         https://bugs.webkit.org/show_bug.cgi?id=178874
711
712         Reviewed by Dean Jackson.
713
714         Over the past few weeks, we've been putting together an example showing that a WebGPU API
715         which has implicit barriers can work on all three low-level graphics APIs. We've implemented
716         it on top of Vulkan first, because this is the API which has the strictest requirements and
717         is most difficult to use.
718
719         With this API, this is a valid WebGPU snippet:
720
721         auto device = WebGPU::Device::create(hInstance, hWnd);
722         auto& commandQueue = device->getCommandQueue();
723         auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { }, { }, { }, nullptr);
724         
725         … later, in the draw() function …
726         
727         auto renderPass = commandQueue->createRenderPass(nullptr);
728         renderPass->setRenderState(renderState);
729         renderPass->setViewport(0, 0, width, height);
730         renderPass->setScissorRect(0, 0, width, height);
731         renderPass->draw(3);
732         commandQueue->commitRenderPass(std::move(renderPass));
733         commandQueue->present();
734
735         This snippet doesn’t hook up any vertex attributes or resources, which means the vertex
736         shader has to say something like ({vec4(…), vec4(…), vec4(…)})[gl_VertexIndex]. It also
737         passes in “nullptr” when creating the render pass, which means “render to the screen, rather
738         than to a frame buffer.” You can also see that it doesn’t attach any resources to the draw
739         call.
740
741         In Direct3D 12 and Vulkan, resources are bound in sets, rather than individually. For
742         example, a set might contain two uniform buffers, a texture, and another uniform buffer. At
743         draw time, you swap in whole sets of resources with a single call. A shader invocation can
744         access a collection of sets. Because all shader resource accesses are indirected through
745         these sets, the shape of these sets needs to be supplied at the time you compile the render
746         state. Here is a snippet which bounds a single set which contains a uniform buffer and a
747         texture:
748
749         auto buffer = device->getBuffer(bufferInitialContents);
750         auto texture = device->getTexture(buffer width, height, WebGPU::PixelFormat::RGBA8, textureInitialContents);
751         // One resource set, which holds a single uniform buffer object and a single texture
752         auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { }, { }, { { WebGPU::ResourceType::UniformBufferObject, WebGPU::ResourceType::Texture } }, nullptr);
753         
754         … later, in the draw() function …
755         
756         auto renderPass = commandQueue->createRenderPass(nullptr);
757         renderPass->setRenderState(renderState);
758         renderPass->setResources(0, { WebGPU::UniformBufferObjectReference(buffer.get()), WebGPU::TextureReference(texture.get()) });
759         …
760         renderPass->draw(3);
761         commandQueue->commitRenderPass(std::move(renderPass));
762         commandQueue->present();
763         
764         The first argument to the setResources() call identifies which set to populate with the supplied resources.
765
766         One tenant of the low-level graphics APIs is that, if you’ve enabled double buffering (or
767         triple buffering), the GPU is executing one frame at the same time you are recording the
768         next frame. This often means that you need duplicate resources so the CPU and GPU don’t step
769         on each other’s toes. However, platforms have platform-specific requirements about whether
770         or not they can be double / triple buffered, and we don’t want to expose this to the Web for
771         fear of badly-authored programs.
772
773         To solve this, resources are reference counted, and the return type of getBuffer() is an
774         RAII type called BufferHolder which increments and decrements the reference count
775         automatically. The reference count is also incremented and decremented when the GPU is using
776         the resource in a Pass. When the reference count reaches 0, the resource isn’t destroyed;
777         instead, it’s simply moved to a “free list” which getBuffer() may pull from. Therefore,
778         applications don’t need to know whether the frame buffer is double buffered or triple
779         buffered; they can just getBuffer() each frame, and the correct number of buffers will be
780         created and recycled.
781         
782         {
783             auto buffer = device->getBuffer(bufferSize); // These get recycled
784             … populate the buffer …
785             auto renderPass = commandQueue->createRenderPass(nullptr);
786             renderPass->setRenderState(renderState);
787             renderPass->setResources(0, { WebGPU::UniformBufferObjectReference(buffer.get()) });
788             …
789             renderPass->draw(…);
790             commandQueue->commitRenderPass(std::move(renderPass));
791         }
792         commandQueue->present();
793
794         In Direct3D and Vulkan, vertex buffers and index buffers are not part of the resource sets
795         mentioned above. Instead, you tell the render state about the shape of the vertex and index
796         buffers, and you swap them out independently in the draw loop. Metal and Vulkan have almost
797         identical API to specify this shape of the vertex buffers, so I’ve mostly copied it. In this
798         example, we have two vertex attributes, a vec2 and a vec3, which both come from the same
799         buffer:
800         
801         // { Attribute format, offset within stride, buffer to pull from }
802         std::vector<WebGPU::RenderState::VertexAttribute> vertexAttributes = { {WebGPU::RenderState::VertexFormat::Float2, 0, 0}, {WebGPU::RenderState::VertexFormat::Float3, sizeof(float) * 2, 0} };
803         // A single vertex buffer, with a stride of 5 floats
804         auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { sizeof(float) * 5 }, vertexAttributes, resourceTypes, nullptr);
805         
806         … later, in the draw() function …
807         
808         auto renderPass = commandQueue->createRenderPass(nullptr);
809         renderPass->setRenderState(renderState);
810         renderPass->setVertexAttributeBuffers({ vertexBuffer.get() }); // The one vertex buffer which both attributes pull from
811         renderPass->setResources(…);
812         …
813         renderPass->draw(…);
814         commandQueue->commitRenderPass(std::move(renderPass));
815         commandQueue->present();
816
817         You can also tell the RenderState about how many render targets you have and their formats,
818         and then when you create the RenderPass, you specify the specific textures you want to
819         render into.
820
821         std::vector<WebGPU::PixelFormat> colorPixelFormats = { WebGPU::PixelFormat::RGBA8, WebGPU::PixelFormat::RGBA8 }; // Two render targets, with these formats
822         auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", vertexBufferStrides, vertexAttributes, resourceTypes, &colorPixelFormats);
823         
824         … later, in the draw() function …
825         
826         std::vector<std::reference_wrapper<WebGPU::Texture>> destinationTextures = { texture1->get(), texture2->get() };
827         auto renderPass = commandQueue->createRenderPass(&destinationTextures);
828         renderPass->setRenderState(renderState);
829         …
830         renderPass->draw(…);
831         commandQueue->commitRenderPass(std::move(renderPass));
832         
833         // Now, draw one of the textures to the screen. Note that no synchronization is necessary here!
834         auto renderPass = commandQueue->createRenderPass(nullptr);
835         renderPass->setRenderState(renderState2);
836         renderPass->setResources(0, { WebGPU:: TextureReference(texture1.get()) });
837         …
838         renderPass->draw(…);
839         commandQueue->commitRenderPass(std::move(renderPass));
840         commandQueue->present();
841
842         Just like how in Metal has Render Encoders and Compute Encoders, WebGPU has RenderPasses
843         and ComputePasses.
844
845         auto& computeState = device->getComputeState(computeShader, "main", resourceTypes);
846         …
847         auto computePass = commandQueue->createComputePass();
848         computePass->setComputeState(computeState);
849         computePass->setResources(0, resources);
850         computePass->dispatch(width, height, depth);
851         commandQueue->commitComputePass(std::move(computePass));
852         
853         // Now, draw the resources we just computed. Note that no synchronization is necessary here!
854         auto renderPass = commandQueue->createRenderPass(nullptr);
855         renderPass->setRenderState(renderState);
856         renderPass->setResources(0, resources });
857         …
858         renderPass->draw(…);
859         commandQueue->commitRenderPass(std::move(renderPass));
860         commandQueue->present();
861
862         There are also two other types of passes: one that corresponds to a Metal blit encoder, and
863         one that allows the CPU to change the contents of GPU buffers and textures. This last kind
864         of pass is a little interesting: you can’t just change the contents of a buffer at any time
865         you feel like it, because that resource might be in use by the GPU. Therefore, we need to do
866         the same kind of synchronization that we already do at render pass boundaries.
867
868         In addition, both Vulkan and Direct3D have a concept of a memory heap. A resource might
869         exist inside a heap which is fast, but invisible from the CPU, or in a heap which is slow,
870         but visible by the CPU. Certain operations are not possible from some types of images (e.g.
871         non-tiled textures may not be able to be sampled from). The usual way to get around this
872         problem is to have two resources: a slow staging resource which the CPU can see, and a fast
873         resource which the CPU can’t see. Uploading data is a two-pass algorithm, where the CPU
874         memcpy()s into the slow staging resource, and then a blit command is enqueued on the GPU to
875         copy the contents of the staging resource to the real resource. This requires that the
876         upload have access to the commandQueue so it can possibly enqueue a blit between the staging
877         and real resources. Therefore, a pass is the right level of abstraction for these facilities.
878
879         std::queue<boost::unique_future<std::vector<uint8_t>>> futureQueue; // Promises for data downloads from the GPU
880         
881         … later, in the draw() function …
882         
883         // See if any of the previously-enqueued downloads are finished
884         while (!futureQueue.empty() && futureQueue.front(). has_value()) {
885             std::vector<uint8_t>& data = futureQueue.front().get();
886             // Use the downloaded data
887             futureQueue.pop();
888         }
889         …
890         auto hostAccessPass = commandQueue->createHostAccessPass();
891         hostAccessPass->overwriteBuffer(buffer->get(), bufferContents); // Upload data to a resource
892         
893         futureQueue.emplace(hostAccessPass->getBufferContents(buffer->get()));
894         commandQueue->commitHostAccessPass(std::move(hostAccessPass));
895         
896         You can also issue copy commands between resources entirely on the GPU:
897         
898         auto blitPass = commandQueue->createBlitPass();
899         blitPass->copyTexture(source->get(), destination->get(), sourceX, sourceY, destinationX, destinationY, width, height);
900         commandQueue->commitBlitPass(std::move(blitPass));
901
902         * Scripts/webkitpy/style/checker.py:
903         * WebGPUAPIStructure/Example/Example.cpp: Added.
904         (readFile):
905         (drawWebGPU):
906         (wWinMain):
907         (MyRegisterClass):
908         (InitInstance):
909         (WndProc):
910         * WebGPUAPIStructure/Example/Example.h: Added.
911         * WebGPUAPIStructure/Example/Example.ico: Added.
912         * WebGPUAPIStructure/Example/Example.rc: Added.
913         * WebGPUAPIStructure/Example/Example.vcxproj: Added.
914         * WebGPUAPIStructure/Example/Example.vcxproj.filters: Added.
915         * WebGPUAPIStructure/Example/Example.vcxproj.user: Added.
916         * WebGPUAPIStructure/Example/resource.h: Added.
917         * WebGPUAPIStructure/Example/small.ico: Added.
918         * WebGPUAPIStructure/Example/stdafx.cpp: Added.
919         * WebGPUAPIStructure/Example/stdafx.h: Added.
920         * WebGPUAPIStructure/Example/targetver.h: Added.
921         * WebGPUAPIStructure/WebGPU-Common/WebGPU-Common.vcxproj: Added.
922         * WebGPUAPIStructure/WebGPU-Common/WebGPU-Common.vcxproj.filters: Added.
923         * WebGPUAPIStructure/WebGPU-Common/WebGPU.cpp: Added.
924         (WebGPU::BufferHolder::BufferHolder):
925         (WebGPU::BufferHolder::~BufferHolder):
926         (WebGPU::TextureHolder::TextureHolder):
927         (WebGPU::TextureHolder::~TextureHolder):
928         (WebGPU::SamplerHolder::SamplerHolder):
929         (WebGPU::SamplerHolder::~SamplerHolder):
930         * WebGPUAPIStructure/WebGPU-Common/WebGPU.h: Added.
931         (WebGPU::Queue::~Queue):
932         (WebGPU::RenderState::~RenderState):
933         (WebGPU::ComputeState::~ComputeState):
934         (WebGPU::Buffer::~Buffer):
935         (WebGPU::Texture::~Texture):
936         (WebGPU::Sampler::~Sampler):
937         (WebGPU::TextureReference::TextureReference):
938         (WebGPU::TextureReference::get const):
939         (WebGPU::SamplerReference::SamplerReference):
940         (WebGPU::SamplerReference::get const):
941         (WebGPU::UniformBufferObjectReference::UniformBufferObjectReference):
942         (WebGPU::UniformBufferObjectReference::get const):
943         (WebGPU::ShaderStorageBufferObjectReference::ShaderStorageBufferObjectReference):
944         (WebGPU::ShaderStorageBufferObjectReference::get const):
945         (WebGPU::RenderPass::~RenderPass):
946         (WebGPU::ComputePass::~ComputePass):
947         (WebGPU::BlitPass::~BlitPass):
948         (WebGPU::HostAccessPass::~HostAccessPass):
949         (WebGPU::BufferHolder::get):
950         (WebGPU::TextureHolder::get):
951         (WebGPU::SamplerHolder::get):
952         (WebGPU::Device::~Device):
953         * WebGPUAPIStructure/WebGPU-Vulkan/BlitPassImpl.cpp: Added.
954         (WebGPU::BlitPassImpl::BlitPassImpl):
955         (WebGPU::BlitPassImpl::copyTexture):
956         * WebGPUAPIStructure/WebGPU-Vulkan/BlitPassImpl.h: Added.
957         * WebGPUAPIStructure/WebGPU-Vulkan/BufferImpl.cpp: Added.
958         (WebGPU::BufferImpl::BufferImpl):
959         (WebGPU::BufferImpl::decrementReferenceCount):
960         * WebGPUAPIStructure/WebGPU-Vulkan/BufferImpl.h: Added.
961         (WebGPU::BufferImpl::getBuffer const):
962         (WebGPU::BufferImpl::getDeviceMemory const):
963         (WebGPU::BufferImpl::incrementReferenceCount):
964         (WebGPU::BufferImpl::getLength const):
965         * WebGPUAPIStructure/WebGPU-Vulkan/ComputePassImpl.cpp: Added.
966         (WebGPU::ComputePassImpl::ComputePassImpl):
967         (WebGPU::ComputePassImpl::setComputeState):
968         (WebGPU::ComputePassImpl::setResources):
969         (WebGPU::ComputePassImpl::dispatch):
970         * WebGPUAPIStructure/WebGPU-Vulkan/ComputePassImpl.h: Added.
971         * WebGPUAPIStructure/WebGPU-Vulkan/ComputeStateImpl.cpp: Added.
972         (WebGPU::ComputeStateImpl::ComputeStateImpl):
973         * WebGPUAPIStructure/WebGPU-Vulkan/ComputeStateImpl.h: Added.
974         (WebGPU::ComputeStateImpl::getPipeline const):
975         (WebGPU::ComputeStateImpl::getPipelineLayout const):
976         (WebGPU::ComputeStateImpl::getDescriptorSetLayouts const):
977         * WebGPUAPIStructure/WebGPU-Vulkan/DeviceImpl.cpp: Added.
978         (WebGPU::Device::create):
979         (WebGPU::convertPixelFormat):
980         (WebGPU::convertFormat):
981         (WebGPU::debugReport):
982         (WebGPU::DeviceImpl::DeviceImpl):
983         (WebGPU::DeviceImpl::getCommandQueue):
984         (WebGPU::DeviceImpl::prepareShader):
985         (WebGPU::DeviceImpl::createPipelineLayout):
986         (WebGPU::DeviceImpl::createCompatibleRenderPass):
987         (WebGPU::convertVertexFormat):
988         (WebGPU::DeviceImpl::getRenderState):
989         (WebGPU::DeviceImpl::getComputeState):
990         (WebGPU::DeviceImpl::getBuffer):
991         (WebGPU::DeviceImpl::returnBuffer):
992         (WebGPU::DeviceImpl::getTexture):
993         (WebGPU::DeviceImpl::returnTexture):
994         (WebGPU::DeviceImpl::getSampler):
995         (WebGPU::DeviceImpl::returnSampler):
996         (WebGPU::DeviceImpl::~DeviceImpl):
997         * WebGPUAPIStructure/WebGPU-Vulkan/DeviceImpl.h: Added.
998         (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::UniqueDebugReportCallbackEXT):
999         (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::operator=):
1000         (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::~UniqueDebugReportCallbackEXT):
1001         (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::destroy):
1002         (WebGPU::DeviceImpl::TextureParameters::operator== const):
1003         (WebGPU::DeviceImpl::TextureParametersHash::operator() const):
1004         * WebGPUAPIStructure/WebGPU-Vulkan/HostAccessPassImpl.cpp: Added.
1005         (WebGPU::HostAccessPassImpl::HostAccessPassImpl):
1006         (WebGPU::HostAccessPassImpl::overwriteBuffer):
1007         (WebGPU::HostAccessPassImpl::getBufferContents):
1008         (WebGPU::HostAccessPassImpl::execute):
1009         * WebGPUAPIStructure/WebGPU-Vulkan/HostAccessPassImpl.h: Added.
1010         (WebGPU::HostAccessPassImpl::getFinishedEvent const):
1011         * WebGPUAPIStructure/WebGPU-Vulkan/PassImpl.cpp: Added.
1012         (WebGPU::PassImpl::PassImpl):
1013         (WebGPU::ResourceVisitor::operator()):
1014         (WebGPU::ResourceVisitor::getBindings const):
1015         (WebGPU::ResourceVisitor::releaseWriteDescriptorSets):
1016         (WebGPU::ResourceVisitor::getDescriptorImageInfos const):
1017         (WebGPU::ResourceVisitor::getDescriptorBufferInfos const):
1018         (WebGPU::ResourceVisitor::getBuffers const):
1019         (WebGPU::ResourceVisitor::getTextures const):
1020         (WebGPU::ResourceVisitor::getSamplers const):
1021         (WebGPU::ResourceVisitor::getImageCount const):
1022         (WebGPU::ResourceVisitor::getSamplerCount const):
1023         (WebGPU::ResourceVisitor::getUniformBufferCount const):
1024         (WebGPU::ResourceVisitor::getStorageBufferCount const):
1025         (WebGPU::PassImpl::setResources):
1026         (WebGPU::PassImpl::insertBuffer):
1027         (WebGPU::PassImpl::insertTexture):
1028         (WebGPU::PassImpl::insertSampler):
1029         * WebGPUAPIStructure/WebGPU-Vulkan/PassImpl.h: Added.
1030         (WebGPU::PassImpl::getCommandBuffer const):
1031         (WebGPU::PassImpl::iterateBuffers):
1032         (WebGPU::PassImpl::iterateTextures):
1033         (WebGPU::PassImpl::ResourceReference::ResourceReference):
1034         (WebGPU::PassImpl::ResourceReference::~ResourceReference):
1035         (WebGPU::PassImpl::ResourceReference::operator=):
1036         (WebGPU::PassImpl::ResourceReference::operator== const):
1037         (WebGPU::PassImpl::ResourceReference::get const):
1038         (WebGPU::PassImpl::ResourceReference::release):
1039         (WebGPU::PassImpl::ResourceReferenceHash::operator() const):
1040         * WebGPUAPIStructure/WebGPU-Vulkan/QueueImpl.cpp: Added.
1041         (WebGPU::QueueImpl::QueueImpl):
1042         (WebGPU::QueueImpl::prepareCurrentFrame):
1043         (WebGPU::QueueImpl::createSpecificRenderPass):
1044         (WebGPU::QueueImpl::createFramebuffer):
1045         (WebGPU::QueueImpl::createRenderPass):
1046         (WebGPU::QueueImpl::commitRenderPass):
1047         (WebGPU::QueueImpl::createComputePass):
1048         (WebGPU::QueueImpl::commitComputePass):
1049         (WebGPU::QueueImpl::createBlitPass):
1050         (WebGPU::QueueImpl::commitBlitPass):
1051         (WebGPU::QueueImpl::createHostAccessPass):
1052         (WebGPU::QueueImpl::commitHostAccessPass):
1053         (WebGPU::QueueImpl::present):
1054         (WebGPU::QueueImpl::commitPass):
1055         (WebGPU::QueueImpl::synchronizeResources):
1056         (WebGPU::QueueImpl::~QueueImpl):
1057         * WebGPUAPIStructure/WebGPU-Vulkan/QueueImpl.h: Added.
1058         * WebGPUAPIStructure/WebGPU-Vulkan/RenderPassImpl.cpp: Added.
1059         (WebGPU::RenderPassImpl::RenderPassImpl):
1060         (WebGPU::RenderPassImpl::setRenderState):
1061         (WebGPU::RenderPassImpl::setVertexAttributeBuffers):
1062         (WebGPU::RenderPassImpl::setResources):
1063         (WebGPU::RenderPassImpl::setViewport):
1064         (WebGPU::RenderPassImpl::setScissorRect):
1065         (WebGPU::RenderPassImpl::draw):
1066         * WebGPUAPIStructure/WebGPU-Vulkan/RenderPassImpl.h: Added.
1067         * WebGPUAPIStructure/WebGPU-Vulkan/RenderStateImpl.cpp: Added.
1068         (WebGPU::RenderStateImpl::RenderStateImpl):
1069         * WebGPUAPIStructure/WebGPU-Vulkan/RenderStateImpl.h: Added.
1070         (WebGPU::RenderStateImpl::getPipeline const):
1071         (WebGPU::RenderStateImpl::getPipelineLayout const):
1072         (WebGPU::RenderStateImpl::getDescriptorSetLayouts const):
1073         * WebGPUAPIStructure/WebGPU-Vulkan/SamplerImpl.cpp: Added.
1074         (WebGPU::SamplerImpl::SamplerImpl):
1075         (WebGPU::SamplerImpl::decrementReferenceCount):
1076         * WebGPUAPIStructure/WebGPU-Vulkan/SamplerImpl.h: Added.
1077         (WebGPU::SamplerImpl::getSampler):
1078         (WebGPU::SamplerImpl::incrementReferenceCount):
1079         (WebGPU::SamplerImpl::getFilter):
1080         (WebGPU::SamplerImpl::getMipmapMode):
1081         (WebGPU::SamplerImpl::getAddressMode):
1082         * WebGPUAPIStructure/WebGPU-Vulkan/TextureImpl.cpp: Added.
1083         (WebGPU::TextureImpl::TextureImpl):
1084         (WebGPU::TextureImpl::decrementReferenceCount):
1085         * WebGPUAPIStructure/WebGPU-Vulkan/TextureImpl.h: Added.
1086         (WebGPU::TextureImpl::getImage const):
1087         (WebGPU::TextureImpl::getImageView const):
1088         (WebGPU::TextureImpl::getFormat const):
1089         (WebGPU::TextureImpl::incrementReferenceCount):
1090         (WebGPU::TextureImpl::getWidth const):
1091         (WebGPU::TextureImpl::getHeight const):
1092         (WebGPU::TextureImpl::getTransferredToGPU const):
1093         (WebGPU::TextureImpl::setTransferredToGPU):
1094         * WebGPUAPIStructure/WebGPU-Vulkan/WebGPU-Vulkan.vcxproj: Added.
1095         * WebGPUAPIStructure/WebGPU-Vulkan/WebGPU-Vulkan.vcxproj.filters: Added.
1096         * WebGPUAPIStructure/WebGPU.sln: Added.
1097
1098 2017-10-26  Eric Carlson  <eric.carlson@apple.com>
1099
1100         NowPlayingInfo should contain a unique identifier
1101         https://bugs.webkit.org/show_bug.cgi?id=178872
1102
1103         Reviewed by Jer Noble.
1104
1105         * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
1106         (-[NowPlayingTestWebView hasActiveNowPlayingSession]): Use completion handler.
1107         (TestWebKitAPI::TEST): Cleanup tests. Use new API.
1108         (-[NowPlayingTestWebView waitForNowPlayingInfoToChange]): Deleted.
1109
1110 2017-10-26  Eric Carlson  <eric.carlson@apple.com>
1111
1112         [MediaStream] Clear cached gUM prompt state
1113         https://bugs.webkit.org/show_bug.cgi?id=178754
1114         <rdar://problem/32742356>
1115
1116         Unreviewed, fix a flakey test.
1117
1118         * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm:
1119         (-[GetUserMediaRepromptTestView haveStream:]): New, check several times for expected state.
1120         (TestWebKitAPI::TEST): Don't assume stream state changes in the page immediately.
1121
1122 2017-10-26  Andy Estes  <aestes@apple.com>
1123
1124         [Payment Request] Enable Payment Request whenever Apple Pay is enabled
1125         https://bugs.webkit.org/show_bug.cgi?id=178880
1126
1127         Reviewed by Tim Horton.
1128
1129         * WebKitTestRunner/TestController.cpp:
1130         (WTR::TestController::resetPreferencesToConsistentValues):
1131
1132 2017-10-26  Joseph Pecoraro  <pecoraro@apple.com>
1133
1134         Add and update some watchlists
1135         https://bugs.webkit.org/show_bug.cgi?id=178304
1136
1137         Reviewed by Simon Fraser.
1138
1139         * Scripts/webkitpy/common/config/watchlist:
1140
1141 2017-10-26  Ryan Haddad  <ryanhaddad@apple.com>
1142
1143         Unreviewed, rolling out r223984.
1144
1145         Caused LayoutTest assertion failures.
1146
1147         Reverted changeset:
1148
1149         "When navigating back to a page, compositing layers may not
1150         use accelerated drawing"
1151         https://bugs.webkit.org/show_bug.cgi?id=178749
1152         https://trac.webkit.org/changeset/223984
1153
1154 2017-10-26  Christopher Reid  <chris.reid@sony.com>
1155
1156         Remove scopeguard from platform
1157         https://bugs.webkit.org/show_bug.cgi?id=178681
1158
1159         Reviewed by Brady Eidson.
1160
1161         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
1162
1163 2017-09-21  Carlos Garcia Campos  <cgarcia@igalia.com>
1164
1165         WebDriver: Add support to import and run W3C tests
1166         https://bugs.webkit.org/show_bug.cgi?id=177304
1167
1168         Reviewed by Brian Burg.
1169
1170         WPT has now several WebDriver tests, and new ones are going to be added to cover the whole spec. This patch
1171         adds the initial support for running W3C tests. The script import-w3c-webdriver-tests reuses parts of the W3C
1172         test downloader to download the tests and required tools from WPT repository into WebDriverTests
1173         directory. Tests can be run with run-webdriver-tests, a new script that works similar to other test runner
1174         scripts. For now it shows a summary at the end of the execution, there aren't expectations yet, since we are not
1175         ready to run those tests in the bots. Once we are ready to properly run the tests, we can add the expectations
1176         support and run the tests in the bots.
1177
1178         * Scripts/import-w3c-webdriver-tests: Added.
1179         * Scripts/run-webdriver-tests: Added.
1180         * Scripts/webkitpy/style/checker.py: Skip WebDriverTests directory since it only contains third-party python
1181         code.
1182         * Scripts/webkitpy/thirdparty/__init__.py: Add support to autodownload mozlog and mozprocess since they are
1183         required by the WebDriver tests.
1184         * Scripts/webkitpy/webdriver_tests/__init__.py: Added.
1185         * Scripts/webkitpy/webdriver_tests/webdriver_driver.py: Added.
1186         * Scripts/webkitpy/webdriver_tests/webdriver_driver_gtk.py: Added.
1187         * Scripts/webkitpy/webdriver_tests/webdriver_test_result.py: Added.
1188         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py: Added.
1189         * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py: Added.
1190         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py: Added.
1191         * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py: Added.
1192
1193 2017-10-25  Eric Carlson  <eric.carlson@apple.com>
1194
1195         [MediaStream] Clear cached gUM prompt state
1196         https://bugs.webkit.org/show_bug.cgi?id=178754
1197         <rdar://problem/32742356>
1198
1199         Reviewed by Youenn Fablet.
1200
1201         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new test
1202
1203         * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm: Added.
1204         (-[GetUserMediaRepromptUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1205         (-[GetUserMediaRepromptUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1206         (TestWebKitAPI::TEST):
1207
1208         * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
1209
1210 2017-10-25  Ross Kirsling  <ross.kirsling@sony.com>
1211
1212         Add committer status for Ross Kirsling
1213         https://bugs.webkit.org/show_bug.cgi?id=178832
1214
1215         Unreviewed.
1216
1217         * Scripts/webkitpy/common/config/contributors.json:
1218
1219 2017-10-25  Simon Fraser  <simon.fraser@apple.com>
1220
1221         When navigating back to a page, compositing layers may not use accelerated drawing
1222         https://bugs.webkit.org/show_bug.cgi?id=178749
1223         rdar://problem/35158946
1224
1225         Reviewed by Dean Jackson.
1226
1227         Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
1228         and use it to set the state of the web view.
1229
1230         * DumpRenderTree/TestOptions.h:
1231         * DumpRenderTree/TestOptions.mm:
1232         (TestOptions::TestOptions):
1233         * DumpRenderTree/mac/DumpRenderTree.mm:
1234         (setWebPreferencesForTestOptions):
1235         * WebKitTestRunner/TestController.cpp:
1236         (WTR::TestController::resetPreferencesToConsistentValues):
1237         (WTR::updateTestOptionsFromTestHeader):
1238         * WebKitTestRunner/TestOptions.h:
1239         (WTR::TestOptions::hasSameInitializationOptions const):
1240
1241 2017-10-25  Robin Morisset  <rmorisset@apple.com>
1242
1243         Support the TailBench9000 benchmark in run-jsc-benchmarks
1244         https://bugs.webkit.org/show_bug.cgi?id=178451
1245
1246         Reviewed by Saam Barati.
1247
1248         * Scripts/run-jsc-benchmarks:
1249
1250 2017-10-25  Adrian Perez de Castro  <aperez@igalia.com>
1251
1252         [WPE] Remove GLib API functions which use Cairo
1253         https://bugs.webkit.org/show_bug.cgi?id=178205
1254
1255         Reviewed by Michael Catanzaro.
1256
1257         Add PLATFORM(GTK) guards for the API tests (or parts of them) which use cairo_surface_t (web
1258         page snapshots and favicons) which are not available in the WPE version of the GLib API.
1259
1260         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
1261         (testNotInitialized):
1262         (testPrivateBrowsing):
1263         (testFaviconDatabase):
1264         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
1265         (testFindControllerHide):
1266         (beforeAll):
1267         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1268         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1269
1270 2017-10-25  Zan Dobersek  <zdobersek@igalia.com>
1271
1272         Make SERVICE_WORKER feature buildable on GTK, WPE
1273         https://bugs.webkit.org/show_bug.cgi?id=178574
1274
1275         Reviewed by Carlos Garcia Campos.
1276
1277         * Scripts/webkitperl/FeatureList.pm: Add the --service-worker option
1278         that enables the SERVICE_WORKER feature flag. For now it's enabled
1279         on Apple's Cocoa ports (even when build-webkit isn't used for those
1280         builds, the flag is enabled here for consistency).
1281
1282 2017-10-24  Michael Catanzaro  <mcatanzaro@igalia.com>
1283
1284         Unreviewed, fix name of Perl LibXML package on Fedora
1285         https://bugs.webkit.org/show_bug.cgi?id=178206
1286         <rdar://problem/35028586>
1287
1288         * gtk/install-dependencies:
1289         * wpe/install-dependencies:
1290
1291 2017-10-24  Alex Christensen  <achristensen@webkit.org>
1292
1293         Selecting and right-clicking URL-like strings with IDNA-disallowed characters in host or authority causes rendering engine crash
1294         https://bugs.webkit.org/show_bug.cgi?id=174267
1295
1296         Reviewed by Tim Horton.
1297
1298         * TestWebKitAPI/Tests/WebKit/CanHandleRequest_Bundle.cpp:
1299         (TestWebKitAPI::runTest):
1300
1301 2017-10-24  Eric Carlson  <eric.carlson@apple.com>
1302
1303         Web Inspector: Enable WebKit logging configuration and display
1304         https://bugs.webkit.org/show_bug.cgi?id=177027
1305         <rdar://problem/33964767>
1306
1307         Reviewed by Joseph Pecoraro.
1308
1309         Allow new 'dumpJSConsoleLogInStdErr' test header to redirect log console output to stderr.
1310
1311         * DumpRenderTree/TestOptions.h:
1312         * DumpRenderTree/TestOptions.mm:
1313         (TestOptions::TestOptions):
1314         * DumpRenderTree/mac/DumpRenderTree.mm:
1315         (runTest):
1316         * WebKitTestRunner/TestController.cpp:
1317         (WTR::updateTestOptionsFromTestHeader):
1318         (WTR::TestController::runTest):
1319         * WebKitTestRunner/TestOptions.h:
1320         (WTR::TestOptions::hasSameInitializationOptions const):
1321
1322 2017-10-24  Alex Christensen  <achristensen@webkit.org>
1323
1324         Apply custom header fields from WebsitePolicies to same-domain requests
1325         https://bugs.webkit.org/show_bug.cgi?id=178356
1326
1327         Reviewed by Brady Eidson.
1328
1329         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1330         (expectHeaders):
1331
1332 2017-10-24  Stephan Szabo  <stephan.szabo@sony.com>
1333
1334         [Win][JSCOnly] Make jsconly build testapi and dlls and copy dlls when running tests
1335         https://bugs.webkit.org/show_bug.cgi?id=177279
1336
1337         Reviewed by Yusuke Suzuki.
1338
1339         * Scripts/build-jsc:
1340         * Scripts/run-jsc-stress-tests:
1341
1342 2017-10-23  Lucas Forschler  <lforschler@apple.com>
1343
1344         <rdar://problem/35045445>
1345         Update README to reference WebKit build archives, instead of 'nightly'
1346
1347         Reviewed by Aakash Jain.
1348
1349         * WebKitArchiveSupport/README:
1350
1351 2017-10-21  Tim Horton  <timothy_horton@apple.com>
1352
1353         Turn on ccache for Mac cmake builds by default
1354         https://bugs.webkit.org/show_bug.cgi?id=177059
1355
1356         Reviewed by Sam Weinig.
1357
1358         * ccache/ccache-clang:
1359         * ccache/ccache-wrapper: Added.
1360         Add a pass-through ccache wrapper to be used with CMake, in addition
1361         to the existing faux-clang wrappers.
1362
1363         * Scripts/build-webkit:
1364         Add --use-ccache and --no-use-ccache option, which will define
1365         WK_USE_CCACHE to YES or NO, respectively, which the underlying
1366         build systems respect. We do not define WK_USE_CCACHE if the option
1367         is not specified, because the underlying build systems have different
1368         default values.
1369
1370 2017-10-20  Aakash Jain  <aakash_jain@apple.com>
1371
1372         Do not run binding tests on multiple EWSes
1373         https://bugs.webkit.org/show_bug.cgi?id=178599
1374
1375         Reviewed by Alexey Proskuryakov. 
1376
1377         Remove old code which runs bindings tests and ignore it's result. We now have
1378         a dedicated bindings test EWS.
1379
1380         * Scripts/webkitpy/tool/steps/runtests.py:
1381         (RunTests.run): Removed bindings tests code.
1382         * Scripts/webkitpy/tool/steps/runtests_unittest.py: Updated unit-tests.
1383         (RunTestsTest.test_webkit_run_unit_tests): Ditto.
1384         * Scripts/webkitpy/tool/steps/steps_unittest.py: Ditto.
1385         * Scripts/webkitpy/tool/commands/download_unittest.py: Ditto.
1386
1387 2017-10-20  Youenn Fablet  <youenn@apple.com>
1388
1389         WebsiteDataStoreCustomPaths.mm is failing after r223718
1390         https://bugs.webkit.org/show_bug.cgi?id=178596
1391
1392         Unreviewed.
1393
1394         * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
1395         (TEST): Making default web site data store creation expected at the end of the test.
1396         We should probably not need need to create it.
1397         This should be fixed as a follow-up.
1398
1399 2017-10-20  Antoine Quint  <graouts@apple.com>
1400
1401         [Web Animations] Provide basic timeline and animation interfaces
1402         https://bugs.webkit.org/show_bug.cgi?id=178526
1403
1404         Reviewed by Dean Jackson.
1405
1406         Remove the WEB_ANIMATIONS compile-time flag.
1407
1408         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1409
1410 2017-10-20  Tomas Popela  <tpopela@redhat.com>
1411
1412         Missing some perl packages in install-dependencies
1413         https://bugs.webkit.org/show_bug.cgi?id=178571
1414
1415         Reviewed by Žan Doberšek.
1416
1417         Install per-version and perl-Time-HiRes so we can use build-webkit
1418         script. Also add missing backlashes.
1419
1420         * wpe/install-dependencies:
1421
1422 2017-10-20  Commit Queue  <commit-queue@webkit.org>
1423
1424         Unreviewed, rolling out r222709 and r223572.
1425         https://bugs.webkit.org/show_bug.cgi?id=178587
1426
1427         Still getting mac-wk2 EWS bots stuck (Requested by ap on
1428         #webkit).
1429
1430         Reverted changesets:
1431
1432         "Log stack-trace for run-webkit-tests when interrupted"
1433         https://bugs.webkit.org/show_bug.cgi?id=176393
1434         https://trac.webkit.org/changeset/222709
1435
1436         "webkitpy: Hang when workers write to the same stack trace
1437         file"
1438         https://bugs.webkit.org/show_bug.cgi?id=178402
1439         https://trac.webkit.org/changeset/223572
1440
1441 2017-10-19  Nan Wang  <n_wang@apple.com>
1442
1443         AX: Provide a way for Accessibility to cache the selection while retrieving rects for speak selection
1444         https://bugs.webkit.org/show_bug.cgi?id=176247
1445         <rdar://problem/34217143>
1446
1447         Reviewed by Ryosuke Niwa.
1448
1449         * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
1450         (TestWebKitAPI::TEST):
1451
1452 2017-10-19  Sam Weinig  <sam@webkit.org>
1453
1454         [Settings] Move global settings into their own file
1455         https://bugs.webkit.org/show_bug.cgi?id=178512
1456
1457         Reviewed by Darin Adler.
1458
1459         * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
1460         (TestWebKitAPI::TEST):
1461
1462 2017-10-19  Andy Estes  <aestes@apple.com>
1463
1464         [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
1465         https://bugs.webkit.org/show_bug.cgi?id=178181
1466         <rdar://problem/33660282>
1467
1468         Reviewed by Dan Bernstein.
1469
1470         * WebKitTestRunner/TestController.cpp:
1471         (WTR::TestController::databaseProcessName):
1472
1473 2017-10-19  Saam Barati  <sbarati@apple.com>
1474
1475         Turn poly proto back on by default and remove the option
1476         https://bugs.webkit.org/show_bug.cgi?id=178525
1477
1478         Reviewed by Mark Lam.
1479
1480         * Scripts/run-jsc-stress-tests:
1481
1482 2017-10-18  Ryosuke Niwa  <rniwa@webkit.org>
1483
1484         Don't expose raw HTML in pasteboard to the web content
1485         https://bugs.webkit.org/show_bug.cgi?id=178422
1486
1487         Reviewed by Wenson Hsieh.
1488
1489         Added a test case for sanitizing web archive in the system pasteboard to strip privacy sensitive information
1490         such as local file paths and potentially harmful scripts like event handlers serialized by WebKit prior to r223462.
1491
1492         * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
1493         (PasteWebArchive.SanitizesHTML):
1494
1495 2017-10-18  Youenn Fablet  <youenn@apple.com>
1496
1497         TestController should clear all fetch caches when resetting its state
1498         https://bugs.webkit.org/show_bug.cgi?id=178486
1499
1500         Reviewed by Chris Dumez.
1501
1502         Adding clearDOMCaches test runner method.
1503         Using that method when resetting state.
1504
1505         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1506         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1507         (WTR::TestRunner::clearDOMCaches):
1508         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1509         * WebKitTestRunner/TestInvocation.cpp:
1510         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1511
1512 2017-10-18  Chelsea Pugh  <cpugh@apple.com>
1513
1514         [iOS] Use new class name from UIKit when checking UITextSuggestion type
1515         https://bugs.webkit.org/show_bug.cgi?id=178416
1516
1517         Reviewed by Tim Horton.
1518
1519         This updates our test using/mocking out UITextAutofillSuggestion instead of UIKeyboardLoginCredentialsSuggestion.
1520
1521         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
1522         (-[UITextAutofillSuggestion initWithUsername:password:]): Copied from UIKit's implementation. This will serve as
1523         a mock of this method for builds not containingit.
1524         (+[UITextAutofillSuggestion autofillSuggestionWithUsername:password:]): Ditto.
1525         (TestWebKitAPI::TEST): Use +[UITextAutofillSuggestion autofillSuggestionWithUsername:password:] inline instead of
1526         helper function for creating a new suggestion.
1527         (newUIKeyboardLoginCredentialsSuggestion): Deleted.
1528
1529         * TestWebKitAPI/ios/UIKitSPI.h:
1530
1531 2017-10-18  Fujii Hironori  <Hironori.Fujii@sony.com>
1532
1533         update-webkit-auxiliary-libs can't download WebKitAuxiliaryLibrary.zip due to 403 Forbidden
1534         https://bugs.webkit.org/show_bug.cgi?id=178381
1535
1536         Reviewed by Alexey Proskuryakov.
1537
1538         The web server developer.apple.com seems to reject HTTP requests
1539         without Accept header field.
1540
1541         * Scripts/update-webkit-dependency: Add 'Accept' header field to requests.
1542
1543 2017-10-18  Aakash Jain  <aakash_jain@apple.com>
1544
1545         webkitpy tests should have --json-output option
1546         https://bugs.webkit.org/show_bug.cgi?id=178481
1547
1548         Reviewed by Alexey Proskuryakov.
1549
1550         * Scripts/webkitpy/test/main.py:
1551         (Tester._parse_args): Added json-output argument.
1552         (Tester._run_tests): Write output to json file.
1553
1554 2017-10-18  Wenson Hsieh  <wenson_hsieh@apple.com>
1555
1556         Unreviewed, rolling out r223291.
1557
1558         See WebCore ChangeLog for more detail.
1559
1560         Reverted changeset:
1561
1562         "Remove Editor::simplifyMarkup"
1563         https://bugs.webkit.org/show_bug.cgi?id=178271
1564         https://trac.webkit.org/changeset/223291
1565
1566 2017-10-18  Chris Dumez  <cdumez@apple.com>
1567
1568         Add an efficient data structure for WebCore to query if there is a Service Worker registered for a given origin
1569         https://bugs.webkit.org/show_bug.cgi?id=177876
1570         <rdar://problem/34813129>
1571
1572         Reviewed by Ryosuke Niwa.
1573
1574         Clear service worker registrations between test runs to avoid flakiness.
1575
1576         * WebKitTestRunner/TestController.cpp:
1577         (WTR::TestController::resetStateToConsistentValues):
1578
1579 2017-10-18  Zan Dobersek  <zdobersek@igalia.com>
1580
1581         Remove remnants of OpenWebRTC
1582         https://bugs.webkit.org/show_bug.cgi?id=178437
1583
1584         Reviewed by Alejandro G. Castro.
1585
1586         Drop OpenWebRTC packages from the GTK's Jhbuild modules file. Relevant
1587         patches are also removed.
1588
1589         * gtk/jhbuild.modules:
1590         * gtk/patches/libnice-0001-TURN-allow-REALM-to-be-empty.patch: Removed.
1591         * gtk/patches/libnice-0001-nicesrc-spin-the-agent-mainloop-in-a-separate-thread.patch: Removed.
1592         * gtk/patches/rtspsrc-timeout-on-udpsrc-is-in-nanoseconds.patch: Removed.
1593         * gtk/patches/udpsrc-improve-timeouts.patch: Removed.
1594
1595 2017-10-17  Jonathan Bedard  <jbedard@apple.com>
1596
1597         webkitpy: Hang when workers write to the same stack trace file
1598         https://bugs.webkit.org/show_bug.cgi?id=178402
1599         <rdar://problem/35033432>
1600
1601         Reviewed by Aakash Jain.
1602
1603         Workers can hang if they all write to the same stack trace file when receiving
1604         a SIGTERM. Attach the pid to the stack trace file name so that each worker
1605         writes to a different file.
1606
1607         * Scripts/webkitpy/common/interupt_debugging.py:
1608         (log_stack_trace_on_term.handler): Name stack trace file path/<pid>-filename.
1609         (log_stack_trace_on_cntrl_c.handler): Ditto.
1610
1611 2017-10-17  John Wilander  <wilander@apple.com>
1612
1613         Add and remove cookie partition accordingly in intermediary redirect requests
1614         https://bugs.webkit.org/show_bug.cgi?id=178369
1615         <rdar://problem/34467603>
1616
1617         Reviewed by Brent Fulgham.
1618
1619         Adds the function statisticsNotifyObserver().
1620
1621         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1622         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1623         (WTR::InjectedBundle::statisticsNotifyObserver):
1624         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1625         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1626         (WTR::TestRunner::statisticsNotifyObserver):
1627         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1628
1629 2017-10-17  Youenn Fablet  <youenn@apple.com>
1630
1631         Cache API implementation should be able to compute storage size for WebKit client applications.
1632         https://bugs.webkit.org/show_bug.cgi?id=178350
1633
1634         Reviewed by Chris Dumez.
1635
1636         Adding support for a domCacheSize getter.
1637
1638         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1639         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1640         (WTR::TestRunner::domCacheSize):
1641         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1642         * WebKitTestRunner/TestController.cpp:
1643         (WTR::FetchCacheSizeForOriginCallbackContext::FetchCacheSizeForOriginCallbackContext):
1644         (WTR::fetchCacheSizeForOriginCallback):
1645         (WTR::TestController::domCacheSize):
1646         * WebKitTestRunner/TestController.h:
1647         * WebKitTestRunner/TestInvocation.cpp:
1648         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1649
1650 2017-10-17  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
1651
1652         [GStreamer][GTK][WPE] update-webkit-libs-jhbuild fails to detect changes in included moduleset files
1653         https://bugs.webkit.org/show_bug.cgi?id=178206
1654
1655         Reviewed by Michael Catanzaro.
1656
1657         The update-webkit-libs-jhbuild scripts computes MD5 sum of GTK/WPE jhbuild configuration files to check if it
1658         needs to rebuild the dependencies libraries. This patch fixes a bug when main GTK/WPE jhbuild modules
1659         configuration file includes additional files (for example GStreamer module). It parses jhbuild.modules file to
1660         check if additional files are included. If any, it computes MD5 sum for each of these included files.
1661
1662         * Scripts/update-webkit-libs-jhbuild:
1663         (getJhbuildIncludedFilePaths): New function that returns included files in jhbuild.modules
1664         (jhbuildConfigurationCheckFile): New function to check if MD5 sum file changes.
1665         (jhbuildConfigurationChanged): Add MD5 sum check for included files.
1666         (saveMd5File): New function to save MD5 sum of a file.
1667         (saveJhbuildMd5): Add saving included files MD5 sum.
1668         (deleteJhbuildMd5): Delete included files MD5 sum
1669         * gtk/install-dependencies: Add perl-libXML lib that is used to parse jhbuild file.
1670         * wpe/install-dependencies: Ditto.
1671
1672 2017-10-17  Tomas Popela  <tpopela@redhat.com>
1673
1674         Undefined WK_API_ENABLED warning when compiling COCOA content on WebKitGTK+
1675         https://bugs.webkit.org/show_bug.cgi?id=178208
1676
1677         Check whether we are on COCOA platform before checking for
1678         WK_API_ENABLED.
1679
1680         Reviewed by Ryosuke Niwa.
1681
1682         * WebKitTestRunner/TestController.cpp:
1683         (WTR::TestController::clearDOMCache):
1684
1685 2017-10-17  Keith Miller  <keith_miller@apple.com>
1686
1687         Change WebCore sources to work with unified source builds
1688         https://bugs.webkit.org/show_bug.cgi?id=178229
1689
1690         Rubber stamped by Tim Horton.
1691
1692         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1693
1694 2017-10-16  Christopher Reid  <chris.reid@sony.com>
1695
1696         [Win] Webkit should still be able to build when unable to check if libraries are up to date
1697         https://bugs.webkit.org/show_bug.cgi?id=178367
1698
1699         Adding a option to skip the check to see if windows libraries are up to date.
1700         This option is useful when testing modified libraries. This option also allows
1701         building webkit when GitHub blocks requests to verify the latest library version.
1702
1703
1704         Reviewed by Per Arne Vollan.
1705
1706         * Scripts/build-webkit:
1707
1708 2017-10-12  Matt Rajca  <mrajca@apple.com>
1709
1710         Add API support for quirk that lets an arbitrary click allow auto-play.
1711         https://bugs.webkit.org/show_bug.cgi?id=178227
1712
1713         Reviewed by Alex Christensen.
1714
1715         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1716         (TEST): Added API test.
1717
1718 2017-10-16  Maureen Daum  <mdaum@apple.com>
1719
1720         If an origin doesn't have databases in the Databases table we should still remove its information from disk in DatabaseTracker::deleteOrigin()
1721         https://bugs.webkit.org/show_bug.cgi?id=178281
1722         <rdar://problem/34576132>
1723
1724         Reviewed by Brent Fulgham.
1725
1726         Verify that if there is an entry in the Origins table but no entries in the Databases
1727         table that we still remove the directory for the origin, and that we remove the
1728         entry from the Origins table.
1729
1730         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
1731         (TestWebKitAPI::TEST):
1732
1733 2017-10-15  Ryosuke Niwa  <rniwa@webkit.org>
1734
1735         Cannot access images included in the content pasted from Microsoft Word
1736         https://bugs.webkit.org/show_bug.cgi?id=124391
1737         <rdar://problem/26862741>
1738
1739         Reviewed by Antti Koivisto.
1740
1741         Added tests for sanitizing HTML contents for copy & paste and drag & drop.
1742
1743         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1744         * TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm: Added.
1745         (readHTMLFromPasteboard): Added.
1746         (createWebViewWithCustomPasteboardDataEnabled): Added.
1747         (CopyHTML.Sanitizes): Added.
1748
1749         * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
1750         (createWebViewWithCustomPasteboardDataEnabled): Added to enable more tests on bots.
1751
1752         * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
1753         (writeRTFToPasteboard): Added.
1754         (createWebViewWithCustomPasteboardDataEnabled): Added.
1755         (createHelloWorldString): Added.
1756         (PasteRTF.ExposesHTMLTypeInDataTransfer): Added.
1757         (PasteRTFD.ExposesHTMLTypeInDataTransfer): Added.
1758         (PasteRTFD.ImageElementUsesBlobURLInHTML): Added.
1759
1760         * TestWebKitAPI/Tests/WebKitCocoa/copy-html.html: Added.
1761         * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html: Store the clipboardData contents for
1762         PasteRTF.ExposesHTMLTypeInDataTransfer and PasteRTFD.ExposesHTMLTypeInDataTransfer.
1763
1764         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1765         (DataInteractionTests.DataTransferSanitizeHTML):
1766
1767 2017-10-16  Youenn Fablet  <youenn@apple.com>
1768
1769         Activate Cache API by default
1770         https://bugs.webkit.org/show_bug.cgi?id=178186
1771
1772         Reviewed by Chris Dumez.
1773
1774         Removing explicit activation of cache api.
1775
1776         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1777         (WTR::InjectedBundle::beginTesting):
1778         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1779         (WTR::TestRunner::setCacheAPIEnabled): Deleted.
1780         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1781
1782 2017-10-16  Ross Kirsling  <ross.kirsling@sony.com>
1783
1784         run-webkit-tests help text should mention arguments too
1785         https://bugs.webkit.org/show_bug.cgi?id=178352
1786
1787         Reviewed by Tim Horton.
1788
1789         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1790         (parse_args):
1791
1792 2017-10-16  Maureen Daum  <mdaum@apple.com>
1793
1794         If we fail to delete any database file, don't remove its information from the tracker database
1795         <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
1796
1797         Reviewed by Brady Eidson.
1798
1799         Add tests that verify we correctly delete databases and remove their information from
1800         the tracker database, even if the database doesn't exist. Verify that if we fail to
1801         delete a database, we don't remove its information from the tracker database.
1802
1803         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1804         Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
1805         method for creating a temporary directory in the tests.
1806         * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
1807         The existing test was copied to DatabaseTrackerTest.mm.
1808         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
1809         (TestWebKitAPI::TEST):
1810         (TestWebKitAPI::addToDatabasesTable):
1811         (TestWebKitAPI::removeDirectoryAndAllContents):
1812         (TestWebKitAPI::createFileAtPath):
1813
1814 2017-10-16  Ryan Haddad  <ryanhaddad@apple.com>
1815
1816         Unreviewed, rolling out r223422.
1817
1818         These tests are for a change that was rolled out in r223420
1819
1820         Reverted changeset:
1821
1822         "If we fail to delete any database file, don't remove its
1823         information from the tracker database"
1824         https://bugs.webkit.org/show_bug.cgi?id=178251
1825         https://trac.webkit.org/changeset/223422
1826
1827 2017-10-16  Maureen Daum  <mdaum@apple.com>
1828
1829         If we fail to delete any database file, don't remove its information from the tracker database
1830         <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
1831
1832         Reviewed by Brady Eidson.
1833
1834         Add tests that verify we correctly delete databases and remove their information from
1835         the tracker database, even if the database doesn't exist. Verify that if we fail to
1836         delete a database, we don't remove its information from the tracker database.
1837
1838         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1839         Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
1840         method for creating a temporary directory in the tests.
1841         * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
1842         The existing test was copied to DatabaseTrackerTest.mm.
1843         * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
1844         (TestWebKitAPI::TEST):
1845         (TestWebKitAPI::addToDatabasesTable):
1846         (TestWebKitAPI::removeDirectoryAndAllContents):
1847         (TestWebKitAPI::createFileAtPath):
1848
1849 2017-10-16  David Kilzer  <ddkilzer@apple.com>
1850
1851         Add RELEASE_ASSERT_WITH_SECURITY_IMPLICATION() macro
1852         <https://webkit.org/b/178269>
1853
1854         Reviewed by Alex Christensen.
1855
1856         * Scripts/webkitpy/style/checkers/cpp.py:
1857         (check_language): Add checker to warn about using
1858         ASSERT_WITH_SECURITY_IMPLICATION().
1859         (CppChecker.categories): Add 'security/assertion' to list of
1860         enabled checkers.
1861         * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1862         (CppStyleTest.test_debug_security_assertion): Add tests for
1863         new checker.
1864
1865 2017-10-16  Chris Dumez  <cdumez@apple.com>
1866
1867         Clicks on Link with download attribute causes all (other) links to trigger download when clicked
1868         https://bugs.webkit.org/show_bug.cgi?id=178267
1869         <rdar://problem/34985016>
1870
1871         Reviewed by Darin Adler.
1872
1873         Use PassThrough policy in WKTR's InjectedBundle's decidePolicyForNewWindowAction so that the
1874         request is sent to the UIProcess. This gets WKTR's closer to Safari behavior and helps
1875         reproduce the bug. Without this change, I would not be able to write a regression test for
1876         this bug that is very easily reproducible in Safari.
1877
1878         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1879         (WTR::InjectedBundlePage::decidePolicyForNewWindowAction):
1880
1881 2017-10-16  Emilio Cobos Álvarez  <emilio@crisal.io>
1882
1883         Add Emilio Cobos Álvarez to the contributors list.
1884         https://bugs.webkit.org/show_bug.cgi?id=178334
1885
1886         Reviewed by Antti Koivisto.
1887
1888         * Scripts/webkitpy/common/config/contributors.json:
1889
1890 2017-10-07  Maciej Stachowiak  <mjs@apple.com>
1891
1892         Improve --help documentation and add --list-plans to show available benchmarks.
1893         https://bugs.webkit.org/show_bug.cgi?id=178059
1894
1895         Reviewed by Ryosuke Niwa.
1896
1897         * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
1898         (BenchmarkRunner.available_plans): New function that returns the list of available plans.
1899         (BenchmarkRunner.plan_directory): New method to centralize knowledge of where the plan files live.
1900         (BenchmarkRunner._find_plan_file): Updated to use BenchmarkRunner.plan_directory
1901
1902         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
1903         
1904         (parse_args): Help cleanup: Reordered options to put more common
1905         ones at the top. Fixed wording. Added help for each
1906         option. Explained default for each option that has one.
1907
1908         New option: --list-plans which tells you the available benchmarks.
1909         
1910         Code cleanup: Removed use of dest where redundant, made variable
1911         names conforming to Python coding style.
1912         
1913         (run_benchmark_plan): Adapted for new variable names.
1914         (list_benchmark_plans): New helper for --list-plans option.
1915         (start): Account for --list-plans. Also use
1916         BechmarkRunner.available_plans and use
1917         BenchmarkRunner.plan_directory instead of duplicating
1918         code/knowledge here.
1919
1920 2017-10-16  Wenson Hsieh  <wenson_hsieh@apple.com>
1921
1922         On ToT, event.dataTransfer.getData("text/uri-list") returns an empty string when dragging an image
1923         https://bugs.webkit.org/show_bug.cgi?id=178301
1924         <rdar://problem/34990050>
1925
1926         Reviewed by Darin Adler.
1927
1928         Fixes issues in DumpRenderTree's LocalPasteboard to ensure that drag-drop-href-as-url.html exposes files, and
1929         also adds a new iOS drag and drop API test.
1930
1931         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
1932         (-[LocalPasteboard addTypes:owner:]):
1933         (-[LocalPasteboard setData:forType:]):
1934
1935         Fixes LocalPasteboard's implementation of changeCount to incremement when the pasteboard owner changes, rather
1936         than every time data is changed. This is consistent with NSPasteboard behavior.
1937
1938         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1939         (TestWebKitAPI::TEST):
1940
1941         Adds a new API test to verify that an image and HTTP URL written by the platform is correctly web exposed.
1942
1943 2017-10-15  Darin Adler  <darin@apple.com>
1944
1945         UTF-8 decoding produces one replacement character per byte; Encoding standard requires one replacement character per illegal sequence instead
1946         https://bugs.webkit.org/show_bug.cgi?id=178207
1947
1948         Reviewed by Sam Weinig.
1949
1950         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added test.
1951         * TestWebKitAPI/Tests/WebCore/TextCodec.cpp: Added.
1952         (TestWebKitAPI::decodeHexTestBytes): Decodes a string so we can write readable tests.
1953         (TestWebKitAPI::escapeNonPrintableASCIICharacters): Encodes a string so we can write readable tests.
1954         (TestWebKitAPI::TEST): Added some UTF-8 tests and UTF-8 invalid sequences tests.
1955         Would be smart to add more tests for other cases, exercising the fast ASCII loop for example, and
1956         other encodings.
1957
1958 2017-10-14  Adrian Perez de Castro  <aperez@igalia.com>
1959
1960         [WPE] JHBuild build directory DependenciesWPE/Build is not removed by update-webkit-libs-jhbuild
1961         https://bugs.webkit.org/show_bug.cgi?id=178212
1962
1963         Reviewed by Michael Catanzaro.
1964
1965         * Scripts/update-webkit-libs-jhbuild:
1966         (cleanJhbuild): The WPE JHBuild also uses a separate "Build" subdirectory, so do not skip
1967         cleaning it when "--wpe" is passed to the script.
1968
1969 2017-10-13  Adrian Perez de Castro  <aperez@igalia.com>
1970
1971         [WPE] Fontconfig fails build in JHBuild with “error: conflicting types for ‘FcObjectTypeHash’”
1972         https://bugs.webkit.org/show_bug.cgi?id=178283
1973
1974         Reviewed by Žan Doberšek.
1975
1976         * wpe/jhbuild.modules: Flag Fontconfig to be built inside the source directory, otherwise
1977         compilation fails. While at it, pass "--disable-docs" to cut a bit on build time.
1978
1979 2017-10-13  Youenn Fablet  <youenn@apple.com>
1980
1981         Implement listing origins for which CacheStorage is storing data
1982         https://bugs.webkit.org/show_bug.cgi?id=178236
1983
1984         Reviewed by Chris Dumez.
1985
1986         Adding hasDOMCache API for checking whether origin is storing data through Cache API.
1987
1988         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1989         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1990         (WTR::TestRunner::hasDOMCache):
1991         * WebKitTestRunner/InjectedBundle/TestRunner.h:
1992         * WebKitTestRunner/TestController.cpp:
1993         (WTR::FetchCacheOriginsCallbackContext::FetchCacheOriginsCallbackContext):
1994         (WTR::fetchCacheOriginsCallback):
1995         (WTR::TestController::hasDOMCache):
1996         * WebKitTestRunner/TestController.h:
1997         * WebKitTestRunner/TestInvocation.cpp:
1998         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1999
2000 2017-10-13  Alex Christensen  <achristensen@webkit.org>
2001
2002         Remove Editor::simplifyMarkup
2003         https://bugs.webkit.org/show_bug.cgi?id=178271
2004
2005         Reviewed by Wenson Hsieh.
2006
2007         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2008         * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm: Removed.
2009
2010 2017-10-11  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2011
2012         [GLib] WebKitNavigationAction should tell whether it is a redirect
2013         https://bugs.webkit.org/show_bug.cgi?id=178178
2014
2015         Test that WebKitNavigationAction properly reports being a redirect.
2016
2017         Reviewed by Carlos Garcia Campos.
2018
2019         * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
2020         (testNavigationPolicy): test that loading /redirect leads to a redirect WebKitNavigationAction.
2021         (serverCallback): add a /redirect path to the server, which causes a redirect.
2022
2023 2017-10-13  Chris Dumez  <cdumez@apple.com>
2024
2025         Unreviewed, fix webkitpy failure after r223273
2026
2027         * Scripts/webkitpy/w3c/test_importer_unittest.py:
2028         (TestImporterTest.test_harnesslinks_conversion):
2029
2030 2017-10-12  Chris Dumez  <cdumez@apple.com>
2031
2032         import-w3c-tests modifies test sources and sometimes causes them to fail
2033         https://bugs.webkit.org/show_bug.cgi?id=178234
2034
2035         Reviewed by Ryosuke Niwa.
2036
2037         Update import-w3c-tests to stop rewriting tests as this is causing some tests
2038         to fail unexpectedly.
2039
2040         * Scripts/webkitpy/w3c/test_importer.py:
2041         (TestImporter.import_tests):
2042
2043 2017-10-12  Youenn Fablet  <youenn@apple.com>
2044
2045         Layout Test http/tests/cache-storage/cache-clearing.https.html is failing
2046         https://bugs.webkit.org/show_bug.cgi?id=178200
2047
2048         Reviewed by Chris Dumez.
2049
2050         Making clearDOMCache wait for removal completion to exit.
2051         This removes the risk to interact with the cache while deleting it which will end up be racy in tests.
2052
2053         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2054         (WTR::TestRunner::clearDOMCache):
2055         * WebKitTestRunner/TestController.cpp:
2056         (WTR::ClearDOMCacheCallbackContext::ClearDOMCacheCallbackContext):
2057         (WTR::clearDOMCacheCallback):
2058         (WTR::TestController::clearDOMCache):
2059         * WebKitTestRunner/TestInvocation.cpp:
2060         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2061         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2062
2063 2017-10-12  John Wilander  <wilander@apple.com>
2064
2065         ResourceLoadObserver::logFrameNavigation() should use redirectResponse.url()
2066         https://bugs.webkit.org/show_bug.cgi?id=175257
2067         <rdar://problem/33359866>
2068
2069         Reviewed by Brent Fulgham.
2070
2071         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2072         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2073         (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
2074         (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
2075         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2076         * WebKitTestRunner/TestController.cpp:
2077         (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
2078             Not implemented.
2079         (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
2080             Not implemented.
2081         * WebKitTestRunner/TestController.h:
2082         * WebKitTestRunner/TestInvocation.cpp:
2083         (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2084         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2085         (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
2086             Implemented platform-specific.
2087         (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
2088             Implemented platform-specific.
2089
2090 2017-10-12  Andy Estes  <aestes@apple.com>
2091
2092         [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
2093         https://bugs.webkit.org/show_bug.cgi?id=178181
2094         <rdar://problem/33660282>
2095
2096         Reviewed by Dan Bernstein.
2097
2098         * WebKitTestRunner/TestController.cpp:
2099         (WTR::TestController::databaseProcessName):
2100
2101 2017-10-12  Myles C. Maxfield  <mmaxfield@apple.com>
2102
2103         Emit SPIR-V from WSL compiler (Part 1)
2104         https://bugs.webkit.org/show_bug.cgi?id=177998
2105
2106         Reviewed by Filip Pizlo.
2107
2108         This patch implements the first half of a SPIR-V codegen phase for WSL.
2109         This includes all the operations which aren't actually emitting the contents
2110         of functions themselves. For example, this includes things like representing
2111         WSL types with SPIR-V types, and declaring shaders' inputs and outputs. A
2112         future patch will actually emit the contents of functions.
2113
2114         There are two helper visitors here: SPIRVTypeAnalyzer which generates SPIR-V
2115         types from WSL types, and SPIRVPrimitiveVariableAnalyzer which identifies
2116         input and output variables from a shader (and assigns location values to
2117         each one).
2118
2119         This patch is currently pursuing the "logical mode" detailed in
2120         https://bugs.webkit.org/show_bug.cgi?id=176967. In this mode, each pointer and
2121         array reference operation can be statically traced to the variable or array it
2122         is operating on.
2123
2124         This has the interesting property where accessing a pointer inside an array is
2125         forbidden, because the array index may be computed at runtime, so the compiler
2126         can't know at compile time which variable the pointer operation will be
2127         accessing. However, this isn't true for structs; the program must statically
2128         state which struct member it is accessing. Therefore, pointers or array
2129         references must not transitively appear within an array, but they may appear
2130         within a struct. The same logic applies to array references; those get lowered
2131         to just two indexes in SPIR-V (a lower bound and an upper bound).
2132
2133         So, outside of an array, SPIR-V types don't need to include any pointers because
2134         any operation with the pointer doesn't need access to the runtime value of the
2135         pointer. Inside of an array, pointers are forbidden. Therefore, SPIR-V types
2136         will never include any pointers.
2137
2138         This means that, for example, WSL can represent a linked list in logical mode.
2139         However, a WSL program cannot iterate across the list, because that would require
2140         assigning to a pointer. So instead, a program using a linked list could only say
2141         something like "list.ptr->ptr->ptr->value".
2142
2143         * WebGPUShadingLanguageRI/LateChecker.js:
2144         (LateChecker.prototype._checkShaderType):
2145         * WebGPUShadingLanguageRI/SPIR-V.js:
2146         (SPIRV.OperandChecker.prototype._isStar):
2147         (SPIRV.OperandChecker.prototype.nextComparisonType):
2148         (SPIRV.OperandChecker.prototype.finalize):
2149         (SPIRV.OperandChecker):
2150         * WebGPUShadingLanguageRI/SPIRV.html:
2151         * WebGPUShadingLanguageRI/SPIRVCodegen.js: Added.
2152         (findEntryPoints):
2153         (emitTypes.doEmitTypes):
2154         (emitTypes):
2155         (ConstantFinder.prototype.visitGenericLiteralType):
2156         (ConstantFinder):
2157         (generateSPIRV):
2158         * WebGPUShadingLanguageRI/SPIRVTypeAnalyzer.js: Added.
2159         (SPIRVTypeAnalyzer):
2160         (SPIRVTypeAnalyzer.prototype.get program):
2161         (SPIRVTypeAnalyzer.prototype.get typeMap):
2162         (SPIRVTypeAnalyzer.prototype.get currentId):
2163         (SPIRVTypeAnalyzer.prototype.get stack):
2164         (SPIRVTypeAnalyzer.prototype.visitTypeRef):
2165         (SPIRVTypeAnalyzer.prototype._encounterType):
2166         (SPIRVTypeAnalyzer.prototype.visitNullType):
2167         (SPIRVTypeAnalyzer.prototype.visitGenericLiteralType):
2168         (SPIRVTypeAnalyzer.prototype.visitNativeType):
2169         (SPIRVTypeAnalyzer.prototype.visitEnumType):
2170         (SPIRVTypeAnalyzer.prototype.visitPtrType):
2171         (SPIRVTypeAnalyzer.prototype.visitArrayRefType):
2172         (SPIRVTypeAnalyzer.prototype.visitArrayType):
2173         (SPIRVTypeAnalyzer.prototype.visitStructType):
2174         * WebGPUShadingLanguageRI/SPIRVVariableAnalyzer.js: Added.
2175         (SPIRVPrimitiveVariableAnalyzer):
2176         (SPIRVPrimitiveVariableAnalyzer.prototype.get program):
2177         (SPIRVPrimitiveVariableAnalyzer.prototype.get typeMap):
2178         (SPIRVPrimitiveVariableAnalyzer.prototype.get currentId):
2179         (SPIRVPrimitiveVariableAnalyzer.prototype.get currentLocation):
2180         (SPIRVPrimitiveVariableAnalyzer.prototype.get nameComponents):
2181         (SPIRVPrimitiveVariableAnalyzer.prototype.get result):
2182         (SPIRVPrimitiveVariableAnalyzer.prototype.visitTypeRef):
2183         (SPIRVPrimitiveVariableAnalyzer.prototype.visitNullType):
2184         (SPIRVPrimitiveVariableAnalyzer.prototype.visitGenericLiteralType):
2185         (SPIRVPrimitiveVariableAnalyzer.prototype.visitNativeType):
2186         (SPIRVPrimitiveVariableAnalyzer.prototype.visitEnumType):
2187         (SPIRVPrimitiveVariableAnalyzer.prototype.visitPtrType):
2188         (SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayRefType):
2189         (SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayType):
2190         (SPIRVPrimitiveVariableAnalyzer.prototype.visitStructType):
2191         * WebGPUShadingLanguageRI/WSL.md:
2192         * WebGPUShadingLanguageRI/index.html:
2193
2194 2017-09-29  Filip Pizlo  <fpizlo@apple.com>
2195
2196         Enable gigacage on iOS
2197         https://bugs.webkit.org/show_bug.cgi?id=177586
2198
2199         Reviewed by JF Bastien.
2200         
2201         Add a mode to test disabling Gigacage.
2202
2203         * Scripts/run-jsc-stress-tests:
2204         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
2205
2206 2017-10-11  Sam Weinig  <sam@webkit.org>
2207
2208         Remove out-parameter variants of copyToVector
2209         https://bugs.webkit.org/show_bug.cgi?id=178155
2210
2211         Reviewed by Tim Horton.
2212
2213         * DumpRenderTree/JavaScriptThreading.cpp:
2214         (stopJavaScriptThreads):
2215
2216 2017-10-12  Sam Weinig  <sam@webkit.org>
2217
2218         It should be possible to iterate just the values (and not the counts) of a HashCountedSet
2219         https://bugs.webkit.org/show_bug.cgi?id=178169
2220
2221         Reviewed by Daniel Bates.
2222
2223         * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp:
2224         (TestWebKitAPI::TEST):
2225         Add test for HashCountedSet's new values() range.
2226
2227 2017-10-11  Frederic Wang  <fwang@igalia.com>
2228
2229         run-safari --ios-simulator is no longer working with Xcode 9
2230         https://bugs.webkit.org/show_bug.cgi?id=177595
2231
2232         Reviewed by Daniel Bates.
2233
2234         In Xcode 9, the path of the simulator application is now in a new CoreSimulator subdirectory
2235         of the iphoneOS SDK platform. This patch updates webkitdirs.pm to use the new path in
2236         Xcode 9 or higher so that it is possible to run Safari on the iOS simulator again. It also
2237         does some minor code refactoring to improve code reuse.
2238
2239         * Scripts/configure-xcode-for-ios-development: Move sdkDirectory() and sdkPlatformDirectory()
2240         into webkitdirs.
2241         (sdkDirectory): Deleted.
2242         (sdkPlatformDirectory): Deleted.
2243         * Scripts/webkitdirs.pm: Expose new sdkDirectory() and sdkPlatformDirectory().
2244         (sdkDirectory): Moved from configure-xcode-for-ios-development.
2245         (sdkPlatformDirectory): Ditto.
2246         (XcodeSDKPath): Rely on sdkDirectory() to implement this function.
2247         (iosSimulatorApplicationsPath): In Xcode 9 or higher use the new path. It is calculated
2248         by relying on sdkPlatformDirectory().
2249
2250 2017-10-11  Dewei Zhu  <dewei_zhu@apple.com>
2251
2252         run-benchmark script should set '__XPC_DYLD_FRAMEWORK_PATH' while launching local-built Safari on Mac.
2253         https://bugs.webkit.org/show_bug.cgi?id=178199
2254
2255         Reviewed by Saam Barati.
2256
2257         '__XPC_DYLD_FRAMEWORK_PATH' should be set while launching Safari on run-benchmark script.
2258         'force_remove' function should support both file and directory.
2259
2260         * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
2261         (OSXSafariDriver.launch_url):
2262         * Scripts/webkitpy/benchmark_runner/utils.py:
2263         (force_remove):
2264
2265 2017-10-11  Saam Barati  <sbarati@apple.com>
2266
2267         Runtime disable poly proto because it may be a 3-4% Speedometer regression
2268         https://bugs.webkit.org/show_bug.cgi?id=178192
2269
2270         Reviewed by JF Bastien.
2271
2272         * Scripts/run-jsc-stress-tests:
2273
2274 2017-10-11  Youenn Fablet  <youenn@apple.com>
2275
2276         Add API to clean CacheStorage data
2277         https://bugs.webkit.org/show_bug.cgi?id=178034
2278
2279         Reviewed by Chris Dumez.
2280
2281         Adding internals API to trigger deleting all or origin-persistent cache storage persistent data. 
2282
2283         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2284         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2285         (WTR::TestRunner::clearDOMCache):
2286         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2287         * WebKitTestRunner/TestController.cpp:
2288         (WTR::TestController::clearDOMCache):
2289         * WebKitTestRunner/TestController.h:
2290         * WebKitTestRunner/TestInvocation.cpp:
2291         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2292
2293 2017-10-11  Chris Dumez  <cdumez@apple.com>
2294
2295         [Geolocation] Expose Coordinates.floorLevel
2296         https://bugs.webkit.org/show_bug.cgi?id=178173
2297         <rdar://problem/34918936>
2298
2299         Reviewed by Ryosuke Niwa.
2300
2301         Add test infrastructure for testing Coordinates.floorLevel.
2302
2303         * DumpRenderTree/TestRunner.cpp:
2304         (setMockGeolocationPositionCallback):
2305         * DumpRenderTree/TestRunner.h:
2306         * DumpRenderTree/mac/TestRunnerMac.mm:
2307         (TestRunner::setMockGeolocationPosition):
2308         * DumpRenderTree/win/TestRunnerWin.cpp:
2309         (TestRunner::setMockGeolocationPosition):
2310         * WebKitTestRunner/GeolocationProviderMock.cpp:
2311         (WTR::GeolocationProviderMock::setPosition):
2312         * WebKitTestRunner/GeolocationProviderMock.h:
2313         * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2314         * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2315         (WTR::InjectedBundle::setMockGeolocationPosition):
2316         * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2317         * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2318         (WTR::TestRunner::setMockGeolocationPosition):
2319         * WebKitTestRunner/InjectedBundle/TestRunner.h:
2320         * WebKitTestRunner/TestController.cpp:
2321         (WTR::TestController::setMockGeolocationPosition):
2322         * WebKitTestRunner/TestController.h:
2323         * WebKitTestRunner/TestInvocation.cpp:
2324         (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2325
2326 2017-10-11  Youenn Fablet  <youenn@apple.com>
2327
2328         Bump default cache storage quota to 20MB
2329         https://bugs.webkit.org/show_bug.cgi?id=178132
2330
2331         Reviewed by Alex Christensen.
2332
2333         * WebKitTestRunner/TestController.cpp:
2334         (WTR::TestController::generateContextConfiguration const):
2335         * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2336         (WTR::initializeWebViewConfiguration): Setting quota to 400kb
2337
2338 2017-10-11  Commit Queue  <commit-queue@webkit.org>
2339
2340         Unreviewed, rolling out r223113 and r223121.
2341         https://bugs.webkit.org/show_bug.cgi?id=178182
2342
2343         Reintroduced 20% regression on Kraken (Requested by rniwa on
2344         #webkit).
2345
2346         Reverted changesets:
2347
2348         "Enable gigacage on iOS"
2349         https://bugs.webkit.org/show_bug.cgi?id=177586
2350         https://trac.webkit.org/changeset/223113
2351
2352         "Use one virtual allocation for all gigacages and their
2353         runways"
2354         https://bugs.webkit.org/show_bug.cgi?id=178050
2355         https://trac.webkit.org/changeset/223121
2356
2357 2017-10-11  Ryosuke Niwa  <rniwa@webkit.org>
2358
2359         Sanitize URL in pasteboard for other applications and cross origin content
2360         https://bugs.webkit.org/show_bug.cgi?id=178060
2361         <rdar://problem/34874518>
2362
2363         Reviewed by Wenson Hsieh.
2364
2365         Added API tests for sanitizing URLs copied from web content, and that the original URL is exposed to the web content.
2366
2367         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2368         * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm: Added.
2369         (readURLFromPasteboard): A helper function.
2370         * TestWebKitAPI/Tests/WebKitCocoa/copy-url.html: Added.
2371         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2372         (DataInteractionTests.DataTransferGetDataWhenDroppingCustomData): Rebaselined. https://www.apple.com is no longer
2373         normalized to https://www.apple.com/ by NSURL / UIPasteboard as expected.
2374         (DataInteractionTests.DataTransferSetDataValidURL): Added.
2375         (DataInteractionTests.DataTransferSetDataUnescapedURL): Added.
2376         (DataInteractionTests.qDataTransferSetDataInvalidURL): Added.
2377
2378 2017-10-11  Chris Dumez  <cdumez@apple.com>
2379
2380         Modernize Geolocation code
2381         https://bugs.webkit.org/show_bug.cgi?id=178148
2382
2383         Reviewed by Ryosuke Niwa.
2384
2385         * DumpRenderTree/mac/TestRunnerMac.mm:
2386         (TestRunner::setMockGeolocationPosition):
2387
2388 2017-10-11  Nael Ouedraogo  <nael.ouedraogo@crf.canon.fr>
2389
2390         [GStreamer] Many media source tests crashing with GStreamer-CRITICAL **: _gst_util_uint64_scale: assertion 'denom != 0' failed in gst_qtdemux_configure_stream()
2391         https://bugs.webkit.org/show_bug.cgi?id=176804
2392
2393         Reviewed by Michael Catanzaro.
2394
2395         Add patch to fix assert in qtdemux.
2396
2397         * gstreamer/jhbuild.modules:
2398         * gstreamer/patches/gst-plugins-good-0009-qtdemux-fix-assert-when-moof-contains-one-sample.patch: Added.
2399
2400 2017-10-11  Tomas Popela  <tpopela@redhat.com>
2401
2402         Use https for trac changeset and browser links
2403         https://bugs.webkit.org/show_bug.cgi?id=178167
2404
2405         Reviewed by Alexey Proskuryakov.
2406
2407         Switch the http://trac.webkit.org/changeset and
2408         http://trac.webkit.org/browser links that are printed by webkitpy to
2409         https. Also update the test expectations.
2410
2411         * Scripts/webkitpy/common/checkout/checkout_unittest.py:
2412         * Scripts/webkitpy/common/config/committervalidator_unittest.py:
2413         (CommitterValidatorTest.test_flag_permission_rejection_message):
2414         * Scripts/webkitpy/common/config/urls.py:
2415         (view_source_url):
2416         (view_revision_url):
2417         * Scripts/webkitpy/common/net/bugzilla/bug_unittest.py:
2418         (BugTest.test_commit_revision):
2419         * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
2420         * Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
2421         * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
2422         (MainTest):
2423         (MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):
2424         * Scripts/webkitpy/style/checkers/changelog_unittest.py:
2425         (ChangeLogCheckerTest.test_missing_bug_number):
2426         * Scripts/webkitpy/tool/bot/feeders_unittest.py:
2427         * Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
2428         * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
2429         (IRCBotTest.test_rollout):
2430         (IRCBotTest.test_revert):
2431         (IRCBotTest.test_multi_rollout):
2432         (IRCBotTest.test_rollout_with_r_in_svn_revision):
2433         (IRCBotTest.test_multi_rollout_with_r_in_svn_revision):
2434         (IRCBotTest.test_rollout_invalidate_reason):
2435         (test_multi_rollout_invalidate_reason):
2436         * Scripts/webkitpy/tool/bot/sheriff_unittest.py:
2437         * Scripts/webkitpy/tool/commands/download_unittest.py:
2438         * Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:
2439         * Scripts/webkitpy/tool/commands/queues_unittest.py:
2440         * Scripts/webkitpy/tool/commands/suggestnominations.py:
2441         (SuggestNominations._count_commit):
2442         * Scripts/webkitpy/tool/commands/upload_unittest.py:
2443         * Scripts/webkitpy/tool/servers/data/rebaselineserver/util.js:
2444         (getTracUrl):
2445         (getSortedKeys):
2446         * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:
2447         (CloseBugForLandDiffTest.test_empty_state):
2448         * Scripts/webkitpy/tool/steps/commit_unittest.py:
2449         (CommitTest._test_check_test_expectations):
2450         * Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py:
2451         (UpdateChangeLogsForRevertTest):
2452
2453 2017-10-10  Ryosuke Niwa  <rniwa@webkit.org>
2454
2455         Enable custom pasteboard data in DumpRenderTree and WebKitTestRunner
2456         https://bugs.webkit.org/show_bug.cgi?id=178154
2457
2458         Reviewed by Wenson Hsieh.
2459
2460         Fixed the bug that LocalPasteboard would fail to load the promise type if data is set after declaring types
2461         by delaying the call to provideDataForType until when dataForType is called.
2462
2463         Without this fix, fast/events/dropzone-002.html would start failing after enabling custom pasteboard data.
2464         With this fix, fast/events/dropzone-005.html also starts passing.
2465
2466         * DumpRenderTree/mac/DumpRenderTree.mm:
2467         (resetWebPreferencesToConsistentValues):
2468         * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
2469         (-[LocalPasteboard addTypes:owner:]):
2470         (-[LocalPasteboard dataForType:]):
2471         * WebKitTestRunner/TestController.cpp:
2472         (WTR::TestController::resetPreferencesToConsistentValues):
2473
2474 2017-10-10  Joanmarie Diggs  <jdiggs@igalia.com>
2475
2476         AX: [ATK] ARIA form role should be mapped to ATK_ROLE_LANDMARK; not ATK_ROLE_FORM
2477         https://bugs.webkit.org/show_bug.cgi?id=178137
2478
2479         Reviewed by Chris Fleizach.
2480
2481         Add handling for ATK_ROLE_LANDMARK resulting from the ARIA form role.
2482
2483         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2484
2485 2017-10-10  Jonathan Bedard  <jbedard@apple.com>
2486
2487         run-webkit-tests: upload test results to multiple servers
2488         https://bugs.webkit.org/show_bug.cgi?id=178012
2489         <rdar://problem/34856501>
2490
2491         Reviewed by Lucas Forschler.
2492
2493         Allowing uploading of results to multiple servers makes developing new results
2494         databases much easier, and does not complicate uploading logic.
2495
2496         * Scripts/webkitpy/layout_tests/controllers/manager.py:
2497         (Manager.upload_results): Iterate through the list of results server hosts and
2498         send results to each one.
2499         * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
2500         (JSONLayoutResultsGenerator.__init__): Accept a list of test results servers.
2501         * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2502         (JSONResultsGenerator.__init__): Accept a list of test results servers.
2503         (JSONResultsGenerator.get_json): Pick which server to download from by index.
2504         (JSONResultsGenerator.upload_json_files): Upload the JSON to each results server.
2505         (JSONResultsGenerator._get_archived_json_results): Pick which server to download from.
2506         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2507         (parse_args): Allow multiple test-results-servers and results-server-hosts to be
2508         passed to run-webkit-tests. 
2509
2510 2017-10-09  Youenn Fablet  <youenn@apple.com>
2511
2512         Vector should be able to easily create from a list of movable only items
2513         https://bugs.webkit.org/show_bug.cgi?id=176432
2514
2515         Reviewed by Darin Adler.
2516
2517         * TestWebKitAPI/Tests/WTF/Vector.cpp:
2518         (TestWebKitAPI::TEST):
2519
2520 2017-09-29  Filip Pizlo  <fpizlo@apple.com>
2521
2522         Enable gigacage on iOS
2523         https://bugs.webkit.org/show_bug.cgi?id=177586
2524
2525         Reviewed by JF Bastien.
2526         
2527         Add a mode to test disabling Gigacage.
2528
2529         * Scripts/run-jsc-stress-tests:
2530         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
2531
2532 2017-10-09  Commit Queue  <commit-queue@webkit.org>
2533
2534         Unreviewed, rolling out r223015 and r223025.
2535         https://bugs.webkit.org/show_bug.cgi?id=178093
2536
2537         Regressed Kraken on iOS by 20% (Requested by keith_mi_ on
2538         #webkit).
2539
2540         Reverted changesets:
2541
2542         "Enable gigacage on iOS"
2543         https://bugs.webkit.org/show_bug.cgi?id=177586
2544         http://trac.webkit.org/changeset/223015
2545
2546         "Unreviewed, disable Gigacage on ARM64 Linux"
2547         https://bugs.webkit.org/show_bug.cgi?id=177586
2548         http://trac.webkit.org/changeset/223025
2549
2550 2017-10-09  Sam Weinig  <sam@webkit.org>
2551
2552         Make HashMap::keys() and HashMap::values() work with WTF::map/WTF::copyToVector
2553         https://bugs.webkit.org/show_bug.cgi?id=178072
2554
2555         Reviewed by Darin Adler.
2556
2557         * TestWebKitAPI/Tests/WTF/Vector.cpp:
2558         (TestWebKitAPI::TEST):
2559         
2560             Add tests for HashMap::keys() and HashMap::values() working with copyToVector.
2561
2562 2017-10-05  Frederic Wang  <fwang@igalia.com>
2563
2564         Remove WOFF2 from Source/ThirdParty.
2565         https://bugs.webkit.org/show_bug.cgi?id=177862
2566
2567         Reviewed by Michael Catanzaro.
2568
2569         * Scripts/webkitpy/style/checker.py: Remove woff2.
2570         * gtk/jhbuild.modules: Add new jhbuild module for woff2.
2571
2572 2017-10-08  Sam Weinig  <sam@webkit.org>
2573
2574         It should be possible to create a ListHashSet with a std::initializer_list.
2575         https://bugs.webkit.org/show_bug.cgi?id=178070
2576
2577         Reviewed by Darin Adler.
2578
2579         * TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
2580         (TestWebKitAPI::TEST):
2581         Add a test for using std::initializer_list with ListHashSet.
2582
2583 2017-10-08  Sam Weinig  <sam@webkit.org>
2584
2585         There should be a version of copyToVector that returns a Vector, rather than using an out parameter
2586         https://bugs.webkit.org/show_bug.cgi?id=177732
2587
2588         Reviewed by Saam Barati.
2589
2590         * TestWebKitAPI/Tests/WTF/Vector.cpp:
2591         (TestWebKitAPI::TEST):
2592         Add tests for the new copyToVector and copyToVectorOf functions.
2593
2594 2017-10-08  Darin Adler  <darin@apple.com>
2595
2596         Fix bugs related to setting reflected floating point DOM attributes
2597         https://bugs.webkit.org/show_bug.cgi?id=178061
2598
2599         Reviewed by Sam Weinig.
2600
2601         * TestWebKitAPI/Tests/WTF/AtomicString.cpp: Added a test of the
2602         AtomicString::number function, based on the test cases we already
2603         had for String::numberToStringECMAScript, and with some additional
2604         cases with powers of 10 that check handling of trailng zeroes.
2605
2606         * TestWebKitAPI/Tests/WTF/WTFString.cpp: Added test cases to the
2607         existing tests of the String::numberToStringECMAScript function
2608         as above. Also added tests for String::number and for
2609         String::numberToStringFixedWidth. Also changed the tests to all use
2610         EXPECT instead of ASSERT macros since these are all non-fatal.
2611
2612         * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2613         (WTR::dumpFrameScrollPosition): Use StringBuilder::appendECMAScriptNumber
2614         instead of String::number.
2615
2616 2017-10-08  Dean Jackson  <dino@apple.com>
2617
2618         Make sort-Xcode-project file handle UnifiedSources
2619         https://bugs.webkit.org/show_bug.cgi?id=178042
2620
2621         Reviewed by Sam Weinig.
2622
2623         Sort the UnifiedSource(\d+) files by number rather
2624         than alphabetically.
2625
2626         * Scripts/sort-Xcode-project-file:
2627         (sortChildrenByFileName):
2628         (sortFilesByFileName):
2629
2630 2017-09-29  Filip Pizlo  <fpizlo@apple.com>
2631
2632         Enable gigacage on iOS
2633         https://bugs.webkit.org/show_bug.cgi?id=177586
2634
2635         Reviewed by JF Bastien.
2636         
2637         Add a mode to test disabling Gigacage.
2638
2639         * Scripts/run-jsc-stress-tests:
2640         * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
2641
2642 2017-10-06  Aishwarya Nirmal  <anirmal@apple.com>
2643
2644         [iOS] Respect the "caret-color" CSS property when editing
2645         https://bugs.webkit.org/show_bug.cgi?id=177489
2646         <rdar://problem/34600419>
2647
2648         Reviewed by Tim Horton.
2649
2650         Adds test for iOS caret color support.
2651
2652         * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
2653         (TestWebKitAPI::TEST):
2654         * TestWebKitAPI/ios/UIKitSPI.h:
2655
2656 2017-10-06  Alex Christensen  <achristensen@webkit.org>
2657
2658         Add more infrastructure to apply custom header fields to same-origin requests
2659         https://bugs.webkit.org/show_bug.cgi?id=177629
2660
2661         Reviewed by Ryosuke Niwa.
2662
2663         * TestWebKitAPI/Tests/WebCore/HTTPHeaderField.cpp:
2664         (canonicalizeHTTPHeader):
2665         (shouldRemainUnchanged):
2666         (shouldBeInvalid):
2667         (shouldBecome):
2668         * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2669         (TEST):
2670         (expectHeaders):
2671         (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2672         (-[CustomHeaderFieldsDelegate webView:startURLSchemeTask:]):
2673         (-[CustomHeaderFieldsDelegate webView:stopURLSchemeTask:]):
2674
2675         Test main resource requests, subresource requests, and cross-origin requests.
2676
2677 2017-10-06  Wenson Hsieh  <wenson_hsieh@apple.com>
2678
2679         [iOS] Tweak support for classifying form controls (followup to r222487)
2680         https://bugs.webkit.org/show_bug.cgi?id=177917
2681         <rdar://problem/34820122>
2682
2683         Reviewed by Dean Jackson.
2684
2685         Minor cleanup around autofill API tests added in r222487. Additionally, augments some of these API tests to
2686         verify that after blurring the focused element, the content view no longer accepts autofill credentials (see
2687         WebKit ChangeLog for more details). Also augments tests to verify that the URL in the autofill context matches
2688         the document URL.
2689
2690         * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
2691
2692         Remove the USE(APPLE_INTERNAL_SDK) guard for these API tests.
2693
2694         (newUIKeyboardLoginCredentialsSuggestion):
2695
2696         Add a stub implementation of UIKeyboardLoginCredentialsSuggestion. This allows
2697         [UIKeyboardLoginCredentialsSuggestion new] to return a nonnull object, which allows these API tests to verify
2698         that the credential filling codepath works as intended without any additional UIKit changes. Currently, tests
2699         for the value of username and password fields are passing even though the fields are not being populated because
2700         the expected string values are null, and the observed value is an empty string. We instead check the literal
2701         string values here instead of credentialSuggestion's properties, so that tests verifying the behavior of
2702         -insertTextSuggestion: will require username and password inputs to be populated.
2703
2704         (-[TestInputDelegate _webView:focusShouldStartInputSession:]):
2705         (-[AutofillTestView initWithFrame:]):
2706         (-[AutofillTestView _autofillInputView]):
2707         (-[AutofillTestView textInputHasAutofillContext]):
2708         (TestWebKitAPI::TEST):
2709
2710         Add an additional API test to verify that programmatic focus without user interaction (and also without testing
2711         overrides) does not activate autofill.
2712
2713         (createUIKeyboardLoginCredentialsSuggestion): Deleted.
2714         (-[WKWebView _privateTextInput]): Deleted.
2715         * TestWebKitAPI/ios/UIKitSPI.h:
2716
2717         Minor gardening to remove iOS version >= 11 guards that are now unnecessary. Additionally, add some more private
2718         header imports (with corresponding interface definitions for building and running with the public SDK).
2719
2720 2017-10-06  Antti Koivisto  <antti@apple.com>
2721
2722         Minor WeakPtr improvements
2723         https://bugs.webkit.org/show_bug.cgi?id=177958
2724
2725         Reviewed by Sam Weinig.
2726
2727         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
2728         (TestWebKitAPI::TEST):
2729         (TestWebKitAPI::Base::createWeakPtr): Deleted.
2730
2731 2017-10-06  Carlos Garcia Campos  <cgarcia@igalia.com>
2732
2733         Unreviewed. Fix parsing of GTK unit tests output in bot configuration.
2734
2735         * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2736         (RunGtkAPITests.commandComplete): Remove trailing ':' from the regular expression.
2737
2738 2017-10-06  Charles Turner  <cturner@igalia.com>
2739
2740         Disable bmalloc when running Valgrind
2741         https://bugs.webkit.org/show_bug.cgi?id=177923
2742
2743         Reviewed by Carlos Alberto Lopez Perez.
2744
2745         * Scripts/webkitpy/port/gtk.py:
2746         (GtkPort.setup_environ_for_server):
2747
2748 2017-10-06  Zan Dobersek  <zdobersek@igalia.com>
2749
2750         Implement TestController::platformContext() for WPE, returning the
2751         m_context pointer as the GTK+ port does. This fixes the crashes on
2752         the WPE testers.
2753
2754         Rubber-stamped by Carlos Garcia Campos.
2755
2756         * WebKitTestRunner/wpe/TestControllerWPE.cpp:
2757         (WTR::TestController::platformContext):
2758
2759 2017-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2760
2761         [GTK][WPE] Add API to configure and enable resource load statistics
2762         https://bugs.webkit.org/show_bug.cgi?id=177943
2763
2764         Reviewed by Michael Catanzaro.
2765
2766         Add a command line option to enable intelligent tracking prevention to MiniBrowser and tests cases to check the
2767         new API.
2768
2769         * MiniBrowser/gtk/main.c:
2770         (main):
2771         * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
2772         (serverCallback):
2773         (testWebsiteDataConfiguration):
2774         (testWebsiteDataEphemeral):
2775         (testWebsiteDataResourceLoadStats):
2776         (beforeAll):
2777         * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2778         (Test::Test):
2779         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
2780         (directoryChangedCallback):
2781         (WebViewTest::waitUntilFileExists):
2782         * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
2783
2784 2017-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2785
2786         [GTK][WPE] All resource load statistics tests added in r212183 crash in GTK bots, timeout in GTK and WPE bots since r219049
2787         https://bugs.webkit.org/show_bug.cgi?id=168171
2788
2789         Reviewed by Chris Dumez.
2790
2791         Implement all resource load statistics functions in TestController using the C API. Also enable the FileMonitor
2792         unit test. This test requires a platform implementation of Util::run(), so I've added UtilitiesGLib.cpp with an
2793         iplementation common to glib based ports using WTF RunLoop abstraction.
2794
2795         * TestWebKitAPI/PlatformGTK.cmake:
2796         * TestWebKitAPI/PlatformWPE.cmake:
2797         * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
2798         * TestWebKitAPI/glib/UtilitiesGLib.cpp: Copied from Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h.
2799         (TestWebKitAPI::Util::run):
2800         (TestWebKitAPI::Util::spinRunLoop):
2801         (TestWebKitAPI::Util::sleep):
2802         * TestWebKitAPI/gtk/PlatformUtilitiesGtk.cpp:
2803         * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp:
2804         * WebKitTestRunner/TestController.cpp:
2805         (WTR::TestController::platformAdjustContext):
2806         (WTR::TestController::setStatisticsLastSeen):
2807         (WTR::TestController::setStatisticsPrevalentResource):
2808         (WTR::ResourceStatisticsCallbackContext::ResourceStatisticsCallbackContext):
2809         (WTR::resourceStatisticsCallback):
2810         (WTR::TestController::isStatisticsPrevalentResource):
2811         (WTR::TestController::setStatisticsHasHadUserInteraction):
2812         (WTR::TestController::isStatisticsHasHadUserInteraction):
2813         (WTR::TestController::setStatisticsGrandfathered):
2814         (WTR::TestController::isStatisticsGrandfathered):
2815         (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
2816         (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
2817         (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
2818         (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
2819         (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree):
2820         (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
2821         (WTR::TestController::statisticsUpdateCookiePartitioning):
2822         (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
2823         (WTR::TestController::statisticsSubmitTelemetry):
2824         (WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
2825         (WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
2826         (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
2827         (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
2828         (WTR::TestController::setStatisticsGrandfatheringTime):
2829         (WTR::TestController::setStatisticsMaxStatisticsEntries):
2830         (WTR::TestController::setStatisticsPruneEntriesDownTo):
2831         (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
2832         (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
2833         (WTR::TestController::statisticsClearThroughWebsiteDataRemovalCallback):
2834         (WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
2835         (WTR::TestController::statisticsResetToConsistentState):
2836         * WebKitTestRunner/TestController.h:
2837
2838 2017-10-05  Jer Noble  <jer.noble@apple.com>
2839
2840         [Cocoa] Enable ENABLE_ENCRYPTED_MEDIA build-time setting
2841         https://bugs.webkit.org/show_bug.cgi?id=177261
2842
2843         Reviewed by Eric Carlson.
2844
2845         * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2846
2847 2017-10-05  Alex Christensen  <achristensen@webkit.org>
2848
2849         Add ObjC equivalent of WKPageNavigationClient.didChangeBackForwardList
2850         https://bugs.webkit.org/show_bug.cgi?id=177966
2851         <rdar://problem/22387135>
2852
2853         Reviewed by Tim Horton.
2854
2855         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
2856         (-[ListItemDelegate _webView:backForwardListItemAdded:removed:]):
2857         (-[ListItemDelegate webView:didFinishNavigation:]):
2858         (TEST):
2859
2860 2017-10-04  Megan Gardner  <megan_gardner@apple.com>
2861
2862         check-webkit-style erroneously requires a space between the carrot and brace in obj-c blocks.
2863         https://bugs.webkit.org/show_bug.cgi?id=177897
2864
2865         Reviewed by Dan Bernstein and Jonathan Bedard.
2866
2867         Remove the check for a space between ^ and {, 
2868         as this is valid and expected Obj-C. Now check to make sure there is
2869         no space at all between ^ and {, and also that there is a space between
2870         the end of an argument list and the {.
2871
2872         * Scripts/webkitpy/style/checkers/cpp.py:
2873         (regex_for_lambdas_and_blocks):
2874
2875 2017-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
2876
2877         Unreviewed. Run WebKit2 C API tests in GTK+ bots again after the last WebKit2 -> WebKit rename.
2878
2879         * Scripts/run-gtk-tests:
2880         (TestRunner):
2881         (TestRunner._run_test):
2882
2883 2017-10-05  Darin Adler  <darin@apple.com>
2884
2885         Remove additional WebKitSystemInterface remnants
2886         https://bugs.webkit.org/show_bug.cgi?id=177948
2887
2888         Reviewed by Andy Estes.
2889
2890         * DumpRenderTree/PlatformMac.cmake: Removed code to link the
2891         WebKitSystemInterface library. Left in code that points to
2892         the WebKitLibraries directory, but maybe that can be removed by
2893         someone who is more certain it's no longer needed.
2894
2895         * Scripts/copy-webkitlibraries-to-product-directory: Removed code
2896         to copy and delete WebKitSystemInterface libraries and headers.
2897
2898         * WebKitTestRunner/PlatformMac.cmake: Removed code to link the
2899         WebKitSystemInterface library. Left in code that points to
2900         the WebKitLibraries directory, but maybe that can be removed by
2901         someone who is more certain it's no longer needed.
2902
2903 2017-10-05  Saam Barati  <sbarati@apple.com>
2904
2905         Unreviewed. Try to make debug type profiler tests stop timing out.
2906
2907         * Scripts/run-jsc-stress-tests:
2908
2909 2017-10-03  Frederic Wang  <fwang@igalia.com>
2910
2911         Remove Brotli from Source/ThirdParty
2912         https://bugs.webkit.org/show_bug.cgi?id=177804
2913
2914         Reviewed by Michael Catanzaro.
2915
2916         * gtk/jhbuild.modules: Build brotli 1.0.1 from the official github repository.
2917         * Scripts/webkitpy/style/checker.py: Remove brotli.
2918
2919 2017-10-04  Alex Christensen  <achristensen@webkit.org>
2920
2921         Stop linking with WebKitSystemInterface
2922         https://bugs.webkit.org/show_bug.cgi?id=177915
2923
2924         Reviewed by Antti Koivisto.
2925
2926         * DumpRenderTree/mac/Configurations/Base.xcconfig:
2927         * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2928         * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
2929         * DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig:
2930         * WebKitTestRunner/Configurations/Base.xcconfig:
2931         * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
2932         * WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
2933         * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig:
2934         * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
2935
2936 2017-10-04  Alex Christensen  <achristensen@webkit.org>
2937
2938         Remove unnecessary includes of WebKitSystemInterface on Cocoa platforms
2939         https://bugs.webkit.org/show_bug.cgi?id=177912
2940
2941         Reviewed by Saam Barati.
2942
2943         * DumpRenderTree/mac/DumpRenderTree.mm:
2944
2945 2017-10-04  Megan Gardner  <megan_gardner@apple.com>
2946
2947         Break out new touch debugging code into seperate file
2948         https://bugs.webkit.org/show_bug.cgi?id=177796
2949
2950         Reviewed by Simon Fraser.
2951
2952         Encapsulate the new debug touch code into it's own file.
2953         This allows for cleaner code and a better way to show the touches
2954         in a completely separate window, which should also be in screen
2955         coordinates, and not subject to any transforms that get put on the
2956         WebViews.
2957
2958         * TestRunnerShared/spi/UIKitTestSPI.h:
2959         * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
2960         * WebKitTestRunner/ios/HIDDebugTouchWindow.h: Added.
2961         * WebKitTestRunner/ios/HIDDebugTouchWindow.mm: Added.
2962         (+[HIDDebugTouchWindow sharedHIDDebugTouchWindow]):
2963         (-[HIDDebugTouchWindow init]):
2964         (-[HIDDebugTouchWindow dealloc]):
2965         (-[HIDDebugTouchWindow updateDebugIndicatorForTouch:withPointInWindowCoordinates:isTouching:]):
2966         (-[HIDDebugTouchWindow initDebugViewsIfNeeded]):
2967         * WebKitTestRunner/ios/HIDEventGenerator.h:
2968         * WebKitTestRunner/ios/HIDEventGenerator.mm:
2969         (-[HIDEventGenerator init]):
2970         (-[HIDEventGenerator _createIOHIDEventWithInfo:]):
2971         (-[HIDEventGenerator _createIOHIDEventType:]):
2972         (-[HIDEventGenerator _updateTouchPoints:count:]):
2973         (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
2974         (-[HIDEventGenerator touchDown:touchCount:]):
2975         (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
2976         (-[HIDEventGenerator liftUp:touchCount:]):
2977         (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
2978         (-[HIDEventGenerator initDebugViewsIfNeeded]): Deleted.
2979         (-[HIDEventGenerator updateDebugIndicatorForTouch:withPoint:isTouching:]): Deleted.
2980         * WebKitTestRunner/ios/TestControllerIOS.mm:
2981         (WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
2982
2983 2017-10-04  JF Bastien  <jfbastien@apple.com>
2984
2985         WTF: Update std::expected to match current proposal
2986         https://bugs.webkit.org/show_bug.cgi?id=177881
2987
2988         Reviewed by Mark Lam.
2989
2990         The proposal is likely to be in C++20 and I've been asked to help co-champion
2991         it. I'm therefore updating our implementation to more closely match the current
2992         proposal, and to make sure it'll work for us if standardized.
2993
2994          - Rename UnexpectedType to Unexpected to match the proposal.
2995          - Remove relational operators, only equality / inequality remains.
2996          - Fix minor type signatures.
2997          - Add UnexpectedType typedef.
2998          - Uncomment rebind implementation.
2999          - Add in-place construction tag, as well as explicit error construction tag.
3000          - Add template unexpected constructor.
3001          - Note that make_unexpected isn't in the proposal anymore, but we keep it because we don't have C++17 deduction guides.
3002          - Remove hashing, which isn't in the proposal anymore.
3003
3004         * TestWebKitAPI/Tests/WTF/Expected.cpp:
3005         (WTF::operator<<):
3006         (TestWebKitAPI::TEST):
3007
3008 2017-10-04  Lucas Forschler  <lforschler@apple.com>
3009
3010         https://bugs.webkit.org/show_bug.cgi?id=177888
3011         WebKitArchiveSupport - add API Gateway to source control
3012         This is a swagger configuration export via AWS API Gateway console.
3013
3014         Rubber-stamped by Alexey Proskuryakov.
3015
3016         * WebKitArchiveSupport/AWS-APIGateway: Added.
3017         * WebKitArchiveSupport/AWS-APIGateway/stage-v2.json: Added.
3018
3019 2017-10-04  Mark Lam  <mark.lam@apple.com>
3020
3021         Add support for using Probe DFG OSR Exit behind a runtime flag.
3022         https://bugs.webkit.org/show_bug.cgi?id=177844
3023         <rdar://problem/34801425>
3024
3025         Reviewed by Saam Barati.
3026
3027         Enable --useProbeOSrExit=true for dfg-eager and ftl-no-cjit-validate-sampling-profiler
3028         test configurations.
3029
3030         * Scripts/run-jsc-stress-tests:
3031
3032 2017-10-04  Jonathan Bedard  <jbedard@apple.com>
3033
3034         webkitpy.tool.steps.steps_unittest.StepsTest.test_runtests_api is flakey
3035         https://bugs.webkit.org/show_bug.cgi?id=177751
3036         <rdar://problem/34769470>
3037
3038         Reviewed by Daniel Bates.
3039
3040         Port._build_path() calls Tools/Scripts/webkit-build-directory and caches this
3041         result. When capturing output from the MockExecutive, the first invocation of
3042         Port._build_path() will log the running of Tools/Scripts/webkit-build-directory
3043         but subsequent invocations will not.
3044
3045         * Scripts/webkitpy/tool/steps/steps_unittest.py:
3046         (StepsTest):
3047         (StepsTest.setUp): Cache the build path before running tests.
3048
3049 2017-10-04  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3050
3051         [JHBuild][GTK][WKE] Circular dependency between harfbuzz and freetype6
3052         https://bugs.webkit.org/show_bug.cgi?id=177865
3053
3054         Reviewed by Michael Catanzaro.
3055
3056         Build freetype6 without harfbuzz support.
3057         This seems to be what distros like Fedora, Debian or OpenEmbedded do.
3058         Also explicitly enable support for freetype and fontconfig on harfbuzz.
3059
3060         * gtk/jhbuild.modules: Enable also support for icu.
3061         * wpe/jhbuild.modules:
3062
3063 2017-10-04  Yusuke Suzuki  <utatane.tea@gmail.com>
3064
3065         [Test262] Update Test262 to Oct 4 version
3066         https://bugs.webkit.org/show_bug.cgi?id=177859
3067
3068         Reviewed by Sam Weinig.
3069
3070         * Scripts/import-test262-tests:
3071
3072 2017-10-04  Ryosuke Niwa  <rniwa@webkit.org>
3073
3074         Use blob URL when pasting RTFD instead of overriding DocumentLoader
3075         https://bugs.webkit.org/show_bug.cgi?id=177801
3076         <rdar://problem/34542270>
3077
3078         Reviewed by Wenson Hsieh.
3079
3080         Added a regression test for an assertion failure when pasting an empty RTFD as well as a test for pasting
3081         RTFD with an image, which should result in an image element with a blob URL.
3082
3083         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3084         * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
3085         * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
3086         * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html:
3087
3088 2017-10-03  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3089
3090         [GLib] Let WebCore know of low power situations
3091         https://bugs.webkit.org/show_bug.cgi?id=177810
3092
3093         Reviewed by Carlos Garcia Campos.
3094
3095         * gtk/install-dependencies: add upower-glib dev packages for Debian, Arch and Fedora.
3096
3097 2017-10-03  Saam Barati  <sbarati@apple.com>
3098
3099         Implement polymorphic prototypes
3100         https://bugs.webkit.org/show_bug.cgi?id=176391
3101
3102         Reviewed by Filip Pizlo.
3103
3104         * Scripts/run-jsc-stress-tests:
3105
3106 2017-10-03  Myles C. Maxfield  <mmaxfield@apple.com> 
3107
3108         Create a SPIR-V assembler 
3109         https://bugs.webkit.org/show_bug.cgi?id=177726 
3110
3111         Reviewed by Filip Pizlo. 
3112
3113         Khronos has released a json file containing every SPIR-V opcode and operand at 
3114         https://github.com/KhronosGroup/SPIRV-Headers/blob/master/include/spirv/1.2/spirv.core.grammar.json 
3115         This patch creates a function which loads this file (via the fetch API), parses it, and creates
3116         an object which holds two things: 
3117         - For each opcode, a class which accepts the appropriate operands 
3118         - For each enum type, an object which holds each enum value 
3119         The constructor for each opcode is smart enough to do some basic type-checking of the argument, 
3120         according to the types listed in Khronos's json file. 
3121
3122         This patch also includes an example .html file which outputs a dummy SPIR-V program, 
3123         which happens to be compatible with the SPIR-V demo at 
3124         https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/blob/master/demos/cube.cpp 
3125         If you modify this demo to use the generated SPIR-V program, you can see the result in 
3126         action.
3127
3128         This patch also commits a copy of Khronos's json file mentioned above. This isn't the first 
3129         Khronos file we've committed into our repository with this license, so there shouldn't be any 
3130         problems there. 
3131
3132         * WebGPUShadingLanguageRI/SPIR-V.js: Added. 
3133         (SPIRV.): 
3134         (SPIRVAssembler): 
3135         (SPIRVAssembler.prototype.append): 
3136         (SPIRVAssembler.prototype.get size): 
3137         (SPIRVAssembler.prototype.get storage): 
3138         (SPIRVAssembler.prototype.get result): 
3139         * WebGPUShadingLanguageRI/SPIRV.html: Added. 
3140         * WebGPUShadingLanguageRI/spirv.core.grammar.json: Added. 
3141
3142 2017-10-03  Chris Dumez  <cdumez@apple.com>
3143
3144         SharedStringHashStore should support removing hashes
3145         https://bugs.webkit.org/show_bug.cgi?id=177770
3146
3147         Reviewed by Alex Christensen.
3148
3149         Add API test coverage.
3150
3151         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3152         * TestWebKitAPI/Tests/WebKitCocoa/VisitedLinkStore.mm: Added.
3153         (TestWebKitAPI::TEST):
3154
3155 2017-10-03  Dewei Zhu  <dewei_zhu@apple.com>
3156
3157         Fix missing import for BenchmarkRunner.
3158         https://bugs.webkit.org/show_bug.cgi?id=177842
3159
3160         Reviewed by Ryosuke Niwa.
3161
3162         'show_results' requires BenchmarkRunner.
3163
3164         * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
3165
3166 2017-10-03  Olivier Blin  <olivier.blin@softathome.com>
3167
3168         [WPE] Bump deps to add support for xdg-shell-unstable-v6 protocol
3169         https://bugs.webkit.org/show_bug.cgi?id=177820
3170
3171         Reviewed by Žan Doberšek.
3172
3173         gnome-shell does not advertize the xdg-shell protocol anymore, but xdg-shell-unstable-v6 instead.
3174         Support has been added in WPEBackend-mesa, we need to update the requirements.
3175         wayland-1.10 is needed for wl_proxy_get_version(), used in the generated headers.
3176
3177         * wpe/jhbuild.modules:
3178
3179 2017-10-03  Alex Christensen  <achristensen@webkit.org>
3180
3181         Add ObjC SPI equivalent to WKPageLoaderClient.willGoToBackForwardListItem
3182         https://bugs.webkit.org/show_bug.cgi?id=177825
3183         <rdar://problem/22387505>
3184
3185         Reviewed by Tim Horton.
3186
3187         * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
3188         (-[BackForwardDelegate _webView:willGoToBackForwardListItem:inPageCache:]):
3189         (-[BackForwardDelegate webView:didFinishNavigation:]):
3190         (TEST):
3191
3192 2017-10-03  Antti Koivisto  <antti@apple.com>
3193
3194         Allow assigning WeakPtr<Derived> to WeakPtr<Base>
3195         https://bugs.webkit.org/show_bug.cgi?id=177817
3196
3197         Reviewed by Geoff Garen.
3198
3199         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
3200         (TestWebKitAPI::Base::weakPtrFactory):
3201         (TestWebKitAPI::TEST):
3202
3203 2017-10-03  Youenn Fablet  <youenn@apple.com>
3204
3205         Remove no longer needed WebRTC build infrastructure
3206         https://bugs.webkit.org/show_bug.cgi?id=177756
3207
3208         Reviewed by Alejandro G. Castro.
3209
3210         * Scripts/generate-libwebrtc-cmake: Removed.
3211         * Scripts/webkitpy/libwebrtc/__init__.py: Removed.
3212         * Scripts/webkitpy/libwebrtc/generate_cmake.py: Removed.
3213
3214 2017-10-03  Joanmarie Diggs  <jdiggs@igalia.com>
3215
3216         AX: [ATK] ARIA drag-and-drop attribute values should be exposed via AtkObject attributes
3217         https://bugs.webkit.org/show_bug.cgi?id=177763
3218
3219         Reviewed by Chris Fleizach.
3220
3221         Implement ariaIsGrabbed() and ariaDropEffects() for ATK.
3222
3223         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3224         (WTR::AccessibilityUIElement::ariaIsGrabbed const):
3225         (WTR::AccessibilityUIElement::ariaDropEffects const):
3226
3227 2017-10-02  Myles C. Maxfield  <mmaxfield@apple.com>
3228
3229         Make WSL demo compatible with Microsoft Edge
3230         https://bugs.webkit.org/show_bug.cgi?id=177643
3231
3232         Reviewed by Saam Barati.
3233
3234         This patch does two things. The first is it migrates a loop over ParentNode.children to a legacy style loop
3235         because Microsoft Edge throws an exception when trying to use a for...of loop with it. This patch also hides
3236         the compilation behind a setTimeout(0) so there is some indication that something is happening during a
3237         compile.
3238
3239
3240         * Tools/WebGPUShadingLanguageRI/index.html:
3241
3242 2017-10-02  Joanmarie Diggs  <jdiggs@igalia.com>
3243
3244         AX: [ATK] The value of aria-level is not exposed on non-heading roles
3245         https://bugs.webkit.org/show_bug.cgi?id=177775
3246
3247         Reviewed by Chris Fleizach.
3248
3249         * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3250         (WTR::AccessibilityUIElement::hierarchicalLevel const):
3251
3252 2017-10-02  Geoffrey Garen  <ggaren@apple.com>
3253
3254         WeakPtr should have a move constructor
3255         https://bugs.webkit.org/show_bug.cgi?id=177789
3256
3257         Reviewed by Chris Dumez.
3258
3259         Chris made me write an API test. It wasn't that painful.
3260
3261         * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
3262         (TestWebKitAPI::TEST):
3263
3264 2017-10-02  Filip Pizlo  <fpizlo@apple.com>
3265
3266         WSL ^ should be *
3267         https://bugs.webkit.org/show_bug.cgi?id=177705
3268
3269         Rubber stamped by Keith Miller.
3270         
3271         When I first wrote the prototype, I thought it would be cool to use ^ for pointers. Nobody agrees. I've
3272         gotten so much feedback to use *. This changes pointers to use *.
3273
3274         * WebGPUShadingLanguageRI/DereferenceExpression.js:
3275         (DereferenceExpression.prototype.toString):
3276         (DereferenceExpression):
3277         * WebGPUShadingLanguageRI/Intrinsics.js:
3278         (Intrinsics):
3279         * WebGPUShadingLanguageRI/Parse.js:
3280         (parseType):
3281         (parsePossiblePrefix):
3282         * WebGPUShadingLanguageRI/PtrType.js:
3283         (PtrType.prototype.toString):
3284         (PtrType):
3285         * WebGPUShadingLanguageRI/StandardLibrary.js:
3286         * WebGPUShadingLanguageRI/Test.js:
3287         (tests.simpleDereference):
3288         (tests.dereferenceStore):
3289         (tests.simpleMakePtr):
3290         (tests.loadNull):
3291         (tests.storeNull):
3292         (tests.returnNull):
3293         (tests.dereferenceDefaultNull):
3294         (tests.defaultInitializedNull):
3295         (tests.passNullToPtrMonomorphic):
3296         (tests.passNullToPtrPolymorphic):
3297         (tests.passNullAndNotNull):
3298         (tests.passNullAndNotNullFullPoly):
3299         (tests.passNullAndNotNullFullPolyReverse):
3300         (tests.chainGeneric):
3301         (tests.chainStruct):
3302         (tests.chainStructNewlyValid):
3303         (tests.chainStructDevice):
3304         (tests.paramChainStructDevice):
3305         (tests.simpleProtocolExtends):
3306         (tests.protocolExtendsTwo):
3307         (tests.overrideSubscriptStruct):
3308         (tests.overrideSubscriptStructAndDoStores):
3309         (tests.overrideSubscriptStructAndUsePointers):
3310         (tests.overrideSubscriptStructAndUsePointersIncorrectly):
3311         (tests.makeArrayRefFromPointer):
3312         (tests.nonArrayRefArrayLengthFail):
3313         (tests.constexprIsNotLValuePtr):
3314         (tests.genericAccessors):
3315         (tests.nestedSubscriptLValueEmulationSimple):
3316         (tests.nestedSubscriptLValueEmulationGeneric):
3317         (tests.shaderTypes):
3318         (tests.enumPtrBase):
3319         (tests.mutuallyRecursiveStructWithPointersBroken):
3320         (tests.mutuallyRecursiveStructWithPointers):
3321         (tests.linkedList):
3322         (tests.pointerToPointer):
3323         (tests.pointerGetter):
3324         (tests.operatorCastWithTypeVariableInferredFromReturnType):
3325         (tests.loneSetterPointer):
3326         (tests.anderWithNothingWrong):
3327         (tests.anderWithWrongNumberOfArguments):
3328         (tests.anderDoesntReturnPointer):
3329         (tests.anderDoesntTakeReference):
3330         (tests.anderWithArrayRef):
3331         (tests.pointerIndexGetter):
3332         (tests.loneIndexSetterPointer):
3333         (tests.indexAnderWithNothingWrong):
3334         (tests.indexAnderWithWrongNumberOfArguments):
3335         (tests.indexAnderDoesntReturnPointer):
3336         (tests.indexAnderDoesntTakeReference):
3337         (tests.indexAnderWithArrayRef):
3338         (tests.devicePtrPtr):
3339         (tests.threadgroupPtrPtr):
3340         (tests.constantPtrPtr):
3341         (tests.pointerIndexGetterInProtocol):
3342         (tests.loneIndexSetterPointerInProtocol):
3343         (tests.indexAnderWithNothingWrongInProtocol):
3344         (tests.indexAnderWithWrongNumberOfArgumentsInProtocol):
3345         (tests.indexAnderDoesntReturnPointerInProtocol):
3346         (tests.indexAnderDoesntTakeReferenceInProtocol):
3347         (tests.indexAnderWithArrayRefInProtocol):
3348         (tests.andReturnedArrayRef):
3349
3350 2017-10-02  Filip Pizlo  <fpizlo@apple.com>
3351
3352         WSL should be fine with &foo()[i] if foo() returns a []
3353         https://bugs.webkit.org/show_bug.cgi?id=177704
3354
3355         Reviewed by Saam Barati.
3356         
3357         Previously, we'd determine if a property access expression (base.field or base[index]) was an lvalue by
3358         asking if its base was an lvalue. This is right in all cases except if the base is of type []. Then, the
3359         property access expression is an lvalue so long as there is a setter or ander.
3360         
3361         This fixes the issue and adds a test.
3362         
3363         Also, this makes error messages in the case that something is not an lvalue a lot better. If something
3364         is not an lvalue because we could not find anders or setters, then we will tell you why we could not
3365         find them.
3366
3367         * WebGPUShadingLanguageRI/Checker.js:
3368         (Checker.prototype.visitAssignment):
3369         (Checker.prototype.visitReadModifyWriteExpression):
3370         (Checker.prototype.visitMakePtrExpression):
3371         (Checker.prototype._finishVisitingPropertyAccess):
3372         * WebGPUShadingLanguageRI/DotExpression.js:
3373         (DotExpression.prototype.get fieldName):
3374         (DotExpression.prototype.get isLValue): Deleted.
3375         (DotExpression.prototype.get addressSpace): Deleted.
3376         * WebGPUShadingLanguageRI/IndexExpression.js:
3377         (IndexExpression.prototype.get index):
3378         (IndexExpression.prototype.get isLValue): Deleted.
3379         (IndexExpression.prototype.get addressSpace): Deleted.
3380         * WebGPUShadingLanguageRI/PropertyAccessExpression.js:
3381         (PropertyAccessExpression):
3382         (PropertyAccessExpression.prototype.get isLValue):
3383         (PropertyAccessExpression.prototype.set isLValue):
3384         * WebGPUShadingLanguageRI/PropertyResolver.js:
3385         (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder.prototype.visitMakeArrayRefExpression):
3386         (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder):
3387         (PropertyResolver.prototype._visitRValuesWithinLValue):
3388         * WebGPUShadingLanguageRI/Test.js:
3389         (tests.storeNullArrayRef):
3390         (tests.andReturnedArrayRef):
3391
3392 2017-10-02  Wenson Hsieh  <wenson_hsieh@apple.com>
3393
3394         Guard iOS webkitGetAsEntry API tests on older iOS versions
3395
3396         Unreviewed test gardening. After r222688, these tests require custom pasteboard data to be enabled by default,
3397         so don't run them against shipping iOS.
3398
3399         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3400
3401 2017-10-02  Carlos Garcia Campos  <cgarcia@igalia.com>
3402
3403         [WPE][GTK] Crash in webkit_web_resource_get_data_finish()
3404         https://bugs.webkit.org/show_bug.cgi?id=177107
3405
3406         Reviewed by Michael Catanzaro.
3407
3408         Add a test case to check we handle errors when webkit_web_resource_get_data() fails.
3409
3410         * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
3411         (webViewloadChanged):
3412         (testWebResourceGetDataError):
3413         (beforeAll):
3414
3415 2017-10-02  Alex Christensen  <achristensen@webkit.org>
3416
3417         Fix build after r222715
3418         https://bugs.webkit.org/show_bug.cgi?id=177697
3419
3420         * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
3421         (TEST):
3422         Use the public API instead of the removed SPI.
3423
3424 2017-10-02  Alex Christensen  <achristensen@webkit.org>
3425
3426         REGRESSION(r214201): WebProcess hangs during policy decisions
3427         https://bugs.webkit.org/show_bug.cgi?id=177590
3428         <rdar://problem/33362929>
3429
3430         Reviewed by Andy Estes.
3431
3432         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3433         * TestWebKitAPI/Tests/WebKitCocoa/JavaScriptDuringNavigation.mm: Added.
3434         (-[JSNavigationDelegate webView:didFinishNavigation:]):
3435         (-[JSNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
3436         (-[JSNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
3437         (-[JSNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3438         (TEST):
3439
3440 2017-10-02  Jonathan Bedard  <jbedard@apple.com>
3441
3442         Log stack-trace for run-webkit-tests when interrupted
3443         https://bugs.webkit.org/show_bug.cgi?id=176393
3444         <rdar://problem/34262310>
3445
3446         Reviewed by Darin Adler.
3447
3448         When run-webkit-tests is stuck, it is difficult to immediately tell
3449         why. Saving a stack-trace when run-webkit-tests is terminated
3450         or stopped with CNTRL-C will make such issues easier to debug.
3451
3452         * Scripts/webkitpy/common/interupt_debugging.py: Added.
3453         (log_stack_trace): Given a Python frame object, log a stack trace to
3454         the provided file.
3455         (log_stack_trace_on_term): Attach a listener to SIGTERM so that a
3456         stack-trace can be logged when a program is terminated.
3457         (log_stack_trace_on_cntrl_c): Attach a listener to SIGINT so that a
3458         stack-trace can be logged when a program is CNTRL-Ced. 
3459         * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3460         (main): Set handlers to log stack trace on interruption.
3461
3462 2017-10-02  Michael Catanzaro  <mcatanzaro@igalia.com>
3463
3464         Remove ENABLE_CSS_REGIONS
3465         https://bugs.webkit.org/show_bug.cgi?id=177689
3466
3467         Reviewed by Darin Adler.
3468
3469         * Scripts/webkitperl/FeatureList.pm:
3470
3471 2017-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
3472
3473         Unreviewed. Upgrade webkitgtk-test-fonts to version 0.0.7.
3474
3475         This version upgrades liberation fonts to version 2, that has a wider glyph coverage.
3476
3477         * gtk/jhbuild.modules:
3478
3479 2017-09-29  Alex Christensen  <achristensen@webkit.org>
3480
3481         Expose WebPreferences::webGLEnabled through WKPreferences
3482         https://bugs.webkit.org/show_bug.cgi?id=177692
3483         <rdar://problem/24110556>
3484
3485         Reviewed by Andy Estes.
3486
3487         * TestWebKitAPI/Tests/WebKitCocoa/Preferences.mm:
3488         (-[AlertSaver alert]):
3489         (-[AlertSaver webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3490         (TEST):
3491
3492 2017-09-29  Alex Christensen  <achristensen@webkit.org>
3493
3494         Fix WKWebViewConfigurationPrivate after r222663
3495         https://bugs.webkit.org/show_bug.cgi?id=177644
3496
3497         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3498         * TestWebKitAPI/Tests/WebKitCocoa/Configuration.mm: Added.
3499         (TEST):
3500
3501 2017-09-28  Ryosuke Niwa  <rniwa@webkit.org>
3502
3503         Image pasting is not working on tineye.com / gmail.com / GitHub.com due to lack of support for DataTransfer.items
3504         https://bugs.webkit.org/show_bug.cgi?id=170449
3505         <rdar://problem/31432525>
3506
3507         Reviewed by Wenson Hsieh.
3508
3509         Added an API test to paste an image from pasteboard. The test is shared between iOS and macOS.
3510
3511         The tests to paste image files are only enabled on macOS since putting files into pasteboard isn't a thing on iOS.
3512
3513         * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3514         * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm: Added.
3515         (writeImageDataToPasteboard):
3516         (writeBundleFileToPasteboard):
3517         * TestWebKitAPI/Tests/WebKitCocoa/paste-image.html: Added.
3518         * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-100px.tiff: Added.
3519         * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-200px.png: Added.
3520         * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-400px.gif: Added.
3521         * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-600px.jpg: Added.
3522         * TestWebKitAPI/Tests/ios/DataInteractionTests.mm: Rebaselined the test now that types contain "Files".
3523
3524 2017-09-29  Wenson Hsieh  <wenson_hsieh@apple.com>
3525
3526         [iOS WK2] Implement -[WKContentView hasText] for compatibility with the UITextInput protocol
3527         https://bugs.webkit.org/show_bug.cgi?id=177662
3528         <rdar://problem/33410373>
3529
3530         Reviewed by Tim Horton.
3531
3532         Add EditorState API tests to check that the value of -[WKContentView hasText] is correct when editing both plain
3533         and rich text areas.
3534
3535         * TestWebKitAPI/EditingTestHarness.h:
3536         * TestWebKitAPI/EditingTestHarness.mm:
3537         (-[EditingTestHarness insertParagraph]):
3538         (-[EditingTestHarness insertText:]):
3539         (-[EditingTestHarness insertHTML:]):
3540         (-[EditingTestHarness selectAll]):
3541         (-[EditingTestHarness deleteBackwards]):
3542         * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
3543
3544         Add versions of EditingTestHarness helpers that don't require us to expect any editor state after executing the
3545         edit command.
3546
3547         (TestWebKitAPI::checkContentViewHasTextWithFailureDescription):
3548         (TestWebKitAPI::TEST):
3549         * TestWebKitAPI/cocoa/TestWKWebView.h:
3550         * TestWebKitAPI/cocoa/TestWKWebView.mm:
3551         (-[TestWKWebView textInputContentView]):
3552
3553 2017-09-29  Charles Turner  <cturner@igalia.com>
3554
3555         Update my status.
3556
3557         Unreviewed.
3558
3559         * Scripts/webkitpy/common/config/contributors.json:
3560
3561 2017-09-28  Commit Queue  <commit-queue@webkit.org>
3562
3563         Unreviewed, rolling out r222639.
3564         https://bugs.webkit.org/show_bug.cgi?id=177630
3565
3566         Breaks AppleWin build (Requested by dolmstead on #webkit).
3567
3568         Reverted changeset:
3569
3570         "[WinCairo][MiniBrowser] Add ca-bundle to display secure
3571         pages."
3572         https://bugs.webkit.org/show_bug.cgi?id=168486
3573         http://trac.webkit.org/changeset/222639
3574
3575 2017-09-28  Joanmarie Diggs  <jdiggs@igalia.com>
3576
3577         AX: [ATK] object:state-changed notifications missing for multiple ARIA attributes
3578         https://bugs.webkit.org/show_bug.cgi?id=177542
3579
3580         Add platform support for the notifications. Also add support for getting the
3581         boolean argument indicating whether the state has been set or unset.
3582
3583         Reviewed by Chris Fleizach.
3584
3585         * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
3586
3587 2017-09-28  Basuke Suzuki  <Basuke.Suzuki@sony.com>
3588
3589         [WinCairo][MiniBrowser] Add ca-bundle to display secure pages.
3590         Copy cacert.pem file into bundle directory.
3591         https://bugs.webkit.org/show_bug.cgi?id=168486
3592
3593         Reviewed by Brent Fulgham.
3594
3595         * MiniBrowser/win/CMakeLists.txt:
3596
3597 2017-09-28  Lucas Forschler  <lforschler@apple.com>
3598
3599         check in AWS Lambda code used for WebKitArchiveSupport
3600         https://bugs.webkit.org/show_bug.cgi?id=177614
3601         
3602         Rubber-stamped by Alexey Proskuryakov.
3603
3604         * WebKitArchiveSupport/lambda: Added.
3605         * WebKitArchiveSupport/lambda/delete-minified-s3-archive-from-dynamodb.py: Added.
3606         (lambda_handler):
3607         * WebKitArchiveSupport/lambda/delete-s3-archive-from-dynamodb.py: Added.
3608         (lambda_handler):
3609         * WebKitArchiveSupport/lambda/register-archive-in-dynamodb.py: Added.