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