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