1 2017-11-07 Carlos Garcia Campos <cgarcia@igalia.com>
3 [GTK][WPE] Build inspector resources using copy-user-interface-resources.pl script
4 https://bugs.webkit.org/show_bug.cgi?id=179317
6 Reviewed by Michael Catanzaro.
8 Move generate-inspector-gresource-manifest.py to glib dir to be shared by GTK+ and WPE ports and update it to
9 receive an input directory instead of a list of patterns.
10 File::Copy::Recursive is required by copy-user-interface-resources.pl, so make sure it's installed.
12 * glib/generate-inspector-gresource-manifest.py: Renamed from Tools/gtk/generate-inspector-gresource-manifest.py.
14 (get_filenames.should_ignore_resource):
15 * gtk/install-dependencies:
16 * wpe/generate-inspector-gresource-manifest.py: Removed.
17 * wpe/install-dependencies:
19 2017-11-07 Don Olmstead <don.olmstead@sony.com>
21 Fix webkitpy tests after rev 224549.
25 * Scripts/webkitpy/common/config/ports.py:
26 (WinCairoPort.run_webkit_tests_command):
27 * Scripts/webkitpy/common/config/ports_unittest.py:
28 (DeprecatedPortTest.test_wincairo_port):
30 2017-11-07 Aakash Jain <aakash_jain@apple.com>
32 Enable webkitpy EWS bubbles
33 https://bugs.webkit.org/show_bug.cgi?id=178539
35 Reviewed by Alexey Proskuryakov.
37 * QueueStatusServer/config/queues.py: Added webkitpy EWS.
39 2017-11-07 Don Olmstead <don.olmstead@sony.com>
41 Add a WinCairo EWS queue
42 https://bugs.webkit.org/show_bug.cgi?id=179390
44 Reviewed by Lucas Forschler.
46 * QueueStatusServer/config/queues.py:
47 * QueueStatusServer/model/queues.py:
48 * Scripts/webkitpy/common/config/ews.json:
49 * Scripts/webkitpy/common/config/ports.py:
50 * Scripts/webkitpy/common/config/ports_unittest.py:
51 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py:
53 2017-11-07 Aakash Jain <aakash_jain@apple.com>
55 fix check-webkit-style errors in webkitpy about not having two spaces before inline comment
56 https://bugs.webkit.org/show_bug.cgi?id=171506
58 Reviewed by Alexey Proskuryakov.
60 * Scripts/webkitpy/common/checkout/scm/scm_unittest.py:
61 (SCMTest._shared_test_reverse_diff): Added two spaces before inline comment.
62 (test_create_patch_is_full_patch): Ditto.
63 * Scripts/webkitpy/common/thread/messagepump.py:
65 * Scripts/webkitpy/layout_tests/servers/http_server.py:
66 (Lighttpd._prepare_config): Ditto.
67 * Scripts/webkitpy/style/checker.py: Ditto.
68 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
69 (OrderOfIncludesTest.test_check_preprocessor_in_include_section): Ditto.
71 2017-11-07 Aakash Jain <aakash_jain@apple.com>
73 Add support for webkitpy tests EWS
74 https://bugs.webkit.org/show_bug.cgi?id=178480
76 Reviewed by Alexey Proskuryakov.
78 * Scripts/webkitpy/common/config/ews.json: Added webkitpy EWS.
79 * Scripts/webkitpy/common/net/generictestresults.py: Renamed from Scripts/webkitpy/common/net/bindingstestresults.py.
80 * Scripts/webkitpy/common/net/generictestresults_unittest.py: Renamed from Scripts/webkitpy/common/net/bindingstestresults_unittest.py.
81 * Scripts/webkitpy/tool/bot/patchanalysistask.py:
82 (PatchAnalysisTask._test_patch): Do not retry webkitpy test since they are not flaky.
83 * Scripts/webkitpy/tool/bot/bindingstestresultsreader.py: Updated import for BindingsTestResult.
84 * Scripts/webkitpy/tool/bot/retrylogic_unittest.py: Ditto.
85 * Scripts/webkitpy/tool/bot/webkitpytestresultsreader.py: Copied from Scripts/webkitpy/tool/bot/bindingstestresultsreader.py.
86 * Scripts/webkitpy/tool/commands/earlywarningsystem.py:
87 (AbstractEarlyWarningSystem.begin_work_queue): Added webkitpy test result reader.
88 * Scripts/webkitpy/tool/commands/earlywarningsystem_unittest.py: Updated unit-tests.
89 * Scripts/webkitpy/tool/steps/checkpatchrelevance.py: Run webkitpy EWS only for relevant changes.
90 * Scripts/webkitpy/tool/steps/runtests.py:
91 (RunTests.run): Run webkitpy tests when --group=webkitpy is passed.
92 (RunTests._run_webkitpy_tests): Method to invoke webkitpy tests.
93 * Scripts/webkitpy/tool/steps/steps_unittest.py:
94 (test_runtests_webkitpy): Added unit-test.
96 2017-11-07 Commit Queue <commit-queue@webkit.org>
98 Unreviewed, rolling out r224512 and r224521.
99 https://bugs.webkit.org/show_bug.cgi?id=179388
101 An API test added with this change is failing an assertion on
102 the bots. (Requested by ryanhaddad on #webkit).
106 "[Attachment Support] Implement delegate hooks for attachment
107 element insertion and removal"
108 https://bugs.webkit.org/show_bug.cgi?id=179016
109 https://trac.webkit.org/changeset/224512
111 "Remove stray logging from a newly added API test"
112 https://trac.webkit.org/changeset/224521
114 2017-11-06 Wenson Hsieh <wenson_hsieh@apple.com>
116 Remove stray logging from a newly added API test
118 This was only for debugging purposes, and should have been removed before landing.
120 Rubber-stamped by Tim Horton.
122 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
123 (TestWebKitAPI::TEST):
125 2017-11-06 Jonathan Bedard <jbedard@apple.com>
127 Only build ImageDiff for mac
128 https://bugs.webkit.org/show_bug.cgi?id=179349
129 <rdar://problem/35376237>
131 Reviewed by Tim Horton.
133 * ImageDiff/Makefile:
135 2017-11-06 Wenson Hsieh <wenson_hsieh@apple.com>
137 Unreviewed, fix the internal build after updating to a newer SDK
139 There shouldn't be any need to include and implement these method stubs anymore,
140 even when building against the shipping iOS 11 SDK.
142 * TestWebKitAPI/ios/DataInteractionSimulator.mm:
143 (-[MockDropSession session]): Deleted.
145 2017-11-06 Wenson Hsieh <wenson_hsieh@apple.com>
147 [Attachment Support] Implement delegate hooks for attachment element insertion and removal
148 https://bugs.webkit.org/show_bug.cgi?id=179016
149 <rdar://problem/35250890>
151 Reviewed by Tim Horton.
153 Introduces new API tests to check that various editing operations will or won't result in the new attachment
154 insertion and removal delegate hooks being fired. Additionally refactors an existing test to verify that
155 attachments insertion and removal is observable by the UI delegate.
157 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:
158 (-[AttachmentUpdateObserver init]):
159 (-[AttachmentUpdateObserver inserted]):
160 (-[AttachmentUpdateObserver removed]):
161 (-[AttachmentUpdateObserver _webView:didInsertAttachment:]):
162 (-[AttachmentUpdateObserver _webView:didRemoveAttachment:]):
163 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::ObserveAttachmentUpdatesForScope):
164 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::~ObserveAttachmentUpdatesForScope):
165 (TestWebKitAPI::ObserveAttachmentUpdatesForScope::expectAttachmentUpdates):
167 Implement a testing mechanism to temporarily bind a UI delegate to a given WKWebView and listen for inserted or
168 removed attachments over the course of a particular scope. The API tests use this mechanism to check that the UI
169 delegate hooks added in this patch are invoked with the right attachments when performing edit commands.
171 (-[TestWKWebView _synchronouslyExecuteEditCommand:argument:]):
172 (-[TestWKWebView expectUpdatesAfterCommand:withArgument:expectedRemovals:expectedInsertions:]):
173 (TestWebKitAPI::TEST):
175 2017-11-06 Christopher Reid <chris.reid@sony.com>
177 Use enum classes within FileSystem
178 https://bugs.webkit.org/show_bug.cgi?id=175172
180 Reviewed by Myles C. Maxfield.
182 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
183 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
185 2017-11-06 Michael Catanzaro <mcatanzaro@igalia.com>
187 [WPE] -Wsign-compare warning in EventSenderProxyWPE.cpp
188 https://bugs.webkit.org/show_bug.cgi?id=179039
190 Reviewed by Žan Doberšek.
192 * WebKitTestRunner/wpe/EventSenderProxyWPE.cpp:
193 (WTR::EventSenderProxy::updateTouchPoint):
194 (WTR::EventSenderProxy::releaseTouchPoint):
196 2017-11-06 Robin Morisset <rmorisset@apple.com>
198 Add a third benchmark to TailBench
199 https://bugs.webkit.org/show_bug.cgi?id=178815
201 Reviewed by Saam Barati.
203 Add a new benchmark to TailBench: a BF interpreter written in a weird kinda functional style
205 * Scripts/run-jsc-benchmarks:
207 2017-11-04 Michael Catanzaro <mcatanzaro@igalia.com>
209 [GTK] Fix gtk-doc generation with gtk-doc master
210 https://bugs.webkit.org/show_bug.cgi?id=179252
212 Reviewed by Carlos Garcia Campos.
214 gtkdoc-scangobj has changed to no longer use a shell when executing its subcommands. In
215 particular, this means we can no longer rely on shell stuff in our run command that we use
216 to run the scanner. We currently use the RUN envvar to set LD_LIBRARY_PATH, and the end
217 result is gtkdoc-scangobj now attempts to execute our environment variable instead of the
218 scanner itself. We can just set LD_LIBRARY_PATH directly, instead of using RUN, in order to
219 make documentation generation work again.
222 (GTKDoc._run_gtkdoc_scangobj):
224 2017-11-04 Aishwarya Nirmal <anirmal@apple.com>
226 [Touch Bar Web API] Add support for menuitem tag
227 https://bugs.webkit.org/show_bug.cgi?id=179020
229 Reviewed by Ryosuke Niwa.
231 Defines flags for the menu item test so that the element is recognized
232 only while its test is being run.
234 * DumpRenderTree/TestOptions.h:
235 * DumpRenderTree/TestOptions.mm:
236 (TestOptions::TestOptions):
237 * DumpRenderTree/mac/DumpRenderTree.mm:
238 (setWebPreferencesForTestOptions):
239 * WebKitTestRunner/TestController.cpp:
240 (WTR::TestController::resetPreferencesToConsistentValues):
241 (WTR::updateTestOptionsFromTestHeader):
242 * WebKitTestRunner/TestOptions.h:
243 (WTR::TestOptions::hasSameInitializationOptions const):
245 2017-11-03 Andy Estes <aestes@apple.com>
247 [iOS] Append the platform name to the product directory on all embedded platforms
248 https://bugs.webkit.org/show_bug.cgi?id=179271
250 Reviewed by Joseph Pecoraro.
252 * Scripts/webkitdirs.pm:
253 (determineConfigurationProductDir):
255 2017-11-03 Basuke Suzuki <Basuke.Suzuki@sony.com>
257 [WinCairo] Add --wincairo option to run-webkit-tests
258 https://bugs.webkit.org/show_bug.cgi?id=179217
260 Reviewed by Alex Christensen.
262 * Scripts/webkitpy/port/factory.py:
265 2017-11-03 Michael Catanzaro <mcatanzaro@igalia.com>
267 [WPE][GTK] Avoid duplicating code for dist and distcheck targets
268 https://bugs.webkit.org/show_bug.cgi?id=179154
270 Reviewed by Carlos Garcia Campos.
272 Move the script out of Tools/gtk because it is already used by WPE. Also, drop the .py
273 prefix because it is executable.
275 * Scripts/make-dist: Renamed from Tools/gtk/make-dist.py.
277 2017-11-03 Jonathan Bedard <jbedard@apple.com>
279 TestController platformAdjustContext should use provided WKContext for Mac
280 https://bugs.webkit.org/show_bug.cgi?id=179124
281 <rdar://problem/35295176>
283 Reviewed by Darin Adler.
285 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
286 (WTR::initializeWebViewConfiguration): Use the provided WKContext, since that is
287 a WebProcessPool, instead of creating a second one.
289 2017-11-02 Christopher Reid <chris.reid@sony.com>
291 Add a FileSystem namespace to FileSystem.cpp
292 https://bugs.webkit.org/show_bug.cgi?id=179063
294 Reviewed by Darin Adler.
296 * DumpRenderTree/win/DumpRenderTree.cpp:
297 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
298 * TestWebKitAPI/Tests/WebCore/FileSystem.cpp:
299 * TestWebKitAPI/Tests/WebCore/SecurityOrigin.cpp:
300 * TestWebKitAPI/Tests/WebCore/SharedBufferTest.cpp:
301 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
302 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
304 2017-11-02 Carlos Alberto Lopez Perez <clopez@igalia.com>
306 [WPE][JHBuild] Update WPEBackend and WPEBackend-mesa
307 https://bugs.webkit.org/show_bug.cgi?id=179169
309 Reviewed by Michael Catanzaro.
311 Update WPEBackend and WPEBackend-mesa to last master as of today.
313 * wpe/jhbuild.modules:
315 2017-11-02 Frederic Wang <fwang@igalia.com>
317 Add references to bug 179167 in FIXME comments
318 https://bugs.webkit.org/show_bug.cgi?id=179168
320 Reviewed by Daniel Bates.
322 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
324 2017-11-01 Jeremy Jones <jeremyj@apple.com>
326 Implement WKFullscreenWindowController for iOS.
327 https://bugs.webkit.org/show_bug.cgi?id=178924
328 rdar://problem/34697120
330 Reviewed by Simon Fraser.
332 Enable ENABLE_FULLSCREEN_API for iOS.
334 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
336 2017-11-01 Simon Fraser <simon.fraser@apple.com>
338 Misc display list and other cleanup
339 https://bugs.webkit.org/show_bug.cgi?id=179150
341 Reviewed by Tim Horton.
343 Add system trace points for display list recording.
345 * Tracing/SystemTracePoints.plist:
347 2017-11-01 Stephan Szabo <stephan.szabo@sony.com>
349 [Win] Detect Visual Studio 2017 location
350 https://bugs.webkit.org/show_bug.cgi?id=175275
352 Reviewed by Yusuke Suzuki.
355 * Scripts/build-webkit:
356 * Scripts/update-vswhere.py: Added.
357 * Scripts/webkitdirs.pm:
358 (requireModulesForVSWhere):
359 (pickCurrentVisualStudioInstallation):
360 (pickLegacyVisualStudioInstallation):
361 (visualStudioInstallDir):
362 (visualStudioInstallDirVSWhere):
363 (visualStudioInstallDirLegacy):
364 (visualStudioInstallDirFallback):
366 (visualStudioVersion):
367 (visualStudioVersionFromInstallDir):
368 (generateBuildSystemFromCMakeProject):
370 2017-11-01 Tim Horton <timothy_horton@apple.com>
372 Fix the !USE(QUICKLOOK) build
373 https://bugs.webkit.org/show_bug.cgi?id=179128
375 Reviewed by Wenson Hsieh.
377 * TestWebKitAPI/Tests/WebCore/ios/PreviewLoader.cpp:
379 2017-11-01 Frederic Wang <fwang@igalia.com>
381 Make iOS Find UI reveal matches in scrollable elements
382 https://bugs.webkit.org/show_bug.cgi?id=178789
384 Reviewed by Tim Horton.
386 This patch exposes WKWebView's findString function in order to test the fix for bug 178789.
388 * DumpRenderTree/ios/UIScriptControllerIOS.mm:
389 (WTR::UIScriptController::findString): Dummy implementation of findString.
390 * DumpRenderTree/mac/UIScriptControllerMac.mm:
391 (WTR::UIScriptController::findString): Ditto.
392 * TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl: Declare findString.
393 * TestRunnerShared/UIScriptContext/UIScriptController.cpp:
394 (WTR::UIScriptController::findString): Dummy implementation of findString.
395 * TestRunnerShared/UIScriptContext/UIScriptController.h: Declare findString.
396 * WebKitTestRunner/ios/UIScriptControllerIOS.mm:
397 (WTR::UIScriptController::findString): Implement findString by forwarding the call to the
399 * WebKitTestRunner/mac/UIScriptControllerMac.mm:
400 (WTR::UIScriptController::findString): Dummy implementation of findString.
402 2017-11-01 Alex Christensen <achristensen@webkit.org>
404 Add a test for _WKInputDelegate.willSubmitFormValues
405 https://bugs.webkit.org/show_bug.cgi?id=179086
407 Reviewed by Darin Adler.
409 Hidden input types are not included in this submission because FormSubmission::create ignores them
410 because input.isTextField() returns false. This is existing behavior that wasn't shown by a test.
411 HTTPBodies are also not sent to WKURLSchemeHandlers. This is existing behavior that wasn't shown by a test.
413 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
414 * TestWebKitAPI/Tests/WebKitCocoa/_WKInputDelegate.mm: Added.
415 (-[FormSubmissionDelegate _webView:willSubmitFormValues:userObject:submissionHandler:]):
418 2017-10-31 Ross Kirsling <ross.kirsling@sony.com>
420 Web Inspector: Add Inspector menu items to Mac MiniBrowser
421 https://bugs.webkit.org/show_bug.cgi?id=65218
423 Reviewed by Joseph Pecoraro.
425 Add Option-Command-I shortcut and corresponding Show/Close Web Inspector menu item to Mac MiniBrowser.
426 Only works when browser window is focused, but at least WI can be opened without having to Inspect Element.
428 * MiniBrowser/mac/BrowserWindowController.h:
429 * MiniBrowser/mac/BrowserWindowController.m:
430 (-[BrowserWindowController showHideWebInspector:]):
431 * MiniBrowser/mac/MainMenu.xib:
432 * MiniBrowser/mac/WK1BrowserWindowController.m:
433 (-[WK1BrowserWindowController validateMenuItem:]):
434 (-[WK1BrowserWindowController showHideWebInspector:]):
435 * MiniBrowser/mac/WK2BrowserWindowController.m:
436 (-[WK2BrowserWindowController validateMenuItem:]):
437 (-[WK2BrowserWindowController showHideWebInspector:]):
439 2017-10-31 Alex Christensen <achristensen@webkit.org>
441 Use asynchronous ResourceHandleClient calls for WebKit1
442 https://bugs.webkit.org/show_bug.cgi?id=160677
444 Reviewed by Brady Eidson.
446 * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:
447 (TestWebKitAPI::TEST):
448 The HTML being loaded contains an iframe, so testing if the main resource has loaded doesn't necessarily mean all subresources are loaded.
449 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.
451 2017-10-31 Commit Queue <commit-queue@webkit.org>
453 Unreviewed, rolling out r224143.
454 https://bugs.webkit.org/show_bug.cgi?id=179091
456 The patch requires non-standard perl modules in macOS and
457 breaks AWFY (Requested by yusukesuzuki on #webkit).
461 "[Win] Detect Visual Studio 2017 location"
462 https://bugs.webkit.org/show_bug.cgi?id=175275
463 https://trac.webkit.org/changeset/224143
465 2017-10-31 Tim Horton <timothy_horton@apple.com>
467 Clean up some drag and drop feature flags
468 https://bugs.webkit.org/show_bug.cgi?id=179082
470 Reviewed by Simon Fraser.
472 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
473 * TestWebKitAPI/ios/UIKitSPI.h:
475 2017-10-31 Tim Horton <timothy_horton@apple.com>
477 Fix up some content filtering feature flags
478 https://bugs.webkit.org/show_bug.cgi?id=179079
480 Reviewed by Simon Fraser.
482 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
483 * TestWebKitAPI/Tests/WebKitCocoa/ContentFilteringPlugIn.mm:
484 (-[MockContentFilterEnabler initWithCoder:]):
485 (-[MockContentFilterEnabler dealloc]):
487 2017-10-31 Youenn Fablet <youenn@apple.com>
489 rwt should allow service worker to load localhost HTTPS resources with any certificate
490 https://bugs.webkit.org/show_bug.cgi?id=179018
492 Reviewed by Chris Dumez.
494 * WebKitTestRunner/TestController.cpp:
495 (WTR::TestController::resetStateToConsistentValues): allowing any SSL certificate for service workers.
497 2017-10-31 Wenson Hsieh <wenson_hsieh@apple.com>
499 [Attachment Support] Implement WKWebView SPI for inserting attachment elements
500 https://bugs.webkit.org/show_bug.cgi?id=179013
501 <rdar://problem/35249668>
503 Reviewed by Tim Horton.
505 Adds a new API test suite to exercise attachment element insertion and manipulation.
507 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
508 * TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm: Added.
509 (webViewForTestingAttachments):
512 (-[TestWKWebView synchronouslyInsertAttachmentWithFilename:contentType:data:options:]):
513 (-[TestWKWebView valueOfAttribute:forQuerySelector:]):
514 (TestWebKitAPI::TEST):
516 2017-10-31 Alex Christensen <achristensen@webkit.org>
518 Fix custom header field setting with reloads and asynchronous navigation action policy decisions
519 https://bugs.webkit.org/show_bug.cgi?id=179064
521 Reviewed by Tim Horton.
523 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
524 (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
527 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
529 WKBundlePageWillSendSubmitEventCallback is called with incorrect frame parameter
530 https://bugs.webkit.org/show_bug.cgi?id=176719
532 Reviewed by Chris Dumez.
534 Test that WKBundlePageWillSendSubmitEventCallback is called with separate frame and
535 sourceFrame parameters when the target frame of the form submission is not the source frame.
537 * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent.cpp:
538 (TestWebKitAPI::didReceiveMessageFromInjectedBundle):
539 * TestWebKitAPI/Tests/WebKit/WillSendSubmitEvent_Bundle.cpp:
540 (TestWebKitAPI::willSendSubmitEvent):
541 * TestWebKitAPI/Tests/WebKit/auto-submitting-form.html:
543 2017-10-30 Alex Christensen <achristensen@webkit.org>
545 ASSERTION FAILED: internalValuesConsistent(m_url) in WebCore::URLParser::URLParser
546 https://bugs.webkit.org/show_bug.cgi?id=178861
548 Reviewed by Tim Horton.
550 * TestWebKitAPI/Tests/WebCore/URLParser.cpp:
551 (TestWebKitAPI::TEST_F):
553 2017-10-30 Commit Queue <commit-queue@webkit.org>
555 Unreviewed, rolling out r224078.
556 https://bugs.webkit.org/show_bug.cgi?id=179026
558 MotionMark regression (Requested by shallawa on #webkit).
562 "When navigating back to a page, compositing layers may not
563 use accelerated drawing"
564 https://bugs.webkit.org/show_bug.cgi?id=178749
565 https://trac.webkit.org/changeset/224078
567 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
569 [WPE] Fix build warnings
570 https://bugs.webkit.org/show_bug.cgi?id=178899
572 Reviewed by Carlos Alberto Lopez Perez.
574 * TestWebKitAPI/Tests/WebKitGLib/TestDownloads.cpp:
575 (testContextMenuDownloadActions):
578 * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
579 * TestWebKitAPI/Tests/WebKitGLib/TestUIClient.cpp:
580 (testWebViewJavaScriptDialogs):
581 * TestWebKitAPI/Tests/WebKitGLib/TestWebExtensions.cpp:
582 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitSettings.cpp:
583 * WebKitTestRunner/PlatformWPE.cmake:
584 * WebKitTestRunner/wpe/HeadlessViewBackend.cpp:
585 * WebKitTestRunner/wpe/TestControllerWPE.cpp:
586 (WTR::threadDefaultContext): Deleted.
588 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
590 [WPE] Upstream or stop using cairo-egl-device-create-for-egl-surface.patch
591 https://bugs.webkit.org/show_bug.cgi?id=178898
593 Reviewed by Žan Doberšek.
595 This patch seems to be unused.
597 * wpe/jhbuild.modules:
598 * wpe/patches/cairo-egl-device-create-for-egl-surface.patch: Removed.
600 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
602 [WPE] Build more files under WebCore as unified sources and get rid of WebCorePlatformWPE build target
603 https://bugs.webkit.org/show_bug.cgi?id=178964
605 Reviewed by Carlos Alberto Lopez Perez.
607 * TestWebKitAPI/PlatformWPE.cmake:
609 2017-10-12 Frederic Wang <fwang@igalia.com>
611 Remove support for running safari on the iOS simulator with Xcode < 9.0
612 https://bugs.webkit.org/show_bug.cgi?id=178203
614 Reviewed by Alexey Proskuryakov.
616 This is a follow-up of r223234. We no longer support iOS WebKit development for Xcode < 9.0
617 and do not have any iOS simulator builders in our infrastructure. Hence we can remove the
618 special case to calculate the iOS simulator applications path for these old versions.
620 * Scripts/webkitdirs.pm:
621 (iosSimulatorApplicationsPath): Remove special case for XCode < 9.0
623 2017-10-30 Michael Catanzaro <mcatanzaro@igalia.com>
625 [WPE][GTK] Expose availability of certain editing commands in WebKitEditorState
626 https://bugs.webkit.org/show_bug.cgi?id=168219
628 Reviewed by Ryosuke Niwa.
632 * TestWebKitAPI/Tests/WebKitGtk/TestWebViewEditor.cpp:
633 (testWebViewEditorCutCopyPasteNonEditable):
634 (testWebViewEditorCutCopyPasteEditable):
635 (testWebViewEditorSelectAllNonEditable):
636 (testWebViewEditorSelectAllEditable):
637 (loadContentsAndTryToCutSelection):
638 (testWebViewEditorNonEditable):
639 (testWebViewEditorEditorStateTypingAttributes):
640 (testWebViewEditorInsertImage):
641 (testWebViewEditorCreateLink):
643 2017-10-28 Michael Catanzaro <mcatanzaro@igalia.com>
645 [WPE] Build gst-plugins-base without pango support
646 https://bugs.webkit.org/show_bug.cgi?id=178918
648 Reviewed by Carlos Garcia Campos.
650 We need to build gst-plugins-base without pango support for WPE. Let's use JHBuild
651 conditions so we can make platform-specific changes in the shared GStreamer moduleset.
653 * gstreamer/jhbuild.modules:
657 2017-10-27 Stephan Szabo <stephan.szabo@sony.com>
659 [Win] Detect Visual Studio 2017 location
660 https://bugs.webkit.org/show_bug.cgi?id=175275
662 Reviewed by Per Arne Vollan.
665 * Scripts/build-webkit:
666 * Scripts/update-vswhere.py: Added.
667 * Scripts/webkitdirs.pm:
668 (pickCurrentVisualStudioInstallation):
669 (pickLegacyVisualStudioInstallation):
670 (visualStudioInstallDir):
671 (visualStudioInstallDirVSWhere):
672 (visualStudioInstallDirLegacy):
673 (visualStudioInstallDirFallback):
675 (visualStudioVersion):
676 (visualStudioVersionFromInstallDir):
677 (generateBuildSystemFromCMakeProject):
679 2017-10-27 Devin Rousso <webkit@devinrousso.com>
681 Create watchlist for files related WebInspector Recording
682 https://bugs.webkit.org/show_bug.cgi?id=178965
684 Reviewed by Joseph Pecoraro.
686 * Scripts/webkitpy/common/config/watchlist:
688 2017-10-27 Jonathan Bedard <jbedard@apple.com>
690 Windows and WebViews are retained after re-configure
691 https://bugs.webkit.org/show_bug.cgi?id=178902
692 <rdar://problem/35211518>
694 Reviewed by Alexey Proskuryakov.
696 The test runner effectively leaks windows every time a test changes configuration.
697 We give each test it's own AutoreleasePool to fix this problem.
699 * WebKitTestRunner/TestController.cpp:
700 (WTR::TestController::runTest): Add an AutoRelease pool scoping a test run
701 so that when a configuration changes, the old window and WebView are released.
703 2017-10-27 Eric Carlson <eric.carlson@apple.com>
705 NowPlayingInfo should contain a unique identifier
706 https://bugs.webkit.org/show_bug.cgi?id=178872
707 <rdar://problem/34924012>
709 Unreviewed, fix a flakey test.
711 * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
712 (-[NowPlayingTestWebView hasActiveNowPlayingSession]): Update _lastUpdatedElapsedTime.
713 (-[NowPlayingTestWebView _handleActiveNowPlayingSessionInfoResponse:title:duration:elapsedTime:]): Deleted.
715 2017-10-27 Fujii Hironori <Hironori.Fujii@sony.com>
717 autoinstall can't download from http://pypi.python.org
718 https://bugs.webkit.org/show_bug.cgi?id=178925
720 Reviewed by Ryosuke Niwa.
722 The web server pypi.python.org rejects non secure http.
724 * Scripts/webkitpy/thirdparty/__init__.py:
725 (AutoinstallImportHook._install_mechanize): Use https instead of http.
726 (AutoinstallImportHook._install_pep8): Ditto.
727 (AutoinstallImportHook._install_pylint): Ditto.
728 (AutoinstallImportHook._install_buildbot): Ditto.
729 (AutoinstallImportHook._install_coverage): Ditto.
731 2017-10-26 Fujii Hironori <Hironori.Fujii@sony.com>
733 [GTK][WPE] install-dependencies can't find libapache2-mod-php7.0 on Ubuntu 17.10
734 https://bugs.webkit.org/show_bug.cgi?id=178854
736 Reviewed by Michael Catanzaro.
738 * Scripts/webkitpy/port/base.py:
739 (Port._debian_php_version): Return "-php7.1" if libphp7.1.so found.
740 (Port._is_debian_php_version_7): Deleted.
741 * gtk/install-dependencies: Install libapache2-mod-php instead of libapache2-mod-php7.0.
742 * wpe/install-dependencies: Ditto.
744 2017-10-25 Simon Fraser <simon.fraser@apple.com>
746 When navigating back to a page, compositing layers may not use accelerated drawing
747 https://bugs.webkit.org/show_bug.cgi?id=178749
748 rdar://problem/35158946
750 Reviewed by Dean Jackson.
752 Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
753 and use it to set the state of the web view.
755 * DumpRenderTree/TestOptions.h:
756 * DumpRenderTree/TestOptions.mm:
757 (TestOptions::TestOptions):
758 * DumpRenderTree/mac/DumpRenderTree.mm:
759 (setWebPreferencesForTestOptions):
760 * WebKitTestRunner/TestController.cpp:
761 (WTR::TestController::resetPreferencesToConsistentValues):
762 (WTR::updateTestOptionsFromTestHeader):
763 * WebKitTestRunner/TestOptions.h:
764 (WTR::TestOptions::hasSameInitializationOptions const):
766 2017-10-26 Alex Christensen <achristensen@webkit.org>
768 Move WKWebViewConfiguration validation to WKWebView construction
769 https://bugs.webkit.org/show_bug.cgi?id=178840
771 Reviewed by Tim Horton.
773 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
774 * TestWebKitAPI/Tests/WebKitCocoa/WKWebViewConfiguration.mm: Added.
777 2017-10-26 Myles C. Maxfield <mmaxfield@apple.com>
779 Demonstrate a possible structure of the WebGPU API
780 https://bugs.webkit.org/show_bug.cgi?id=178874
782 Reviewed by Dean Jackson.
784 Over the past few weeks, we've been putting together an example showing that a WebGPU API
785 which has implicit barriers can work on all three low-level graphics APIs. We've implemented
786 it on top of Vulkan first, because this is the API which has the strictest requirements and
787 is most difficult to use.
789 With this API, this is a valid WebGPU snippet:
791 auto device = WebGPU::Device::create(hInstance, hWnd);
792 auto& commandQueue = device->getCommandQueue();
793 auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { }, { }, { }, nullptr);
795 … later, in the draw() function …
797 auto renderPass = commandQueue->createRenderPass(nullptr);
798 renderPass->setRenderState(renderState);
799 renderPass->setViewport(0, 0, width, height);
800 renderPass->setScissorRect(0, 0, width, height);
802 commandQueue->commitRenderPass(std::move(renderPass));
803 commandQueue->present();
805 This snippet doesn’t hook up any vertex attributes or resources, which means the vertex
806 shader has to say something like ({vec4(…), vec4(…), vec4(…)})[gl_VertexIndex]. It also
807 passes in “nullptr” when creating the render pass, which means “render to the screen, rather
808 than to a frame buffer.” You can also see that it doesn’t attach any resources to the draw
811 In Direct3D 12 and Vulkan, resources are bound in sets, rather than individually. For
812 example, a set might contain two uniform buffers, a texture, and another uniform buffer. At
813 draw time, you swap in whole sets of resources with a single call. A shader invocation can
814 access a collection of sets. Because all shader resource accesses are indirected through
815 these sets, the shape of these sets needs to be supplied at the time you compile the render
816 state. Here is a snippet which bounds a single set which contains a uniform buffer and a
819 auto buffer = device->getBuffer(bufferInitialContents);
820 auto texture = device->getTexture(buffer width, height, WebGPU::PixelFormat::RGBA8, textureInitialContents);
821 // One resource set, which holds a single uniform buffer object and a single texture
822 auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { }, { }, { { WebGPU::ResourceType::UniformBufferObject, WebGPU::ResourceType::Texture } }, nullptr);
824 … later, in the draw() function …
826 auto renderPass = commandQueue->createRenderPass(nullptr);
827 renderPass->setRenderState(renderState);
828 renderPass->setResources(0, { WebGPU::UniformBufferObjectReference(buffer.get()), WebGPU::TextureReference(texture.get()) });
831 commandQueue->commitRenderPass(std::move(renderPass));
832 commandQueue->present();
834 The first argument to the setResources() call identifies which set to populate with the supplied resources.
836 One tenant of the low-level graphics APIs is that, if you’ve enabled double buffering (or
837 triple buffering), the GPU is executing one frame at the same time you are recording the
838 next frame. This often means that you need duplicate resources so the CPU and GPU don’t step
839 on each other’s toes. However, platforms have platform-specific requirements about whether
840 or not they can be double / triple buffered, and we don’t want to expose this to the Web for
841 fear of badly-authored programs.
843 To solve this, resources are reference counted, and the return type of getBuffer() is an
844 RAII type called BufferHolder which increments and decrements the reference count
845 automatically. The reference count is also incremented and decremented when the GPU is using
846 the resource in a Pass. When the reference count reaches 0, the resource isn’t destroyed;
847 instead, it’s simply moved to a “free list” which getBuffer() may pull from. Therefore,
848 applications don’t need to know whether the frame buffer is double buffered or triple
849 buffered; they can just getBuffer() each frame, and the correct number of buffers will be
850 created and recycled.
853 auto buffer = device->getBuffer(bufferSize); // These get recycled
854 … populate the buffer …
855 auto renderPass = commandQueue->createRenderPass(nullptr);
856 renderPass->setRenderState(renderState);
857 renderPass->setResources(0, { WebGPU::UniformBufferObjectReference(buffer.get()) });
860 commandQueue->commitRenderPass(std::move(renderPass));
862 commandQueue->present();
864 In Direct3D and Vulkan, vertex buffers and index buffers are not part of the resource sets
865 mentioned above. Instead, you tell the render state about the shape of the vertex and index
866 buffers, and you swap them out independently in the draw loop. Metal and Vulkan have almost
867 identical API to specify this shape of the vertex buffers, so I’ve mostly copied it. In this
868 example, we have two vertex attributes, a vec2 and a vec3, which both come from the same
871 // { Attribute format, offset within stride, buffer to pull from }
872 std::vector<WebGPU::RenderState::VertexAttribute> vertexAttributes = { {WebGPU::RenderState::VertexFormat::Float2, 0, 0}, {WebGPU::RenderState::VertexFormat::Float3, sizeof(float) * 2, 0} };
873 // A single vertex buffer, with a stride of 5 floats
874 auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", { sizeof(float) * 5 }, vertexAttributes, resourceTypes, nullptr);
876 … later, in the draw() function …
878 auto renderPass = commandQueue->createRenderPass(nullptr);
879 renderPass->setRenderState(renderState);
880 renderPass->setVertexAttributeBuffers({ vertexBuffer.get() }); // The one vertex buffer which both attributes pull from
881 renderPass->setResources(…);
884 commandQueue->commitRenderPass(std::move(renderPass));
885 commandQueue->present();
887 You can also tell the RenderState about how many render targets you have and their formats,
888 and then when you create the RenderPass, you specify the specific textures you want to
891 std::vector<WebGPU::PixelFormat> colorPixelFormats = { WebGPU::PixelFormat::RGBA8, WebGPU::PixelFormat::RGBA8 }; // Two render targets, with these formats
892 auto& renderState = device->getRenderState(vertexShader, "main", fragmentShader, "main", vertexBufferStrides, vertexAttributes, resourceTypes, &colorPixelFormats);
894 … later, in the draw() function …
896 std::vector<std::reference_wrapper<WebGPU::Texture>> destinationTextures = { texture1->get(), texture2->get() };
897 auto renderPass = commandQueue->createRenderPass(&destinationTextures);
898 renderPass->setRenderState(renderState);
901 commandQueue->commitRenderPass(std::move(renderPass));
903 // Now, draw one of the textures to the screen. Note that no synchronization is necessary here!
904 auto renderPass = commandQueue->createRenderPass(nullptr);
905 renderPass->setRenderState(renderState2);
906 renderPass->setResources(0, { WebGPU:: TextureReference(texture1.get()) });
909 commandQueue->commitRenderPass(std::move(renderPass));
910 commandQueue->present();
912 Just like how in Metal has Render Encoders and Compute Encoders, WebGPU has RenderPasses
915 auto& computeState = device->getComputeState(computeShader, "main", resourceTypes);
917 auto computePass = commandQueue->createComputePass();
918 computePass->setComputeState(computeState);
919 computePass->setResources(0, resources);
920 computePass->dispatch(width, height, depth);
921 commandQueue->commitComputePass(std::move(computePass));
923 // Now, draw the resources we just computed. Note that no synchronization is necessary here!
924 auto renderPass = commandQueue->createRenderPass(nullptr);
925 renderPass->setRenderState(renderState);
926 renderPass->setResources(0, resources });
929 commandQueue->commitRenderPass(std::move(renderPass));
930 commandQueue->present();
932 There are also two other types of passes: one that corresponds to a Metal blit encoder, and
933 one that allows the CPU to change the contents of GPU buffers and textures. This last kind
934 of pass is a little interesting: you can’t just change the contents of a buffer at any time
935 you feel like it, because that resource might be in use by the GPU. Therefore, we need to do
936 the same kind of synchronization that we already do at render pass boundaries.
938 In addition, both Vulkan and Direct3D have a concept of a memory heap. A resource might
939 exist inside a heap which is fast, but invisible from the CPU, or in a heap which is slow,
940 but visible by the CPU. Certain operations are not possible from some types of images (e.g.
941 non-tiled textures may not be able to be sampled from). The usual way to get around this
942 problem is to have two resources: a slow staging resource which the CPU can see, and a fast
943 resource which the CPU can’t see. Uploading data is a two-pass algorithm, where the CPU
944 memcpy()s into the slow staging resource, and then a blit command is enqueued on the GPU to
945 copy the contents of the staging resource to the real resource. This requires that the
946 upload have access to the commandQueue so it can possibly enqueue a blit between the staging
947 and real resources. Therefore, a pass is the right level of abstraction for these facilities.
949 std::queue<boost::unique_future<std::vector<uint8_t>>> futureQueue; // Promises for data downloads from the GPU
951 … later, in the draw() function …
953 // See if any of the previously-enqueued downloads are finished
954 while (!futureQueue.empty() && futureQueue.front(). has_value()) {
955 std::vector<uint8_t>& data = futureQueue.front().get();
956 // Use the downloaded data
960 auto hostAccessPass = commandQueue->createHostAccessPass();
961 hostAccessPass->overwriteBuffer(buffer->get(), bufferContents); // Upload data to a resource
963 futureQueue.emplace(hostAccessPass->getBufferContents(buffer->get()));
964 commandQueue->commitHostAccessPass(std::move(hostAccessPass));
966 You can also issue copy commands between resources entirely on the GPU:
968 auto blitPass = commandQueue->createBlitPass();
969 blitPass->copyTexture(source->get(), destination->get(), sourceX, sourceY, destinationX, destinationY, width, height);
970 commandQueue->commitBlitPass(std::move(blitPass));
972 * Scripts/webkitpy/style/checker.py:
973 * WebGPUAPIStructure/Example/Example.cpp: Added.
980 * WebGPUAPIStructure/Example/Example.h: Added.
981 * WebGPUAPIStructure/Example/Example.ico: Added.
982 * WebGPUAPIStructure/Example/Example.rc: Added.
983 * WebGPUAPIStructure/Example/Example.vcxproj: Added.
984 * WebGPUAPIStructure/Example/Example.vcxproj.filters: Added.
985 * WebGPUAPIStructure/Example/Example.vcxproj.user: Added.
986 * WebGPUAPIStructure/Example/resource.h: Added.
987 * WebGPUAPIStructure/Example/small.ico: Added.
988 * WebGPUAPIStructure/Example/stdafx.cpp: Added.
989 * WebGPUAPIStructure/Example/stdafx.h: Added.
990 * WebGPUAPIStructure/Example/targetver.h: Added.
991 * WebGPUAPIStructure/WebGPU-Common/WebGPU-Common.vcxproj: Added.
992 * WebGPUAPIStructure/WebGPU-Common/WebGPU-Common.vcxproj.filters: Added.
993 * WebGPUAPIStructure/WebGPU-Common/WebGPU.cpp: Added.
994 (WebGPU::BufferHolder::BufferHolder):
995 (WebGPU::BufferHolder::~BufferHolder):
996 (WebGPU::TextureHolder::TextureHolder):
997 (WebGPU::TextureHolder::~TextureHolder):
998 (WebGPU::SamplerHolder::SamplerHolder):
999 (WebGPU::SamplerHolder::~SamplerHolder):
1000 * WebGPUAPIStructure/WebGPU-Common/WebGPU.h: Added.
1001 (WebGPU::Queue::~Queue):
1002 (WebGPU::RenderState::~RenderState):
1003 (WebGPU::ComputeState::~ComputeState):
1004 (WebGPU::Buffer::~Buffer):
1005 (WebGPU::Texture::~Texture):
1006 (WebGPU::Sampler::~Sampler):
1007 (WebGPU::TextureReference::TextureReference):
1008 (WebGPU::TextureReference::get const):
1009 (WebGPU::SamplerReference::SamplerReference):
1010 (WebGPU::SamplerReference::get const):
1011 (WebGPU::UniformBufferObjectReference::UniformBufferObjectReference):
1012 (WebGPU::UniformBufferObjectReference::get const):
1013 (WebGPU::ShaderStorageBufferObjectReference::ShaderStorageBufferObjectReference):
1014 (WebGPU::ShaderStorageBufferObjectReference::get const):
1015 (WebGPU::RenderPass::~RenderPass):
1016 (WebGPU::ComputePass::~ComputePass):
1017 (WebGPU::BlitPass::~BlitPass):
1018 (WebGPU::HostAccessPass::~HostAccessPass):
1019 (WebGPU::BufferHolder::get):
1020 (WebGPU::TextureHolder::get):
1021 (WebGPU::SamplerHolder::get):
1022 (WebGPU::Device::~Device):
1023 * WebGPUAPIStructure/WebGPU-Vulkan/BlitPassImpl.cpp: Added.
1024 (WebGPU::BlitPassImpl::BlitPassImpl):
1025 (WebGPU::BlitPassImpl::copyTexture):
1026 * WebGPUAPIStructure/WebGPU-Vulkan/BlitPassImpl.h: Added.
1027 * WebGPUAPIStructure/WebGPU-Vulkan/BufferImpl.cpp: Added.
1028 (WebGPU::BufferImpl::BufferImpl):
1029 (WebGPU::BufferImpl::decrementReferenceCount):
1030 * WebGPUAPIStructure/WebGPU-Vulkan/BufferImpl.h: Added.
1031 (WebGPU::BufferImpl::getBuffer const):
1032 (WebGPU::BufferImpl::getDeviceMemory const):
1033 (WebGPU::BufferImpl::incrementReferenceCount):
1034 (WebGPU::BufferImpl::getLength const):
1035 * WebGPUAPIStructure/WebGPU-Vulkan/ComputePassImpl.cpp: Added.
1036 (WebGPU::ComputePassImpl::ComputePassImpl):
1037 (WebGPU::ComputePassImpl::setComputeState):
1038 (WebGPU::ComputePassImpl::setResources):
1039 (WebGPU::ComputePassImpl::dispatch):
1040 * WebGPUAPIStructure/WebGPU-Vulkan/ComputePassImpl.h: Added.
1041 * WebGPUAPIStructure/WebGPU-Vulkan/ComputeStateImpl.cpp: Added.
1042 (WebGPU::ComputeStateImpl::ComputeStateImpl):
1043 * WebGPUAPIStructure/WebGPU-Vulkan/ComputeStateImpl.h: Added.
1044 (WebGPU::ComputeStateImpl::getPipeline const):
1045 (WebGPU::ComputeStateImpl::getPipelineLayout const):
1046 (WebGPU::ComputeStateImpl::getDescriptorSetLayouts const):
1047 * WebGPUAPIStructure/WebGPU-Vulkan/DeviceImpl.cpp: Added.
1048 (WebGPU::Device::create):
1049 (WebGPU::convertPixelFormat):
1050 (WebGPU::convertFormat):
1051 (WebGPU::debugReport):
1052 (WebGPU::DeviceImpl::DeviceImpl):
1053 (WebGPU::DeviceImpl::getCommandQueue):
1054 (WebGPU::DeviceImpl::prepareShader):
1055 (WebGPU::DeviceImpl::createPipelineLayout):
1056 (WebGPU::DeviceImpl::createCompatibleRenderPass):
1057 (WebGPU::convertVertexFormat):
1058 (WebGPU::DeviceImpl::getRenderState):
1059 (WebGPU::DeviceImpl::getComputeState):
1060 (WebGPU::DeviceImpl::getBuffer):
1061 (WebGPU::DeviceImpl::returnBuffer):
1062 (WebGPU::DeviceImpl::getTexture):
1063 (WebGPU::DeviceImpl::returnTexture):
1064 (WebGPU::DeviceImpl::getSampler):
1065 (WebGPU::DeviceImpl::returnSampler):
1066 (WebGPU::DeviceImpl::~DeviceImpl):
1067 * WebGPUAPIStructure/WebGPU-Vulkan/DeviceImpl.h: Added.
1068 (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::UniqueDebugReportCallbackEXT):
1069 (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::operator=):
1070 (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::~UniqueDebugReportCallbackEXT):
1071 (WebGPU::DeviceImpl::UniqueDebugReportCallbackEXT::destroy):
1072 (WebGPU::DeviceImpl::TextureParameters::operator== const):
1073 (WebGPU::DeviceImpl::TextureParametersHash::operator() const):
1074 * WebGPUAPIStructure/WebGPU-Vulkan/HostAccessPassImpl.cpp: Added.
1075 (WebGPU::HostAccessPassImpl::HostAccessPassImpl):
1076 (WebGPU::HostAccessPassImpl::overwriteBuffer):
1077 (WebGPU::HostAccessPassImpl::getBufferContents):
1078 (WebGPU::HostAccessPassImpl::execute):
1079 * WebGPUAPIStructure/WebGPU-Vulkan/HostAccessPassImpl.h: Added.
1080 (WebGPU::HostAccessPassImpl::getFinishedEvent const):
1081 * WebGPUAPIStructure/WebGPU-Vulkan/PassImpl.cpp: Added.
1082 (WebGPU::PassImpl::PassImpl):
1083 (WebGPU::ResourceVisitor::operator()):
1084 (WebGPU::ResourceVisitor::getBindings const):
1085 (WebGPU::ResourceVisitor::releaseWriteDescriptorSets):
1086 (WebGPU::ResourceVisitor::getDescriptorImageInfos const):
1087 (WebGPU::ResourceVisitor::getDescriptorBufferInfos const):
1088 (WebGPU::ResourceVisitor::getBuffers const):
1089 (WebGPU::ResourceVisitor::getTextures const):
1090 (WebGPU::ResourceVisitor::getSamplers const):
1091 (WebGPU::ResourceVisitor::getImageCount const):
1092 (WebGPU::ResourceVisitor::getSamplerCount const):
1093 (WebGPU::ResourceVisitor::getUniformBufferCount const):
1094 (WebGPU::ResourceVisitor::getStorageBufferCount const):
1095 (WebGPU::PassImpl::setResources):
1096 (WebGPU::PassImpl::insertBuffer):
1097 (WebGPU::PassImpl::insertTexture):
1098 (WebGPU::PassImpl::insertSampler):
1099 * WebGPUAPIStructure/WebGPU-Vulkan/PassImpl.h: Added.
1100 (WebGPU::PassImpl::getCommandBuffer const):
1101 (WebGPU::PassImpl::iterateBuffers):
1102 (WebGPU::PassImpl::iterateTextures):
1103 (WebGPU::PassImpl::ResourceReference::ResourceReference):
1104 (WebGPU::PassImpl::ResourceReference::~ResourceReference):
1105 (WebGPU::PassImpl::ResourceReference::operator=):
1106 (WebGPU::PassImpl::ResourceReference::operator== const):
1107 (WebGPU::PassImpl::ResourceReference::get const):
1108 (WebGPU::PassImpl::ResourceReference::release):
1109 (WebGPU::PassImpl::ResourceReferenceHash::operator() const):
1110 * WebGPUAPIStructure/WebGPU-Vulkan/QueueImpl.cpp: Added.
1111 (WebGPU::QueueImpl::QueueImpl):
1112 (WebGPU::QueueImpl::prepareCurrentFrame):
1113 (WebGPU::QueueImpl::createSpecificRenderPass):
1114 (WebGPU::QueueImpl::createFramebuffer):
1115 (WebGPU::QueueImpl::createRenderPass):
1116 (WebGPU::QueueImpl::commitRenderPass):
1117 (WebGPU::QueueImpl::createComputePass):
1118 (WebGPU::QueueImpl::commitComputePass):
1119 (WebGPU::QueueImpl::createBlitPass):
1120 (WebGPU::QueueImpl::commitBlitPass):
1121 (WebGPU::QueueImpl::createHostAccessPass):
1122 (WebGPU::QueueImpl::commitHostAccessPass):
1123 (WebGPU::QueueImpl::present):
1124 (WebGPU::QueueImpl::commitPass):
1125 (WebGPU::QueueImpl::synchronizeResources):
1126 (WebGPU::QueueImpl::~QueueImpl):
1127 * WebGPUAPIStructure/WebGPU-Vulkan/QueueImpl.h: Added.
1128 * WebGPUAPIStructure/WebGPU-Vulkan/RenderPassImpl.cpp: Added.
1129 (WebGPU::RenderPassImpl::RenderPassImpl):
1130 (WebGPU::RenderPassImpl::setRenderState):
1131 (WebGPU::RenderPassImpl::setVertexAttributeBuffers):
1132 (WebGPU::RenderPassImpl::setResources):
1133 (WebGPU::RenderPassImpl::setViewport):
1134 (WebGPU::RenderPassImpl::setScissorRect):
1135 (WebGPU::RenderPassImpl::draw):
1136 * WebGPUAPIStructure/WebGPU-Vulkan/RenderPassImpl.h: Added.
1137 * WebGPUAPIStructure/WebGPU-Vulkan/RenderStateImpl.cpp: Added.
1138 (WebGPU::RenderStateImpl::RenderStateImpl):
1139 * WebGPUAPIStructure/WebGPU-Vulkan/RenderStateImpl.h: Added.
1140 (WebGPU::RenderStateImpl::getPipeline const):
1141 (WebGPU::RenderStateImpl::getPipelineLayout const):
1142 (WebGPU::RenderStateImpl::getDescriptorSetLayouts const):
1143 * WebGPUAPIStructure/WebGPU-Vulkan/SamplerImpl.cpp: Added.
1144 (WebGPU::SamplerImpl::SamplerImpl):
1145 (WebGPU::SamplerImpl::decrementReferenceCount):
1146 * WebGPUAPIStructure/WebGPU-Vulkan/SamplerImpl.h: Added.
1147 (WebGPU::SamplerImpl::getSampler):
1148 (WebGPU::SamplerImpl::incrementReferenceCount):
1149 (WebGPU::SamplerImpl::getFilter):
1150 (WebGPU::SamplerImpl::getMipmapMode):
1151 (WebGPU::SamplerImpl::getAddressMode):
1152 * WebGPUAPIStructure/WebGPU-Vulkan/TextureImpl.cpp: Added.
1153 (WebGPU::TextureImpl::TextureImpl):
1154 (WebGPU::TextureImpl::decrementReferenceCount):
1155 * WebGPUAPIStructure/WebGPU-Vulkan/TextureImpl.h: Added.
1156 (WebGPU::TextureImpl::getImage const):
1157 (WebGPU::TextureImpl::getImageView const):
1158 (WebGPU::TextureImpl::getFormat const):
1159 (WebGPU::TextureImpl::incrementReferenceCount):
1160 (WebGPU::TextureImpl::getWidth const):
1161 (WebGPU::TextureImpl::getHeight const):
1162 (WebGPU::TextureImpl::getTransferredToGPU const):
1163 (WebGPU::TextureImpl::setTransferredToGPU):
1164 * WebGPUAPIStructure/WebGPU-Vulkan/WebGPU-Vulkan.vcxproj: Added.
1165 * WebGPUAPIStructure/WebGPU-Vulkan/WebGPU-Vulkan.vcxproj.filters: Added.
1166 * WebGPUAPIStructure/WebGPU.sln: Added.
1168 2017-10-26 Eric Carlson <eric.carlson@apple.com>
1170 NowPlayingInfo should contain a unique identifier
1171 https://bugs.webkit.org/show_bug.cgi?id=178872
1173 Reviewed by Jer Noble.
1175 * TestWebKitAPI/Tests/WebKitCocoa/NowPlayingControlsTests.mm:
1176 (-[NowPlayingTestWebView hasActiveNowPlayingSession]): Use completion handler.
1177 (TestWebKitAPI::TEST): Cleanup tests. Use new API.
1178 (-[NowPlayingTestWebView waitForNowPlayingInfoToChange]): Deleted.
1180 2017-10-26 Eric Carlson <eric.carlson@apple.com>
1182 [MediaStream] Clear cached gUM prompt state
1183 https://bugs.webkit.org/show_bug.cgi?id=178754
1184 <rdar://problem/32742356>
1186 Unreviewed, fix a flakey test.
1188 * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm:
1189 (-[GetUserMediaRepromptTestView haveStream:]): New, check several times for expected state.
1190 (TestWebKitAPI::TEST): Don't assume stream state changes in the page immediately.
1192 2017-10-26 Andy Estes <aestes@apple.com>
1194 [Payment Request] Enable Payment Request whenever Apple Pay is enabled
1195 https://bugs.webkit.org/show_bug.cgi?id=178880
1197 Reviewed by Tim Horton.
1199 * WebKitTestRunner/TestController.cpp:
1200 (WTR::TestController::resetPreferencesToConsistentValues):
1202 2017-10-26 Joseph Pecoraro <pecoraro@apple.com>
1204 Add and update some watchlists
1205 https://bugs.webkit.org/show_bug.cgi?id=178304
1207 Reviewed by Simon Fraser.
1209 * Scripts/webkitpy/common/config/watchlist:
1211 2017-10-26 Ryan Haddad <ryanhaddad@apple.com>
1213 Unreviewed, rolling out r223984.
1215 Caused LayoutTest assertion failures.
1219 "When navigating back to a page, compositing layers may not
1220 use accelerated drawing"
1221 https://bugs.webkit.org/show_bug.cgi?id=178749
1222 https://trac.webkit.org/changeset/223984
1224 2017-10-26 Christopher Reid <chris.reid@sony.com>
1226 Remove scopeguard from platform
1227 https://bugs.webkit.org/show_bug.cgi?id=178681
1229 Reviewed by Brady Eidson.
1231 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
1233 2017-09-21 Carlos Garcia Campos <cgarcia@igalia.com>
1235 WebDriver: Add support to import and run W3C tests
1236 https://bugs.webkit.org/show_bug.cgi?id=177304
1238 Reviewed by Brian Burg.
1240 WPT has now several WebDriver tests, and new ones are going to be added to cover the whole spec. This patch
1241 adds the initial support for running W3C tests. The script import-w3c-webdriver-tests reuses parts of the W3C
1242 test downloader to download the tests and required tools from WPT repository into WebDriverTests
1243 directory. Tests can be run with run-webdriver-tests, a new script that works similar to other test runner
1244 scripts. For now it shows a summary at the end of the execution, there aren't expectations yet, since we are not
1245 ready to run those tests in the bots. Once we are ready to properly run the tests, we can add the expectations
1246 support and run the tests in the bots.
1248 * Scripts/import-w3c-webdriver-tests: Added.
1249 * Scripts/run-webdriver-tests: Added.
1250 * Scripts/webkitpy/style/checker.py: Skip WebDriverTests directory since it only contains third-party python
1252 * Scripts/webkitpy/thirdparty/__init__.py: Add support to autodownload mozlog and mozprocess since they are
1253 required by the WebDriver tests.
1254 * Scripts/webkitpy/webdriver_tests/__init__.py: Added.
1255 * Scripts/webkitpy/webdriver_tests/webdriver_driver.py: Added.
1256 * Scripts/webkitpy/webdriver_tests/webdriver_driver_gtk.py: Added.
1257 * Scripts/webkitpy/webdriver_tests/webdriver_test_result.py: Added.
1258 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner.py: Added.
1259 * Scripts/webkitpy/webdriver_tests/webdriver_test_runner_w3c.py: Added.
1260 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_executor.py: Added.
1261 * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py: Added.
1263 2017-10-25 Eric Carlson <eric.carlson@apple.com>
1265 [MediaStream] Clear cached gUM prompt state
1266 https://bugs.webkit.org/show_bug.cgi?id=178754
1267 <rdar://problem/32742356>
1269 Reviewed by Youenn Fablet.
1271 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add new test
1273 * TestWebKitAPI/Tests/WebKit/GetUserMediaReprompt.mm: Added.
1274 (-[GetUserMediaRepromptUIDelegate _webView:requestUserMediaAuthorizationForDevices:url:mainFrameURL:decisionHandler:]):
1275 (-[GetUserMediaRepromptUIDelegate _webView:checkUserMediaPermissionForURL:mainFrameURL:frameIdentifier:decisionHandler:]):
1276 (TestWebKitAPI::TEST):
1278 * TestWebKitAPI/Tests/WebKit/getUserMedia.html:
1280 2017-10-25 Ross Kirsling <ross.kirsling@sony.com>
1282 Add committer status for Ross Kirsling
1283 https://bugs.webkit.org/show_bug.cgi?id=178832
1287 * Scripts/webkitpy/common/config/contributors.json:
1289 2017-10-25 Simon Fraser <simon.fraser@apple.com>
1291 When navigating back to a page, compositing layers may not use accelerated drawing
1292 https://bugs.webkit.org/show_bug.cgi?id=178749
1293 rdar://problem/35158946
1295 Reviewed by Dean Jackson.
1297 Fix WTR and DRT to parse "useAcceleratedDrawing" out of "webkit-test-runner" options
1298 and use it to set the state of the web view.
1300 * DumpRenderTree/TestOptions.h:
1301 * DumpRenderTree/TestOptions.mm:
1302 (TestOptions::TestOptions):
1303 * DumpRenderTree/mac/DumpRenderTree.mm:
1304 (setWebPreferencesForTestOptions):
1305 * WebKitTestRunner/TestController.cpp:
1306 (WTR::TestController::resetPreferencesToConsistentValues):
1307 (WTR::updateTestOptionsFromTestHeader):
1308 * WebKitTestRunner/TestOptions.h:
1309 (WTR::TestOptions::hasSameInitializationOptions const):
1311 2017-10-25 Robin Morisset <rmorisset@apple.com>
1313 Support the TailBench9000 benchmark in run-jsc-benchmarks
1314 https://bugs.webkit.org/show_bug.cgi?id=178451
1316 Reviewed by Saam Barati.
1318 * Scripts/run-jsc-benchmarks:
1320 2017-10-25 Adrian Perez de Castro <aperez@igalia.com>
1322 [WPE] Remove GLib API functions which use Cairo
1323 https://bugs.webkit.org/show_bug.cgi?id=178205
1325 Reviewed by Michael Catanzaro.
1327 Add PLATFORM(GTK) guards for the API tests (or parts of them) which use cairo_surface_t (web
1328 page snapshots and favicons) which are not available in the WPE version of the GLib API.
1330 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFaviconDatabase.cpp:
1331 (testNotInitialized):
1332 (testPrivateBrowsing):
1333 (testFaviconDatabase):
1334 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitFindController.cpp:
1335 (testFindControllerHide):
1337 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
1338 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
1340 2017-10-25 Zan Dobersek <zdobersek@igalia.com>
1342 Make SERVICE_WORKER feature buildable on GTK, WPE
1343 https://bugs.webkit.org/show_bug.cgi?id=178574
1345 Reviewed by Carlos Garcia Campos.
1347 * Scripts/webkitperl/FeatureList.pm: Add the --service-worker option
1348 that enables the SERVICE_WORKER feature flag. For now it's enabled
1349 on Apple's Cocoa ports (even when build-webkit isn't used for those
1350 builds, the flag is enabled here for consistency).
1352 2017-10-24 Michael Catanzaro <mcatanzaro@igalia.com>
1354 Unreviewed, fix name of Perl LibXML package on Fedora
1355 https://bugs.webkit.org/show_bug.cgi?id=178206
1356 <rdar://problem/35028586>
1358 * gtk/install-dependencies:
1359 * wpe/install-dependencies:
1361 2017-10-24 Alex Christensen <achristensen@webkit.org>
1363 Selecting and right-clicking URL-like strings with IDNA-disallowed characters in host or authority causes rendering engine crash
1364 https://bugs.webkit.org/show_bug.cgi?id=174267
1366 Reviewed by Tim Horton.
1368 * TestWebKitAPI/Tests/WebKit/CanHandleRequest_Bundle.cpp:
1369 (TestWebKitAPI::runTest):
1371 2017-10-24 Eric Carlson <eric.carlson@apple.com>
1373 Web Inspector: Enable WebKit logging configuration and display
1374 https://bugs.webkit.org/show_bug.cgi?id=177027
1375 <rdar://problem/33964767>
1377 Reviewed by Joseph Pecoraro.
1379 Allow new 'dumpJSConsoleLogInStdErr' test header to redirect log console output to stderr.
1381 * DumpRenderTree/TestOptions.h:
1382 * DumpRenderTree/TestOptions.mm:
1383 (TestOptions::TestOptions):
1384 * DumpRenderTree/mac/DumpRenderTree.mm:
1386 * WebKitTestRunner/TestController.cpp:
1387 (WTR::updateTestOptionsFromTestHeader):
1388 (WTR::TestController::runTest):
1389 * WebKitTestRunner/TestOptions.h:
1390 (WTR::TestOptions::hasSameInitializationOptions const):
1392 2017-10-24 Alex Christensen <achristensen@webkit.org>
1394 Apply custom header fields from WebsitePolicies to same-domain requests
1395 https://bugs.webkit.org/show_bug.cgi?id=178356
1397 Reviewed by Brady Eidson.
1399 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1402 2017-10-24 Stephan Szabo <stephan.szabo@sony.com>
1404 [Win][JSCOnly] Make jsconly build testapi and dlls and copy dlls when running tests
1405 https://bugs.webkit.org/show_bug.cgi?id=177279
1407 Reviewed by Yusuke Suzuki.
1409 * Scripts/build-jsc:
1410 * Scripts/run-jsc-stress-tests:
1412 2017-10-23 Lucas Forschler <lforschler@apple.com>
1414 <rdar://problem/35045445>
1415 Update README to reference WebKit build archives, instead of 'nightly'
1417 Reviewed by Aakash Jain.
1419 * WebKitArchiveSupport/README:
1421 2017-10-21 Tim Horton <timothy_horton@apple.com>
1423 Turn on ccache for Mac cmake builds by default
1424 https://bugs.webkit.org/show_bug.cgi?id=177059
1426 Reviewed by Sam Weinig.
1428 * ccache/ccache-clang:
1429 * ccache/ccache-wrapper: Added.
1430 Add a pass-through ccache wrapper to be used with CMake, in addition
1431 to the existing faux-clang wrappers.
1433 * Scripts/build-webkit:
1434 Add --use-ccache and --no-use-ccache option, which will define
1435 WK_USE_CCACHE to YES or NO, respectively, which the underlying
1436 build systems respect. We do not define WK_USE_CCACHE if the option
1437 is not specified, because the underlying build systems have different
1440 2017-10-20 Aakash Jain <aakash_jain@apple.com>
1442 Do not run binding tests on multiple EWSes
1443 https://bugs.webkit.org/show_bug.cgi?id=178599
1445 Reviewed by Alexey Proskuryakov.
1447 Remove old code which runs bindings tests and ignore it's result. We now have
1448 a dedicated bindings test EWS.
1450 * Scripts/webkitpy/tool/steps/runtests.py:
1451 (RunTests.run): Removed bindings tests code.
1452 * Scripts/webkitpy/tool/steps/runtests_unittest.py: Updated unit-tests.
1453 (RunTestsTest.test_webkit_run_unit_tests): Ditto.
1454 * Scripts/webkitpy/tool/steps/steps_unittest.py: Ditto.
1455 * Scripts/webkitpy/tool/commands/download_unittest.py: Ditto.
1457 2017-10-20 Youenn Fablet <youenn@apple.com>
1459 WebsiteDataStoreCustomPaths.mm is failing after r223718
1460 https://bugs.webkit.org/show_bug.cgi?id=178596
1464 * TestWebKitAPI/Tests/WebKitCocoa/WebsiteDataStoreCustomPaths.mm:
1465 (TEST): Making default web site data store creation expected at the end of the test.
1466 We should probably not need need to create it.
1467 This should be fixed as a follow-up.
1469 2017-10-20 Antoine Quint <graouts@apple.com>
1471 [Web Animations] Provide basic timeline and animation interfaces
1472 https://bugs.webkit.org/show_bug.cgi?id=178526
1474 Reviewed by Dean Jackson.
1476 Remove the WEB_ANIMATIONS compile-time flag.
1478 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1480 2017-10-20 Tomas Popela <tpopela@redhat.com>
1482 Missing some perl packages in install-dependencies
1483 https://bugs.webkit.org/show_bug.cgi?id=178571
1485 Reviewed by Žan Doberšek.
1487 Install per-version and perl-Time-HiRes so we can use build-webkit
1488 script. Also add missing backlashes.
1490 * wpe/install-dependencies:
1492 2017-10-20 Commit Queue <commit-queue@webkit.org>
1494 Unreviewed, rolling out r222709 and r223572.
1495 https://bugs.webkit.org/show_bug.cgi?id=178587
1497 Still getting mac-wk2 EWS bots stuck (Requested by ap on
1500 Reverted changesets:
1502 "Log stack-trace for run-webkit-tests when interrupted"
1503 https://bugs.webkit.org/show_bug.cgi?id=176393
1504 https://trac.webkit.org/changeset/222709
1506 "webkitpy: Hang when workers write to the same stack trace
1508 https://bugs.webkit.org/show_bug.cgi?id=178402
1509 https://trac.webkit.org/changeset/223572
1511 2017-10-19 Nan Wang <n_wang@apple.com>
1513 AX: Provide a way for Accessibility to cache the selection while retrieving rects for speak selection
1514 https://bugs.webkit.org/show_bug.cgi?id=176247
1515 <rdar://problem/34217143>
1517 Reviewed by Ryosuke Niwa.
1519 * TestWebKitAPI/Tests/ios/AccessibilityTestsIOS.mm:
1520 (TestWebKitAPI::TEST):
1522 2017-10-19 Sam Weinig <sam@webkit.org>
1524 [Settings] Move global settings into their own file
1525 https://bugs.webkit.org/show_bug.cgi?id=178512
1527 Reviewed by Darin Adler.
1529 * TestWebKitAPI/Tests/WebKitLegacy/ios/AudioSessionCategoryIOS.mm:
1530 (TestWebKitAPI::TEST):
1532 2017-10-19 Andy Estes <aestes@apple.com>
1534 [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
1535 https://bugs.webkit.org/show_bug.cgi?id=178181
1536 <rdar://problem/33660282>
1538 Reviewed by Dan Bernstein.
1540 * WebKitTestRunner/TestController.cpp:
1541 (WTR::TestController::databaseProcessName):
1543 2017-10-19 Saam Barati <sbarati@apple.com>
1545 Turn poly proto back on by default and remove the option
1546 https://bugs.webkit.org/show_bug.cgi?id=178525
1548 Reviewed by Mark Lam.
1550 * Scripts/run-jsc-stress-tests:
1552 2017-10-18 Ryosuke Niwa <rniwa@webkit.org>
1554 Don't expose raw HTML in pasteboard to the web content
1555 https://bugs.webkit.org/show_bug.cgi?id=178422
1557 Reviewed by Wenson Hsieh.
1559 Added a test case for sanitizing web archive in the system pasteboard to strip privacy sensitive information
1560 such as local file paths and potentially harmful scripts like event handlers serialized by WebKit prior to r223462.
1562 * TestWebKitAPI/Tests/WebKitCocoa/PasteWebArchive.mm:
1563 (PasteWebArchive.SanitizesHTML):
1565 2017-10-18 Youenn Fablet <youenn@apple.com>
1567 TestController should clear all fetch caches when resetting its state
1568 https://bugs.webkit.org/show_bug.cgi?id=178486
1570 Reviewed by Chris Dumez.
1572 Adding clearDOMCaches test runner method.
1573 Using that method when resetting state.
1575 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1576 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1577 (WTR::TestRunner::clearDOMCaches):
1578 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1579 * WebKitTestRunner/TestInvocation.cpp:
1580 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1582 2017-10-18 Chelsea Pugh <cpugh@apple.com>
1584 [iOS] Use new class name from UIKit when checking UITextSuggestion type
1585 https://bugs.webkit.org/show_bug.cgi?id=178416
1587 Reviewed by Tim Horton.
1589 This updates our test using/mocking out UITextAutofillSuggestion instead of UIKeyboardLoginCredentialsSuggestion.
1591 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
1592 (-[UITextAutofillSuggestion initWithUsername:password:]): Copied from UIKit's implementation. This will serve as
1593 a mock of this method for builds not containingit.
1594 (+[UITextAutofillSuggestion autofillSuggestionWithUsername:password:]): Ditto.
1595 (TestWebKitAPI::TEST): Use +[UITextAutofillSuggestion autofillSuggestionWithUsername:password:] inline instead of
1596 helper function for creating a new suggestion.
1597 (newUIKeyboardLoginCredentialsSuggestion): Deleted.
1599 * TestWebKitAPI/ios/UIKitSPI.h:
1601 2017-10-18 Fujii Hironori <Hironori.Fujii@sony.com>
1603 update-webkit-auxiliary-libs can't download WebKitAuxiliaryLibrary.zip due to 403 Forbidden
1604 https://bugs.webkit.org/show_bug.cgi?id=178381
1606 Reviewed by Alexey Proskuryakov.
1608 The web server developer.apple.com seems to reject HTTP requests
1609 without Accept header field.
1611 * Scripts/update-webkit-dependency: Add 'Accept' header field to requests.
1613 2017-10-18 Aakash Jain <aakash_jain@apple.com>
1615 webkitpy tests should have --json-output option
1616 https://bugs.webkit.org/show_bug.cgi?id=178481
1618 Reviewed by Alexey Proskuryakov.
1620 * Scripts/webkitpy/test/main.py:
1621 (Tester._parse_args): Added json-output argument.
1622 (Tester._run_tests): Write output to json file.
1624 2017-10-18 Wenson Hsieh <wenson_hsieh@apple.com>
1626 Unreviewed, rolling out r223291.
1628 See WebCore ChangeLog for more detail.
1632 "Remove Editor::simplifyMarkup"
1633 https://bugs.webkit.org/show_bug.cgi?id=178271
1634 https://trac.webkit.org/changeset/223291
1636 2017-10-18 Chris Dumez <cdumez@apple.com>
1638 Add an efficient data structure for WebCore to query if there is a Service Worker registered for a given origin
1639 https://bugs.webkit.org/show_bug.cgi?id=177876
1640 <rdar://problem/34813129>
1642 Reviewed by Ryosuke Niwa.
1644 Clear service worker registrations between test runs to avoid flakiness.
1646 * WebKitTestRunner/TestController.cpp:
1647 (WTR::TestController::resetStateToConsistentValues):
1649 2017-10-18 Zan Dobersek <zdobersek@igalia.com>
1651 Remove remnants of OpenWebRTC
1652 https://bugs.webkit.org/show_bug.cgi?id=178437
1654 Reviewed by Alejandro G. Castro.
1656 Drop OpenWebRTC packages from the GTK's Jhbuild modules file. Relevant
1657 patches are also removed.
1659 * gtk/jhbuild.modules:
1660 * gtk/patches/libnice-0001-TURN-allow-REALM-to-be-empty.patch: Removed.
1661 * gtk/patches/libnice-0001-nicesrc-spin-the-agent-mainloop-in-a-separate-thread.patch: Removed.
1662 * gtk/patches/rtspsrc-timeout-on-udpsrc-is-in-nanoseconds.patch: Removed.
1663 * gtk/patches/udpsrc-improve-timeouts.patch: Removed.
1665 2017-10-17 Jonathan Bedard <jbedard@apple.com>
1667 webkitpy: Hang when workers write to the same stack trace file
1668 https://bugs.webkit.org/show_bug.cgi?id=178402
1669 <rdar://problem/35033432>
1671 Reviewed by Aakash Jain.
1673 Workers can hang if they all write to the same stack trace file when receiving
1674 a SIGTERM. Attach the pid to the stack trace file name so that each worker
1675 writes to a different file.
1677 * Scripts/webkitpy/common/interupt_debugging.py:
1678 (log_stack_trace_on_term.handler): Name stack trace file path/<pid>-filename.
1679 (log_stack_trace_on_cntrl_c.handler): Ditto.
1681 2017-10-17 John Wilander <wilander@apple.com>
1683 Add and remove cookie partition accordingly in intermediary redirect requests
1684 https://bugs.webkit.org/show_bug.cgi?id=178369
1685 <rdar://problem/34467603>
1687 Reviewed by Brent Fulgham.
1689 Adds the function statisticsNotifyObserver().
1691 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1692 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1693 (WTR::InjectedBundle::statisticsNotifyObserver):
1694 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
1695 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1696 (WTR::TestRunner::statisticsNotifyObserver):
1697 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1699 2017-10-17 Youenn Fablet <youenn@apple.com>
1701 Cache API implementation should be able to compute storage size for WebKit client applications.
1702 https://bugs.webkit.org/show_bug.cgi?id=178350
1704 Reviewed by Chris Dumez.
1706 Adding support for a domCacheSize getter.
1708 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
1709 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1710 (WTR::TestRunner::domCacheSize):
1711 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1712 * WebKitTestRunner/TestController.cpp:
1713 (WTR::FetchCacheSizeForOriginCallbackContext::FetchCacheSizeForOriginCallbackContext):
1714 (WTR::fetchCacheSizeForOriginCallback):
1715 (WTR::TestController::domCacheSize):
1716 * WebKitTestRunner/TestController.h:
1717 * WebKitTestRunner/TestInvocation.cpp:
1718 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
1720 2017-10-17 Nael Ouedraogo <nael.ouedraogo@crf.canon.fr>
1722 [GStreamer][GTK][WPE] update-webkit-libs-jhbuild fails to detect changes in included moduleset files
1723 https://bugs.webkit.org/show_bug.cgi?id=178206
1725 Reviewed by Michael Catanzaro.
1727 The update-webkit-libs-jhbuild scripts computes MD5 sum of GTK/WPE jhbuild configuration files to check if it
1728 needs to rebuild the dependencies libraries. This patch fixes a bug when main GTK/WPE jhbuild modules
1729 configuration file includes additional files (for example GStreamer module). It parses jhbuild.modules file to
1730 check if additional files are included. If any, it computes MD5 sum for each of these included files.
1732 * Scripts/update-webkit-libs-jhbuild:
1733 (getJhbuildIncludedFilePaths): New function that returns included files in jhbuild.modules
1734 (jhbuildConfigurationCheckFile): New function to check if MD5 sum file changes.
1735 (jhbuildConfigurationChanged): Add MD5 sum check for included files.
1736 (saveMd5File): New function to save MD5 sum of a file.
1737 (saveJhbuildMd5): Add saving included files MD5 sum.
1738 (deleteJhbuildMd5): Delete included files MD5 sum
1739 * gtk/install-dependencies: Add perl-libXML lib that is used to parse jhbuild file.
1740 * wpe/install-dependencies: Ditto.
1742 2017-10-17 Tomas Popela <tpopela@redhat.com>
1744 Undefined WK_API_ENABLED warning when compiling COCOA content on WebKitGTK+
1745 https://bugs.webkit.org/show_bug.cgi?id=178208
1747 Check whether we are on COCOA platform before checking for
1750 Reviewed by Ryosuke Niwa.
1752 * WebKitTestRunner/TestController.cpp:
1753 (WTR::TestController::clearDOMCache):
1755 2017-10-17 Keith Miller <keith_miller@apple.com>
1757 Change WebCore sources to work with unified source builds
1758 https://bugs.webkit.org/show_bug.cgi?id=178229
1760 Rubber stamped by Tim Horton.
1762 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
1764 2017-10-16 Christopher Reid <chris.reid@sony.com>
1766 [Win] Webkit should still be able to build when unable to check if libraries are up to date
1767 https://bugs.webkit.org/show_bug.cgi?id=178367
1769 Adding a option to skip the check to see if windows libraries are up to date.
1770 This option is useful when testing modified libraries. This option also allows
1771 building webkit when GitHub blocks requests to verify the latest library version.
1774 Reviewed by Per Arne Vollan.
1776 * Scripts/build-webkit:
1778 2017-10-12 Matt Rajca <mrajca@apple.com>
1780 Add API support for quirk that lets an arbitrary click allow auto-play.
1781 https://bugs.webkit.org/show_bug.cgi?id=178227
1783 Reviewed by Alex Christensen.
1785 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
1786 (TEST): Added API test.
1788 2017-10-16 Maureen Daum <mdaum@apple.com>
1790 If an origin doesn't have databases in the Databases table we should still remove its information from disk in DatabaseTracker::deleteOrigin()
1791 https://bugs.webkit.org/show_bug.cgi?id=178281
1792 <rdar://problem/34576132>
1794 Reviewed by Brent Fulgham.
1796 Verify that if there is an entry in the Origins table but no entries in the Databases
1797 table that we still remove the directory for the origin, and that we remove the
1798 entry from the Origins table.
1800 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm:
1801 (TestWebKitAPI::TEST):
1803 2017-10-15 Ryosuke Niwa <rniwa@webkit.org>
1805 Cannot access images included in the content pasted from Microsoft Word
1806 https://bugs.webkit.org/show_bug.cgi?id=124391
1807 <rdar://problem/26862741>
1809 Reviewed by Antti Koivisto.
1811 Added tests for sanitizing HTML contents for copy & paste and drag & drop.
1813 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1814 * TestWebKitAPI/Tests/WebKitCocoa/CopyHTML.mm: Added.
1815 (readHTMLFromPasteboard): Added.
1816 (createWebViewWithCustomPasteboardDataEnabled): Added.
1817 (CopyHTML.Sanitizes): Added.
1819 * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm:
1820 (createWebViewWithCustomPasteboardDataEnabled): Added to enable more tests on bots.
1822 * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
1823 (writeRTFToPasteboard): Added.
1824 (createWebViewWithCustomPasteboardDataEnabled): Added.
1825 (createHelloWorldString): Added.
1826 (PasteRTF.ExposesHTMLTypeInDataTransfer): Added.
1827 (PasteRTFD.ExposesHTMLTypeInDataTransfer): Added.
1828 (PasteRTFD.ImageElementUsesBlobURLInHTML): Added.
1830 * TestWebKitAPI/Tests/WebKitCocoa/copy-html.html: Added.
1831 * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html: Store the clipboardData contents for
1832 PasteRTF.ExposesHTMLTypeInDataTransfer and PasteRTFD.ExposesHTMLTypeInDataTransfer.
1834 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
1835 (DataInteractionTests.DataTransferSanitizeHTML):
1837 2017-10-16 Youenn Fablet <youenn@apple.com>
1839 Activate Cache API by default
1840 https://bugs.webkit.org/show_bug.cgi?id=178186
1842 Reviewed by Chris Dumez.
1844 Removing explicit activation of cache api.
1846 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
1847 (WTR::InjectedBundle::beginTesting):
1848 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
1849 (WTR::TestRunner::setCacheAPIEnabled): Deleted.
1850 * WebKitTestRunner/InjectedBundle/TestRunner.h:
1852 2017-10-16 Ross Kirsling <ross.kirsling@sony.com>
1854 run-webkit-tests help text should mention arguments too
1855 https://bugs.webkit.org/show_bug.cgi?id=178352
1857 Reviewed by Tim Horton.
1859 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
1862 2017-10-16 Maureen Daum <mdaum@apple.com>
1864 If we fail to delete any database file, don't remove its information from the tracker database
1865 <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
1867 Reviewed by Brady Eidson.
1869 Add tests that verify we correctly delete databases and remove their information from
1870 the tracker database, even if the database doesn't exist. Verify that if we fail to
1871 delete a database, we don't remove its information from the tracker database.
1873 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1874 Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
1875 method for creating a temporary directory in the tests.
1876 * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
1877 The existing test was copied to DatabaseTrackerTest.mm.
1878 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
1879 (TestWebKitAPI::TEST):
1880 (TestWebKitAPI::addToDatabasesTable):
1881 (TestWebKitAPI::removeDirectoryAndAllContents):
1882 (TestWebKitAPI::createFileAtPath):
1884 2017-10-16 Ryan Haddad <ryanhaddad@apple.com>
1886 Unreviewed, rolling out r223422.
1888 These tests are for a change that was rolled out in r223420
1892 "If we fail to delete any database file, don't remove its
1893 information from the tracker database"
1894 https://bugs.webkit.org/show_bug.cgi?id=178251
1895 https://trac.webkit.org/changeset/223422
1897 2017-10-16 Maureen Daum <mdaum@apple.com>
1899 If we fail to delete any database file, don't remove its information from the tracker database
1900 <rdar://problem/34576132> and https://bugs.webkit.org/show_bug.cgi?id=178251
1902 Reviewed by Brady Eidson.
1904 Add tests that verify we correctly delete databases and remove their information from
1905 the tracker database, even if the database doesn't exist. Verify that if we fail to
1906 delete a database, we don't remove its information from the tracker database.
1908 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
1909 Move DatabaseTrackerTest.cpp to DatabaseTrackerTest.mm so that we can use the cocoa
1910 method for creating a temporary directory in the tests.
1911 * TestWebKitAPI/Tests/WebCore/DatabaseTrackerTest.cpp: Removed.
1912 The existing test was copied to DatabaseTrackerTest.mm.
1913 * TestWebKitAPI/Tests/WebCore/cocoa/DatabaseTrackerTest.mm: Added.
1914 (TestWebKitAPI::TEST):
1915 (TestWebKitAPI::addToDatabasesTable):
1916 (TestWebKitAPI::removeDirectoryAndAllContents):
1917 (TestWebKitAPI::createFileAtPath):
1919 2017-10-16 David Kilzer <ddkilzer@apple.com>
1921 Add RELEASE_ASSERT_WITH_SECURITY_IMPLICATION() macro
1922 <https://webkit.org/b/178269>
1924 Reviewed by Alex Christensen.
1926 * Scripts/webkitpy/style/checkers/cpp.py:
1927 (check_language): Add checker to warn about using
1928 ASSERT_WITH_SECURITY_IMPLICATION().
1929 (CppChecker.categories): Add 'security/assertion' to list of
1931 * Scripts/webkitpy/style/checkers/cpp_unittest.py:
1932 (CppStyleTest.test_debug_security_assertion): Add tests for
1935 2017-10-16 Chris Dumez <cdumez@apple.com>
1937 Clicks on Link with download attribute causes all (other) links to trigger download when clicked
1938 https://bugs.webkit.org/show_bug.cgi?id=178267
1939 <rdar://problem/34985016>
1941 Reviewed by Darin Adler.
1943 Use PassThrough policy in WKTR's InjectedBundle's decidePolicyForNewWindowAction so that the
1944 request is sent to the UIProcess. This gets WKTR's closer to Safari behavior and helps
1945 reproduce the bug. Without this change, I would not be able to write a regression test for
1946 this bug that is very easily reproducible in Safari.
1948 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
1949 (WTR::InjectedBundlePage::decidePolicyForNewWindowAction):
1951 2017-10-16 Emilio Cobos Álvarez <emilio@crisal.io>
1953 Add Emilio Cobos Álvarez to the contributors list.
1954 https://bugs.webkit.org/show_bug.cgi?id=178334
1956 Reviewed by Antti Koivisto.
1958 * Scripts/webkitpy/common/config/contributors.json:
1960 2017-10-07 Maciej Stachowiak <mjs@apple.com>
1962 Improve --help documentation and add --list-plans to show available benchmarks.
1963 https://bugs.webkit.org/show_bug.cgi?id=178059
1965 Reviewed by Ryosuke Niwa.
1967 * Scripts/webkitpy/benchmark_runner/benchmark_runner.py:
1968 (BenchmarkRunner.available_plans): New function that returns the list of available plans.
1969 (BenchmarkRunner.plan_directory): New method to centralize knowledge of where the plan files live.
1970 (BenchmarkRunner._find_plan_file): Updated to use BenchmarkRunner.plan_directory
1972 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
1974 (parse_args): Help cleanup: Reordered options to put more common
1975 ones at the top. Fixed wording. Added help for each
1976 option. Explained default for each option that has one.
1978 New option: --list-plans which tells you the available benchmarks.
1980 Code cleanup: Removed use of dest where redundant, made variable
1981 names conforming to Python coding style.
1983 (run_benchmark_plan): Adapted for new variable names.
1984 (list_benchmark_plans): New helper for --list-plans option.
1985 (start): Account for --list-plans. Also use
1986 BechmarkRunner.available_plans and use
1987 BenchmarkRunner.plan_directory instead of duplicating
1988 code/knowledge here.
1990 2017-10-16 Wenson Hsieh <wenson_hsieh@apple.com>
1992 On ToT, event.dataTransfer.getData("text/uri-list") returns an empty string when dragging an image
1993 https://bugs.webkit.org/show_bug.cgi?id=178301
1994 <rdar://problem/34990050>
1996 Reviewed by Darin Adler.
1998 Fixes issues in DumpRenderTree's LocalPasteboard to ensure that drag-drop-href-as-url.html exposes files, and
1999 also adds a new iOS drag and drop API test.
2001 * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
2002 (-[LocalPasteboard addTypes:owner:]):
2003 (-[LocalPasteboard setData:forType:]):
2005 Fixes LocalPasteboard's implementation of changeCount to incremement when the pasteboard owner changes, rather
2006 than every time data is changed. This is consistent with NSPasteboard behavior.
2008 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2009 (TestWebKitAPI::TEST):
2011 Adds a new API test to verify that an image and HTTP URL written by the platform is correctly web exposed.
2013 2017-10-15 Darin Adler <darin@apple.com>
2015 UTF-8 decoding produces one replacement character per byte; Encoding standard requires one replacement character per illegal sequence instead
2016 https://bugs.webkit.org/show_bug.cgi?id=178207
2018 Reviewed by Sam Weinig.
2020 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added test.
2021 * TestWebKitAPI/Tests/WebCore/TextCodec.cpp: Added.
2022 (TestWebKitAPI::decodeHexTestBytes): Decodes a string so we can write readable tests.
2023 (TestWebKitAPI::escapeNonPrintableASCIICharacters): Encodes a string so we can write readable tests.
2024 (TestWebKitAPI::TEST): Added some UTF-8 tests and UTF-8 invalid sequences tests.
2025 Would be smart to add more tests for other cases, exercising the fast ASCII loop for example, and
2028 2017-10-14 Adrian Perez de Castro <aperez@igalia.com>
2030 [WPE] JHBuild build directory DependenciesWPE/Build is not removed by update-webkit-libs-jhbuild
2031 https://bugs.webkit.org/show_bug.cgi?id=178212
2033 Reviewed by Michael Catanzaro.
2035 * Scripts/update-webkit-libs-jhbuild:
2036 (cleanJhbuild): The WPE JHBuild also uses a separate "Build" subdirectory, so do not skip
2037 cleaning it when "--wpe" is passed to the script.
2039 2017-10-13 Adrian Perez de Castro <aperez@igalia.com>
2041 [WPE] Fontconfig fails build in JHBuild with “error: conflicting types for ‘FcObjectTypeHash’”
2042 https://bugs.webkit.org/show_bug.cgi?id=178283
2044 Reviewed by Žan Doberšek.
2046 * wpe/jhbuild.modules: Flag Fontconfig to be built inside the source directory, otherwise
2047 compilation fails. While at it, pass "--disable-docs" to cut a bit on build time.
2049 2017-10-13 Youenn Fablet <youenn@apple.com>
2051 Implement listing origins for which CacheStorage is storing data
2052 https://bugs.webkit.org/show_bug.cgi?id=178236
2054 Reviewed by Chris Dumez.
2056 Adding hasDOMCache API for checking whether origin is storing data through Cache API.
2058 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2059 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2060 (WTR::TestRunner::hasDOMCache):
2061 * WebKitTestRunner/InjectedBundle/TestRunner.h:
2062 * WebKitTestRunner/TestController.cpp:
2063 (WTR::FetchCacheOriginsCallbackContext::FetchCacheOriginsCallbackContext):
2064 (WTR::fetchCacheOriginsCallback):
2065 (WTR::TestController::hasDOMCache):
2066 * WebKitTestRunner/TestController.h:
2067 * WebKitTestRunner/TestInvocation.cpp:
2068 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2070 2017-10-13 Alex Christensen <achristensen@webkit.org>
2072 Remove Editor::simplifyMarkup
2073 https://bugs.webkit.org/show_bug.cgi?id=178271
2075 Reviewed by Wenson Hsieh.
2077 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2078 * TestWebKitAPI/Tests/mac/SimplifyMarkup.mm: Removed.
2080 2017-10-11 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
2082 [GLib] WebKitNavigationAction should tell whether it is a redirect
2083 https://bugs.webkit.org/show_bug.cgi?id=178178
2085 Test that WebKitNavigationAction properly reports being a redirect.
2087 Reviewed by Carlos Garcia Campos.
2089 * TestWebKitAPI/Tests/WebKitGLib/TestWebKitPolicyClient.cpp:
2090 (testNavigationPolicy): test that loading /redirect leads to a redirect WebKitNavigationAction.
2091 (serverCallback): add a /redirect path to the server, which causes a redirect.
2093 2017-10-13 Chris Dumez <cdumez@apple.com>
2095 Unreviewed, fix webkitpy failure after r223273
2097 * Scripts/webkitpy/w3c/test_importer_unittest.py:
2098 (TestImporterTest.test_harnesslinks_conversion):
2100 2017-10-12 Chris Dumez <cdumez@apple.com>
2102 import-w3c-tests modifies test sources and sometimes causes them to fail
2103 https://bugs.webkit.org/show_bug.cgi?id=178234
2105 Reviewed by Ryosuke Niwa.
2107 Update import-w3c-tests to stop rewriting tests as this is causing some tests
2108 to fail unexpectedly.
2110 * Scripts/webkitpy/w3c/test_importer.py:
2111 (TestImporter.import_tests):
2113 2017-10-12 Youenn Fablet <youenn@apple.com>
2115 Layout Test http/tests/cache-storage/cache-clearing.https.html is failing
2116 https://bugs.webkit.org/show_bug.cgi?id=178200
2118 Reviewed by Chris Dumez.
2120 Making clearDOMCache wait for removal completion to exit.
2121 This removes the risk to interact with the cache while deleting it which will end up be racy in tests.
2123 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2124 (WTR::TestRunner::clearDOMCache):
2125 * WebKitTestRunner/TestController.cpp:
2126 (WTR::ClearDOMCacheCallbackContext::ClearDOMCacheCallbackContext):
2127 (WTR::clearDOMCacheCallback):
2128 (WTR::TestController::clearDOMCache):
2129 * WebKitTestRunner/TestInvocation.cpp:
2130 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2131 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2133 2017-10-12 John Wilander <wilander@apple.com>
2135 ResourceLoadObserver::logFrameNavigation() should use redirectResponse.url()
2136 https://bugs.webkit.org/show_bug.cgi?id=175257
2137 <rdar://problem/33359866>
2139 Reviewed by Brent Fulgham.
2141 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2142 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2143 (WTR::TestRunner::isStatisticsRegisteredAsSubFrameUnder):
2144 (WTR::TestRunner::isStatisticsRegisteredAsRedirectingTo):
2145 * WebKitTestRunner/InjectedBundle/TestRunner.h:
2146 * WebKitTestRunner/TestController.cpp:
2147 (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
2149 (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
2151 * WebKitTestRunner/TestController.h:
2152 * WebKitTestRunner/TestInvocation.cpp:
2153 (WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
2154 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2155 (WTR::TestController::isStatisticsRegisteredAsSubFrameUnder):
2156 Implemented platform-specific.
2157 (WTR::TestController::isStatisticsRegisteredAsRedirectingTo):
2158 Implemented platform-specific.
2160 2017-10-12 Andy Estes <aestes@apple.com>
2162 [iOS] Conditionally rename DatabaseProcess to StorageProcess when building for iOS devices
2163 https://bugs.webkit.org/show_bug.cgi?id=178181
2164 <rdar://problem/33660282>
2166 Reviewed by Dan Bernstein.
2168 * WebKitTestRunner/TestController.cpp:
2169 (WTR::TestController::databaseProcessName):
2171 2017-10-12 Myles C. Maxfield <mmaxfield@apple.com>
2173 Emit SPIR-V from WSL compiler (Part 1)
2174 https://bugs.webkit.org/show_bug.cgi?id=177998
2176 Reviewed by Filip Pizlo.
2178 This patch implements the first half of a SPIR-V codegen phase for WSL.
2179 This includes all the operations which aren't actually emitting the contents
2180 of functions themselves. For example, this includes things like representing
2181 WSL types with SPIR-V types, and declaring shaders' inputs and outputs. A
2182 future patch will actually emit the contents of functions.
2184 There are two helper visitors here: SPIRVTypeAnalyzer which generates SPIR-V
2185 types from WSL types, and SPIRVPrimitiveVariableAnalyzer which identifies
2186 input and output variables from a shader (and assigns location values to
2189 This patch is currently pursuing the "logical mode" detailed in
2190 https://bugs.webkit.org/show_bug.cgi?id=176967. In this mode, each pointer and
2191 array reference operation can be statically traced to the variable or array it
2194 This has the interesting property where accessing a pointer inside an array is
2195 forbidden, because the array index may be computed at runtime, so the compiler
2196 can't know at compile time which variable the pointer operation will be
2197 accessing. However, this isn't true for structs; the program must statically
2198 state which struct member it is accessing. Therefore, pointers or array
2199 references must not transitively appear within an array, but they may appear
2200 within a struct. The same logic applies to array references; those get lowered
2201 to just two indexes in SPIR-V (a lower bound and an upper bound).
2203 So, outside of an array, SPIR-V types don't need to include any pointers because
2204 any operation with the pointer doesn't need access to the runtime value of the
2205 pointer. Inside of an array, pointers are forbidden. Therefore, SPIR-V types
2206 will never include any pointers.
2208 This means that, for example, WSL can represent a linked list in logical mode.
2209 However, a WSL program cannot iterate across the list, because that would require
2210 assigning to a pointer. So instead, a program using a linked list could only say
2211 something like "list.ptr->ptr->ptr->value".
2213 * WebGPUShadingLanguageRI/LateChecker.js:
2214 (LateChecker.prototype._checkShaderType):
2215 * WebGPUShadingLanguageRI/SPIR-V.js:
2216 (SPIRV.OperandChecker.prototype._isStar):
2217 (SPIRV.OperandChecker.prototype.nextComparisonType):
2218 (SPIRV.OperandChecker.prototype.finalize):
2219 (SPIRV.OperandChecker):
2220 * WebGPUShadingLanguageRI/SPIRV.html:
2221 * WebGPUShadingLanguageRI/SPIRVCodegen.js: Added.
2223 (emitTypes.doEmitTypes):
2225 (ConstantFinder.prototype.visitGenericLiteralType):
2228 * WebGPUShadingLanguageRI/SPIRVTypeAnalyzer.js: Added.
2229 (SPIRVTypeAnalyzer):
2230 (SPIRVTypeAnalyzer.prototype.get program):
2231 (SPIRVTypeAnalyzer.prototype.get typeMap):
2232 (SPIRVTypeAnalyzer.prototype.get currentId):
2233 (SPIRVTypeAnalyzer.prototype.get stack):
2234 (SPIRVTypeAnalyzer.prototype.visitTypeRef):
2235 (SPIRVTypeAnalyzer.prototype._encounterType):
2236 (SPIRVTypeAnalyzer.prototype.visitNullType):
2237 (SPIRVTypeAnalyzer.prototype.visitGenericLiteralType):
2238 (SPIRVTypeAnalyzer.prototype.visitNativeType):
2239 (SPIRVTypeAnalyzer.prototype.visitEnumType):
2240 (SPIRVTypeAnalyzer.prototype.visitPtrType):
2241 (SPIRVTypeAnalyzer.prototype.visitArrayRefType):
2242 (SPIRVTypeAnalyzer.prototype.visitArrayType):
2243 (SPIRVTypeAnalyzer.prototype.visitStructType):
2244 * WebGPUShadingLanguageRI/SPIRVVariableAnalyzer.js: Added.
2245 (SPIRVPrimitiveVariableAnalyzer):
2246 (SPIRVPrimitiveVariableAnalyzer.prototype.get program):
2247 (SPIRVPrimitiveVariableAnalyzer.prototype.get typeMap):
2248 (SPIRVPrimitiveVariableAnalyzer.prototype.get currentId):
2249 (SPIRVPrimitiveVariableAnalyzer.prototype.get currentLocation):
2250 (SPIRVPrimitiveVariableAnalyzer.prototype.get nameComponents):
2251 (SPIRVPrimitiveVariableAnalyzer.prototype.get result):
2252 (SPIRVPrimitiveVariableAnalyzer.prototype.visitTypeRef):
2253 (SPIRVPrimitiveVariableAnalyzer.prototype.visitNullType):
2254 (SPIRVPrimitiveVariableAnalyzer.prototype.visitGenericLiteralType):
2255 (SPIRVPrimitiveVariableAnalyzer.prototype.visitNativeType):
2256 (SPIRVPrimitiveVariableAnalyzer.prototype.visitEnumType):
2257 (SPIRVPrimitiveVariableAnalyzer.prototype.visitPtrType):
2258 (SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayRefType):
2259 (SPIRVPrimitiveVariableAnalyzer.prototype.visitArrayType):
2260 (SPIRVPrimitiveVariableAnalyzer.prototype.visitStructType):
2261 * WebGPUShadingLanguageRI/WSL.md:
2262 * WebGPUShadingLanguageRI/index.html:
2264 2017-09-29 Filip Pizlo <fpizlo@apple.com>
2266 Enable gigacage on iOS
2267 https://bugs.webkit.org/show_bug.cgi?id=177586
2269 Reviewed by JF Bastien.
2271 Add a mode to test disabling Gigacage.
2273 * Scripts/run-jsc-stress-tests:
2274 * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
2276 2017-10-11 Sam Weinig <sam@webkit.org>
2278 Remove out-parameter variants of copyToVector
2279 https://bugs.webkit.org/show_bug.cgi?id=178155
2281 Reviewed by Tim Horton.
2283 * DumpRenderTree/JavaScriptThreading.cpp:
2284 (stopJavaScriptThreads):
2286 2017-10-12 Sam Weinig <sam@webkit.org>
2288 It should be possible to iterate just the values (and not the counts) of a HashCountedSet
2289 https://bugs.webkit.org/show_bug.cgi?id=178169
2291 Reviewed by Daniel Bates.
2293 * TestWebKitAPI/Tests/WTF/HashCountedSet.cpp:
2294 (TestWebKitAPI::TEST):
2295 Add test for HashCountedSet's new values() range.
2297 2017-10-11 Frederic Wang <fwang@igalia.com>
2299 run-safari --ios-simulator is no longer working with Xcode 9
2300 https://bugs.webkit.org/show_bug.cgi?id=177595
2302 Reviewed by Daniel Bates.
2304 In Xcode 9, the path of the simulator application is now in a new CoreSimulator subdirectory
2305 of the iphoneOS SDK platform. This patch updates webkitdirs.pm to use the new path in
2306 Xcode 9 or higher so that it is possible to run Safari on the iOS simulator again. It also
2307 does some minor code refactoring to improve code reuse.
2309 * Scripts/configure-xcode-for-ios-development: Move sdkDirectory() and sdkPlatformDirectory()
2311 (sdkDirectory): Deleted.
2312 (sdkPlatformDirectory): Deleted.
2313 * Scripts/webkitdirs.pm: Expose new sdkDirectory() and sdkPlatformDirectory().
2314 (sdkDirectory): Moved from configure-xcode-for-ios-development.
2315 (sdkPlatformDirectory): Ditto.
2316 (XcodeSDKPath): Rely on sdkDirectory() to implement this function.
2317 (iosSimulatorApplicationsPath): In Xcode 9 or higher use the new path. It is calculated
2318 by relying on sdkPlatformDirectory().
2320 2017-10-11 Dewei Zhu <dewei_zhu@apple.com>
2322 run-benchmark script should set '__XPC_DYLD_FRAMEWORK_PATH' while launching local-built Safari on Mac.
2323 https://bugs.webkit.org/show_bug.cgi?id=178199
2325 Reviewed by Saam Barati.
2327 '__XPC_DYLD_FRAMEWORK_PATH' should be set while launching Safari on run-benchmark script.
2328 'force_remove' function should support both file and directory.
2330 * Scripts/webkitpy/benchmark_runner/browser_driver/osx_safari_driver.py:
2331 (OSXSafariDriver.launch_url):
2332 * Scripts/webkitpy/benchmark_runner/utils.py:
2335 2017-10-11 Saam Barati <sbarati@apple.com>
2337 Runtime disable poly proto because it may be a 3-4% Speedometer regression
2338 https://bugs.webkit.org/show_bug.cgi?id=178192
2340 Reviewed by JF Bastien.
2342 * Scripts/run-jsc-stress-tests:
2344 2017-10-11 Youenn Fablet <youenn@apple.com>
2346 Add API to clean CacheStorage data
2347 https://bugs.webkit.org/show_bug.cgi?id=178034
2349 Reviewed by Chris Dumez.
2351 Adding internals API to trigger deleting all or origin-persistent cache storage persistent data.
2353 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2354 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2355 (WTR::TestRunner::clearDOMCache):
2356 * WebKitTestRunner/InjectedBundle/TestRunner.h:
2357 * WebKitTestRunner/TestController.cpp:
2358 (WTR::TestController::clearDOMCache):
2359 * WebKitTestRunner/TestController.h:
2360 * WebKitTestRunner/TestInvocation.cpp:
2361 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2363 2017-10-11 Chris Dumez <cdumez@apple.com>
2365 [Geolocation] Expose Coordinates.floorLevel
2366 https://bugs.webkit.org/show_bug.cgi?id=178173
2367 <rdar://problem/34918936>
2369 Reviewed by Ryosuke Niwa.
2371 Add test infrastructure for testing Coordinates.floorLevel.
2373 * DumpRenderTree/TestRunner.cpp:
2374 (setMockGeolocationPositionCallback):
2375 * DumpRenderTree/TestRunner.h:
2376 * DumpRenderTree/mac/TestRunnerMac.mm:
2377 (TestRunner::setMockGeolocationPosition):
2378 * DumpRenderTree/win/TestRunnerWin.cpp:
2379 (TestRunner::setMockGeolocationPosition):
2380 * WebKitTestRunner/GeolocationProviderMock.cpp:
2381 (WTR::GeolocationProviderMock::setPosition):
2382 * WebKitTestRunner/GeolocationProviderMock.h:
2383 * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
2384 * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
2385 (WTR::InjectedBundle::setMockGeolocationPosition):
2386 * WebKitTestRunner/InjectedBundle/InjectedBundle.h:
2387 * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
2388 (WTR::TestRunner::setMockGeolocationPosition):
2389 * WebKitTestRunner/InjectedBundle/TestRunner.h:
2390 * WebKitTestRunner/TestController.cpp:
2391 (WTR::TestController::setMockGeolocationPosition):
2392 * WebKitTestRunner/TestController.h:
2393 * WebKitTestRunner/TestInvocation.cpp:
2394 (WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
2396 2017-10-11 Youenn Fablet <youenn@apple.com>
2398 Bump default cache storage quota to 20MB
2399 https://bugs.webkit.org/show_bug.cgi?id=178132
2401 Reviewed by Alex Christensen.
2403 * WebKitTestRunner/TestController.cpp:
2404 (WTR::TestController::generateContextConfiguration const):
2405 * WebKitTestRunner/cocoa/TestControllerCocoa.mm:
2406 (WTR::initializeWebViewConfiguration): Setting quota to 400kb
2408 2017-10-11 Commit Queue <commit-queue@webkit.org>
2410 Unreviewed, rolling out r223113 and r223121.
2411 https://bugs.webkit.org/show_bug.cgi?id=178182
2413 Reintroduced 20% regression on Kraken (Requested by rniwa on
2416 Reverted changesets:
2418 "Enable gigacage on iOS"
2419 https://bugs.webkit.org/show_bug.cgi?id=177586
2420 https://trac.webkit.org/changeset/223113
2422 "Use one virtual allocation for all gigacages and their
2424 https://bugs.webkit.org/show_bug.cgi?id=178050
2425 https://trac.webkit.org/changeset/223121
2427 2017-10-11 Ryosuke Niwa <rniwa@webkit.org>
2429 Sanitize URL in pasteboard for other applications and cross origin content
2430 https://bugs.webkit.org/show_bug.cgi?id=178060
2431 <rdar://problem/34874518>
2433 Reviewed by Wenson Hsieh.
2435 Added API tests for sanitizing URLs copied from web content, and that the original URL is exposed to the web content.
2437 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
2438 * TestWebKitAPI/Tests/WebKitCocoa/CopyURL.mm: Added.
2439 (readURLFromPasteboard): A helper function.
2440 * TestWebKitAPI/Tests/WebKitCocoa/copy-url.html: Added.
2441 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
2442 (DataInteractionTests.DataTransferGetDataWhenDroppingCustomData): Rebaselined. https://www.apple.com is no longer
2443 normalized to https://www.apple.com/ by NSURL / UIPasteboard as expected.
2444 (DataInteractionTests.DataTransferSetDataValidURL): Added.
2445 (DataInteractionTests.DataTransferSetDataUnescapedURL): Added.
2446 (DataInteractionTests.qDataTransferSetDataInvalidURL): Added.
2448 2017-10-11 Chris Dumez <cdumez@apple.com>
2450 Modernize Geolocation code
2451 https://bugs.webkit.org/show_bug.cgi?id=178148
2453 Reviewed by Ryosuke Niwa.
2455 * DumpRenderTree/mac/TestRunnerMac.mm:
2456 (TestRunner::setMockGeolocationPosition):
2458 2017-10-11 Nael Ouedraogo <nael.ouedraogo@crf.canon.fr>
2460 [GStreamer] Many media source tests crashing with GStreamer-CRITICAL **: _gst_util_uint64_scale: assertion 'denom != 0' failed in gst_qtdemux_configure_stream()
2461 https://bugs.webkit.org/show_bug.cgi?id=176804
2463 Reviewed by Michael Catanzaro.
2465 Add patch to fix assert in qtdemux.
2467 * gstreamer/jhbuild.modules:
2468 * gstreamer/patches/gst-plugins-good-0009-qtdemux-fix-assert-when-moof-contains-one-sample.patch: Added.
2470 2017-10-11 Tomas Popela <tpopela@redhat.com>
2472 Use https for trac changeset and browser links
2473 https://bugs.webkit.org/show_bug.cgi?id=178167
2475 Reviewed by Alexey Proskuryakov.
2477 Switch the http://trac.webkit.org/changeset and
2478 http://trac.webkit.org/browser links that are printed by webkitpy to
2479 https. Also update the test expectations.
2481 * Scripts/webkitpy/common/checkout/checkout_unittest.py:
2482 * Scripts/webkitpy/common/config/committervalidator_unittest.py:
2483 (CommitterValidatorTest.test_flag_permission_rejection_message):
2484 * Scripts/webkitpy/common/config/urls.py:
2486 (view_revision_url):
2487 * Scripts/webkitpy/common/net/bugzilla/bug_unittest.py:
2488 (BugTest.test_commit_revision):
2489 * Scripts/webkitpy/common/net/bugzilla/bugzilla_mock.py:
2490 * Scripts/webkitpy/common/net/buildbot/buildbot_unittest.py:
2491 * Scripts/webkitpy/performance_tests/perftestsrunner_integrationtest.py:
2493 (MainTest.test_run_with_upload_json_should_generate_perf_webkit_json):
2494 * Scripts/webkitpy/style/checkers/changelog_unittest.py:
2495 (ChangeLogCheckerTest.test_missing_bug_number):
2496 * Scripts/webkitpy/tool/bot/feeders_unittest.py:
2497 * Scripts/webkitpy/tool/bot/flakytestreporter_unittest.py:
2498 * Scripts/webkitpy/tool/bot/ircbot_unittest.py:
2499 (IRCBotTest.test_rollout):
2500 (IRCBotTest.test_revert):
2501 (IRCBotTest.test_multi_rollout):
2502 (IRCBotTest.test_rollout_with_r_in_svn_revision):
2503 (IRCBotTest.test_multi_rollout_with_r_in_svn_revision):
2504 (IRCBotTest.test_rollout_invalidate_reason):
2505 (test_multi_rollout_invalidate_reason):
2506 * Scripts/webkitpy/tool/bot/sheriff_unittest.py:
2507 * Scripts/webkitpy/tool/commands/download_unittest.py:
2508 * Scripts/webkitpy/tool/commands/newcommitbot_unittest.py:
2509 * Scripts/webkitpy/tool/commands/queues_unittest.py:
2510 * Scripts/webkitpy/tool/commands/suggestnominations.py:
2511 (SuggestNominations._count_commit):
2512 * Scripts/webkitpy/tool/commands/upload_unittest.py:
2513 * Scripts/webkitpy/tool/servers/data/rebaselineserver/util.js:
2516 * Scripts/webkitpy/tool/steps/closebugforlanddiff_unittest.py:
2517 (CloseBugForLandDiffTest.test_empty_state):
2518 * Scripts/webkitpy/tool/steps/commit_unittest.py:
2519 (CommitTest._test_check_test_expectations):
2520 * Scripts/webkitpy/tool/steps/preparechangelogforrevert_unittest.py:
2521 (UpdateChangeLogsForRevertTest):
2523 2017-10-10 Ryosuke Niwa <rniwa@webkit.org>
2525 Enable custom pasteboard data in DumpRenderTree and WebKitTestRunner
2526 https://bugs.webkit.org/show_bug.cgi?id=178154
2528 Reviewed by Wenson Hsieh.
2530 Fixed the bug that LocalPasteboard would fail to load the promise type if data is set after declaring types
2531 by delaying the call to provideDataForType until when dataForType is called.
2533 Without this fix, fast/events/dropzone-002.html would start failing after enabling custom pasteboard data.
2534 With this fix, fast/events/dropzone-005.html also starts passing.
2536 * DumpRenderTree/mac/DumpRenderTree.mm:
2537 (resetWebPreferencesToConsistentValues):
2538 * DumpRenderTree/mac/DumpRenderTreePasteboard.mm:
2539 (-[LocalPasteboard addTypes:owner:]):
2540 (-[LocalPasteboard dataForType:]):
2541 * WebKitTestRunner/TestController.cpp:
2542 (WTR::TestController::resetPreferencesToConsistentValues):
2544 2017-10-10 Joanmarie Diggs <jdiggs@igalia.com>
2546 AX: [ATK] ARIA form role should be mapped to ATK_ROLE_LANDMARK; not ATK_ROLE_FORM
2547 https://bugs.webkit.org/show_bug.cgi?id=178137
2549 Reviewed by Chris Fleizach.
2551 Add handling for ATK_ROLE_LANDMARK resulting from the ARIA form role.
2553 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
2555 2017-10-10 Jonathan Bedard <jbedard@apple.com>
2557 run-webkit-tests: upload test results to multiple servers
2558 https://bugs.webkit.org/show_bug.cgi?id=178012
2559 <rdar://problem/34856501>
2561 Reviewed by Lucas Forschler.
2563 Allowing uploading of results to multiple servers makes developing new results
2564 databases much easier, and does not complicate uploading logic.
2566 * Scripts/webkitpy/layout_tests/controllers/manager.py:
2567 (Manager.upload_results): Iterate through the list of results server hosts and
2568 send results to each one.
2569 * Scripts/webkitpy/layout_tests/layout_package/json_layout_results_generator.py:
2570 (JSONLayoutResultsGenerator.__init__): Accept a list of test results servers.
2571 * Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:
2572 (JSONResultsGenerator.__init__): Accept a list of test results servers.
2573 (JSONResultsGenerator.get_json): Pick which server to download from by index.
2574 (JSONResultsGenerator.upload_json_files): Upload the JSON to each results server.
2575 (JSONResultsGenerator._get_archived_json_results): Pick which server to download from.
2576 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
2577 (parse_args): Allow multiple test-results-servers and results-server-hosts to be
2578 passed to run-webkit-tests.
2580 2017-10-09 Youenn Fablet <youenn@apple.com>
2582 Vector should be able to easily create from a list of movable only items
2583 https://bugs.webkit.org/show_bug.cgi?id=176432
2585 Reviewed by Darin Adler.
2587 * TestWebKitAPI/Tests/WTF/Vector.cpp:
2588 (TestWebKitAPI::TEST):
2590 2017-09-29 Filip Pizlo <fpizlo@apple.com>
2592 Enable gigacage on iOS
2593 https://bugs.webkit.org/show_bug.cgi?id=177586
2595 Reviewed by JF Bastien.
2597 Add a mode to test disabling Gigacage.
2599 * Scripts/run-jsc-stress-tests:
2600 * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
2602 2017-10-09 Commit Queue <commit-queue@webkit.org>
2604 Unreviewed, rolling out r223015 and r223025.
2605 https://bugs.webkit.org/show_bug.cgi?id=178093
2607 Regressed Kraken on iOS by 20% (Requested by keith_mi_ on
2610 Reverted changesets:
2612 "Enable gigacage on iOS"
2613 https://bugs.webkit.org/show_bug.cgi?id=177586
2614 http://trac.webkit.org/changeset/223015
2616 "Unreviewed, disable Gigacage on ARM64 Linux"
2617 https://bugs.webkit.org/show_bug.cgi?id=177586
2618 http://trac.webkit.org/changeset/223025
2620 2017-10-09 Sam Weinig <sam@webkit.org>
2622 Make HashMap::keys() and HashMap::values() work with WTF::map/WTF::copyToVector
2623 https://bugs.webkit.org/show_bug.cgi?id=178072
2625 Reviewed by Darin Adler.
2627 * TestWebKitAPI/Tests/WTF/Vector.cpp:
2628 (TestWebKitAPI::TEST):
2630 Add tests for HashMap::keys() and HashMap::values() working with copyToVector.
2632 2017-10-05 Frederic Wang <fwang@igalia.com>
2634 Remove WOFF2 from Source/ThirdParty.
2635 https://bugs.webkit.org/show_bug.cgi?id=177862
2637 Reviewed by Michael Catanzaro.
2639 * Scripts/webkitpy/style/checker.py: Remove woff2.
2640 * gtk/jhbuild.modules: Add new jhbuild module for woff2.
2642 2017-10-08 Sam Weinig <sam@webkit.org>
2644 It should be possible to create a ListHashSet with a std::initializer_list.
2645 https://bugs.webkit.org/show_bug.cgi?id=178070
2647 Reviewed by Darin Adler.
2649 * TestWebKitAPI/Tests/WTF/ListHashSet.cpp:
2650 (TestWebKitAPI::TEST):
2651 Add a test for using std::initializer_list with ListHashSet.
2653 2017-10-08 Sam Weinig <sam@webkit.org>
2655 There should be a version of copyToVector that returns a Vector, rather than using an out parameter
2656 https://bugs.webkit.org/show_bug.cgi?id=177732
2658 Reviewed by Saam Barati.
2660 * TestWebKitAPI/Tests/WTF/Vector.cpp:
2661 (TestWebKitAPI::TEST):
2662 Add tests for the new copyToVector and copyToVectorOf functions.
2664 2017-10-08 Darin Adler <darin@apple.com>
2666 Fix bugs related to setting reflected floating point DOM attributes
2667 https://bugs.webkit.org/show_bug.cgi?id=178061
2669 Reviewed by Sam Weinig.
2671 * TestWebKitAPI/Tests/WTF/AtomicString.cpp: Added a test of the
2672 AtomicString::number function, based on the test cases we already
2673 had for String::numberToStringECMAScript, and with some additional
2674 cases with powers of 10 that check handling of trailng zeroes.
2676 * TestWebKitAPI/Tests/WTF/WTFString.cpp: Added test cases to the
2677 existing tests of the String::numberToStringECMAScript function
2678 as above. Also added tests for String::number and for
2679 String::numberToStringFixedWidth. Also changed the tests to all use
2680 EXPECT instead of ASSERT macros since these are all non-fatal.
2682 * WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:
2683 (WTR::dumpFrameScrollPosition): Use StringBuilder::appendECMAScriptNumber
2684 instead of String::number.
2686 2017-10-08 Dean Jackson <dino@apple.com>
2688 Make sort-Xcode-project file handle UnifiedSources
2689 https://bugs.webkit.org/show_bug.cgi?id=178042
2691 Reviewed by Sam Weinig.
2693 Sort the UnifiedSource(\d+) files by number rather
2694 than alphabetically.
2696 * Scripts/sort-Xcode-project-file:
2697 (sortChildrenByFileName):
2698 (sortFilesByFileName):
2700 2017-09-29 Filip Pizlo <fpizlo@apple.com>
2702 Enable gigacage on iOS
2703 https://bugs.webkit.org/show_bug.cgi?id=177586
2705 Reviewed by JF Bastien.
2707 Add a mode to test disabling Gigacage.
2709 * Scripts/run-jsc-stress-tests:
2710 * Scripts/webkitruby/jsc-stress-test-writer-default.rb:
2712 2017-10-06 Aishwarya Nirmal <anirmal@apple.com>
2714 [iOS] Respect the "caret-color" CSS property when editing
2715 https://bugs.webkit.org/show_bug.cgi?id=177489
2716 <rdar://problem/34600419>
2718 Reviewed by Tim Horton.
2720 Adds test for iOS caret color support.
2722 * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
2723 (TestWebKitAPI::TEST):
2724 * TestWebKitAPI/ios/UIKitSPI.h:
2726 2017-10-06 Alex Christensen <achristensen@webkit.org>
2728 Add more infrastructure to apply custom header fields to same-origin requests
2729 https://bugs.webkit.org/show_bug.cgi?id=177629
2731 Reviewed by Ryosuke Niwa.
2733 * TestWebKitAPI/Tests/WebCore/HTTPHeaderField.cpp:
2734 (canonicalizeHTTPHeader):
2735 (shouldRemainUnchanged):
2738 * TestWebKitAPI/Tests/WebKitCocoa/WebsitePolicies.mm:
2741 (-[CustomHeaderFieldsDelegate _webView:decidePolicyForNavigationAction:decisionHandler:]):
2742 (-[CustomHeaderFieldsDelegate webView:startURLSchemeTask:]):
2743 (-[CustomHeaderFieldsDelegate webView:stopURLSchemeTask:]):
2745 Test main resource requests, subresource requests, and cross-origin requests.
2747 2017-10-06 Wenson Hsieh <wenson_hsieh@apple.com>
2749 [iOS] Tweak support for classifying form controls (followup to r222487)
2750 https://bugs.webkit.org/show_bug.cgi?id=177917
2751 <rdar://problem/34820122>
2753 Reviewed by Dean Jackson.
2755 Minor cleanup around autofill API tests added in r222487. Additionally, augments some of these API tests to
2756 verify that after blurring the focused element, the content view no longer accepts autofill credentials (see
2757 WebKit ChangeLog for more details). Also augments tests to verify that the URL in the autofill context matches
2760 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm:
2762 Remove the USE(APPLE_INTERNAL_SDK) guard for these API tests.
2764 (newUIKeyboardLoginCredentialsSuggestion):
2766 Add a stub implementation of UIKeyboardLoginCredentialsSuggestion. This allows
2767 [UIKeyboardLoginCredentialsSuggestion new] to return a nonnull object, which allows these API tests to verify
2768 that the credential filling codepath works as intended without any additional UIKit changes. Currently, tests
2769 for the value of username and password fields are passing even though the fields are not being populated because
2770 the expected string values are null, and the observed value is an empty string. We instead check the literal
2771 string values here instead of credentialSuggestion's properties, so that tests verifying the behavior of
2772 -insertTextSuggestion: will require username and password inputs to be populated.
2774 (-[TestInputDelegate _webView:focusShouldStartInputSession:]):
2775 (-[AutofillTestView initWithFrame:]):
2776 (-[AutofillTestView _autofillInputView]):
2777 (-[AutofillTestView textInputHasAutofillContext]):
2778 (TestWebKitAPI::TEST):
2780 Add an additional API test to verify that programmatic focus without user interaction (and also without testing
2781 overrides) does not activate autofill.
2783 (createUIKeyboardLoginCredentialsSuggestion): Deleted.
2784 (-[WKWebView _privateTextInput]): Deleted.
2785 * TestWebKitAPI/ios/UIKitSPI.h:
2787 Minor gardening to remove iOS version >= 11 guards that are now unnecessary. Additionally, add some more private
2788 header imports (with corresponding interface definitions for building and running with the public SDK).
2790 2017-10-06 Antti Koivisto <antti@apple.com>
2792 Minor WeakPtr improvements
2793 https://bugs.webkit.org/show_bug.cgi?id=177958
2795 Reviewed by Sam Weinig.
2797 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
2798 (TestWebKitAPI::TEST):
2799 (TestWebKitAPI::Base::createWeakPtr): Deleted.
2801 2017-10-06 Carlos Garcia Campos <cgarcia@igalia.com>
2803 Unreviewed. Fix parsing of GTK unit tests output in bot configuration.
2805 * BuildSlaveSupport/build.webkit.org-config/master.cfg:
2806 (RunGtkAPITests.commandComplete): Remove trailing ':' from the regular expression.
2808 2017-10-06 Charles Turner <cturner@igalia.com>
2810 Disable bmalloc when running Valgrind
2811 https://bugs.webkit.org/show_bug.cgi?id=177923
2813 Reviewed by Carlos Alberto Lopez Perez.
2815 * Scripts/webkitpy/port/gtk.py:
2816 (GtkPort.setup_environ_for_server):
2818 2017-10-06 Zan Dobersek <zdobersek@igalia.com>
2820 Implement TestController::platformContext() for WPE, returning the
2821 m_context pointer as the GTK+ port does. This fixes the crashes on
2824 Rubber-stamped by Carlos Garcia Campos.
2826 * WebKitTestRunner/wpe/TestControllerWPE.cpp:
2827 (WTR::TestController::platformContext):
2829 2017-10-05 Carlos Garcia Campos <cgarcia@igalia.com>
2831 [GTK][WPE] Add API to configure and enable resource load statistics
2832 https://bugs.webkit.org/show_bug.cgi?id=177943
2834 Reviewed by Michael Catanzaro.
2836 Add a command line option to enable intelligent tracking prevention to MiniBrowser and tests cases to check the
2839 * MiniBrowser/gtk/main.c:
2841 * TestWebKitAPI/Tests/WebKitGLib/TestWebsiteData.cpp:
2843 (testWebsiteDataConfiguration):
2844 (testWebsiteDataEphemeral):
2845 (testWebsiteDataResourceLoadStats):
2847 * TestWebKitAPI/glib/WebKitGLib/TestMain.h:
2849 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.cpp:
2850 (directoryChangedCallback):
2851 (WebViewTest::waitUntilFileExists):
2852 * TestWebKitAPI/glib/WebKitGLib/WebViewTest.h:
2854 2017-10-05 Carlos Garcia Campos <cgarcia@igalia.com>
2856 [GTK][WPE] All resource load statistics tests added in r212183 crash in GTK bots, timeout in GTK and WPE bots since r219049
2857 https://bugs.webkit.org/show_bug.cgi?id=168171
2859 Reviewed by Chris Dumez.
2861 Implement all resource load statistics functions in TestController using the C API. Also enable the FileMonitor
2862 unit test. This test requires a platform implementation of Util::run(), so I've added UtilitiesGLib.cpp with an
2863 iplementation common to glib based ports using WTF RunLoop abstraction.
2865 * TestWebKitAPI/PlatformGTK.cmake:
2866 * TestWebKitAPI/PlatformWPE.cmake:
2867 * TestWebKitAPI/Tests/WebCore/FileMonitor.cpp:
2868 * TestWebKitAPI/glib/UtilitiesGLib.cpp: Copied from Source/WebKit/UIProcess/API/C/WKWebsiteDataStoreRef.h.
2869 (TestWebKitAPI::Util::run):
2870 (TestWebKitAPI::Util::spinRunLoop):
2871 (TestWebKitAPI::Util::sleep):
2872 * TestWebKitAPI/gtk/PlatformUtilitiesGtk.cpp:
2873 * TestWebKitAPI/wpe/PlatformUtilitiesWPE.cpp:
2874 * WebKitTestRunner/TestController.cpp:
2875 (WTR::TestController::platformAdjustContext):
2876 (WTR::TestController::setStatisticsLastSeen):
2877 (WTR::TestController::setStatisticsPrevalentResource):
2878 (WTR::ResourceStatisticsCallbackContext::ResourceStatisticsCallbackContext):
2879 (WTR::resourceStatisticsCallback):
2880 (WTR::TestController::isStatisticsPrevalentResource):
2881 (WTR::TestController::setStatisticsHasHadUserInteraction):
2882 (WTR::TestController::isStatisticsHasHadUserInteraction):
2883 (WTR::TestController::setStatisticsGrandfathered):
2884 (WTR::TestController::isStatisticsGrandfathered):
2885 (WTR::TestController::setStatisticsSubframeUnderTopFrameOrigin):
2886 (WTR::TestController::setStatisticsSubresourceUnderTopFrameOrigin):
2887 (WTR::TestController::setStatisticsSubresourceUniqueRedirectTo):
2888 (WTR::TestController::setStatisticsTimeToLiveUserInteraction):
2889 (WTR::TestController::setStatisticsTimeToLiveCookiePartitionFree):
2890 (WTR::TestController::statisticsProcessStatisticsAndDataRecords):
2891 (WTR::TestController::statisticsUpdateCookiePartitioning):
2892 (WTR::TestController::statisticsSetShouldPartitionCookiesForHost):
2893 (WTR::TestController::statisticsSubmitTelemetry):
2894 (WTR::TestController::setStatisticsNotifyPagesWhenDataRecordsWereScanned):
2895 (WTR::TestController::setStatisticsShouldClassifyResourcesBeforeDataRecordsRemoval):
2896 (WTR::TestController::setStatisticsNotifyPagesWhenTelemetryWasCaptured):
2897 (WTR::TestController::setStatisticsMinimumTimeBetweenDataRecordsRemoval):
2898 (WTR::TestController::setStatisticsGrandfatheringTime):
2899 (WTR::TestController::setStatisticsMaxStatisticsEntries):
2900 (WTR::TestController::setStatisticsPruneEntriesDownTo):
2901 (WTR::TestController::statisticsClearInMemoryAndPersistentStore):
2902 (WTR::TestController::statisticsClearInMemoryAndPersistentStoreModifiedSinceHours):
2903 (WTR::TestController::statisticsClearThroughWebsiteDataRemovalCallback):
2904 (WTR::TestController::statisticsClearThroughWebsiteDataRemoval):
2905 (WTR::TestController::statisticsResetToConsistentState):
2906 * WebKitTestRunner/TestController.h:
2908 2017-10-05 Jer Noble <jer.noble@apple.com>
2910 [Cocoa] Enable ENABLE_ENCRYPTED_MEDIA build-time setting
2911 https://bugs.webkit.org/show_bug.cgi?id=177261
2913 Reviewed by Eric Carlson.
2915 * TestWebKitAPI/Configurations/FeatureDefines.xcconfig:
2917 2017-10-05 Alex Christensen <achristensen@webkit.org>
2919 Add ObjC equivalent of WKPageNavigationClient.didChangeBackForwardList
2920 https://bugs.webkit.org/show_bug.cgi?id=177966
2921 <rdar://problem/22387135>
2923 Reviewed by Tim Horton.
2925 * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
2926 (-[ListItemDelegate _webView:backForwardListItemAdded:removed:]):
2927 (-[ListItemDelegate webView:didFinishNavigation:]):
2930 2017-10-04 Megan Gardner <megan_gardner@apple.com>
2932 check-webkit-style erroneously requires a space between the carrot and brace in obj-c blocks.
2933 https://bugs.webkit.org/show_bug.cgi?id=177897
2935 Reviewed by Dan Bernstein and Jonathan Bedard.
2937 Remove the check for a space between ^ and {,
2938 as this is valid and expected Obj-C. Now check to make sure there is
2939 no space at all between ^ and {, and also that there is a space between
2940 the end of an argument list and the {.
2942 * Scripts/webkitpy/style/checkers/cpp.py:
2943 (regex_for_lambdas_and_blocks):
2945 2017-10-05 Carlos Garcia Campos <cgarcia@igalia.com>
2947 Unreviewed. Run WebKit2 C API tests in GTK+ bots again after the last WebKit2 -> WebKit rename.
2949 * Scripts/run-gtk-tests:
2951 (TestRunner._run_test):
2953 2017-10-05 Darin Adler <darin@apple.com>
2955 Remove additional WebKitSystemInterface remnants
2956 https://bugs.webkit.org/show_bug.cgi?id=177948
2958 Reviewed by Andy Estes.
2960 * DumpRenderTree/PlatformMac.cmake: Removed code to link the
2961 WebKitSystemInterface library. Left in code that points to
2962 the WebKitLibraries directory, but maybe that can be removed by
2963 someone who is more certain it's no longer needed.
2965 * Scripts/copy-webkitlibraries-to-product-directory: Removed code
2966 to copy and delete WebKitSystemInterface libraries and headers.
2968 * WebKitTestRunner/PlatformMac.cmake: Removed code to link the
2969 WebKitSystemInterface library. Left in code that points to
2970 the WebKitLibraries directory, but maybe that can be removed by
2971 someone who is more certain it's no longer needed.
2973 2017-10-05 Saam Barati <sbarati@apple.com>
2975 Unreviewed. Try to make debug type profiler tests stop timing out.
2977 * Scripts/run-jsc-stress-tests:
2979 2017-10-03 Frederic Wang <fwang@igalia.com>
2981 Remove Brotli from Source/ThirdParty
2982 https://bugs.webkit.org/show_bug.cgi?id=177804
2984 Reviewed by Michael Catanzaro.
2986 * gtk/jhbuild.modules: Build brotli 1.0.1 from the official github repository.
2987 * Scripts/webkitpy/style/checker.py: Remove brotli.
2989 2017-10-04 Alex Christensen <achristensen@webkit.org>
2991 Stop linking with WebKitSystemInterface
2992 https://bugs.webkit.org/show_bug.cgi?id=177915
2994 Reviewed by Antti Koivisto.
2996 * DumpRenderTree/mac/Configurations/Base.xcconfig:
2997 * DumpRenderTree/mac/Configurations/DebugRelease.xcconfig:
2998 * DumpRenderTree/mac/Configurations/DumpRenderTree.xcconfig:
2999 * DumpRenderTree/mac/Configurations/DumpRenderTreeApp.xcconfig:
3000 * WebKitTestRunner/Configurations/Base.xcconfig:
3001 * WebKitTestRunner/Configurations/DebugRelease.xcconfig:
3002 * WebKitTestRunner/Configurations/InjectedBundle.xcconfig:
3003 * WebKitTestRunner/Configurations/WebKitTestRunner.xcconfig:
3004 * WebKitTestRunner/Configurations/WebKitTestRunnerApp.xcconfig:
3006 2017-10-04 Alex Christensen <achristensen@webkit.org>
3008 Remove unnecessary includes of WebKitSystemInterface on Cocoa platforms
3009 https://bugs.webkit.org/show_bug.cgi?id=177912
3011 Reviewed by Saam Barati.
3013 * DumpRenderTree/mac/DumpRenderTree.mm:
3015 2017-10-04 Megan Gardner <megan_gardner@apple.com>
3017 Break out new touch debugging code into seperate file
3018 https://bugs.webkit.org/show_bug.cgi?id=177796
3020 Reviewed by Simon Fraser.
3022 Encapsulate the new debug touch code into it's own file.
3023 This allows for cleaner code and a better way to show the touches
3024 in a completely separate window, which should also be in screen
3025 coordinates, and not subject to any transforms that get put on the
3028 * TestRunnerShared/spi/UIKitTestSPI.h:
3029 * WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3030 * WebKitTestRunner/ios/HIDDebugTouchWindow.h: Added.
3031 * WebKitTestRunner/ios/HIDDebugTouchWindow.mm: Added.
3032 (+[HIDDebugTouchWindow sharedHIDDebugTouchWindow]):
3033 (-[HIDDebugTouchWindow init]):
3034 (-[HIDDebugTouchWindow dealloc]):
3035 (-[HIDDebugTouchWindow updateDebugIndicatorForTouch:withPointInWindowCoordinates:isTouching:]):
3036 (-[HIDDebugTouchWindow initDebugViewsIfNeeded]):
3037 * WebKitTestRunner/ios/HIDEventGenerator.h:
3038 * WebKitTestRunner/ios/HIDEventGenerator.mm:
3039 (-[HIDEventGenerator init]):
3040 (-[HIDEventGenerator _createIOHIDEventWithInfo:]):
3041 (-[HIDEventGenerator _createIOHIDEventType:]):
3042 (-[HIDEventGenerator _updateTouchPoints:count:]):
3043 (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
3044 (-[HIDEventGenerator touchDown:touchCount:]):
3045 (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
3046 (-[HIDEventGenerator liftUp:touchCount:]):
3047 (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
3048 (-[HIDEventGenerator initDebugViewsIfNeeded]): Deleted.
3049 (-[HIDEventGenerator updateDebugIndicatorForTouch:withPoint:isTouching:]): Deleted.
3050 * WebKitTestRunner/ios/TestControllerIOS.mm:
3051 (WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
3053 2017-10-04 JF Bastien <jfbastien@apple.com>
3055 WTF: Update std::expected to match current proposal
3056 https://bugs.webkit.org/show_bug.cgi?id=177881
3058 Reviewed by Mark Lam.
3060 The proposal is likely to be in C++20 and I've been asked to help co-champion
3061 it. I'm therefore updating our implementation to more closely match the current
3062 proposal, and to make sure it'll work for us if standardized.
3064 - Rename UnexpectedType to Unexpected to match the proposal.
3065 - Remove relational operators, only equality / inequality remains.
3066 - Fix minor type signatures.
3067 - Add UnexpectedType typedef.
3068 - Uncomment rebind implementation.
3069 - Add in-place construction tag, as well as explicit error construction tag.
3070 - Add template unexpected constructor.
3071 - Note that make_unexpected isn't in the proposal anymore, but we keep it because we don't have C++17 deduction guides.
3072 - Remove hashing, which isn't in the proposal anymore.
3074 * TestWebKitAPI/Tests/WTF/Expected.cpp:
3076 (TestWebKitAPI::TEST):
3078 2017-10-04 Lucas Forschler <lforschler@apple.com>
3080 https://bugs.webkit.org/show_bug.cgi?id=177888
3081 WebKitArchiveSupport - add API Gateway to source control
3082 This is a swagger configuration export via AWS API Gateway console.
3084 Rubber-stamped by Alexey Proskuryakov.
3086 * WebKitArchiveSupport/AWS-APIGateway: Added.
3087 * WebKitArchiveSupport/AWS-APIGateway/stage-v2.json: Added.
3089 2017-10-04 Mark Lam <mark.lam@apple.com>
3091 Add support for using Probe DFG OSR Exit behind a runtime flag.
3092 https://bugs.webkit.org/show_bug.cgi?id=177844
3093 <rdar://problem/34801425>
3095 Reviewed by Saam Barati.
3097 Enable --useProbeOSrExit=true for dfg-eager and ftl-no-cjit-validate-sampling-profiler
3098 test configurations.
3100 * Scripts/run-jsc-stress-tests:
3102 2017-10-04 Jonathan Bedard <jbedard@apple.com>
3104 webkitpy.tool.steps.steps_unittest.StepsTest.test_runtests_api is flakey
3105 https://bugs.webkit.org/show_bug.cgi?id=177751
3106 <rdar://problem/34769470>
3108 Reviewed by Daniel Bates.
3110 Port._build_path() calls Tools/Scripts/webkit-build-directory and caches this
3111 result. When capturing output from the MockExecutive, the first invocation of
3112 Port._build_path() will log the running of Tools/Scripts/webkit-build-directory
3113 but subsequent invocations will not.
3115 * Scripts/webkitpy/tool/steps/steps_unittest.py:
3117 (StepsTest.setUp): Cache the build path before running tests.
3119 2017-10-04 Carlos Alberto Lopez Perez <clopez@igalia.com>
3121 [JHBuild][GTK][WKE] Circular dependency between harfbuzz and freetype6
3122 https://bugs.webkit.org/show_bug.cgi?id=177865
3124 Reviewed by Michael Catanzaro.
3126 Build freetype6 without harfbuzz support.
3127 This seems to be what distros like Fedora, Debian or OpenEmbedded do.
3128 Also explicitly enable support for freetype and fontconfig on harfbuzz.
3130 * gtk/jhbuild.modules: Enable also support for icu.
3131 * wpe/jhbuild.modules:
3133 2017-10-04 Yusuke Suzuki <utatane.tea@gmail.com>
3135 [Test262] Update Test262 to Oct 4 version
3136 https://bugs.webkit.org/show_bug.cgi?id=177859
3138 Reviewed by Sam Weinig.
3140 * Scripts/import-test262-tests:
3142 2017-10-04 Ryosuke Niwa <rniwa@webkit.org>
3144 Use blob URL when pasting RTFD instead of overriding DocumentLoader
3145 https://bugs.webkit.org/show_bug.cgi?id=177801
3146 <rdar://problem/34542270>
3148 Reviewed by Wenson Hsieh.
3150 Added a regression test for an assertion failure when pasting an empty RTFD as well as a test for pasting
3151 RTFD with an image, which should result in an image element with a blob URL.
3153 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3154 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm:
3155 * TestWebKitAPI/Tests/WebKitCocoa/PasteRTFD.mm:
3156 * TestWebKitAPI/Tests/WebKitCocoa/paste-rtfd.html:
3158 2017-10-03 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
3160 [GLib] Let WebCore know of low power situations
3161 https://bugs.webkit.org/show_bug.cgi?id=177810
3163 Reviewed by Carlos Garcia Campos.
3165 * gtk/install-dependencies: add upower-glib dev packages for Debian, Arch and Fedora.
3167 2017-10-03 Saam Barati <sbarati@apple.com>
3169 Implement polymorphic prototypes
3170 https://bugs.webkit.org/show_bug.cgi?id=176391
3172 Reviewed by Filip Pizlo.
3174 * Scripts/run-jsc-stress-tests:
3176 2017-10-03 Myles C. Maxfield <mmaxfield@apple.com>
3178 Create a SPIR-V assembler
3179 https://bugs.webkit.org/show_bug.cgi?id=177726
3181 Reviewed by Filip Pizlo.
3183 Khronos has released a json file containing every SPIR-V opcode and operand at
3184 https://github.com/KhronosGroup/SPIRV-Headers/blob/master/include/spirv/1.2/spirv.core.grammar.json
3185 This patch creates a function which loads this file (via the fetch API), parses it, and creates
3186 an object which holds two things:
3187 - For each opcode, a class which accepts the appropriate operands
3188 - For each enum type, an object which holds each enum value
3189 The constructor for each opcode is smart enough to do some basic type-checking of the argument,
3190 according to the types listed in Khronos's json file.
3192 This patch also includes an example .html file which outputs a dummy SPIR-V program,
3193 which happens to be compatible with the SPIR-V demo at
3194 https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/blob/master/demos/cube.cpp
3195 If you modify this demo to use the generated SPIR-V program, you can see the result in
3198 This patch also commits a copy of Khronos's json file mentioned above. This isn't the first
3199 Khronos file we've committed into our repository with this license, so there shouldn't be any
3202 * WebGPUShadingLanguageRI/SPIR-V.js: Added.
3205 (SPIRVAssembler.prototype.append):
3206 (SPIRVAssembler.prototype.get size):
3207 (SPIRVAssembler.prototype.get storage):
3208 (SPIRVAssembler.prototype.get result):
3209 * WebGPUShadingLanguageRI/SPIRV.html: Added.
3210 * WebGPUShadingLanguageRI/spirv.core.grammar.json: Added.
3212 2017-10-03 Chris Dumez <cdumez@apple.com>
3214 SharedStringHashStore should support removing hashes
3215 https://bugs.webkit.org/show_bug.cgi?id=177770
3217 Reviewed by Alex Christensen.
3219 Add API test coverage.
3221 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3222 * TestWebKitAPI/Tests/WebKitCocoa/VisitedLinkStore.mm: Added.
3223 (TestWebKitAPI::TEST):
3225 2017-10-03 Dewei Zhu <dewei_zhu@apple.com>
3227 Fix missing import for BenchmarkRunner.
3228 https://bugs.webkit.org/show_bug.cgi?id=177842
3230 Reviewed by Ryosuke Niwa.
3232 'show_results' requires BenchmarkRunner.
3234 * Scripts/webkitpy/benchmark_runner/run_benchmark.py:
3236 2017-10-03 Olivier Blin <olivier.blin@softathome.com>
3238 [WPE] Bump deps to add support for xdg-shell-unstable-v6 protocol
3239 https://bugs.webkit.org/show_bug.cgi?id=177820
3241 Reviewed by Žan Doberšek.
3243 gnome-shell does not advertize the xdg-shell protocol anymore, but xdg-shell-unstable-v6 instead.
3244 Support has been added in WPEBackend-mesa, we need to update the requirements.
3245 wayland-1.10 is needed for wl_proxy_get_version(), used in the generated headers.
3247 * wpe/jhbuild.modules:
3249 2017-10-03 Alex Christensen <achristensen@webkit.org>
3251 Add ObjC SPI equivalent to WKPageLoaderClient.willGoToBackForwardListItem
3252 https://bugs.webkit.org/show_bug.cgi?id=177825
3253 <rdar://problem/22387505>
3255 Reviewed by Tim Horton.
3257 * TestWebKitAPI/Tests/WebKitCocoa/Navigation.mm:
3258 (-[BackForwardDelegate _webView:willGoToBackForwardListItem:inPageCache:]):
3259 (-[BackForwardDelegate webView:didFinishNavigation:]):
3262 2017-10-03 Antti Koivisto <antti@apple.com>
3264 Allow assigning WeakPtr<Derived> to WeakPtr<Base>
3265 https://bugs.webkit.org/show_bug.cgi?id=177817
3267 Reviewed by Geoff Garen.
3269 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
3270 (TestWebKitAPI::Base::weakPtrFactory):
3271 (TestWebKitAPI::TEST):
3273 2017-10-03 Youenn Fablet <youenn@apple.com>
3275 Remove no longer needed WebRTC build infrastructure
3276 https://bugs.webkit.org/show_bug.cgi?id=177756
3278 Reviewed by Alejandro G. Castro.
3280 * Scripts/generate-libwebrtc-cmake: Removed.
3281 * Scripts/webkitpy/libwebrtc/__init__.py: Removed.
3282 * Scripts/webkitpy/libwebrtc/generate_cmake.py: Removed.
3284 2017-10-03 Joanmarie Diggs <jdiggs@igalia.com>
3286 AX: [ATK] ARIA drag-and-drop attribute values should be exposed via AtkObject attributes
3287 https://bugs.webkit.org/show_bug.cgi?id=177763
3289 Reviewed by Chris Fleizach.
3291 Implement ariaIsGrabbed() and ariaDropEffects() for ATK.
3293 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3294 (WTR::AccessibilityUIElement::ariaIsGrabbed const):
3295 (WTR::AccessibilityUIElement::ariaDropEffects const):
3297 2017-10-02 Myles C. Maxfield <mmaxfield@apple.com>
3299 Make WSL demo compatible with Microsoft Edge
3300 https://bugs.webkit.org/show_bug.cgi?id=177643
3302 Reviewed by Saam Barati.
3304 This patch does two things. The first is it migrates a loop over ParentNode.children to a legacy style loop
3305 because Microsoft Edge throws an exception when trying to use a for...of loop with it. This patch also hides
3306 the compilation behind a setTimeout(0) so there is some indication that something is happening during a
3310 * Tools/WebGPUShadingLanguageRI/index.html:
3312 2017-10-02 Joanmarie Diggs <jdiggs@igalia.com>
3314 AX: [ATK] The value of aria-level is not exposed on non-heading roles
3315 https://bugs.webkit.org/show_bug.cgi?id=177775
3317 Reviewed by Chris Fleizach.
3319 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
3320 (WTR::AccessibilityUIElement::hierarchicalLevel const):
3322 2017-10-02 Geoffrey Garen <ggaren@apple.com>
3324 WeakPtr should have a move constructor
3325 https://bugs.webkit.org/show_bug.cgi?id=177789
3327 Reviewed by Chris Dumez.
3329 Chris made me write an API test. It wasn't that painful.
3331 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
3332 (TestWebKitAPI::TEST):
3334 2017-10-02 Filip Pizlo <fpizlo@apple.com>
3337 https://bugs.webkit.org/show_bug.cgi?id=177705
3339 Rubber stamped by Keith Miller.
3341 When I first wrote the prototype, I thought it would be cool to use ^ for pointers. Nobody agrees. I've
3342 gotten so much feedback to use *. This changes pointers to use *.
3344 * WebGPUShadingLanguageRI/DereferenceExpression.js:
3345 (DereferenceExpression.prototype.toString):
3346 (DereferenceExpression):
3347 * WebGPUShadingLanguageRI/Intrinsics.js:
3349 * WebGPUShadingLanguageRI/Parse.js:
3351 (parsePossiblePrefix):
3352 * WebGPUShadingLanguageRI/PtrType.js:
3353 (PtrType.prototype.toString):
3355 * WebGPUShadingLanguageRI/StandardLibrary.js:
3356 * WebGPUShadingLanguageRI/Test.js:
3357 (tests.simpleDereference):
3358 (tests.dereferenceStore):
3359 (tests.simpleMakePtr):
3363 (tests.dereferenceDefaultNull):
3364 (tests.defaultInitializedNull):
3365 (tests.passNullToPtrMonomorphic):
3366 (tests.passNullToPtrPolymorphic):
3367 (tests.passNullAndNotNull):
3368 (tests.passNullAndNotNullFullPoly):
3369 (tests.passNullAndNotNullFullPolyReverse):
3370 (tests.chainGeneric):
3371 (tests.chainStruct):
3372 (tests.chainStructNewlyValid):
3373 (tests.chainStructDevice):
3374 (tests.paramChainStructDevice):
3375 (tests.simpleProtocolExtends):
3376 (tests.protocolExtendsTwo):
3377 (tests.overrideSubscriptStruct):
3378 (tests.overrideSubscriptStructAndDoStores):
3379 (tests.overrideSubscriptStructAndUsePointers):
3380 (tests.overrideSubscriptStructAndUsePointersIncorrectly):
3381 (tests.makeArrayRefFromPointer):
3382 (tests.nonArrayRefArrayLengthFail):
3383 (tests.constexprIsNotLValuePtr):
3384 (tests.genericAccessors):
3385 (tests.nestedSubscriptLValueEmulationSimple):
3386 (tests.nestedSubscriptLValueEmulationGeneric):
3387 (tests.shaderTypes):
3388 (tests.enumPtrBase):
3389 (tests.mutuallyRecursiveStructWithPointersBroken):
3390 (tests.mutuallyRecursiveStructWithPointers):
3392 (tests.pointerToPointer):
3393 (tests.pointerGetter):
3394 (tests.operatorCastWithTypeVariableInferredFromReturnType):
3395 (tests.loneSetterPointer):
3396 (tests.anderWithNothingWrong):
3397 (tests.anderWithWrongNumberOfArguments):
3398 (tests.anderDoesntReturnPointer):
3399 (tests.anderDoesntTakeReference):
3400 (tests.anderWithArrayRef):
3401 (tests.pointerIndexGetter):
3402 (tests.loneIndexSetterPointer):
3403 (tests.indexAnderWithNothingWrong):
3404 (tests.indexAnderWithWrongNumberOfArguments):
3405 (tests.indexAnderDoesntReturnPointer):
3406 (tests.indexAnderDoesntTakeReference):
3407 (tests.indexAnderWithArrayRef):
3408 (tests.devicePtrPtr):
3409 (tests.threadgroupPtrPtr):
3410 (tests.constantPtrPtr):
3411 (tests.pointerIndexGetterInProtocol):
3412 (tests.loneIndexSetterPointerInProtocol):
3413 (tests.indexAnderWithNothingWrongInProtocol):
3414 (tests.indexAnderWithWrongNumberOfArgumentsInProtocol):
3415 (tests.indexAnderDoesntReturnPointerInProtocol):
3416 (tests.indexAnderDoesntTakeReferenceInProtocol):
3417 (tests.indexAnderWithArrayRefInProtocol):
3418 (tests.andReturnedArrayRef):
3420 2017-10-02 Filip Pizlo <fpizlo@apple.com>
3422 WSL should be fine with &foo()[i] if foo() returns a []
3423 https://bugs.webkit.org/show_bug.cgi?id=177704
3425 Reviewed by Saam Barati.
3427 Previously, we'd determine if a property access expression (base.field or base[index]) was an lvalue by
3428 asking if its base was an lvalue. This is right in all cases except if the base is of type []. Then, the
3429 property access expression is an lvalue so long as there is a setter or ander.
3431 This fixes the issue and adds a test.
3433 Also, this makes error messages in the case that something is not an lvalue a lot better. If something
3434 is not an lvalue because we could not find anders or setters, then we will tell you why we could not
3437 * WebGPUShadingLanguageRI/Checker.js:
3438 (Checker.prototype.visitAssignment):
3439 (Checker.prototype.visitReadModifyWriteExpression):
3440 (Checker.prototype.visitMakePtrExpression):
3441 (Checker.prototype._finishVisitingPropertyAccess):
3442 * WebGPUShadingLanguageRI/DotExpression.js:
3443 (DotExpression.prototype.get fieldName):
3444 (DotExpression.prototype.get isLValue): Deleted.
3445 (DotExpression.prototype.get addressSpace): Deleted.
3446 * WebGPUShadingLanguageRI/IndexExpression.js:
3447 (IndexExpression.prototype.get index):
3448 (IndexExpression.prototype.get isLValue): Deleted.
3449 (IndexExpression.prototype.get addressSpace): Deleted.
3450 * WebGPUShadingLanguageRI/PropertyAccessExpression.js:
3451 (PropertyAccessExpression):
3452 (PropertyAccessExpression.prototype.get isLValue):
3453 (PropertyAccessExpression.prototype.set isLValue):
3454 * WebGPUShadingLanguageRI/PropertyResolver.js:
3455 (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder.prototype.visitMakeArrayRefExpression):
3456 (PropertyResolver.prototype._visitRValuesWithinLValue.RValueFinder):
3457 (PropertyResolver.prototype._visitRValuesWithinLValue):
3458 * WebGPUShadingLanguageRI/Test.js:
3459 (tests.storeNullArrayRef):
3460 (tests.andReturnedArrayRef):
3462 2017-10-02 Wenson Hsieh <wenson_hsieh@apple.com>
3464 Guard iOS webkitGetAsEntry API tests on older iOS versions
3466 Unreviewed test gardening. After r222688, these tests require custom pasteboard data to be enabled by default,
3467 so don't run them against shipping iOS.
3469 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3471 2017-10-02 Carlos Garcia Campos <cgarcia@igalia.com>
3473 [WPE][GTK] Crash in webkit_web_resource_get_data_finish()
3474 https://bugs.webkit.org/show_bug.cgi?id=177107
3476 Reviewed by Michael Catanzaro.
3478 Add a test case to check we handle errors when webkit_web_resource_get_data() fails.
3480 * TestWebKitAPI/Tests/WebKitGLib/TestResources.cpp:
3481 (webViewloadChanged):
3482 (testWebResourceGetDataError):
3485 2017-10-02 Alex Christensen <achristensen@webkit.org>
3487 Fix build after r222715
3488 https://bugs.webkit.org/show_bug.cgi?id=177697
3490 * TestWebKitAPI/Tests/WebKitCocoa/UIDelegate.mm:
3492 Use the public API instead of the removed SPI.
3494 2017-10-02 Alex Christensen <achristensen@webkit.org>
3496 REGRESSION(r214201): WebProcess hangs during policy decisions
3497 https://bugs.webkit.org/show_bug.cgi?id=177590
3498 <rdar://problem/33362929>
3500 Reviewed by Andy Estes.
3502 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3503 * TestWebKitAPI/Tests/WebKitCocoa/JavaScriptDuringNavigation.mm: Added.
3504 (-[JSNavigationDelegate webView:didFinishNavigation:]):
3505 (-[JSNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
3506 (-[JSNavigationDelegate webView:decidePolicyForNavigationResponse:decisionHandler:]):
3507 (-[JSNavigationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3510 2017-10-02 Jonathan Bedard <jbedard@apple.com>
3512 Log stack-trace for run-webkit-tests when interrupted
3513 https://bugs.webkit.org/show_bug.cgi?id=176393
3514 <rdar://problem/34262310>
3516 Reviewed by Darin Adler.
3518 When run-webkit-tests is stuck, it is difficult to immediately tell
3519 why. Saving a stack-trace when run-webkit-tests is terminated
3520 or stopped with CNTRL-C will make such issues easier to debug.
3522 * Scripts/webkitpy/common/interupt_debugging.py: Added.
3523 (log_stack_trace): Given a Python frame object, log a stack trace to
3525 (log_stack_trace_on_term): Attach a listener to SIGTERM so that a
3526 stack-trace can be logged when a program is terminated.
3527 (log_stack_trace_on_cntrl_c): Attach a listener to SIGINT so that a
3528 stack-trace can be logged when a program is CNTRL-Ced.
3529 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3530 (main): Set handlers to log stack trace on interruption.
3532 2017-10-02 Michael Catanzaro <mcatanzaro@igalia.com>
3534 Remove ENABLE_CSS_REGIONS
3535 https://bugs.webkit.org/show_bug.cgi?id=177689
3537 Reviewed by Darin Adler.
3539 * Scripts/webkitperl/FeatureList.pm:
3541 2017-09-30 Carlos Garcia Campos <cgarcia@igalia.com>
3543 Unreviewed. Upgrade webkitgtk-test-fonts to version 0.0.7.
3545 This version upgrades liberation fonts to version 2, that has a wider glyph coverage.
3547 * gtk/jhbuild.modules:
3549 2017-09-29 Alex Christensen <achristensen@webkit.org>
3551 Expose WebPreferences::webGLEnabled through WKPreferences
3552 https://bugs.webkit.org/show_bug.cgi?id=177692
3553 <rdar://problem/24110556>
3555 Reviewed by Andy Estes.
3557 * TestWebKitAPI/Tests/WebKitCocoa/Preferences.mm:
3558 (-[AlertSaver alert]):
3559 (-[AlertSaver webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3562 2017-09-29 Alex Christensen <achristensen@webkit.org>
3564 Fix WKWebViewConfigurationPrivate after r222663
3565 https://bugs.webkit.org/show_bug.cgi?id=177644
3567 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3568 * TestWebKitAPI/Tests/WebKitCocoa/Configuration.mm: Added.
3571 2017-09-28 Ryosuke Niwa <rniwa@webkit.org>
3573 Image pasting is not working on tineye.com / gmail.com / GitHub.com due to lack of support for DataTransfer.items
3574 https://bugs.webkit.org/show_bug.cgi?id=170449
3575 <rdar://problem/31432525>
3577 Reviewed by Wenson Hsieh.
3579 Added an API test to paste an image from pasteboard. The test is shared between iOS and macOS.
3581 The tests to paste image files are only enabled on macOS since putting files into pasteboard isn't a thing on iOS.
3583 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3584 * TestWebKitAPI/Tests/WebKitCocoa/PasteImage.mm: Added.
3585 (writeImageDataToPasteboard):
3586 (writeBundleFileToPasteboard):
3587 * TestWebKitAPI/Tests/WebKitCocoa/paste-image.html: Added.
3588 * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-100px.tiff: Added.
3589 * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-200px.png: Added.
3590 * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-400px.gif: Added.
3591 * TestWebKitAPI/Tests/WebKitCocoa/sunset-in-cupertino-600px.jpg: Added.
3592 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm: Rebaselined the test now that types contain "Files".
3594 2017-09-29 Wenson Hsieh <wenson_hsieh@apple.com>
3596 [iOS WK2] Implement -[WKContentView hasText] for compatibility with the UITextInput protocol
3597 https://bugs.webkit.org/show_bug.cgi?id=177662
3598 <rdar://problem/33410373>
3600 Reviewed by Tim Horton.
3602 Add EditorState API tests to check that the value of -[WKContentView hasText] is correct when editing both plain
3603 and rich text areas.
3605 * TestWebKitAPI/EditingTestHarness.h:
3606 * TestWebKitAPI/EditingTestHarness.mm:
3607 (-[EditingTestHarness insertParagraph]):
3608 (-[EditingTestHarness insertText:]):
3609 (-[EditingTestHarness insertHTML:]):
3610 (-[EditingTestHarness selectAll]):
3611 (-[EditingTestHarness deleteBackwards]):
3612 * TestWebKitAPI/Tests/WebKitCocoa/EditorStateTests.mm:
3614 Add versions of EditingTestHarness helpers that don't require us to expect any editor state after executing the
3617 (TestWebKitAPI::checkContentViewHasTextWithFailureDescription):
3618 (TestWebKitAPI::TEST):
3619 * TestWebKitAPI/cocoa/TestWKWebView.h:
3620 * TestWebKitAPI/cocoa/TestWKWebView.mm:
3621 (-[TestWKWebView textInputContentView]):
3623 2017-09-29 Charles Turner <cturner@igalia.com>
3629 * Scripts/webkitpy/common/config/contributors.json:
3631 2017-09-28 Commit Queue <commit-queue@webkit.org>
3633 Unreviewed, rolling out r222639.
3634 https://bugs.webkit.org/show_bug.cgi?id=177630
3636 Breaks AppleWin build (Requested by dolmstead on #webkit).
3640 "[WinCairo][MiniBrowser] Add ca-bundle to display secure
3642 https://bugs.webkit.org/show_bug.cgi?id=168486
3643 http://trac.webkit.org/changeset/222639
3645 2017-09-28 Joanmarie Diggs <jdiggs@igalia.com>
3647 AX: [ATK] object:state-changed notifications missing for multiple ARIA attributes
3648 https://bugs.webkit.org/show_bug.cgi?id=177542
3650 Add platform support for the notifications. Also add support for getting the
3651 boolean argument indicating whether the state has been set or unset.
3653 Reviewed by Chris Fleizach.
3655 * WebKitTestRunner/InjectedBundle/atk/AccessibilityNotificationHandlerAtk.cpp:
3657 2017-09-28 Basuke Suzuki <Basuke.Suzuki@sony.com>
3659 [WinCairo][MiniBrowser] Add ca-bundle to display secure pages.
3660 Copy cacert.pem file into bundle directory.
3661 https://bugs.webkit.org/show_bug.cgi?id=168486
3663 Reviewed by Brent Fulgham.
3665 * MiniBrowser/win/CMakeLists.txt:
3667 2017-09-28 Lucas Forschler <lforschler@apple.com>
3669 check in AWS Lambda code used for WebKitArchiveSupport
3670 https://bugs.webkit.org/show_bug.cgi?id=177614
3672 Rubber-stamped by Alexey Proskuryakov.
3674 * WebKitArchiveSupport/lambda: Added.
3675 * WebKitArchiveSupport/lambda/delete-minified-s3-archive-from-dynamodb.py: Added.
3677 * WebKitArchiveSupport/lambda/delete-s3-archive-from-dynamodb.py: Added.
3679 * WebKitArchiveSupport/lambda/register-archive-in-dynamodb.py: Added.
3681 * WebKitArchiveSupport/lambda/register-minified-s3-archive-in-dynamodb.py: Added.
3684 2017-09-28 Jiewen Tan <jiewen_tan@apple.com>
3686 WeakPtrFactory should allow downcasting
3687 https://bugs.webkit.org/show_bug.cgi?id=177389
3688 <rdar://problem/34604174>
3690 Reviewed by Geoffrey Garen.
3692 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3693 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
3694 (TestWebKitAPI::Base::foo):
3695 (TestWebKitAPI::Base::createWeakPtr):
3696 (TestWebKitAPI::Derived::foo):
3697 (TestWebKitAPI::TEST):
3699 2017-09-28 Megan Gardner <megan_gardner@apple.com>
3701 Add debug flag to WebKitTestRunner to show where touches are being generated
3702 https://bugs.webkit.org/show_bug.cgi?id=177583
3704 Reviewed by Tim Horton and Wenson Hsieh.
3706 Add a flag, and the ability to paint a dot where the HIDEventGenerator is creating fake touches to
3707 send through UIKit. This will help in debugging touch tests, because it will be easier to see if
3708 one is actually sending the touches at the locations that they expect. This will help differentiate between
3709 problems in the locations of the touches, and other problems that can come up when writing tests.
3711 * Scripts/webkitpy/layout_tests/run_webkit_tests.py:
3713 * Scripts/webkitpy/port/driver.py:
3715 * WebKitTestRunner/Options.cpp:
3716 (WTR::Options::Options):
3717 (WTR::handleOptionShowTouches):
3718 (WTR::OptionsHandler::OptionsHandler):
3719 * WebKitTestRunner/Options.h:
3720 * WebKitTestRunner/TestController.cpp:
3721 (WTR::TestController::initialize):
3722 * WebKitTestRunner/TestController.h:
3723 (WTR::TestController::shouldShowTouches const):
3724 * WebKitTestRunner/TestOptions.h:
3725 * WebKitTestRunner/ios/HIDEventGenerator.h:
3726 * WebKitTestRunner/ios/HIDEventGenerator.mm:
3727 (-[DebugTouchView pointInside:withEvent:]):
3728 (-[HIDEventGenerator setShouldShowTouches:]):
3729 (-[HIDEventGenerator initDebugViews]):
3730 (-[HIDEventGenerator updateDebugUI:withPoint:isTouching:]):
3731 (-[HIDEventGenerator _createIOHIDEventWithInfo:]):
3732 (-[HIDEventGenerator _createIOHIDEventType:]):
3733 (-[HIDEventGenerator _updateTouchPoints:count:]):
3734 (-[HIDEventGenerator touchDownAtPoints:touchCount:]):
3735 (-[HIDEventGenerator liftUpAtPoints:touchCount:]):
3736 (-[HIDEventGenerator moveToPoints:touchCount:duration:]):
3737 (-[HIDEventGenerator markerEventReceived:]):
3738 * WebKitTestRunner/ios/TestControllerIOS.mm:
3739 (WTR::TestController::updatePlatformSpecificTestOptionsForTest const):
3740 * WebKitTestRunner/ios/mainIOS.mm:
3741 (-[WebKitTestRunnerApp _runTestController]):
3743 2017-09-28 Mark Lam <mark.lam@apple.com>
3745 [Re-landing] Turn on exception scope verification for JSC tests.
3746 https://bugs.webkit.org/show_bug.cgi?id=162351
3747 <rdar://problem/29563911>
3749 Reviewed by Saam Barati.
3751 Update: I'm re-landing this patch now that test262 exception check validation
3752 failures have been fixed in r222617. testapi still has some validation failures,
3753 but this patch does not affect testapi.
3755 Added the option to --validateExceptionChecks=true option to BASE_OPTIONS in
3756 run-jsc-stress-tests. This turns on exception scope verification on JSC test
3757 runs (which currently does not include testapi).
3759 Some stats on time to run JSC stress and mozilla tests:
3760 1. Release build w/o --validateExceptionChecks=true: real 16m22.544s, user 156m24.080s, sys 123m3.649s
3761 2. Debug build w/o --validateExceptionChecks=true: real 78m34.206s, user 1661m57.008s, sys 73m21.177s
3762 3. Debug build w/ --validateExceptionChecks=true: real 77m41.106s, user 1656m13.924s, sys 73m42.309s
3763 4. Debug build w/ --validateExceptionChecks=true --dumpSimulatedThrows=true: real 92m56.918s, user 2012m56.441s, sys 75m14.174s
3765 The stats shows that (2) and (3) has effectively no time difference. Hence, the
3766 cost of enabling --validateExceptionChecks=true is not significant.
3768 It would be nice to enable --dumpSimulatedThrows=true as well, but (4) is about
3769 21% slower than (3). To avoid making debug test runs a lot slower, we'll leave
3770 --dumpSimulatedThrows=true off. We can manually add that when we see a regression
3771 and need to debug the issue. Otherwise, we wont pay the price for it.
3773 * Scripts/run-jsc-stress-tests:
3775 2017-09-27 Alex Christensen <achristensen@webkit.org>
3777 Add WKContentRuleList notify action type
3778 https://bugs.webkit.org/show_bug.cgi?id=177013
3779 <rdar://problem/31073936>
3781 Reviewed by Darin Adler.
3783 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3784 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
3785 (WebCore::ContentExtensions::operator<<):
3786 (TestWebKitAPI::InMemoryCompiledContentExtension::create):
3787 (TestWebKitAPI::InMemoryCompiledContentExtension::data):
3788 (TestWebKitAPI::InMemoryCompiledContentExtension::InMemoryCompiledContentExtension):
3789 (TestWebKitAPI::makeBackend):
3790 (TestWebKitAPI::TEST_F):
3791 (TestWebKitAPI::actionsEqual):
3792 (TestWebKitAPI::sequenceInstances):
3793 (TestWebKitAPI::InMemoryCompiledContentExtension::createFromFilter): Deleted.
3794 (TestWebKitAPI::InMemoryCompiledContentExtension::~InMemoryCompiledContentExtension): Deleted.
3795 * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm: Added.
3796 (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
3797 (-[ContentRuleListNotificationDelegate webView:startURLSchemeTask:]):
3798 (-[ContentRuleListNotificationDelegate webView:stopURLSchemeTask:]):
3799 (-[ContentRuleListNotificationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
3800 (makeWarnContentRuleList):
3803 2017-09-27 Wenson Hsieh <wenson_hsieh@apple.com>
3805 Drag event DataTransfer has unexpected types "dyn.ah62d4..."
3806 https://bugs.webkit.org/show_bug.cgi?id=172526
3807 <rdar://problem/32396081>
3809 Reviewed by Ryosuke Niwa.
3811 Adds new API tests on iOS to cover various cases of using DataTransfer.setData, DataTransfer.getData, and
3812 DataTransfer.types, as well as their interaction with platform objects (source NSItemProviders in the case of
3813 drag and drop, and the general UIPasteboard for copy and paste).
3815 * TestWebKitAPI/PlatformUtilities.h:
3816 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3817 * TestWebKitAPI/Tests/WebKitCocoa/dump-datatransfer-types.html: Added.
3819 Introduce a new API test harness that both drag-and-drop and copy-and-paste tests use to dump DataTransfer's
3820 web-exposed types and values.
3822 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3823 (checkFirstTypeIsPresentAndSecondTypeIsMissing):
3824 (checkJSONWithLogging):
3825 (TestWebKitAPI::TEST):
3826 (checkTypeIdentifierAndIsNotOtherTypeIdentifier): Deleted.
3827 * TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:
3828 (TestWebKitAPI::checkJSONWithLogging):
3829 (TestWebKitAPI::setUpWebViewForPasteboardTests):
3830 (TestWebKitAPI::TEST):
3831 * TestWebKitAPI/cocoa/PlatformUtilitiesCocoa.mm:
3832 (TestWebKitAPI::Util::jsonMatchesExpectedValues):
3834 2017-09-27 Lucas Forschler <lforschler@apple.com>
3836 Add macOS High Sierra and iOS Simulator 11 support to bisect-builds.
3837 https://bugs.webkit.org/show_bug.cgi?id=177578
3839 Reviewed by Alexey Proskuryakov.
3841 * Scripts/bisect-builds:
3842 (minified_platforms):
3843 (unminified_platforms):
3845 2017-09-27 Ryan Haddad <ryanhaddad@apple.com>
3847 Update TestResultsServer for High Sierra queues.
3848 https://bugs.webkit.org/show_bug.cgi?id=177500
3850 Reviewed by Alexey Proskuryakov.
3852 * TestResultServer/static-dashboards/builders.jsonp:
3854 2017-09-27 Lucas Forschler <lforschler@apple.com>
3856 bisect-builds:add a README to the archive.
3857 https://bugs.webkit.org/show_bug.cgi?id=177376
3859 Reviewed by Alexey Proskuryakov & Jon Davis.
3861 * BuildSlaveSupport/built-product-archive:
3862 (addFilesToArchive): refactor function (was previously addLauncherToArchive)
3863 (createZip): Teach function to add the README
3864 (addLauncherToArchive): Deleted. (refactored to addFilesToArchive)
3865 * BuildSlaveSupport/run-webkit-archive: Deleted. (Moved to WebKitArchiveSupport)
3866 * WebKitArchiveSupport: Added.
3867 * WebKitArchiveSupport/README: Added. README which will be packaged up with the archive.
3868 * WebKitArchiveSupport/run-webkit-archive: Added. (Moved from BuildSlaveSupport)
3870 2017-09-26 Tim Horton <timothy_horton@apple.com>
3872 Mac CMake bot should provide verbose build output
3873 https://bugs.webkit.org/show_bug.cgi?id=177512
3875 Reviewed by Alexey Proskuryakov.
3877 * BuildSlaveSupport/build.webkit.org-config/config.json:
3878 It's hard to diagnose weird bot-only build problems without the
3879 full verbose build output, so turn that on. The Xcode builders
3880 do it too, so why not CMake!
3882 2017-09-26 Tim Horton <timothy_horton@apple.com>
3884 Make it possible to easily get verbose ninja output from build-webkit
3885 https://bugs.webkit.org/show_bug.cgi?id=177511
3887 Reviewed by Sam Weinig.
3889 * Scripts/build-webkit:
3890 Add a -v/--verbose argument to build-webkit, which sets the environment
3891 variable VERBOSE=1, which buildCMakeGeneratedProject already checks.
3893 * Scripts/webkitdirs.pm:
3894 (buildCMakeGeneratedProject):
3895 Add ninja verbosity arguments to @makeArgs, which are appended
3896 after the -- and thus handed to ninja; the previous implementation
3897 (appending to @args) would only work if @makeArgs was non-empty and thus
3898 the -- was included.
3900 2017-09-26 Said Abou-Hallawa <sabouhallawa@apple.com>
3902 Followup (r222427): SynchronizedFixedQueue should not have a public constructor
3903 https://bugs.webkit.org/show_bug.cgi?id=177458
3905 Reviewed by Tim Horton.
3907 Fix the definition and the creation of SynchronizedFixedQueue.
3909 * TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
3910 (TestWebKitAPI::ToUpperConverter::ToUpperConverter):
3911 (TestWebKitAPI::ToUpperConverter::startProducing):
3912 (TestWebKitAPI::ToUpperConverter::startConsuming):
3913 (TestWebKitAPI::ToUpperConverter::stopProducing):
3914 (TestWebKitAPI::ToUpperConverter::stopConsuming):
3915 (TestWebKitAPI::ToUpperConverter::enqueueLower):
3917 2017-09-26 Wenson Hsieh <wenson_hsieh@apple.com>
3919 [ios-simulator] API test DataInteractionTests.ExternalSourceDataTransferItemGetFolderAsEntry is failing
3920 https://bugs.webkit.org/show_bug.cgi?id=177271
3922 Reviewed by Tim Horton and Megan Gardner.
3924 Rebaseline a failing API test.
3926 * TestWebKitAPI/Tests/ios/DataInteractionTests.mm:
3927 (TestWebKitAPI::TEST):
3929 2017-09-26 Per Arne Vollan <pvollan@apple.com>
3931 Set LF eol-style on Windows shell script, because the script failed on one of the EWS
3932 bots, when it had the 'native' style.
3934 Unreviewed Windows EWS fix.
3936 * EWSTools/start-queue-win.sh: Modified property svn:eol-style.
3938 2017-09-26 Jonathan Bedard <jbedard@apple.com>
3940 webkitpy: Notify parent process when a worker is spawned
3941 https://bugs.webkit.org/show_bug.cgi?id=177467
3942 <rdar://problem/34660194>
3944 Reviewed by Daniel Bates.
3946 When we fork the parent process, there may be resources in that process
3947 which workers will take ownership of. Notify ports when a new worker is created
3948 so that these resources can be correctly managed.
3950 * Scripts/webkitpy/common/message_pool.py:
3951 (_MessagePool._start_workers): After all workers are started, notify the caller
3952 that a worker has been created, unless we are running inline, in which case the
3953 parent process is still the worker.
3954 * Scripts/webkitpy/layout_tests/controllers/layout_test_runner.py:
3955 (LayoutTestRunner._handle_did_spawn_worker): Notify the port that a worker process
3957 * Scripts/webkitpy/port/base.py:
3958 (Port.did_spawn_worker): Add function so that ports may manage any
3959 resources created on the parent process but managed by the provided worker.
3960 * Scripts/webkitpy/port/device.py:
3961 (Device.release_worker_resources): Call release_worker_resources on the
3962 platform_device if such a function is defined.
3963 * Scripts/webkitpy/port/ios.py:
3964 (IOSPort.did_spawn_worker): Release any worker resources on the iOS
3965 device object associated with the spawned worker.
3966 * Scripts/webkitpy/test/runner.py:
3967 (Runner.handle): Ignore the did_spawn_worker message during testing.
3969 2017-09-26 Jer Noble <jer.noble@apple.com>
3971 Thrown ObjC exception when right clicking on <img> containing mp4 link
3972 https://bugs.webkit.org/show_bug.cgi?id=177370
3974 Reviewed by Darin Adler.
3976 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
3977 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.html: Added.
3978 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuImgWithVideo.mm: Added.
3979 (-[ContextMenuImgWithVideoDelegate _webView:contextMenu:forElement:]):
3980 (TestWebKitAPI::TEST):
3982 2017-09-26 Per Arne Vollan <pvollan@apple.com>
3984 [Win] 'webkit-patch clean' is failing on bot.
3985 https://bugs.webkit.org/show_bug.cgi?id=177488
3987 Reviewed by Brent Fulgham.
3989 If 'os.remove' throws an exception, catch it.
3991 * Scripts/webkitpy/common/checkout/scm/svn.py:
3992 (SVN.discard_working_directory_changes):
3994 2017-09-25 Frederik Riedel <riedel@apple.com>
3996 Expose way to set values of classified form controls as {Legacy WebKit, WebKit} SPI
3997 https://bugs.webkit.org/show_bug.cgi?id=174394
3998 <rdar://problem/33183504>
4000 Reviewed by Ryosuke Niwa.
4002 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4003 * TestWebKitAPI/Tests/ios/WKWebViewAutofillTests.mm: Added.
4004 (-[WKWebView _privateTextInput]): Testing helpers.
4005 (TestWebKitAPI::TEST): Added test cases to test AutoFill for web views.
4006 * TestWebKitAPI/ios/UIKitSPI.h:
4008 2017-09-25 Frederic Wang <fwang@igalia.com>
4010 Change my status to reviewer and reformat with validate-committer-lists
4014 * Scripts/webkitpy/common/config/contributors.json:
4016 2017-09-25 Ryan Haddad <ryanhaddad@apple.com>
4018 Add High Sierra bots to buildbot and dashboard.
4019 https://bugs.webkit.org/show_bug.cgi?id=177437
4021 Reviewed by Alexey Proskuryakov.
4023 * BuildSlaveSupport/build.webkit.org-config/config.json: Add High Sierra queues, move Leaks and JSC queues over from Sierra.
4024 * BuildSlaveSupport/build.webkit.org-config/mastercfg_unittest.py: Update expected results.
4025 * BuildSlaveSupport/build.webkit.org-config/public_html/dashboard/Scripts/WebKitBuildbot.js: Add High Sierra.
4028 2017-09-25 Chris Dumez <cdumez@apple.com>
4030 [WK2] Add API to query if a download was user-initiated
4031 https://bugs.webkit.org/show_bug.cgi?id=177435
4032 <rdar://problem/34498422>
4034 Reviewed by Alex Christensen.
4036 Add API test coverage.
4038 * TestWebKitAPI/Tests/WebKit/mac/ContextMenuDownload.mm:
4039 (TestWebKitAPI::decideDestinationWithSuggestedFilename):
4040 * TestWebKitAPI/Tests/WebKitCocoa/Download.mm:
4041 (-[DownloadDelegate _downloadDidStart:]):
4042 (-[DownloadDelegate _downloadDidFinish:]):
4045 (-[BlobDownloadDelegate _downloadDidStart:]):
4046 (-[BlobDownloadDelegate _downloadDidFinish:]):
4047 (-[RedirectedDownloadDelegate _downloadDidStart:]):
4048 (-[RedirectedDownloadDelegate _downloadDidFinish:]):
4050 2017-09-25 Commit Queue <commit-queue@webkit.org>
4052 Unreviewed, rolling out r222455.
4053 https://bugs.webkit.org/show_bug.cgi?id=177460
4055 broke iOS build (Requested by alexchristensen on #webkit).
4059 "Add WKContentRuleList notify action type"
4060 https://bugs.webkit.org/show_bug.cgi?id=177013
4061 http://trac.webkit.org/changeset/222455
4063 2017-09-25 Per Arne Vollan <pvollan@apple.com>
4065 [Win] run-api-tests is failing.
4066 https://bugs.webkit.org/show_bug.cgi?id=177454
4068 Reviewed by Brent Fulgham.
4070 TestWebKit.exe has changed name to TestWebKitLegacy.exe.
4072 * Scripts/run-api-tests:
4075 2017-09-25 Per Arne Vollan <pvollan@apple.com>
4077 [Win] Cygwin 64-bit EWS process cannot find Visual Studio installation.
4078 https://bugs.webkit.org/show_bug.cgi?id=177244
4080 Reviewed by Alex Christensen.
4082 The 64-bit EWS shell process should try to find Visual Studio in the 32-bit program files folder.
4084 * EWSTools/start-queue-win.sh:
4086 2017-09-25 Alex Christensen <achristensen@webkit.org>
4088 Add WKContentRuleList notify action type
4089 https://bugs.webkit.org/show_bug.cgi?id=177013
4090 <rdar://problem/31073936>
4092 Reviewed by Darin Adler.
4094 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
4095 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:
4096 (WebCore::ContentExtensions::operator<<):
4097 (TestWebKitAPI::InMemoryCompiledContentExtension::create):
4098 (TestWebKitAPI::InMemoryCompiledContentExtension::data):
4099 (TestWebKitAPI::InMemoryCompiledContentExtension::InMemoryCompiledContentExtension):
4100 (TestWebKitAPI::makeBackend):
4101 (TestWebKitAPI::TEST_F):
4102 (TestWebKitAPI::actionsEqual):
4103 (TestWebKitAPI::sequenceInstances):
4104 (TestWebKitAPI::InMemoryCompiledContentExtension::createFromFilter): Deleted.
4105 (TestWebKitAPI::InMemoryCompiledContentExtension::~InMemoryCompiledContentExtension): Deleted.
4106 * TestWebKitAPI/Tests/WebKitCocoa/ContentRuleListNotification.mm: Added.
4107 (-[ContentRuleListNotificationDelegate _webView:URL:contentRuleListIdentifiers:notifications:]):
4108 (-[ContentRuleListNotificationDelegate webView:startURLSchemeTask:]):
4109 (-[ContentRuleListNotificationDelegate webView:stopURLSchemeTask:]):
4110 (-[ContentRuleListNotificationDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:completionHandler:]):
4111 (makeWarnContentRuleList):
4114 2017-09-25 Carlos Alberto Lopez Perez <clopez@igalia.com>
4116 REGRESSION(r222160) [GTK] [Debug] Internal compiler error on the buildbot (huge memory usage by GCC)
4117 https://bugs.webkit.org/show_bug.cgi?id=177223
4119 Reviewed by Carlos Garcia Campos.
4121 When the user environment sets the variable NUMBER_OF_PROCESSORS
4122 this should be passed down to the build system (ninja or make) always.
4124 Playing with the number of this variable is needed when using icecc
4125 (as you usually want to launch more parallel build process than your
4126 number of cores), or when you want to limit the number of parallel
4127 build process for hardware capacity reasons.
4129 * Scripts/build-webkit:
4131 2017-09-24 Fujii Hironori <Hironori.Fujii@sony.com>
4133 [GTK] Incremental builds fail every time Web Inspector icons are removed
4134 https://bugs.webkit.org/show_bug.cgi?id=177349
4136 Reviewed by Carlos Garcia Campos.
4138 Removing GTK WebInspector image files always breaks the GTK and
4139 WPE ports incremental builds.
4141 * Scripts/webkitdirs.pm:
4142 (shouldRemoveCMakeCache): Check the timestamp of
4143 Source/WebInspectorUI/UserInterface/Images/gtk directory if
4146 2017-09-24 Joanmarie Diggs <jdiggs@igalia.com>
4148 [ATK] Object attributes are missing for ARIA live region roles
4149 https://bugs.webkit.org/show_bug.cgi?id=171174
4151 Reviewed by Chris Fleizach.
4153 Add support for testing property values for AXARIALive, AXARIAAtomic, and
4154 AXARIARelevant. Also add handling for testing whether AXElementBusy is
4155 "supported" (in ATK, busy is a state and is supported on all elements
4156 regardless of whether the state is present or absent from the state set).
4158 * WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
4159 (WTR::AccessibilityUIElement::boolAttributeValue):
4160 (WTR::AccessibilityUIElement::isAttributeSupported):
4162 2017-09-23 Michael Catanzaro <mcatanzaro@igalia.com>
4164 Unreviewed Mac CMake build fixup after r222194
4166 * DumpRenderTree/PlatformMac.cmake:
4168 2017-09-22 Zalan Bujtas <zalan@apple.com>
4170 WeakPtrFactory should populate m_ref lazily.
4171 https://bugs.webkit.org/show_bug.cgi?id=177375
4173 Reviewed by Geoffrey Garen.
4175 * TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
4176 (TestWebKitAPI::TEST):
4178 2017-09-22 Filip Pizlo <fpizlo@apple.com>
4180 WSL should report an error if you try to create an operator overload that will never be called
4181 https://bugs.webkit.org/show_bug.cgi?id=177092
4183 Reviewed by JF Bastien.
4185 This adds all kinds of checks to ensure that your operator overloads make sense. This adds all
4186 kinds of tests for those checks.
4188 In the process of writing those tests, I hit an awesome bug: function instantiation was
4189 instantiating all types, which meant that if that instantiated function needed to resolve calls
4190 to protocol functions, we'd fail because we would have cloned top-level struct types. We need
4191 to preserve the uninstantiated argument types, type arguments, and return type (for casts) in
4192 order to be able to resolve protocol calls. But we also need the instantiated version of the
4193 type arguments for execution. So, this adds some more stuff to the CallExpression class.
4195 * WebGPUShadingLanguageRI/All.js:
4196 * WebGPUShadingLanguageRI/ArrayRefType.js:
4197 (ArrayRefType.prototype.unifyImpl):
4198 * WebGPUShadingLanguageRI/ArrayType.js:
4199 (ArrayType.prototype.get isArray):
4200 * WebGPUShadingLanguageRI/CallExpression.js:
4201 (CallExpression.resolve):
4202 (CallExpression.prototype.resolve):
4203 (CallExpression.prototype.resolveToOverload):
4204 * WebGPUShadingLanguageRI/Checker.js:
4205 (Checker.prototype._checkOperatorOverload):
4206 (Checker.prototype.visitFuncDef):
4207 (Checker.prototype.visitProtocolDecl):
4208 (Checker.prototype.visitMakeArrayRefExpression):
4209 * WebGPUShadingLanguageRI/EBufferBuilder.js:
4210 (EBufferBuilder.prototype._createEPtr):
4211 * WebGPUShadingLanguageRI/EPtr.js:
4213 * WebGPUShadingLanguageRI/Evaluator.js:
4214 (Evaluator.prototype._snapshot):
4215 (Evaluator.prototype._runBody):
4216 (Evaluator.prototype.visitFunctionLikeBlock):
4217 (Evaluator.prototype.visitCallExpression):
4219 (Evaluator.prototype.runFunc): Deleted.
4220 * WebGPUShadingLanguageRI/ExternalOrigin.js: Added.
4221 * WebGPUShadingLanguageRI/Func.js:
4222 (Func.prototype.toDeclString):
4223 * WebGPUShadingLanguageRI/FuncInstantiator.js:
4224 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution.prototype.visitCallExpression):
4225 (FuncInstantiator.prototype.getUnique.InstantiationSubstitution):
4226 (FuncInstantiator.prototype.getUnique.InstantiationInstantiateImmediates.prototype.visitCallExpression):
4227 (FuncInstantiator.prototype.getUnique.InstantiationInstantiateImmediates):
4228 (FuncInstantiator.prototype.getUnique.Instantiate.prototype.visitFuncDef):
4229 * WebGPUShadingLanguageRI/Intrinsics.js:
4231 * WebGPUShadingLanguageRI/LateChecker.js:
4232 (LateChecker.prototype.visitReferenceType):
4233 (LateChecker.prototype._checkShaderType):
4234 * WebGPUShadingLanguageRI/Lexer.js:
4235 (Lexer._textIsIdentifierImpl):
4236 (Lexer.textIsIdentifier):
4237 (Lexer.prototype.next):
4239 * WebGPUShadingLanguageRI/NameResolver.js:
4240 (NameResolver.prototype.visitProtocolDecl):
4241 * WebGPUShadingLanguageRI/Parse.js:
4242 (parseType.getAddressSpace):
4244 * WebGPUShadingLanguageRI/Prepare.js:
4246 * WebGPUShadingLanguageRI/PtrType.js:
4247 (PtrType.prototype.unifyImpl):
4248 * WebGPUShadingLanguageRI/ReferenceType.js:
4250 * WebGPUShadingLanguageRI/Rewriter.js:
4251 (Rewriter.prototype.visitReferenceType):
4252 (Rewriter.prototype.processDerivedCallData):
4253 * WebGPUShadingLanguageRI/StandardLibrary.js:
4255 * WebGPUShadingLanguageRI/StatementCloner.js:
4256 (StatementCloner.prototype.visitFuncDef):
4257 * WebGPUShadingLanguageRI/StructLayoutBuilder.js: